KServiceGroup Class Reference
KServiceGroup represents a group of service, for example screensavers. More...
#include <kservicegroup.h>
Inherits KSycocaEntry.
Public Types | |
typedef KSharedPtr< KServiceGroup > | Ptr |
typedef KSharedPtr< KSycocaEntry > | SPtr |
typedef QValueList< SPtr > | List |
Public Member Functions | |
KServiceGroup (const QString &name) | |
KServiceGroup (const QString &_fullpath, const QString &_relpath) | |
KServiceGroup (QDataStream &_str, int offset, bool deep) | |
bool | isValid () const |
virtual QString | name () const |
virtual QString | relPath () const |
QString | caption () const |
QString | icon () const |
QString | comment () const |
int | childCount () |
bool | noDisplay () const |
bool | showEmptyMenu () const |
void | setShowEmptyMenu (bool b) |
bool | showInlineHeader () const |
void | setShowInlineHeader (bool _b) |
bool | inlineAlias () const |
void | setInlineAlias (bool _b) |
bool | allowInline () const |
void | setAllowInline (bool _b) |
int | inlineValue () const |
void | setInlineValue (int _val) |
QStringList | suppressGenericNames () const |
void | setLayoutInfo (const QStringList &layout) |
QStringList | layoutInfo () const |
virtual void | load (QDataStream &) |
virtual void | save (QDataStream &) |
List | entries (bool sorted, bool excludeNoDisplay, bool allowSeparators, bool sortByGenericName=false) |
virtual List | entries (bool sorted, bool excludeNoDisplay) |
virtual List | entries (bool sorted=false) |
QString | baseGroupName () const |
QString | directoryEntryPath () const |
void | parseAttribute (const QString &item, bool &showEmptyMenu, bool &showInline, bool &showInlineHeader, bool &showInlineAlias, int &inlineValue) |
Static Public Member Functions | |
static Ptr | baseGroup (const QString &baseGroupName) |
static Ptr | root () |
static Ptr | group (const QString &relPath) |
static Ptr | childGroup (const QString &parent) |
Protected Member Functions | |
void | addEntry (KSycocaEntry *entry) |
virtual void | virtual_hook (int id, void *data) |
Protected Attributes | |
QString | m_strCaption |
QString | m_strIcon |
QString | m_strComment |
List | m_serviceList |
bool | m_bDeep |
QString | m_strBaseGroupName |
int | m_childCount |
Friends | |
class | KBuildServiceGroupFactory |
Detailed Description
KServiceGroup represents a group of service, for example screensavers.This class is typically used like this:
// Lookup screensaver group KServiceGroup::Ptr group = KServiceGroup::baseGroup("screensavers"); if (!group || !group->isValid()) return; KServiceGroup::List list = group->entries(); // Iterate over all entries in the group for( KServiceGroup::List::ConstIterator it = list.begin(); it != list.end(); it++) { KSycocaEntry *p = (*it); if (p->isType(KST_KService)) { KService *s = static_cast<KService *>(p); printf("Name = %s\n", s->name().latin1()); } else if (p->isType(KST_KServiceGroup)) { KServiceGroup *g = static_cast<KServiceGroup *>(p); // Sub group ... } }
Definition at line 67 of file kservicegroup.h.
Constructor & Destructor Documentation
KServiceGroup::KServiceGroup | ( | const QString & | name | ) |
Construct a dummy servicegroup indexed with name
.
- Parameters:
-
name the name of the service group
- Since:
- 3.1
Definition at line 46 of file kservicegroup.cpp.
Construct a service and take all informations from a config file.
- Parameters:
-
_fullpath full path to the config file _relpath relative path to the config file
Definition at line 54 of file kservicegroup.cpp.
Member Function Documentation
bool KServiceGroup::allowInline | ( | ) | const |
- Returns:
- true if we allow to inline menu.
- Since:
- 3.5
Definition at line 188 of file kservicegroup.cpp.
KServiceGroup::Ptr KServiceGroup::baseGroup | ( | const QString & | baseGroupName | ) | [static] |
Returns the group for the given baseGroupName.
Can return 0L if the directory (or the .directory file) was deleted.
- Returns:
- the base group with the given name, or 0 if not available.
Definition at line 639 of file kservicegroup.cpp.
QString KServiceGroup::baseGroupName | ( | ) | const [inline] |
Returns a non-empty string if the group is a special base group.
By default, "Settings/" is the kcontrol base group ("settings") and "System/Screensavers/" is the screensavers base group ("screensavers"). This allows moving the groups without breaking those apps.
The base group is defined by the X-KDE-BaseGroup key in the .directory file.
- Returns:
- the base group name, or null if no base group
Definition at line 251 of file kservicegroup.h.
QString KServiceGroup::caption | ( | ) | const [inline] |
Returns the caption of this group.
- Returns:
- the caption of this group
Definition at line 121 of file kservicegroup.h.
int KServiceGroup::childCount | ( | ) |
Returns the total number of displayable services in this group and any of its subgroups.
- Returns:
- the number of child services
Definition at line 121 of file kservicegroup.cpp.
KServiceGroup::Ptr KServiceGroup::childGroup | ( | const QString & | parent | ) | [static] |
Returns the group of services that have X-KDE-ParentApp equal to parent
(siblings).
- Parameters:
-
parent the name of the service's parent
- Returns:
- the services group
- Since:
- 3.1
Definition at line 658 of file kservicegroup.cpp.
QString KServiceGroup::comment | ( | ) | const [inline] |
Returns the comment about this service group.
- Returns:
- the descriptive comment for the group, if there is one, or QString::null if not set
Definition at line 135 of file kservicegroup.h.
QString KServiceGroup::directoryEntryPath | ( | ) | const |
Returns a path to the .directory file describing this service group.
The path is either absolute or relative to the "apps" resource.
- Since:
- 3.2
Definition at line 664 of file kservicegroup.cpp.
KServiceGroup::List KServiceGroup::entries | ( | bool | sorted = false |
) | [virtual] |
List of all Services and ServiceGroups within this ServiceGroup.
- Parameters:
-
sorted true to sort items
- Returns:
- the list of entried
Definition at line 295 of file kservicegroup.cpp.
KServiceGroup::List KServiceGroup::entries | ( | bool | sorted, | |
bool | excludeNoDisplay, | |||
bool | allowSeparators, | |||
bool | sortByGenericName = false | |||
) |
List of all Services and ServiceGroups within this ServiceGroup.
- Parameters:
-
sorted true to sort items excludeNoDisplay true to exclude items marked "NoDisplay" allowSeparators true to allow separator items to be included sortByGenericName true to sort GenericName+Name instead of Name+GenericName
- Returns:
- the list of entries
- Since:
- 3.2
Definition at line 315 of file kservicegroup.cpp.
KServiceGroup::Ptr KServiceGroup::group | ( | const QString & | relPath | ) | [static] |
Returns the group with the given relative path.
- Parameters:
-
relPath the path of the service group
- Returns:
- the group with the given relative path name.
Definition at line 651 of file kservicegroup.cpp.
QString KServiceGroup::icon | ( | ) | const [inline] |
Returns the name of the icon associated with the group.
- Returns:
- the name of the icon associated with the group, or QString::null if not set
Definition at line 128 of file kservicegroup.h.
bool KServiceGroup::inlineAlias | ( | ) | const |
- Returns:
- true to show an inline alias item into menu
- Since:
- 3.5
Definition at line 158 of file kservicegroup.cpp.
int KServiceGroup::inlineValue | ( | ) | const |
bool KServiceGroup::isValid | ( | ) | const [inline] |
Checks whether the entry is valid, returns always true.
- Returns:
- true
Definition at line 103 of file kservicegroup.h.
virtual QString KServiceGroup::name | ( | ) | const [inline, virtual] |
Name used for indexing.
- Returns:
- the service group's name
Definition at line 109 of file kservicegroup.h.
bool KServiceGroup::noDisplay | ( | ) | const |
Returns true if the NoDisplay flag was set, i.e.
if this group should be hidden from menus, while still being in ksycoca.
- Returns:
- true to hide this service group, false to display it
- Since:
- 3.1
Definition at line 198 of file kservicegroup.cpp.
void KServiceGroup::parseAttribute | ( | const QString & | item, | |
bool & | showEmptyMenu, | |||
bool & | showInline, | |||
bool & | showInlineHeader, | |||
bool & | showInlineAlias, | |||
int & | inlineValue | |||
) |
This function parse attributes into menu.
- Since:
- 3.5
Definition at line 595 of file kservicegroup.cpp.
virtual QString KServiceGroup::relPath | ( | ) | const [inline, virtual] |
Returns the relative path of the service group.
- Returns:
- the service group's relative path
Definition at line 115 of file kservicegroup.h.
KServiceGroup::Ptr KServiceGroup::root | ( | ) | [static] |
Returns the root service group.
- Returns:
- the root service group
Definition at line 645 of file kservicegroup.cpp.
bool KServiceGroup::showEmptyMenu | ( | ) | const |
Return true if we want to display empty menu entry.
- Returns:
- true to show this service group as menu entry is empty, false to hide it
- Since:
- 3.4
Definition at line 153 of file kservicegroup.cpp.
bool KServiceGroup::showInlineHeader | ( | ) | const |
- Returns:
- true to show an inline header into menu
- Since:
- 3.5
Definition at line 148 of file kservicegroup.cpp.
QStringList KServiceGroup::suppressGenericNames | ( | ) | const |
Returns a list of untranslated generic names that should be be supressed when showing this group.
E.g. The group "Games/Arcade" might want to suppress the generic name "Arcade Game" since it's redundant in this particular context.
- Since:
- 3.2
Definition at line 203 of file kservicegroup.cpp.
The documentation for this class was generated from the following files: