From 7d68b36befe7f311f6164e3bca2d9b35ba7fe627 Mon Sep 17 00:00:00 2001 From: Fushan Wen Date: Wed, 11 May 2022 20:40:38 +0800 Subject: [PATCH] eventpluginsmanager: relay `alternateDateReady` and `subLabelReady` Two new signals are added in CalendarEventsPlugin, so we need to relay them to make DaysModel receive them. CCBUG: 429892 --- components/calendar/eventpluginsmanager.cpp | 4 ++-- components/calendar/eventpluginsmanager.h | 19 +++++++++++++++++-- 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/components/calendar/eventpluginsmanager.cpp b/components/calendar/eventpluginsmanager.cpp index 9636f2209..9d4c0755a 100644 --- a/components/calendar/eventpluginsmanager.cpp +++ b/components/calendar/eventpluginsmanager.cpp @@ -6,8 +6,6 @@ #include "eventpluginsmanager.h" -#include - #include #include #include @@ -258,6 +256,8 @@ void EventPluginsManager::loadPlugin(const QString &absolutePath) connect(eventsPlugin, &CalendarEvents::CalendarEventsPlugin::dataReady, this, &EventPluginsManager::dataReady); connect(eventsPlugin, &CalendarEvents::CalendarEventsPlugin::eventModified, this, &EventPluginsManager::eventModified); connect(eventsPlugin, &CalendarEvents::CalendarEventsPlugin::eventRemoved, this, &EventPluginsManager::eventRemoved); + connect(eventsPlugin, &CalendarEvents::CalendarEventsPlugin::alternateDateReady, this, &EventPluginsManager::alternateDateReady); + connect(eventsPlugin, &CalendarEvents::CalendarEventsPlugin::subLabelReady, this, &EventPluginsManager::subLabelReady); } else { // not our/valid plugin, so unload it loader.unload(); diff --git a/components/calendar/eventpluginsmanager.h b/components/calendar/eventpluginsmanager.h index 73f4ef051..0735cfc50 100644 --- a/components/calendar/eventpluginsmanager.h +++ b/components/calendar/eventpluginsmanager.h @@ -10,9 +10,10 @@ #include #include +#include + namespace CalendarEvents { -class CalendarEventsPlugin; class EventData; } class EventPluginsModel; @@ -44,13 +45,27 @@ public: Q_SIGNALS: void pluginsChanged(); - // These three signals below are used for relaying the + // These 5 signals below are used for relaying the // plugin signals so that the EventPluginsManager don't // have to worry about connecting to newly loaded plugins void dataReady(const QMultiHash &data); void eventModified(const CalendarEvents::EventData &modifiedEvent); void eventRemoved(const QString &uid); + /** + * Relays the plugin signal that contains alternate dates + * + * @param data a hash from CalendarEventsPlugin + */ + void alternateDateReady(const QHash &data); + + /** + * Relays the plugin signal that contains sub-labels + * + * @param data a hash from CalendarEventsPlugin + */ + void subLabelReady(const QHash &data); + private: void loadPlugin(const QString &absolutePath);