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 | toolBoxVisibilityChanged (bool) |
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) |
static KPluginInfo::List | listContainmentsOfType (const QString &type, const QString &category=QString(), const QString &parentApp=QString()) |
static QStringList | listContainmentTypes () |
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 91 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 105 of file containment.cpp.
Plasma::Containment::~Containment | ( | ) |
Definition at line 116 of file containment.cpp.
Member Function Documentation
QString Plasma::Containment::activity | ( | ) | const |
- Returns:
- the current activity associated with this activity
Definition at line 1560 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 752 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 746 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 1428 of file containment.cpp.
void Plasma::Containment::addSiblingContainment | ( | ) | [slot] |
Tells the corona to create a new desktop containment.
Definition at line 732 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 | ) |
Add an action to the toolbox.
Definition at line 1385 of file containment.cpp.
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 |
- Returns:
- the applets currently in this Containment
Definition at line 841 of file containment.cpp.
void Plasma::Containment::clearApplets | ( | ) |
Removes all applets from this Containment.
Definition at line 737 of file containment.cpp.
void Plasma::Containment::closeToolBox | ( | ) |
Closes Containment's toolbox.
Definition at line 1420 of file containment.cpp.
void Plasma::Containment::configureRequested | ( | Plasma::Containment * | containment | ) | [signal] |
Emitted when the user wants to configure/change containment.
Containment::Type Plasma::Containment::containmentType | ( | ) | const |
Returns the type of containment.
Definition at line 417 of file containment.cpp.
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 518 of file containment.cpp.
Corona * Plasma::Containment::corona | ( | ) | const |
Returns the Corona (if any) that this Containment is hosted by.
Definition at line 443 of file containment.cpp.
int Plasma::Containment::desktop | ( | ) | const |
- Returns:
- the viewport (e.g. virtual desktop) this Containment is associated with.
Definition at line 938 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 1650 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 1635 of file containment.cpp.
void Plasma::Containment::dragEnterEvent | ( | QGraphicsSceneDragDropEvent * | event | ) | [protected] |
- Reimplemented from superclass.
- See also:
- QGraphicsItem::dragEnterEvent()
Definition at line 1009 of file containment.cpp.
void Plasma::Containment::dragMoveEvent | ( | QGraphicsSceneDragDropEvent * | event | ) | [protected] |
- Reimplemented from superclass.
- See also:
- QGraphicsItem::dragMoveEvent()
Definition at line 1035 of file containment.cpp.
bool Plasma::Containment::drawWallpaper | ( | ) |
Return whether wallpaper is painted or not.
Definition at line 1470 of file containment.cpp.
void Plasma::Containment::dropEvent | ( | QGraphicsSceneDragDropEvent * | event | ) | [protected] |
- Reimplemented from superclass.
- See also:
- QGraphicsItem::dropEvent()
Definition at line 1047 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 1376 of file containment.cpp.
void Plasma::Containment::focusNextApplet | ( | ) | [slot] |
switch keyboard focus to the next of our applets
Definition at line 1609 of file containment.cpp.
void Plasma::Containment::focusPreviousApplet | ( | ) | [slot] |
switch keyboard focus to the previous one of our applets
Definition at line 1622 of file containment.cpp.
void Plasma::Containment::init | ( | ) | [virtual] |
Reimplemented from Applet.
Reimplemented from Plasma::Applet.
Definition at line 121 of file containment.cpp.
QVariant Plasma::Containment::itemChange | ( | GraphicsItemChange | change, | |
const QVariant & | value | |||
) | [protected] |
Reimplemented from QGraphicsItem.
Reimplemented from Plasma::Applet.
Definition at line 1356 of file containment.cpp.
void Plasma::Containment::keyPressEvent | ( | QKeyEvent * | event | ) | [protected] |
Definition at line 1257 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 containments matching this category will be returned. Useful in conjunction with knownCategories. If "Miscelaneous" 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 943 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 986 of file containment.cpp.
KPluginInfo::List Plasma::Containment::listContainmentsOfType | ( | const QString & | type, | |
const QString & | category = QString() , |
|||
const QString & | parentApp = QString() | |||
) | [static] |
Returns a list of all known Containments that match the parameters.
- Parameters:
-
type Only Containments with this string in X-Plasma-ContainmentCategories in their .desktop files will be returned. Common values are panel and desktop category Only applets matchin this category will be returned. Useful in conjunction with knownCategories. If "Miscelaneous" 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 950 of file containment.cpp.
QStringList Plasma::Containment::listContainmentTypes | ( | ) | [static] |
- Returns:
- a list of all known types of Containments on this system
Definition at line 994 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 448 of file containment.cpp.
void Plasma::Containment::mousePressEvent | ( | QGraphicsSceneMouseEvent * | event | ) | [protected] |
Definition at line 464 of file containment.cpp.
void Plasma::Containment::mouseReleaseEvent | ( | QGraphicsSceneMouseEvent * | event | ) | [protected] |
Definition at line 485 of file containment.cpp.
void Plasma::Containment::openToolBox | ( | ) |
Open the Containment's toolbox.
Definition at line 1412 of file containment.cpp.
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 1442 of file containment.cpp.
void Plasma::Containment::removeToolBoxAction | ( | QAction * | action | ) |
Remove an action from the toolbox.
Definition at line 1396 of file containment.cpp.
void Plasma::Containment::resizeEvent | ( | QGraphicsSceneResizeEvent * | event | ) | [protected] |
- Reimplemented from superclass.
- See also:
- QGraphicsItem::resizeEvent()
Reimplemented from Plasma::Applet.
Definition at line 1236 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 284 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 386 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 340 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 377 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 1306 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 933 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 1544 of file containment.cpp.
void Plasma::Containment::setContainmentType | ( | Containment::Type | type | ) | [protected] |
Sets the type of this containment.
Definition at line 422 of file containment.cpp.
void Plasma::Containment::setDrawWallpaper | ( | bool | drawWallpaper | ) | [protected] |
Sets whether wallpaper is painted or not.
Definition at line 1456 of file containment.cpp.
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 662 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 its 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 695 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 846 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 1403 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 1475 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 1640 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 513 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 507 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 1231 of file containment.cpp.
void Plasma::Containment::toolBoxToggled | ( | ) | [signal] |
Emitted when the user clicks on the toolbox.
void Plasma::Containment::toolBoxVisibilityChanged | ( | bool | ) | [signal] |
Emitted when the toolbox is hidden or shown.
- Since:
- 4.3
Plasma::Wallpaper * Plasma::Containment::wallpaper | ( | ) | const |
Return wallpaper plugin.
Definition at line 1539 of file containment.cpp.
void Plasma::Containment::wheelEvent | ( | QGraphicsSceneWheelEvent * | event | ) | [protected] |
Definition at line 1269 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: