diff --git a/kmymoney/models/accountsproxymodel.h b/kmymoney/models/accountsproxymodel.h --- a/kmymoney/models/accountsproxymodel.h +++ b/kmymoney/models/accountsproxymodel.h @@ -24,10 +24,16 @@ // ---------------------------------------------------------------------------- // QT Includes -// ---------------------------------------------------------------------------- -// KDE Includes +#include // for QT_VERSION macro +#include +#if QT_VERSION < QT_VERSION_CHECK(5,10,0) #include +#define QSortFilterProxyModel KRecursiveFilterProxyModel +#endif + +// ---------------------------------------------------------------------------- +// KDE Includes // ---------------------------------------------------------------------------- // Project Includes @@ -58,7 +64,7 @@ namespace eAccountsModel { enum class Column; } class AccountsProxyModelPrivate; -class KMM_MODELS_EXPORT AccountsProxyModel : public KRecursiveFilterProxyModel +class KMM_MODELS_EXPORT AccountsProxyModel : public QSortFilterProxyModel { Q_OBJECT Q_DISABLE_COPY(AccountsProxyModel) @@ -103,6 +109,13 @@ private: Q_DECLARE_PRIVATE(AccountsProxyModel) + +#if QT_VERSION < QT_VERSION_CHECK(5,10,0) + // provide the interface for backward compatbility + void setRecursiveFilteringEnabled(bool) {} +#endif + }; +#undef QSortFilterProxyModel #endif diff --git a/kmymoney/models/accountsproxymodel.cpp b/kmymoney/models/accountsproxymodel.cpp --- a/kmymoney/models/accountsproxymodel.cpp +++ b/kmymoney/models/accountsproxymodel.cpp @@ -36,19 +36,25 @@ using namespace eAccountsModel; +#if QT_VERSION < QT_VERSION_CHECK(5,10,0) +#define QSortFilterProxyModel KRecursiveFilterProxyModel +#endif AccountsProxyModel::AccountsProxyModel(QObject *parent) : - KRecursiveFilterProxyModel(parent), + QSortFilterProxyModel(parent), d_ptr(new AccountsProxyModelPrivate) { + setRecursiveFilteringEnabled(true); setDynamicSortFilter(true); setSortLocaleAware(true); setFilterCaseSensitivity(Qt::CaseInsensitive); } AccountsProxyModel::AccountsProxyModel(AccountsProxyModelPrivate &dd, QObject *parent) : - KRecursiveFilterProxyModel(parent), d_ptr(&dd) + QSortFilterProxyModel(parent), d_ptr(&dd) { + setRecursiveFilteringEnabled(true); } +#undef QSortFilterProxyModel AccountsProxyModel::~AccountsProxyModel() { diff --git a/kmymoney/models/equitiesmodel.h b/kmymoney/models/equitiesmodel.h --- a/kmymoney/models/equitiesmodel.h +++ b/kmymoney/models/equitiesmodel.h @@ -25,11 +25,14 @@ #include +#include +#if QT_VERSION < QT_VERSION_CHECK(5,10,0) +#include +#define QSortFilterProxyModel KRecursiveFilterProxyModel +#endif // ---------------------------------------------------------------------------- // KDE Includes -#include - // ---------------------------------------------------------------------------- // Project Includes @@ -71,7 +74,7 @@ Private* const d; }; -class KMM_MODELS_EXPORT EquitiesFilterProxyModel : public KRecursiveFilterProxyModel +class KMM_MODELS_EXPORT EquitiesFilterProxyModel : public QSortFilterProxyModel { Q_OBJECT @@ -96,6 +99,12 @@ private: class Private; Private* const d; +#if QT_VERSION < QT_VERSION_CHECK(5,10,0) + // provide the interface for backward compatbility + void setRecursiveFilteringEnabled(bool enable) {} +#endif + }; +#undef QSortFilterProxyModel #endif // EQUITIESMODEL_H diff --git a/kmymoney/models/equitiesmodel.cpp b/kmymoney/models/equitiesmodel.cpp --- a/kmymoney/models/equitiesmodel.cpp +++ b/kmymoney/models/equitiesmodel.cpp @@ -384,17 +384,22 @@ bool m_hideZeroBalanceAccounts; }; +#if QT_VERSION < QT_VERSION_CHECK(5,10,0) +#define QSortFilterProxyModel KRecursiveFilterProxyModel +#endif EquitiesFilterProxyModel::EquitiesFilterProxyModel(QObject *parent, EquitiesModel *model, const QList &columns) - : KRecursiveFilterProxyModel(parent), d(new Private) + : QSortFilterProxyModel(parent), d(new Private) { + setRecursiveFilteringEnabled(true); setDynamicSortFilter(true); setFilterKeyColumn(-1); setSortLocaleAware(true); setFilterCaseSensitivity(Qt::CaseInsensitive); setSourceModel(model); d->m_mdlColumns = model->getColumns(); d->m_visColumns.append(columns); } +#undef QSortFilterProxyModel EquitiesFilterProxyModel::~EquitiesFilterProxyModel() { diff --git a/kmymoney/models/securitiesmodel.h b/kmymoney/models/securitiesmodel.h --- a/kmymoney/models/securitiesmodel.h +++ b/kmymoney/models/securitiesmodel.h @@ -24,12 +24,15 @@ // QT Includes #include +#include +#if QT_VERSION < QT_VERSION_CHECK(5,10,0) +#include +#define QSortFilterProxyModel KRecursiveFilterProxyModel +#endif // ---------------------------------------------------------------------------- // KDE Includes -#include - // ---------------------------------------------------------------------------- // Project Includes @@ -68,7 +71,7 @@ Private* const d; }; -class KMM_MODELS_EXPORT SecuritiesFilterProxyModel : public KRecursiveFilterProxyModel +class KMM_MODELS_EXPORT SecuritiesFilterProxyModel : public QSortFilterProxyModel { Q_OBJECT @@ -90,6 +93,13 @@ private: class Private; Private* const d; + +#if QT_VERSION < QT_VERSION_CHECK(5,10,0) + // provide the interface for backward compatbility + void setRecursiveFilteringEnabled(bool enable) {} +#endif + }; +#undef QSortFilterProxyModel #endif // SECURITIESMODEL_H diff --git a/kmymoney/models/securitiesmodel.cpp b/kmymoney/models/securitiesmodel.cpp --- a/kmymoney/models/securitiesmodel.cpp +++ b/kmymoney/models/securitiesmodel.cpp @@ -302,17 +302,22 @@ MyMoneyFile *m_file; }; +#if QT_VERSION < QT_VERSION_CHECK(5,10,0) +#define QSortFilterProxyModel KRecursiveFilterProxyModel +#endif SecuritiesFilterProxyModel::SecuritiesFilterProxyModel(QObject *parent, SecuritiesModel *model, const QList &columns) - : KRecursiveFilterProxyModel(parent), d(new Private) + : QSortFilterProxyModel(parent), d(new Private) { + setRecursiveFilteringEnabled(true); setDynamicSortFilter(true); setFilterKeyColumn(-1); setSortLocaleAware(true); setFilterCaseSensitivity(Qt::CaseInsensitive); setSourceModel(model); d->m_mdlColumns = model->getColumns(); d->m_visColumns.append(columns); } +#undef QSortFilterProxyModel SecuritiesFilterProxyModel::~SecuritiesFilterProxyModel() {