File indexing completed on 2024-11-24 04:42:06

0001 /*
0002     SPDX-FileCopyrightText: 2022 Volker Krause <vkrause@kde.org>
0003     SPDX-License-Identifier: LGPL-2.0-or-later
0004 */
0005 
0006 #ifndef KCALENDARCORE_ANDROIDCALENDARPLUGIN_H
0007 #define KCALENDARCORE_ANDROIDCALENDARPLUGIN_H
0008 
0009 #include "android/calendarplugin.h"
0010 
0011 #include <KCalendarCore/CalendarPlugin>
0012 
0013 /** Android system calendar plugin. */
0014 class AndroidCalendarPlugin : public KCalendarCore::CalendarPlugin
0015 {
0016     Q_OBJECT
0017     Q_PLUGIN_METADATA(IID "org.kde.kcalendarcore.CalendarPlugin")
0018 public:
0019     explicit AndroidCalendarPlugin (QObject *parent = nullptr, const QVariantList &args = {});
0020     ~AndroidCalendarPlugin();
0021 
0022     QVector<KCalendarCore::Calendar::Ptr> calendars() const override;
0023 
0024 private:
0025     void loadCalendars() const;
0026 
0027     mutable QVector<KCalendarCore::Calendar::Ptr> m_calendars;
0028     JniCalendarPlugin m_jni;
0029 };
0030 
0031 #endif // KCALENDARCORE_ANDROIDCALENDARPLUGIN_H