File indexing completed on 2024-05-12 05:12:45

0001 /*
0002     SPDX-FileCopyrightText: 2018 Sandro Knauß <sknauss@kde.org>
0003 
0004     SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #pragma once
0008 
0009 #include <QSet>
0010 #include <QSortFilterProxyModel>
0011 #include <QTimer>
0012 
0013 namespace KPIM
0014 {
0015 class KCheckComboBox;
0016 }
0017 
0018 class DebugFilterModel : public QSortFilterProxyModel
0019 {
0020     Q_OBJECT
0021 public:
0022     explicit DebugFilterModel(QObject *parent = nullptr);
0023     ~DebugFilterModel() override;
0024 
0025     void setSenderFilter(KPIM::KCheckComboBox *appFilter);
0026 
0027 protected:
0028     bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const override;
0029 
0030 private:
0031     KPIM::KCheckComboBox *mSenderFilter = nullptr;
0032     QSet<QString> mCheckedSenders;
0033     QTimer mInvalidateTimer;
0034 };