summaryrefslogtreecommitdiffstats
path: root/desktop-widgets/filterwidget2.cpp
diff options
context:
space:
mode:
authorGravatar Berthold Stoeger <bstoeger@mail.tuwien.ac.at>2019-01-25 21:30:43 +0100
committerGravatar Dirk Hohndel <dirk@hohndel.org>2019-01-26 08:05:39 -0800
commitc210bfc0e0205067c4f4274afc7975486e35252a (patch)
tree1e83943a45e7089d63ede422aa6123ccb1253e90 /desktop-widgets/filterwidget2.cpp
parent3915e8a0d5a3199ec1aa3c2dfc1de049b2be7d9e (diff)
downloadsubsurface-c210bfc0e0205067c4f4274afc7975486e35252a.tar.gz
Filter: update counts if dives added / removed
Update the filter counts if dives were added removed by the undo commands. The undo commands call into the filter model at the right time so that hidden_by_filter is already set. The filter model keeps track of the counts and emits a signal, which is caught by the widget. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
Diffstat (limited to 'desktop-widgets/filterwidget2.cpp')
-rw-r--r--desktop-widgets/filterwidget2.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/desktop-widgets/filterwidget2.cpp b/desktop-widgets/filterwidget2.cpp
index 9eb4f733b..028f774f1 100644
--- a/desktop-widgets/filterwidget2.cpp
+++ b/desktop-widgets/filterwidget2.cpp
@@ -96,6 +96,10 @@ FilterWidget2::FilterWidget2(QWidget* parent) : QWidget(parent)
// Update temperature fields if user changes temperature-units in preferences.
connect(qPrefUnits::instance(), &qPrefUnits::temperatureChanged, this, &FilterWidget2::temperatureChanged);
connect(qPrefUnits::instance(), &qPrefUnits::unit_systemChanged, this, &FilterWidget2::temperatureChanged);
+
+ // Update counts if dives were added / removed
+ connect(MultiFilterSortModel::instance(), &MultiFilterSortModel::countsChanged,
+ this, &FilterWidget2::countsChanged);
}
void FilterWidget2::temperatureChanged()
@@ -161,7 +165,11 @@ void FilterWidget2::hideEvent(QHideEvent *event)
void FilterWidget2::filterDataChanged(const FilterData &data)
{
MultiFilterSortModel::instance()->filterDataChanged(data);
+ countsChanged();
+}
+void FilterWidget2::countsChanged()
+{
ui.filterText->setText(tr("%L1/%L2 shown").arg(MultiFilterSortModel::instance()->divesDisplayed)
.arg(dive_table.nr));
}