13 Commits

Author SHA1 Message Date
Martin Klapetek
520837a07c [calendar] Move the plugin library to KDeclarative
Marco is not happy with the plugin being here and having a Plasma
namespace, so after some discussion it was decided to move it to
KDeclarative and change to CalendarEvents namespace.
2015-11-16 14:26:26 -05:00
Martin Klapetek
d0d0a27bac [calendar] Move the plugins handling to a separate class
This is also made a QML singleton that will be used for the applet
config view where it will add the plugin configs once we add that
possibility.

The same instance is then set to the DaysModel from QML.

REVIEW: 125951
2015-11-16 11:49:02 -05:00
Martin Klapetek
fe0384f0d4 [calendar] Add plugin system for Calendar events
This adds a simple plugin interface that can be subclassed
and provide events integration with Plasma Calendar applet.

It's asynchronous and I've kept it deliberately simple.
For now the Calendar tells the plugins which date range
is being displayed, the plugins load the data and then
emit the dataReady() signal containing the events.

The events are stored in a multihash for quick access
by the Calendar's agenda part but also for overall
easy-to-use (eg. in teh model data()).

The event data is stored in EventData class, which has
a pretty self-explanatory members, except perhaps the
"isMinor" property. The intention with this is to support
namedays, where in some countries the calendars have
different name every day. This is just a minor holiday
and as such should not mark the calendar grid, otherwise
the whole grid would be in a different color.

Putting the interface here might raise the question of
depending on plasma-framework, but plugins provided by
KDE can go to plasma-workspace and other 3rd party ones
would just have to live with it. I don't think it will
be a problem but if it turns out it is, we can rethink
the placement.

REVIEW: 125817
CCBUG: 349676
CHANGELOG: Allow plugins to supply event data to Calendar applet
2015-11-16 11:46:26 -05:00
Alex Merry
48e9c2f29e Update installation variables. 2015-01-10 17:47:31 +00:00
Aurélien Gâteau
d0bd7f77bf cmake warnings--
No need to define projects if we don't use any ${project}_* var.
2014-04-26 02:10:23 +02:00
Marco Martin
82e9bd46d0 don't depend from Qt5Declarative
That's the qt5 port of QGraphicsView-based QML
2014-03-31 18:37:28 +02:00
Sebastian Kügler
19db9c9663 Add calendar QML components to the Plugin
This allows us to keep minimal API, since the calendar view and import
really belong together. Also makes it a lot easier to provide a separate
Calendar Plasmoid.
2013-11-12 03:40:52 +01:00
Aleix Pol
1d3da96d88 Make sure that plasma-framework is not using anything from kdelibs4
Stop finding the packages
Remove KDE4_ includes
Remove unused LIBINTL finder, provided by kdelibs
2013-11-11 18:29:32 +01:00
Aleix Pol
af8a7bad7d Stop using Qt5Transitional in Plasma Frameworks
Removes the find_package(Qt5Transitional) and does the proper
find_package(Qt5) with the list of modules.

Most of the porting is about using the Qt5:: targets.

REVIEW: 113345
2013-10-22 00:40:17 +02:00
Sebastian Kügler
c7c9e8fefc Put steve's changes back in
CCMAIL:steveire@gmail.com
2013-10-13 02:00:32 +02:00
Sebastian Kügler
c2be5b6b12 Revert bef789642e4bc245b
That commit breaks the build, not finding qtest_kde.h, and cascading
errors from there.

CCMAIL:steveire@gmail.com
2013-10-12 21:47:07 +02:00
Stephen Kelly
bef789642e Remove obsolete include_directories use. 2013-10-12 15:25:19 +02:00
Marco Martin
e8a4332034 re-add the calendar qml component
CCMAIL:heena393@gmail.com
2013-08-31 15:23:04 +02:00