summaryrefslogtreecommitdiffstats
path: root/qt-models
diff options
context:
space:
mode:
Diffstat (limited to 'qt-models')
-rw-r--r--qt-models/CMakeLists.txt1
-rw-r--r--qt-models/divelocationmodel.h2
-rw-r--r--qt-models/ssrfsortfilterproxymodel.cpp45
-rw-r--r--qt-models/ssrfsortfilterproxymodel.h34
4 files changed, 1 insertions, 81 deletions
diff --git a/qt-models/CMakeLists.txt b/qt-models/CMakeLists.txt
index dc840e059..896ee9930 100644
--- a/qt-models/CMakeLists.txt
+++ b/qt-models/CMakeLists.txt
@@ -26,7 +26,6 @@ set(SUBSURFACE_DESKTOP_MODELS_LIB_SRCS
divetripmodel.cpp
diveplannermodel.cpp
divecomputerextradatamodel.cpp
- ssrfsortfilterproxymodel.cpp
)
# models exclusively used in mobile builds
diff --git a/qt-models/divelocationmodel.h b/qt-models/divelocationmodel.h
index 048b2c0a3..fe78854b9 100644
--- a/qt-models/divelocationmodel.h
+++ b/qt-models/divelocationmodel.h
@@ -4,9 +4,9 @@
#include <QAbstractTableModel>
#include <QStringListModel>
+#include <QSortFilterProxyModel>
#include <stdint.h>
#include "core/units.h"
-#include "ssrfsortfilterproxymodel.h"
#define RECENTLY_ADDED_DIVESITE 1
diff --git a/qt-models/ssrfsortfilterproxymodel.cpp b/qt-models/ssrfsortfilterproxymodel.cpp
deleted file mode 100644
index e11b7f569..000000000
--- a/qt-models/ssrfsortfilterproxymodel.cpp
+++ /dev/null
@@ -1,45 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-#include "ssrfsortfilterproxymodel.h"
-
-SsrfSortFilterProxyModel::SsrfSortFilterProxyModel(QObject *parent)
-: QSortFilterProxyModel(parent), less_than(0), accepts_col(0), accepts_row(0)
-{
-}
-
-bool SsrfSortFilterProxyModel::lessThan(const QModelIndex& source_left, const QModelIndex& source_right) const
-{
- Q_ASSERT(less_than);
- const QAbstractItemModel *self = this;
- return less_than(const_cast<QAbstractItemModel*>(self), source_left, source_right);
-}
-
-bool SsrfSortFilterProxyModel::filterAcceptsRow(int source_row, const QModelIndex& source_parent) const
-{
- if (!accepts_row)
- return true;
- const QAbstractItemModel *self = this;
- return accepts_row(const_cast<QAbstractItemModel*>(self), source_row, source_parent);
-}
-
-bool SsrfSortFilterProxyModel::filterAcceptsColumn(int source_column, const QModelIndex& source_parent) const
-{
- if (!accepts_col)
- return true;
- const QAbstractItemModel *self = this;
- return accepts_col(const_cast<QAbstractItemModel*>(self), source_column, source_parent);
-}
-
-void SsrfSortFilterProxyModel::setLessThan(less_than_cb func)
-{
- less_than = func;
-}
-
-void SsrfSortFilterProxyModel::setFilterRow(filter_accepts_row_cb func)
-{
- accepts_row = func;
-}
-
-void SsrfSortFilterProxyModel::setFilterCol(filter_accepts_col_cb func)
-{
- accepts_col = func;
-}
diff --git a/qt-models/ssrfsortfilterproxymodel.h b/qt-models/ssrfsortfilterproxymodel.h
deleted file mode 100644
index 0fb76d91e..000000000
--- a/qt-models/ssrfsortfilterproxymodel.h
+++ /dev/null
@@ -1,34 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-#ifndef SSRFSORTFILTERPROXYMODEL_H
-#define SSRFSORTFILTERPROXYMODEL_H
-
-#include <QSortFilterProxyModel>
-
-typedef bool (*filter_accepts_col_cb) (QAbstractItemModel *model,int sourceRow, const QModelIndex& parent);
-typedef bool (*filter_accepts_row_cb) (QAbstractItemModel *model,int sourceRow, const QModelIndex& parent);
-typedef bool (*less_than_cb) (QAbstractItemModel *model, const QModelIndex& left, const QModelIndex& right);
-
-/* Use this class when you wanna a quick filter.
- * instead of creating a new class, just create a new instance of this class
- * and plug your callback.
- */
-class SsrfSortFilterProxyModel : public QSortFilterProxyModel {
- Q_OBJECT
-
-public:
- SsrfSortFilterProxyModel(QObject *parent = 0);
- bool lessThan(const QModelIndex& source_left, const QModelIndex& source_right) const override;
- bool filterAcceptsRow(int source_row, const QModelIndex& source_parent) const override;
- bool filterAcceptsColumn(int source_column, const QModelIndex& source_parent) const override;
-
- void setLessThan(less_than_cb func);
- void setFilterRow(filter_accepts_row_cb func);
- void setFilterCol(filter_accepts_col_cb func);
-
-private:
- less_than_cb less_than;
- filter_accepts_col_cb accepts_col;
- filter_accepts_row_cb accepts_row;
-};
-
-#endif