Plasma/Clock: Difference between revisions

From KDE Community Wiki
(New page!)
 
Line 5: Line 5:


http://userbase.kde.org/Plasma/Clocks
http://userbase.kde.org/Plasma/Clocks
http://forum.kde.org/viewtopic.php?f=114&t=83326
[https://bugs.kde.org/buglist.cgi?order=Importance&query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=widget-clock&product=plasma KDE Bugzilla all open Plasma Clock bugs]
== Current Implementation ==
The current implementation can be found in the following locations.
Time DataEngine
https://projects.kde.org/projects/kde/kde-workspace/repository/revisions/master/show/plasma/generic/dataengines/time
Calendar DataEngine
https://projects.kde.org/projects/kde/kde-workspace/repository/revisions/master/show/plasma/generic/dataengines/calendar
Akonadi DataEngine
https://projects.kde.org/projects/kde/kde-workspace/repository/revisions/master/show/plasma/generic/dataengines/akonadi
Plasma Clock Library, holding the common base implementation for all clock/calendar widgets
https://projects.kde.org/projects/kde/kde-workspace/repository/revisions/master/show/libs/plasmaclock
The Calendar Applet
https://projects.kde.org/projects/kde/kde-workspace/repository/revisions/master/show/plasma/generic/applets/calendar
The Digital Clock Applet
https://projects.kde.org/projects/kde/kde-workspace/repository/revisions/master/show/plasma/generic/applets/digital-clock
The Analog Clock Applet
https://projects.kde.org/projects/kde/kde-workspace/repository/revisions/master/show/plasma/generic/applets/analog-clock
The Binary Clock Applet
https://projects.kde.org/projects/kde/kdeplasma-addons/repository/revisions/master/show/applets/binary-clock
The Fuzzy Clock
https://projects.kde.org/projects/kde/kdeplasma-addons/repository/revisions/master/show/applets/fuzzy-clock
== PIM Data Interface ==
Currently PIM data is read-only and is provided via the Calendar DataEngine.  To make PIM data 2-way would require the creation of a Service.  However, the Akonadi interface and the creation of PIM data in general is very complex and is not ideally suited to being mapped into a Data Engine or Service.  The API would be very big and unwieldy and a maintenance nightmare.  This is one occasion where Plasma elements requiring complex functionality will be better off directly using the Akonadi API and UI elements.  However this doesn't stop a simplified service being provided that would meet 80% of needs with the more complex requirements being left for the native apps to handle.
=== Plasma Service Design ===
An initial minimal Plasma Service has been defined at:
https://projects.kde.org/projects/kde/kde-workspace/repository/revisions/master/entry/plasma/generic/dataengines/calendar/calendar.operations
The actual implementation is still required.

Revision as of 13:20, 28 May 2012

Plasma is all about Clocks. It's an old joke, but it contains a kernel of truth. The clock is the one element of the desktop most people depend on, and it can be a valuable conduit for information they need. This page will co-ordinate all the resources around the Plasma Clock and plans for it's future.


Resources

http://userbase.kde.org/Plasma/Clocks http://forum.kde.org/viewtopic.php?f=114&t=83326 KDE Bugzilla all open Plasma Clock bugs

Current Implementation

The current implementation can be found in the following locations.

Time DataEngine https://projects.kde.org/projects/kde/kde-workspace/repository/revisions/master/show/plasma/generic/dataengines/time

Calendar DataEngine https://projects.kde.org/projects/kde/kde-workspace/repository/revisions/master/show/plasma/generic/dataengines/calendar

Akonadi DataEngine https://projects.kde.org/projects/kde/kde-workspace/repository/revisions/master/show/plasma/generic/dataengines/akonadi

Plasma Clock Library, holding the common base implementation for all clock/calendar widgets https://projects.kde.org/projects/kde/kde-workspace/repository/revisions/master/show/libs/plasmaclock

The Calendar Applet https://projects.kde.org/projects/kde/kde-workspace/repository/revisions/master/show/plasma/generic/applets/calendar

The Digital Clock Applet https://projects.kde.org/projects/kde/kde-workspace/repository/revisions/master/show/plasma/generic/applets/digital-clock

The Analog Clock Applet https://projects.kde.org/projects/kde/kde-workspace/repository/revisions/master/show/plasma/generic/applets/analog-clock

The Binary Clock Applet https://projects.kde.org/projects/kde/kdeplasma-addons/repository/revisions/master/show/applets/binary-clock

The Fuzzy Clock https://projects.kde.org/projects/kde/kdeplasma-addons/repository/revisions/master/show/applets/fuzzy-clock


PIM Data Interface

Currently PIM data is read-only and is provided via the Calendar DataEngine. To make PIM data 2-way would require the creation of a Service. However, the Akonadi interface and the creation of PIM data in general is very complex and is not ideally suited to being mapped into a Data Engine or Service. The API would be very big and unwieldy and a maintenance nightmare. This is one occasion where Plasma elements requiring complex functionality will be better off directly using the Akonadi API and UI elements. However this doesn't stop a simplified service being provided that would meet 80% of needs with the more complex requirements being left for the native apps to handle.

Plasma Service Design

An initial minimal Plasma Service has been defined at:

https://projects.kde.org/projects/kde/kde-workspace/repository/revisions/master/entry/plasma/generic/dataengines/calendar/calendar.operations

The actual implementation is still required.