From b76f2071589d6a7f45ec2845afa8b49110da608b Mon Sep 17 00:00:00 2001 From: Berthold Stoeger Date: Sun, 17 Nov 2019 18:13:55 +0100 Subject: 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 --- desktop-widgets/divelogexportdialog.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'desktop-widgets/divelogexportdialog.cpp') diff --git a/desktop-widgets/divelogexportdialog.cpp b/desktop-widgets/divelogexportdialog.cpp index cf859e2b9..99f6eb8a8 100644 --- a/desktop-widgets/divelogexportdialog.cpp +++ b/desktop-widgets/divelogexportdialog.cpp @@ -11,6 +11,7 @@ #include "core/save-html.h" #include "core/settings/qPrefDisplay.h" #include "core/save-profiledata.h" +#include "core/divefilter.h" #include "core/divesite.h" #include "core/errorhelper.h" #include "core/file.h" @@ -134,10 +135,10 @@ static std::vector getDiveSitesToExport(bool selectedOnly) { std::vector res; - if (selectedOnly && MultiFilterSortModel::instance()->diveSiteMode()) { + if (selectedOnly && DiveFilter::instance()->diveSiteMode()) { // Special case in dive site mode: export all selected dive sites, // not the dive sites of selected dives. - QVector sites = MultiFilterSortModel::instance()->filteredDiveSites(); + QVector sites = DiveFilter::instance()->filteredDiveSites(); res.reserve(sites.size()); for (const dive_site *ds: sites) res.push_back(ds); -- cgit v1.2.3-70-g09d2