KCModuleContainer Class Reference
[KControl module classes]

KCModuleContainer is a convenience class encapsulating several KCModules. More...

#include <kcmodulecontainer.h>

Inheritance diagram for KCModuleContainer:
KCModule QWidget

List of all members.

Public Member Functions

 KCModuleContainer (QWidget *parent, const char *name, const QStringList &mods)
 KCModuleContainer (QWidget *parent, const char *name, const QString &mods=QString())
void addModule (const QString &module)
virtual ~KCModuleContainer ()
void save ()
void load ()
void defaults ()

Protected Types

typedef QValueList
< KCModuleProxy * > 
ModuleList

Protected Member Functions

void finalize ()

Protected Attributes

ModuleList changedModules
ModuleList allModules

Detailed Description

KCModuleContainer is a convenience class encapsulating several KCModules.

The KCModuleContainer class is a convenience class for organizing a multiple set of KCModule. KCModuleContainer is a sub class of KCModule and builds an interface mainly consisting of a tab widget where each tab contains one of the modules specified via one of the constructors. KCModuleContainer can handle modules which requires root permissions. What you most likely want is the KCMODULECONTAINER macro.
Sometimes it is of interest to detect in runtime whether a module should be loaded or not. This can be achieved by sub classing KCModuleContainer, doing the probing/testing checks and then manually call addModule for each module which should be displayed. When all calls to addModule is done, call finalize() which performs some necessary final steps.

Author:
Frans Englich <frans.englich@telia.com>
Since:
3.4

Definition at line 53 of file kcmodulecontainer.h.


Constructor & Destructor Documentation

KCModuleContainer::KCModuleContainer ( QWidget parent,
const char *  name,
const QStringList mods 
)

Creates a KCModuleContainer with tabs, each one containing one of the specified modules in mods.

Parameters:
parent the parent QWidget.
name the module's name.
mods The list of KCModules to be loaded. The name of each KCModule is its service name, that is the name of the desktop file without the ".desktop" part

Definition at line 81 of file kcmodulecontainer.cpp.

KCModuleContainer::KCModuleContainer ( QWidget parent,
const char *  name,
const QString mods = QString() 
)

This is a convenience function, instead of building a QStringList you can specify the modules in a comma separated QString.

For example;

 KCModuleContainer* cont = KCModuleContainer( this, "kcm_misc", QString("kcm_energy, kcm_keyboard ,kcm_useraccount, kcm_mouse") );

The other constructor takes its modules in a QStringlist which also can be constructed from a string and thus you will have to be explicit on the data type.

What you probably want is the KCMODULECONTAINER macro which builds an KCModule for you, taking the modules you want as argument.

Parameters:
parent The parent widget
name The service name
mods The modules to load
Returns:
The KCModule containing the requested modules.

Definition at line 73 of file kcmodulecontainer.cpp.

KCModuleContainer::~KCModuleContainer (  )  [virtual]

Default destructor.

Definition at line 249 of file kcmodulecontainer.cpp.


Member Function Documentation

void KCModuleContainer::addModule ( const QString module  ) 

Adds the specified module to the tab widget.

Setting the tab icon, text, tool tip, connecting the signals is what it does.

Parameters:
module the name of the module to add. The name is the desktop file's name without the ".desktop" part.

Definition at line 124 of file kcmodulecontainer.cpp.

void KCModuleContainer::defaults (  )  [virtual]

Reimplemented for internal purposes.

Reimplemented from KCModule.

Definition at line 227 of file kcmodulecontainer.cpp.

void KCModuleContainer::finalize (  )  [protected]

Sets this KCM's buttons and adds a AdminMode button if necessary.

If KCModuleContainer is subclassed finalize() should be called in the constructor after all calls to addModule have been done. Call it once.

Definition at line 107 of file kcmodulecontainer.cpp.

void KCModuleContainer::load (  )  [virtual]

Reimplemented for internal purposes.

Reimplemented from KCModule.

Definition at line 215 of file kcmodulecontainer.cpp.

void KCModuleContainer::save (  )  [virtual]

Reimplemented for internal purposes.

Reimplemented from KCModule.

Definition at line 202 of file kcmodulecontainer.cpp.


Member Data Documentation

A list of all modules which are encapsulated.

Definition at line 142 of file kcmodulecontainer.h.

A list containing KCModuleProxy objects which have changed and must be saved.

Definition at line 137 of file kcmodulecontainer.h.


The documentation for this class was generated from the following files:
KDE Home | KDE Accessibility Home | Description of Access Keys