• Skip to content
  • Skip to link menu
  • KDE API Reference
  • kdelibs-4.14.38 API Reference
  • KDE Home
  • Contact Us
 

KDECore

Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
KServiceType Class Reference

#include <kservicetype.h>

Inheritance diagram for KServiceType:
KSycocaEntry KShared KMimeType KFolderMimeType

Public Types

typedef QList< Ptr > List
 
typedef KSharedPtr< KServiceType > Ptr
 
- Public Types inherited from KSycocaEntry
typedef QList< Ptr > List
 
typedef KSharedPtr< KSycocaEntry > Ptr
 

Public Member Functions

 KServiceType (KDesktopFile *config)
 
 KServiceType (QDataStream &_str, int offset)
 
virtual ~KServiceType ()
 
QString comment () const
 
QString desktopEntryPath () const
 
bool inherits (const QString &servTypeName) const
 
bool isDerived () const
 
QString parentServiceType () const
 
Ptr parentType ()
 
QVariant::Type propertyDef (const QString &_name) const
 
QStringList propertyDefNames () const
 
QMap< QString, QVariant::Type > propertyDefs () const
 
int serviceOffersOffset () const
 
void setServiceOffersOffset (int offset)
 
- Public Member Functions inherited from KSycocaEntry
 KSycocaEntry ()
 
virtual ~KSycocaEntry ()
 
QString entryPath () const
 
bool isDeleted () const
 
bool isSeparator () const
 
bool isType (KSycocaType t) const
 
bool isValid () const
 
QString name () const
 
int offset () const
 
QVariant property (const QString &name) const
 
QStringList propertyNames () const
 
void save (QDataStream &s)
 
void setDeleted (bool deleted)
 
QString storageId () const
 
KSycocaType sycocaType () const
 

Static Public Member Functions

static List allServiceTypes ()
 
static Ptr serviceType (const QString &_name)
 
- Static Public Member Functions inherited from KSycocaEntry
static void read (QDataStream &s, QString &str)
 
static void read (QDataStream &s, QStringList &list)
 

Protected Member Functions

 KServiceType (KServiceTypePrivate &dd)
 
 KServiceType (KServiceTypePrivate &dd, const QString &_name, const QString &_comment)
 
- Protected Member Functions inherited from KSycocaEntry
 KSycocaEntry (KSycocaEntryPrivate &d)
 

Additional Inherited Members

- Protected Attributes inherited from KSycocaEntry
KSycocaEntryPrivate * d_ptr
 
- Related Functions inherited from KSycocaEntry
enum  KSycocaType
 

Detailed Description

A service type is, well, a type of service, where a service is an application or plugin.

For instance, "KOfficeFilter", which is the type of all koffice filters, is a service type. In order to discover services of a given type, using KServiceTypeTrader. Service types are stored as desktop files in $KDEDIR/share/servicetypes.

See also
KService, KServiceTypeTrader

Definition at line 43 of file kservicetype.h.

Member Typedef Documentation

◆ List

typedef QList<Ptr> KServiceType::List

Definition at line 47 of file kservicetype.h.

◆ Ptr

typedef KSharedPtr<KServiceType> KServiceType::Ptr

Definition at line 46 of file kservicetype.h.

Constructor & Destructor Documentation

◆ KServiceType() [1/4]

KServiceType::KServiceType ( KDesktopFile *  config)
explicit

Construct a service type and take all information from a desktop file.

Parameters
configthe configuration file

Definition at line 46 of file kservicetype.cpp.

◆ KServiceType() [2/4]

KServiceType::KServiceType ( QDataStream &  _str,
int  offset 
)

construct a service from a stream. The stream must already be positionned at the correct offset

Definition at line 94 of file kservicetype.cpp.

◆ ~KServiceType()

KServiceType::~KServiceType ( )
virtual

Definition at line 127 of file kservicetype.cpp.

◆ KServiceType() [3/4]

KServiceType::KServiceType ( KServiceTypePrivate &  dd)
protected

Construct a servicetype from another servicetype's private object.

Parameters
ddthe private object

Definition at line 101 of file kservicetype.cpp.

◆ KServiceType() [4/4]

KServiceType::KServiceType ( KServiceTypePrivate &  dd,
const QString &  _name,
const QString &  _comment 
)
protected

