File indexing completed on 2024-05-05 16:58:39
0001 // SPDX-FileCopyrightText: 2021 Nicolas Fella <nicolas.fella@gmx.de> 0002 // SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0003 0004 #pragma once 0005 0006 #include <QSortFilterProxyModel> 0007 0008 /** 0009 * @class MessageFilterModel 0010 * 0011 * This model filters out any messages that should be hidden. 0012 * 0013 * Deleted messages are only hidden if the user hasn't set them to be shown. 0014 */ 0015 class MessageFilterModel : public QSortFilterProxyModel 0016 { 0017 Q_OBJECT 0018 public: 0019 explicit MessageFilterModel(QObject *parent = nullptr); 0020 0021 /** 0022 * @brief Custom filter function to remove hidden messages. 0023 */ 0024 bool filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const override; 0025 };