|
|
(23 intermediate revisions by 2 users not shown) |
Line 1: |
Line 1: |
| == Introduction ==
| | moved to http://techbase.kde.org/Development/Tutorials/Plasma/ShellDesign |
| | |
| To create a full featured Plasma shell, whether it is a full primary user interface such as Plasma Desktop or Plasma Netbook or an application helper like the Plasma KPart of Plasma Media Center, there are a number of components that the application needs to provide and even more that are optional to create a well working experience.
| |
| | |
| This article documents each of these components and how they fit together.
| |
| | |
| == Core Presentation ==
| |
| | |
| === The Base Canvas: Corona ===
| |
| | |
| === Views ===
| |
| | |
| === Custom Containments ===
| |
| | |
| === PluginLoader ===
| |
| | |
| == Window Dressings ==
| |
| | |
| === Containment Tool Boxes ===
| |
| Each containment shown by the Plasma Shell, can have a central place to show the main actions that can be performed.
| |
| | |
| A default set of toolbox actions is present in the base Containment implementation. Containment subclasses, as well as the Corona implementation of the Plasma shell can add their own.
| |
| | |
| The method Containment::AddToolBoxAction(QAction *a) adds the action a to the toolbox.
| |
| | |
| The action can contain metadata about its category, to help the toolbox implementations to visually group together similar actions, to do that call
| |
| QAction::setData(AbstractToolBox::ToolType)
| |
| | |
| === Applet Handles ===
| |
| | |
| === Containment Actions ===
| |
| | |
| == User Interface Management ==
| |
| | |
| === Containment and View Configuration ===
| |
| | |
| === Remote Access Management ===
| |
| | |
| === Dialog Positioning ===
| |
| | |
| === Animation Customization ===
| |
| | |
| == Configuration and Automation ==
| |
| | |
| === Configuration Files ===
| |
| | |
| === Scripting ===
| |