summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--desktop-widgets/mainwindow.cpp3
-rw-r--r--qt-models/filtermodels.cpp5
-rw-r--r--qt-models/filtermodels.h1
3 files changed, 8 insertions, 1 deletions
diff --git a/desktop-widgets/mainwindow.cpp b/desktop-widgets/mainwindow.cpp
index b8baac371..3a92656ad 100644
--- a/desktop-widgets/mainwindow.cpp
+++ b/desktop-widgets/mainwindow.cpp
@@ -69,6 +69,7 @@
#include "qt-models/cylindermodel.h"
#include "qt-models/divepicturemodel.h"
#include "qt-models/diveplannermodel.h"
+#include "qt-models/filtermodels.h"
#include "qt-models/tankinfomodel.h"
#include "qt-models/weightsysteminfomodel.h"
#include "qt-models/yearlystatisticsmodel.h"
@@ -650,7 +651,7 @@ void MainWindow::closeCurrentFile()
{
/* free the dives and trips */
clear_git_id();
- DiveTripModelBase::instance()->clear();
+ MultiFilterSortModel::instance()->clear();
setCurrentFile(nullptr);
diveList->setSortOrder(DiveTripModelBase::NR, Qt::DescendingOrder);
MapWidget::instance()->reload();
diff --git a/qt-models/filtermodels.cpp b/qt-models/filtermodels.cpp
index dcb7e69ad..463276e13 100644
--- a/qt-models/filtermodels.cpp
+++ b/qt-models/filtermodels.cpp
@@ -32,6 +32,11 @@ void MultiFilterSortModel::resetModel(DiveTripModelBase::Layout layout)
m->initSelection();
}
+void MultiFilterSortModel::clear()
+{
+ DiveTripModelBase::instance()->clear();
+}
+
// Translate selection into local indexes and re-emit signal
void MultiFilterSortModel::selectionChangedSlot(const QVector<QModelIndex> &indexes)
{
diff --git a/qt-models/filtermodels.h b/qt-models/filtermodels.h
index 6677c713d..fef39e0d5 100644
--- a/qt-models/filtermodels.h
+++ b/qt-models/filtermodels.h
@@ -14,6 +14,7 @@ public:
bool lessThan(const QModelIndex &, const QModelIndex &) const override;
void resetModel(DiveTripModelBase::Layout layout);
+ void clear();
signals:
void selectionChanged(const QVector<QModelIndex> &indexes);
void currentDiveChanged(QModelIndex index);