File indexing completed on 2024-04-28 16:44:42

0001 /*
0002     SPDX-FileCopyrightText: 2022 Fushan Wen <qydwhotmail@gmail.com>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #ifndef ALTERNATECALENDARPLUGIN_H
0008 #define ALTERNATECALENDARPLUGIN_H
0009 
0010 #include <memory>
0011 
0012 #include <CalendarEvents/CalendarEventsPlugin>
0013 
0014 #include "calendarsystem.h"
0015 
0016 class AlternateCalendarPlugin : public CalendarEvents::CalendarEventsPlugin
0017 {
0018     Q_OBJECT
0019     Q_PLUGIN_METADATA(IID "org.kde.CalendarEventsPlugin" FILE "alternatecalendarplugin.json")
0020     Q_INTERFACES(CalendarEvents::CalendarEventsPlugin)
0021 
0022 public:
0023     AlternateCalendarPlugin(QObject *parent = nullptr);
0024     ~AlternateCalendarPlugin() override;
0025 
0026     void loadEventsForDateRange(const QDate &startDate, const QDate &endDate) override;
0027 
0028 public Q_SLOTS:
0029     void updateSettings();
0030 
0031 private:
0032     const std::unique_ptr<class AlternateCalendarPluginPrivate> d;
0033 
0034     QDate m_lastStartDate;
0035     QDate m_lastEndDate;
0036 };
0037 
0038 #endif