diff options
author | Berthold Stoeger <bstoeger@mail.tuwien.ac.at> | 2019-11-17 18:13:55 +0100 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2019-11-19 21:13:40 -0800 |
commit | b76f2071589d6a7f45ec2845afa8b49110da608b (patch) | |
tree | 1b7176f4bf706803160c9dc007a7c524dbc59bd2 /desktop-widgets/tab-widgets | |
parent | 6d6d10f03a92a9bac5394fc226c398af61f29d66 (diff) | |
download | subsurface-b76f2071589d6a7f45ec2845afa8b49110da608b.tar.gz |
Filter: split out filter from model
Split out the actual filtering from the MultiFilterSortModel.
Create a DiveFilter class that does the actual filtering.
Currently, mobile and desktop have their own version of this
class, though ultimately we may want to merge them.
The idea here is that the trip-model and undo-commands have
direct access to the filter-function and thus can take care
of keeping track of the number of shown dives, etc.
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
Diffstat (limited to 'desktop-widgets/tab-widgets')
-rw-r--r-- | desktop-widgets/tab-widgets/TabDiveSite.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/desktop-widgets/tab-widgets/TabDiveSite.cpp b/desktop-widgets/tab-widgets/TabDiveSite.cpp index d5591c152..3ff693e59 100644 --- a/desktop-widgets/tab-widgets/TabDiveSite.cpp +++ b/desktop-widgets/tab-widgets/TabDiveSite.cpp @@ -2,8 +2,8 @@ #include "TabDiveSite.h" #include "core/subsurface-qt/DiveListNotifier.h" #include "core/divesite.h" +#include "core/divefilter.h" #include "qt-models/divelocationmodel.h" -#include "qt-models/filtermodels.h" #include "commands/command.h" #include <qt-models/divecomputerextradatamodel.h> @@ -97,18 +97,18 @@ QVector<dive_site *> TabDiveSite::selectedDiveSites() void TabDiveSite::selectionChanged(const QItemSelection &, const QItemSelection &) { - MultiFilterSortModel::instance()->setFilterDiveSite(selectedDiveSites()); + DiveFilter::instance()->setFilterDiveSite(selectedDiveSites()); } void TabDiveSite::showEvent(QShowEvent *) { // If the user switches to the dive site tab and there was already a selection, // filter on that selection. - MultiFilterSortModel::instance()->startFilterDiveSites(selectedDiveSites()); + DiveFilter::instance()->startFilterDiveSites(selectedDiveSites()); } void TabDiveSite::hideEvent(QHideEvent *) { // If the user switches to a different tab, stop the dive site filtering - MultiFilterSortModel::instance()->stopFilterDiveSites(); + DiveFilter::instance()->stopFilterDiveSites(); } |