File indexing completed on 2024-05-19 05:38:22
0001 /* 0002 SPDX-FileCopyrightText: 2019 Kai Uwe Broulik <kde@privat.broulik.de> 0003 0004 SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0005 */ 0006 0007 #pragma once 0008 0009 #include <QSortFilterProxyModel> 0010 0011 class FilterProxyModel : public QSortFilterProxyModel 0012 { 0013 Q_OBJECT 0014 0015 Q_PROPERTY(QString query READ query WRITE setQuery NOTIFY queryChanged) 0016 0017 public: 0018 FilterProxyModel(QObject *parent = nullptr); 0019 ~FilterProxyModel() override; 0020 0021 QString query() const; 0022 void setQuery(const QString &query); 0023 0024 bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const override; 0025 0026 Q_SIGNALS: 0027 void queryChanged(); 0028 0029 private: 0030 QString m_query; 0031 };