Development/Architecture/KDE4/Plasma

From KDE TechBase
Revision as of 13:22, 4 March 2013 by Sdh (talk | contribs) (updated link to qt doc, updated wording from future to present tense)


Plasma is the name of the new desktop which replaced KDesktop in KDE4. You may think that it is a union of SuperKaramba and KDesktop, but it's more. It's a whole concept of functionality and beauty.

Its implementation is based on the Qt Graphics View Framework introduced in Qt 4.2.

From a developer point of view there are some classes in libplasma who play central roles.

  • Corona: extends QGraphicsScene and provides functionality for adding applets and karamba themes.
  • Widget: extends QGraphicsItem and works as simple elements in the desktop. There are some built-in in libplasma as icons or buttons.
  • Applet: extends Widget and implements sophisticated functionality as rss display, a clock or system monitoring.
  • DataEngine: The common use of a DataEngine is to provide data to an applet for display. This allows a user interface elements to show all sorts of data.

Further reading