Akonadi Calendar

searchcollectionhelper.h
1/*
2 This file is part of KOrganizer.
3
4 SPDX-FileCopyrightText: 2015 Sandro Knauß <knauss@kolabsys.com>
5
6 SPDX-License-Identifier: GPL-2.0-or-later WITH Qt-Commercial-exception-1.0
7*/
8
9#pragma once
10
11#include "akonadi-calendar_export.h"
12
13#include <QObject>
14#include <QString>
15
16#include <Akonadi/Collection>
17#include <KCalendarCore/Attendee>
18
19class KJob;
20
21namespace Akonadi
22{
23/// Helper class to initialise the search collections
24class SearchCollectionHelperPrivate;
25class AKONADI_CALENDAR_EXPORT SearchCollectionHelper : public QObject
26{
27 Q_OBJECT
28public:
29 /**
30 * @brief Construct a new Search Collection Helper object.
31 *
32 * Note that helper is disabled by default. Call setEnabled(true) to enable it.
33 *
34 * @param parent
35 */
36 explicit SearchCollectionHelper(QObject *parent = nullptr);
37 ~SearchCollectionHelper() override;
38
39 void setEnabled(bool enabled);
40 [[nodiscard]] bool enabled() const;
41
42private:
43 AKONADI_CALENDAR_NO_EXPORT void onSearchCollectionsFetched(KJob *job);
44 AKONADI_CALENDAR_NO_EXPORT void updateOpenInvitation();
45 AKONADI_CALENDAR_NO_EXPORT void updateDeclinedInvitation();
46 AKONADI_CALENDAR_NO_EXPORT void init();
47 AKONADI_CALENDAR_NO_EXPORT void deinit();
48
49 AKONADI_CALENDAR_NO_EXPORT void createSearchJobFinished(KJob *job);
50 AKONADI_CALENDAR_NO_EXPORT void modifyResult(KJob *job);
51
52 AKONADI_CALENDAR_NO_EXPORT void fetchSearchCollections();
53 AKONADI_CALENDAR_NO_EXPORT void
54 updateSearchCollection(Akonadi::Collection col, KCalendarCore::Attendee::PartStat status, const QString &name, const QString &displayName);
55 AKONADI_CALENDAR_NO_EXPORT void removeSearchCollections();
56
57 std::unique_ptr<SearchCollectionHelperPrivate> const d;
58};
59}
Q_SCRIPTABLE CaptureState status()
FreeBusyManager::Singleton.
QCA_EXPORT void init()
QCA_EXPORT void deinit()
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.