summaryrefslogtreecommitdiffstats
path: root/qt-models/divetripmodel.h
diff options
context:
space:
mode:
authorGravatar Berthold Stoeger <bstoeger@mail.tuwien.ac.at>2019-12-11 09:50:38 +0100
committerGravatar Dirk Hohndel <dirk@hohndel.org>2019-12-11 08:31:57 -0500
commit7e12ac262b35bcab05bc4a7e69d8572cba5b7ef1 (patch)
tree569e70caa590bee9057f33f5fcc669b40ef4d26d /qt-models/divetripmodel.h
parent37b24857ed6a95c7017e443adc88fa8c4dea0c1a (diff)
downloadsubsurface-7e12ac262b35bcab05bc4a7e69d8572cba5b7ef1.tar.gz
Dive list: implement DiveTripModelBase::reset()
On desktop, resetting the model is realized by generating a new model object. This is due to the fact that we have two different models (tree and list) and for switching between those, we have to create a new object. On mobile, currently there are no plans to support the list-mode. Therefore, there is no reason the recreate the object. Instead, implement a reset() function that reloads the core data. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
Diffstat (limited to 'qt-models/divetripmodel.h')
-rw-r--r--qt-models/divetripmodel.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/qt-models/divetripmodel.h b/qt-models/divetripmodel.h
index eed6913cf..ff15893eb 100644
--- a/qt-models/divetripmodel.h
+++ b/qt-models/divetripmodel.h
@@ -63,6 +63,9 @@ public:
// Clear all dives
void clear();
+ // Reload data
+ void reset();
+
Qt::ItemFlags flags(const QModelIndex &index) const;
QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const override;
bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole) override;
@@ -91,6 +94,7 @@ protected:
virtual dive *diveOrNull(const QModelIndex &index) const = 0; // Returns a dive if this index represents a dive, null otherwise
virtual void clearData() = 0;
+ virtual void populate() = 0;
};
class DiveTripModelTree : public DiveTripModelBase
@@ -112,6 +116,7 @@ public:
private:
int rowCount(const QModelIndex &parent) const override;
void clearData() override;
+ void populate() override;
QModelIndex index(int row, int column, const QModelIndex &parent) const override;
QModelIndex parent(const QModelIndex &index) const override;
QVariant data(const QModelIndex &index, int role) const override;
@@ -179,6 +184,7 @@ public:
private:
int rowCount(const QModelIndex &parent) const override;
void clearData() override;
+ void populate() override;
QModelIndex index(int row, int column, const QModelIndex &parent) const override;
QModelIndex parent(const QModelIndex &index) const override;
QVariant data(const QModelIndex &index, int role) const override;