diff options
Diffstat (limited to 'qt-models/divelistmodel.cpp')
-rw-r--r-- | qt-models/divelistmodel.cpp | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/qt-models/divelistmodel.cpp b/qt-models/divelistmodel.cpp index c9bcaa2e1..37e48b023 100644 --- a/qt-models/divelistmodel.cpp +++ b/qt-models/divelistmodel.cpp @@ -17,8 +17,6 @@ CollapsedDiveListSortModel::CollapsedDiveListSortModel() { setSourceModel(DiveListSortModel::instance()); - setDynamicSortFilter(true); - updateFilterState(); // make sure that we after changes to the underlying model (and therefore the dive list // we update the filter state connect(DiveListModel::instance(), &DiveListModel::rowsInserted, this, &CollapsedDiveListSortModel::updateFilterState); @@ -35,6 +33,10 @@ CollapsedDiveListSortModel *CollapsedDiveListSortModel::instance() void CollapsedDiveListSortModel::setSourceModel(QAbstractItemModel *sourceModel) { QSortFilterProxyModel::setSourceModel(sourceModel); + // make sure we sort descending and have the filters correct + setDynamicSortFilter(true); + setSortRole(DiveListModel::DiveDateRole); + sort(0, Qt::DescendingOrder); updateFilterState(); } @@ -175,10 +177,6 @@ bool CollapsedDiveListSortModel::filterAcceptsRow(int source_row, const QModelIn DiveListSortModel::DiveListSortModel() { setSourceModel(DiveListModel::instance()); - setDynamicSortFilter(true); - setSortRole(DiveListModel::DiveDateRole); - sort(0, Qt::DescendingOrder); - updateFilterState(); LOG_STP("run_ui diveListModel sorted"); } @@ -212,6 +210,11 @@ void DiveListSortModel::updateFilterState() void DiveListSortModel::setSourceModel(QAbstractItemModel *sourceModel) { QSortFilterProxyModel::setSourceModel(sourceModel); + // make sure we sort descending and have the filters correct + setDynamicSortFilter(true); + setSortRole(DiveListModel::DiveDateRole); + sort(0, Qt::DescendingOrder); + updateFilterState(); } void DiveListSortModel::setFilter(QString f) |