diff options
author | Dirk Hohndel <dirk@hohndel.org> | 2015-11-30 10:09:46 -0800 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2015-11-30 10:09:46 -0800 |
commit | 2f2e9da2cd18d0450fa791371922ba1844338bb6 (patch) | |
tree | 4f774b1f37a1f9ad7546896f0d16088b26a77833 /qt-models | |
parent | 9d6225831650dd9c6331763d29b392bc2741ae4e (diff) | |
download | subsurface-2f2e9da2cd18d0450fa791371922ba1844338bb6.tar.gz |
Clear the Dive model before repopulating it
Otherwise we could get duplicate dives in the dive list.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'qt-models')
-rw-r--r-- | qt-models/divelistmodel.cpp | 7 | ||||
-rw-r--r-- | qt-models/divelistmodel.h | 1 |
2 files changed, 8 insertions, 0 deletions
diff --git a/qt-models/divelistmodel.cpp b/qt-models/divelistmodel.cpp index 7d49f5c01..18f270c15 100644 --- a/qt-models/divelistmodel.cpp +++ b/qt-models/divelistmodel.cpp @@ -15,6 +15,13 @@ void DiveListModel::addDive(dive *d) endInsertRows(); } +void DiveListModel::clear() +{ + beginRemoveRows(QModelIndex(), 0, m_dives.count() - 1); + m_dives.clear(); + endRemoveRows(); +} + int DiveListModel::rowCount(const QModelIndex &) const { return m_dives.count(); diff --git a/qt-models/divelistmodel.h b/qt-models/divelistmodel.h index 958a783e9..fbeb13486 100644 --- a/qt-models/divelistmodel.h +++ b/qt-models/divelistmodel.h @@ -35,6 +35,7 @@ public: static DiveListModel *instance(); DiveListModel(QObject *parent = 0); void addDive(dive *d); + void clear(); int rowCount(const QModelIndex &parent = QModelIndex()) const; QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const; QHash<int, QByteArray> roleNames() const; |