From af9f07626a010b78289d68c7b4d388bdeeec9fa4 Mon Sep 17 00:00:00 2001 From: Dirk Hohndel Date: Thu, 28 Jan 2016 18:23:14 -0800 Subject: Add our own sort proxy class which provides two helper functions These can then be used from QML to map the index into the model (the sort model corresponds directly to the indices in QML) to the dive id and back. Signed-off-by: Dirk Hohndel --- qt-models/divelistmodel.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'qt-models/divelistmodel.h') diff --git a/qt-models/divelistmodel.h b/qt-models/divelistmodel.h index 8f52680a4..675619640 100644 --- a/qt-models/divelistmodel.h +++ b/qt-models/divelistmodel.h @@ -2,11 +2,22 @@ #define DIVELISTMODEL_H #include +#include #include "dive.h" #include "helpers.h" #include "subsurface-qt/DiveObjectHelper.h" +class DiveListSortModel : public QSortFilterProxyModel +{ + Q_OBJECT +public: + DiveListSortModel(QObject *parent = 0); +public slots: + int getDiveId(int idx); + int getIdxForId(int id); +}; + class DiveListModel : public QAbstractListModel { Q_OBJECT @@ -25,6 +36,7 @@ public: void updateDive(int i, dive *d); void clear(); int rowCount(const QModelIndex &parent = QModelIndex()) const; + int getDiveId(int idx) const; QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const; QHash roleNames() const; QString startAddDive(); -- cgit v1.2.3-70-g09d2