1 /*
2     SPDX-FileCopyrightText: 2018 Sandro Knauß <sknauss@kde.org>
3 
4     SPDX-License-Identifier: LGPL-2.0-or-later
5 */
6 
7 #pragma once
8 
9 #include <QSet>
10 #include <QSortFilterProxyModel>
11 #include <QTimer>
12 
13 namespace KPIM
14 {
15 class KCheckComboBox;
16 }
17 
18 class DebugFilterModel : public QSortFilterProxyModel
19 {
20     Q_OBJECT
21 public:
22     explicit DebugFilterModel(QObject *parent = nullptr);
23     ~DebugFilterModel() override;
24 
25     void setSenderFilter(KPIM::KCheckComboBox *appFilter);
26 
27 protected:
28     bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const override;
29 
30 private:
31     KPIM::KCheckComboBox *mSenderFilter = nullptr;
32     QSet<QString> mCheckedSenders;
33     QTimer mInvalidateTimer;
34 };
35 
36