KCalendarCore

calendarplugin.h
1 /*
2  This file is part of the kcalcore library.
3 
4  SPDX-FileCopyrightText: 2020 Nicolas Fella <[email protected]>
5  SPDX-License-Identifier: LGPL-2.0-or-later
6 */
7 
8 #ifndef KCALCORE_CALENDARPLUGIN_H
9 #define KCALCORE_CALENDARPLUGIN_H
10 
11 #include "kcalendarcore_export.h"
12 
13 #include <KCalendarCore/Calendar>
14 
15 namespace KCalendarCore
16 {
17 /**
18  @brief
19  A plugin that provides calendar data.
20 
21  It allows calendar applications to consume data provided by multiple
22  sources, e.g. local ical files or remote calendars.
23 
24  @since 5.85
25 
26 */
27 class KCALENDARCORE_EXPORT CalendarPlugin : public QObject
28 {
29  Q_OBJECT
30 public:
31  CalendarPlugin(QObject *parent, const QVariantList &args);
32 
33  /**
34  * The set of calendars defined by this plugin.
35  *
36  * @return QVector of calendars.
37  */
38  virtual QVector<Calendar::Ptr> calendars() const = 0;
39 
40 Q_SIGNALS:
41  /**
42  * Emitted when the set of calendars changed.
43  */
44  void calendarsChanged();
45 
46 private:
47  void *d;
48 };
49 
50 }
51 
52 #endif
A plugin that provides calendar data.
Namespace for all KCalendarCore types.
Definition: alarm.h:36
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Thu Sep 21 2023 04:00:45 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.