Akonadi Calendar

calfilterpartstatusproxymodel.h
1/*
2 SPDX-FileCopyrightText: 2014 Sandro Knauß <knauss@kolabsys.com>
3
4 SPDX-License-Identifier: LGPL-2.0-or-later
5*/
6
7#pragma once
8
9#include "akonadi-calendar_export.h"
10
11#include <KCalendarCore/Attendee>
12#include <QSortFilterProxyModel>
13
14#include <memory>
15
16namespace Akonadi
17{
18class CalFilterPartStatusProxyModelPrivate;
19
20class AKONADI_CALENDAR_EXPORT CalFilterPartStatusProxyModel : public QSortFilterProxyModel
21{
22 Q_OBJECT
23public:
24 explicit CalFilterPartStatusProxyModel(QObject *parent = nullptr);
25 ~CalFilterPartStatusProxyModel() override;
26
27 void setFilterVirtual(bool filterVirtual);
28 [[nodiscard]] bool filterVirtual() const;
29
30 void setBlockedStatusList(const QList<KCalendarCore::Attendee::PartStat> &blockStatusList);
31 const QList<KCalendarCore::Attendee::PartStat> &blockedStatusList() const;
32
33protected:
34 [[nodiscard]] bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const override;
35
36private:
37 //@cond PRIVATE
38 AKONADI_CALENDAR_NO_EXPORT void slotIdentitiesChanged();
39
40 std::unique_ptr<CalFilterPartStatusProxyModelPrivate> const d;
41
42 //@endcond
43};
44}
FreeBusyManager::Singleton.
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Sat Dec 21 2024 16:57:41 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.