File indexing completed on 2024-05-12 16:59:38
0001 /* 0002 SPDX-FileCopyrightText: 2022 Fushan Wen <qydwhotmail@gmail.com> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include "abstractcalendarprovider.h" 0010 0011 /** 0012 * @short An alternate calendar provider for the calendar system available in QCalendar. 0013 * 0014 * This class presents an alternate calendar provider for the calendar system available 0015 * in QCalendar. 0016 * The available calendar systems are listed in QCalendar::availableCalendars(). 0017 */ 0018 class QtCalendarProvider : public AbstractCalendarProvider 0019 { 0020 Q_OBJECT 0021 0022 public: 0023 explicit QtCalendarProvider(QObject *parent, CalendarSystem::System calendarSystem); 0024 ~QtCalendarProvider() override; 0025 0026 QCalendar::YearMonthDay fromGregorian(const QDate &date) const override; 0027 CalendarEvents::CalendarEventsPlugin::SubLabel subLabels(const QDate &date) const override; 0028 0029 private: 0030 const std::unique_ptr<class QtCalendarProviderPrivate> d; 0031 };