Construct a servicetype based on another servicetype's private object.

Allows the name and comment to be overridden.

Parameters
ddthe private object
_namethe name of the service type
_commenta comment (can be empty)

Definition at line 37 of file kservicetype.cpp.

Member Function Documentation

◆ allServiceTypes()

KServiceType::List KServiceType::allServiceTypes ( )
static

Returns a list of all the supported servicetypes.

Useful for showing the list of available servicetypes in a listbox, for example. More memory consuming than the ones above, don't use unless really necessary.

Returns
the list of all services

Definition at line 196 of file kservicetype.cpp.

◆ comment()

QString KServiceType::comment ( ) const

Returns the descriptive comment associated, if any.

Returns
the comment, or QString()

Definition at line 232 of file kservicetype.cpp.

◆ desktopEntryPath()

QString KServiceType::desktopEntryPath ( ) const

Returns the relative path to the desktop entry file responsible for this servicetype.

For instance inode/directory.desktop, or kpart.desktop

Returns
the path of the desktop file

Definition at line 240 of file kservicetype.cpp.

◆ inherits()

bool KServiceType::inherits ( const QString &  servTypeName) const

Checks whether this service type is or inherits from servTypeName.

Returns
true if this servicetype is or inherits from servTypeName

Definition at line 137 of file kservicetype.cpp.

◆ isDerived()

bool KServiceType::isDerived ( ) const

Checks whether this service type inherits another one.

Returns
true if this service type inherits another one
See also
parentServiceType()

Definition at line 246 of file kservicetype.cpp.

◆ parentServiceType()

QString KServiceType::parentServiceType ( ) const

If this service type inherits from another service type, return the name of the parent.

Returns
the parent service type, or QString:: null if not set
See also
isDerived()

Definition at line 131 of file kservicetype.cpp.

◆ parentType()

KServiceType::Ptr KServiceType::parentType ( )

Pointer to parent service type

Definition at line 201 of file kservicetype.cpp.

◆ propertyDef()

QVariant::Type KServiceType::propertyDef ( const QString &  _name) const

Returns the type of the property definition with the given _name.

Parameters
_namethe name of the property
Returns
the property type, or null if not found
See also
propertyDefNames

Definition at line 178 of file kservicetype.cpp.

◆ propertyDefNames()

QStringList KServiceType::propertyDefNames ( ) const

Returns the list of all property definitions for this servicetype.

Those are properties of the services implementing this servicetype. For instance,

[PropertyDef::X-KDevelop-Version]
Type=int

means that all kdevelop plugins have in their .desktop file a line like

X-KDevelop-Version=<some value>
X
#define X

Definition at line 185 of file kservicetype.cpp.

◆ propertyDefs()

QMap< QString, QVariant::Type > KServiceType::propertyDefs ( ) const

(for KBuildServiceTypeFactory)

Definition at line 252 of file kservicetype.cpp.

◆ serviceOffersOffset()

int KServiceType::serviceOffersOffset ( ) const

Definition at line 226 of file kservicetype.cpp.

◆ serviceType()

KServiceType::Ptr KServiceType::serviceType ( const QString &  _name)
static

Returns a pointer to the servicetype '_name' or 0L if the service type is unknown.

VERY IMPORTANT : don't store the result in a KServiceType * !

Parameters
_namethe name of the service type to search
Returns
the pointer to the service type, or 0

Definition at line 191 of file kservicetype.cpp.

◆ setServiceOffersOffset()

void KServiceType::setServiceOffersOffset ( int  offset)

only used by kbuildsycoca Register offset into offers list

Definition at line 219 of file kservicetype.cpp.


The documentation for this class was generated from the following files:
  • kservicetype.h
  • kservicetype.cpp
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Mon Feb 20 2023 00:00:00 by doxygen 1.9.6 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

KDECore

Skip menu "KDECore"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Modules
  • Related Pages

kdelibs-4.14.38 API Reference

Skip menu "kdelibs-4.14.38 API Reference"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDEWebKit
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • kio
  • KIOSlave
  • KJS
  •   KJS-API
  •   WTF
  • kjsembed
  • KNewStuff
  • KParts
  • KPty
  • Kross
  • KUnitConversion
  • KUtils
  • Nepomuk
  • Plasma
  • Solid
  • Sonnet
  • ThreadWeaver
Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal