Plasma
Plasma::Containment Class Reference
The base class for plugins that provide backgrounds and applet grouping containers. More...
#include <Plasma/Containment>

Classes | |
class | StyleOption |
Public Types | |
enum | Type { NoContainmentType = -1, DesktopContainment = 0, PanelContainment, CustomContainment = 127, CustomPanelContainment = 128 } |
Public Slots | |
void | addSiblingContainment () |
void | destroy (bool confirm) |
void | destroy () |
void | focusNextApplet () |
void | focusPreviousApplet () |
void | setFormFactor (Plasma::FormFactor formFactor) |
void | setLocation (Plasma::Location location) |
void | showConfigurationInterface () |
Signals | |
void | addSiblingContainment (Plasma::Containment *) |
void | appletAdded (Plasma::Applet *applet, const QPointF &pos) |
void | appletRemoved (Plasma::Applet *applet) |
void | configureRequested (Plasma::Containment *containment) |
void | contextChanged (Plasma::Context *context) |
void | screenChanged (int wasScreen, int isScreen, Plasma::Containment *containment) |
void | showAddWidgetsInterface (const QPointF &pos) |
void | toolBoxToggled () |
void | zoomRequested (Plasma::Containment *containment, Plasma::ZoomDirection direction) |
Public Member Functions | |
QString | activity () const |
void | addApplet (Applet *applet, const QPointF &pos=QPointF(-1,-1), bool dontInit=true) |
Applet * | addApplet (const QString &name, const QVariantList &args=QVariantList(), const QRectF &geometry=QRectF(-1,-1,-1,-1)) |
void | addAssociatedWidget (QWidget *widget) |
void | addToolBoxAction (QAction *action) |
Applet::List | applets () const |
void | clearApplets () |
void | closeToolBox () |
Containment (QObject *parent, const QVariantList &args) | |
Containment (QGraphicsItem *parent=0, const QString &serviceId=QString(), uint containmentId=0) | |
Type | containmentType () const |
Corona * | corona () const |
int | desktop () const |
bool | drawWallpaper () |
void | enableAction (const QString &name, bool enable) |
void | init () |
void | openToolBox () |
void | removeAssociatedWidget (QWidget *widget) |
void | removeToolBoxAction (QAction *action) |
void | restore (KConfigGroup &group) |
void | save (KConfigGroup &group) const |
int | screen () const |
void | setActivity (const QString &activity) |
void | setScreen (int screen, int desktop=-1) |
void | setToolBoxOpen (bool open) |
void | setWallpaper (const QString &pluginName, const QString &mode=QString()) |
void | showContextMenu (const QPointF &containmentPos, const QPoint &screenPos) |
virtual void | showDropZone (const QPoint pos) |
Plasma::Wallpaper * | wallpaper () const |
~Containment () | |
Static Public Member Functions | |
static KPluginInfo::List | listContainments (const QString &category=QString(), const QString &parentApp=QString()) |
static KPluginInfo::List | listContainmentsForMimetype (const QString &mimetype) |
Protected Member Functions | |
void | contextMenuEvent (QGraphicsSceneContextMenuEvent *event) |
void | dragEnterEvent (QGraphicsSceneDragDropEvent *event) |
void | dragMoveEvent (QGraphicsSceneDragDropEvent *event) |
void | dropEvent (QGraphicsSceneDragDropEvent *event) |
QVariant | itemChange (GraphicsItemChange change, const QVariant &value) |
void | keyPressEvent (QKeyEvent *event) |
void | mouseMoveEvent (QGraphicsSceneMouseEvent *event) |
void | mousePressEvent (QGraphicsSceneMouseEvent *event) |
void | mouseReleaseEvent (QGraphicsSceneMouseEvent *event) |
void | resizeEvent (QGraphicsSceneResizeEvent *event) |
virtual void | restoreContents (KConfigGroup &group) |
virtual void | saveContents (KConfigGroup &group) const |
bool | sceneEventFilter (QGraphicsItem *watched, QEvent *event) |
void | setContainmentType (Containment::Type type) |
void | setDrawWallpaper (bool drawWallpaper) |
const QGraphicsItem * | toolBoxItem () const |
void | wheelEvent (QGraphicsSceneWheelEvent *event) |
Detailed Description
The base class for plugins that provide backgrounds and applet grouping containers.Containment objects provide the means to group applets into functional sets. They also provide the following:
creation of focussing event
- drawing of the background image (which can be interactive)
- form factors (e.g. panel, desktop, full screen, etc)
- applet layout management
Since containment is actually just a Plasma::Applet, all the techniques used for writing the visual presentation of Applets is applicable to Containtments. Containments are differentiated from Applets by being marked with the ServiceType of Plasma/Containment. Plugins registered with both the Applet and the Containment ServiceTypes can be loaded for us in either situation.
See techbase.kde.org for a tutorial on writing Containments using this class.
Definition at line 67 of file containment.h.
Member Enumeration Documentation
- Enumerator:
Reimplemented from Plasma::Applet.
Definition at line 94 of file containment.h.
Constructor & Destructor Documentation
Plasma::Containment::Containment | ( | QGraphicsItem * | parent = 0 , |
|
const QString & | serviceId = QString() , |
|||
uint | containmentId = 0 | |||
) | [explicit] |
- Parameters:
-
parent the QGraphicsItem this applet is parented to serviceId the name of the .desktop file containing the information about the widget containmentId a unique id used to differentiate between multiple instances of the same Applet type
Definition at line 89 of file containment.cpp.
Plasma::Containment::Containment | ( | QObject * | parent, | |
const QVariantList & | args | |||
) |
This constructor is to be used with the plugin loading systems found in KPluginInfo and KService.
The argument list is expected to have two elements: the KService service ID for the desktop entry and an applet ID which must be a base 10 number.
- Parameters:
-
parent a QObject parent; you probably want to pass in 0 args a list of strings containing two entries: the service id and the applet id
Definition at line 102 of file containment.cpp.
Plasma::Containment::~Containment | ( | ) |
Definition at line 112 of file containment.cpp.
Member Function Documentation
QString Plasma::Containment::activity | ( | ) | const |
- Returns:
- the current activity associated with this activity
Definition at line 1359 of file containment.cpp.
void Plasma::Containment::addApplet | ( | Applet * | applet, | |
const QPointF & | pos = QPointF(-1, -1) , |
|||
bool | dontInit = true | |||
) |
Add an existing applet to this Containment.
If dontInit is true, the pending constraints are not flushed either. So it is your responsibility to call both init() and flushPendingConstraints() on the applet.
- Parameters:
-
applet the applet that should be added pos the containment-relative position dontInit if true, init() will not be called on the applet
Definition at line 700 of file containment.cpp.
Applet * Plasma::Containment::addApplet | ( | const QString & | name, | |
const QVariantList & | args = QVariantList() , |
|||
const QRectF & | geometry = QRectF(-1, -1, -1, -1) | |||
) |
Adds an applet to this Containment.
- Parameters:
-
name the plugin name for the applet, as given by KPluginInfo::pluginName() args argument list to pass to the plasmoid geometry where to place the applet, or to auto-place it if an invalid is provided
- Returns:
- a pointer to the applet on success, or 0 on failure
Definition at line 694 of file containment.cpp.
void Plasma::Containment::addAssociatedWidget | ( | QWidget * | widget | ) | [virtual] |
associate actions with this widget, including ones added after this call.
needed to make keyboard shortcuts work.
Reimplemented from Plasma::Applet.
Definition at line 1233 of file containment.cpp.
void Plasma::Containment::addSiblingContainment | ( | ) | [slot] |
Tells the corona to create a new desktop containment.
Definition at line 680 of file containment.cpp.
void Plasma::Containment::addSiblingContainment | ( | Plasma::Containment * | ) | [signal] |
Emitted when the containment wants a new containment to be created.
Usually only used for desktop containments.
void Plasma::Containment::addToolBoxAction | ( | QAction * | action | ) |
void Plasma::Containment::appletAdded | ( | Plasma::Applet * | applet, | |
const QPointF & | pos | |||
) | [signal] |
This signal is emitted when a new applet is created by the containment.
void Plasma::Containment::appletRemoved | ( | Plasma::Applet * | applet | ) | [signal] |
This signal is emitted when an applet is destroyed.
Applet::List Plasma::Containment::applets | ( | ) | const |
void Plasma::Containment::clearApplets | ( | ) |
void Plasma::Containment::closeToolBox | ( | ) |
void Plasma::Containment::configureRequested | ( | Plasma::Containment * | containment | ) | [signal] |
Emitted when the user wants to configure/change containment.
Containment::Type Plasma::Containment::containmentType | ( | ) | const |
void Plasma::Containment::contextChanged | ( | Plasma::Context * | context | ) | [signal] |
The activity associated to this containemnt has changed.
void Plasma::Containment::contextMenuEvent | ( | QGraphicsSceneContextMenuEvent * | event | ) | [protected] |
Definition at line 468 of file containment.cpp.
Corona * Plasma::Containment::corona | ( | ) | const |
Returns the Corona (if any) that this Containment is hosted by.
Definition at line 402 of file containment.cpp.
int Plasma::Containment::desktop | ( | ) | const |
- Returns:
- the viewport (e.g. virtual desktop) this Containment is associated with.
Definition at line 868 of file containment.cpp.
void Plasma::Containment::destroy | ( | bool | confirm | ) | [slot] |
Destroys this containment and all its applets (after a confirmation dialog); it will be removed nicely and deleted.
Its configuration will also be deleted.
- confirm whether or not confirmation from the user should be requested
Definition at line 1449 of file containment.cpp.
void Plasma::Containment::destroy | ( | ) | [virtual, slot] |
Destroys this containment and all its applets (after a confirmation dialog); it will be removed nicely and deleted.
Its configuration will also be deleted.
Reimplemented from Plasma::Applet.
Definition at line 1434 of file containment.cpp.
void Plasma::Containment::dragEnterEvent | ( | QGraphicsSceneDragDropEvent * | event | ) | [protected] |
- Reimplemented from superclass.
- See also:
- QGraphicsItem::dragEnterEvent()
Definition at line 908 of file containment.cpp.
void Plasma::Containment::dragMoveEvent | ( | QGraphicsSceneDragDropEvent * | event | ) | [protected] |
- Reimplemented from superclass.
- See also:
- QGraphicsItem::dragMoveEvent()
Definition at line 929 of file containment.cpp.
bool Plasma::Containment::drawWallpaper | ( | ) |
void Plasma::Containment::dropEvent | ( | QGraphicsSceneDragDropEvent * | event | ) | [protected] |
- Reimplemented from superclass.
- See also:
- QGraphicsItem::dropEvent()
appletList.isEmpty()
Definition at line 935 of file containment.cpp.
void Plasma::Containment::enableAction | ( | const QString & | name, | |
bool | enable | |||
) |
convenience function - enables or disables an action by name
- Parameters:
-
name the name of the action in our collection enable true to enable, false to disable
Definition at line 1187 of file containment.cpp.
void Plasma::Containment::focusNextApplet | ( | ) | [slot] |
void Plasma::Containment::focusPreviousApplet | ( | ) | [slot] |
switch keyboard focus to the previous one of our applets
Definition at line 1421 of file containment.cpp.
void Plasma::Containment::init | ( | ) | [virtual] |
Reimplemented from Applet.
Reimplemented from Plasma::Applet.
Definition at line 122 of file containment.cpp.
QVariant Plasma::Containment::itemChange | ( | GraphicsItemChange | change, | |
const QVariant & | value | |||
) | [protected] |
Reimplemented from QGraphicsItem.
Reimplemented from Plasma::Applet.
Definition at line 1167 of file containment.cpp.
void Plasma::Containment::keyPressEvent | ( | QKeyEvent * | event | ) | [protected] |
Definition at line 1079 of file containment.cpp.
KPluginInfo::List Plasma::Containment::listContainments | ( | const QString & | category = QString() , |
|
const QString & | parentApp = QString() | |||
) | [static] |
Returns a list of all known containments.
- Parameters:
-
category Only applets matchin this category will be returned. Useful in conjunction with knownCategories. If "Misc" is passed in, then applets without a Categories= entry are also returned. If an empty string is passed in, all applets are returned. parentApp the application to filter applets on. Uses the X-KDE-ParentApp entry (if any) in the plugin info. The default value of QString() will result in a list containing only applets not specifically registered to an application.
- Returns:
- list of applets
Definition at line 873 of file containment.cpp.
KPluginInfo::List Plasma::Containment::listContainmentsForMimetype | ( | const QString & | mimetype | ) | [static] |
Returns a list of all known applets associated with a certain mimetype.
- Returns:
- list of applets
Definition at line 900 of file containment.cpp.
void Plasma::Containment::mouseMoveEvent | ( | QGraphicsSceneMouseEvent * | event | ) | [protected] |
For internal use only.
manage the mouse movement to drag the applet around
Reimplemented from Plasma::Applet.
Definition at line 407 of file containment.cpp.
void Plasma::Containment::mousePressEvent | ( | QGraphicsSceneMouseEvent * | event | ) | [protected] |
Definition at line 423 of file containment.cpp.
void Plasma::Containment::mouseReleaseEvent | ( | QGraphicsSceneMouseEvent * | event | ) | [protected] |
Definition at line 441 of file containment.cpp.
void Plasma::Containment::openToolBox | ( | ) |
void Plasma::Containment::removeAssociatedWidget | ( | QWidget * | widget | ) | [virtual] |
un-associate actions from this widget, including ones added after this call.
needed to make keyboard shortcuts work.
Reimplemented from Plasma::Applet.
Definition at line 1247 of file containment.cpp.
void Plasma::Containment::removeToolBoxAction | ( | QAction * | action | ) |
void Plasma::Containment::resizeEvent | ( | QGraphicsSceneResizeEvent * | event | ) | [protected] |
- Reimplemented from superclass.
- See also:
- QGraphicsItem::resizeEvent()
Reimplemented from Plasma::Applet.
Definition at line 1071 of file containment.cpp.
void Plasma::Containment::restore | ( | KConfigGroup & | group | ) | [virtual] |
- Reimplemented from superclass.
- See also:
- Applet::restore(KConfigGroup &)
Reimplemented from Plasma::Applet.
Definition at line 258 of file containment.cpp.
void Plasma::Containment::restoreContents | ( | KConfigGroup & | group | ) | [protected, virtual] |
Called when the contents of the containment should be loaded.
By default this loads all previously saved Applets
- Parameters:
-
group the KConfigGroup to save settings under
Definition at line 345 of file containment.cpp.
void Plasma::Containment::save | ( | KConfigGroup & | group | ) | const [virtual] |
- Reimplemented from superclass.
- See also:
- Applet::save(KConfigGroup &)
Reimplemented from Plasma::Applet.
Definition at line 303 of file containment.cpp.
void Plasma::Containment::saveContents | ( | KConfigGroup & | group | ) | const [protected, virtual] |
Called when the contents of the containment should be saved.
By default this saves all loaded Applets
- Parameters:
-
group the KConfigGroup to save settings under
Definition at line 336 of file containment.cpp.
bool Plasma::Containment::sceneEventFilter | ( | QGraphicsItem * | watched, | |
QEvent * | event | |||
) | [protected] |
For internal use only.
scene event filter; used to manage applet dragging
Reimplemented from Plasma::Applet.
Definition at line 1128 of file containment.cpp.
int Plasma::Containment::screen | ( | ) | const |
- Returns:
- the screen number this containment is serving as the desktop for or -1 if none
Definition at line 863 of file containment.cpp.
void Plasma::Containment::screenChanged | ( | int | wasScreen, | |
int | isScreen, | |||
Plasma::Containment * | containment | |||
) | [signal] |
This signal indicates that a containment has been newly associated (or dissociated) with a physical screen.
- Parameters:
-
wasScreen the screen it was associated with isScreen the screen it is now associated with containment the containment switching screens
void Plasma::Containment::setActivity | ( | const QString & | activity | ) |
Sets the current activity by name.
- Parameters:
-
activity the name of the activity; if it doesn't exist in the semantic store, it will be created.
Definition at line 1343 of file containment.cpp.
void Plasma::Containment::setContainmentType | ( | Containment::Type | type | ) | [protected] |
void Plasma::Containment::setDrawWallpaper | ( | bool | drawWallpaper | ) | [protected] |
void Plasma::Containment::setFormFactor | ( | Plasma::FormFactor | formFactor | ) | [slot] |
Sets the form factor for this Containment.
This may cause changes in both the arrangement of Applets as well as the display choices of individual Applets.
Definition at line 618 of file containment.cpp.
void Plasma::Containment::setLocation | ( | Plasma::Location | location | ) | [slot] |
Informs the Corona as to what position it is in.
This is informational only, as the Corona doesn't change it's actual location. This is, however, passed on to Applets that may be managed by this Corona.
- Parameters:
-
location the new location of this Corona
Definition at line 643 of file containment.cpp.
void Plasma::Containment::setScreen | ( | int | screen, | |
int | desktop = -1 | |||
) |
Sets the physical screen this Containment is associated with.
- Parameters:
-
screen the screen number this containment is the desktop for, or -1 if it is not serving as the desktop for any screen desktop the virtual desktop to also associate this this screen with
Definition at line 786 of file containment.cpp.
void Plasma::Containment::setToolBoxOpen | ( | bool | open | ) |
Sets the open or closed state of the Containment's toolbox.
- open true to open the ToolBox, false to close it
Definition at line 1210 of file containment.cpp.
void Plasma::Containment::setWallpaper | ( | const QString & | pluginName, | |
const QString & | mode = QString() | |||
) |
Sets wallpaper plugin.
- Parameters:
-
pluginName the name of the wallpaper to attempt to load mode optional mode or the wallpaper plugin (e.g. "Slideshow"). These values are pugin specific and enumerated in the plugin's .desktop file.
Definition at line 1280 of file containment.cpp.
void Plasma::Containment::showAddWidgetsInterface | ( | const QPointF & | pos | ) | [signal] |
Emitted when the containment requests an add widgets dialog is shown.
Usually only used for desktop containments.
- Parameters:
-
pos where in the containment this request was made from, or an invalid position (QPointF()) is not location specific
void Plasma::Containment::showConfigurationInterface | ( | ) | [virtual, slot] |
- Reimplemented from superclass.
- See also:
- Applet::showConfigurationInterface()
Reimplemented from Plasma::Applet.
Definition at line 1439 of file containment.cpp.
void Plasma::Containment::showContextMenu | ( | const QPointF & | containmentPos, | |
const QPoint & | screenPos | |||
) |
Shows the context menu for the containment directly, bypassing Applets altogether.
Definition at line 463 of file containment.cpp.
void Plasma::Containment::showDropZone | ( | const QPoint | pos | ) | [virtual] |
Shows a visual clue for drag and drop The default implementation does nothing, reimplement in containments that need it.
- Parameters:
-
pos point where to show the drop target; if an invalid point is passed in the drop zone should not be shown
Definition at line 457 of file containment.cpp.
const QGraphicsItem * Plasma::Containment::toolBoxItem | ( | ) | const [protected] |
- Returns:
- the toolbox associated with this containment, or a null pointer if none
Definition at line 1066 of file containment.cpp.
void Plasma::Containment::toolBoxToggled | ( | ) | [signal] |
Emitted when the user clicks on the toolbox.
Plasma::Wallpaper * Plasma::Containment::wallpaper | ( | ) | const |
void Plasma::Containment::wheelEvent | ( | QGraphicsSceneWheelEvent * | event | ) | [protected] |
Definition at line 1091 of file containment.cpp.
void Plasma::Containment::zoomRequested | ( | Plasma::Containment * | containment, | |
Plasma::ZoomDirection | direction | |||
) | [signal] |
Emitted when the containment requests zooming in or out one step.
The documentation for this class was generated from the following files: