# kio Library API Documentation

Overview | Class Hierarchy | Classes | Classes (annotated) | Members | Namespaces | Source Files

# KDEDesktopMimeType Class Reference

Mime type for desktop files. Mimetype for a .desktop file. More...

`#include <kmimetype.h>`

Inheritance diagram for KDEDesktopMimeType:

[legend]
Collaboration diagram for KDEDesktopMimeType:

[legend]
List of all members.

## Public Types

enum | ServiceType { ST_MOUNT, ST_UNMOUNT, ST_USER_DEFINED }

## Public Member Functions

| KDEDesktopMimeType (KDesktopFile *config)
| KDEDesktopMimeType (QDataStream &_str, int offset)
virtual QString | icon (const QString &_url, bool _is_local) const
virtual QString | icon (const KURL &_url, bool _is_local) const
virtual QPixmap | pixmap (const KURL &_url, KIcon::Group _group, int _force_size=0, int _state=0, QString *_path=0L) const
virtual QString | comment (const QString &_url, bool _is_local) const
virtual QString | comment (const KURL &_url, bool _is_local) const

## Static Public Member Functions

static QValueList< Service > | builtinServices (const KURL &_url)
static QValueList< Service > | userDefinedServices (const QString &path, bool bLocalFiles)
static QValueList< Service > | userDefinedServices (const QString &path, KConfig &config, bool bLocalFiles)
static void | executeService (const QString &_path, KDEDesktopMimeType::Service &_service) KDE_DEPRECATED
static void | executeService (const KURL::List &urls, KDEDesktopMimeType::Service &service)
static pid_t | run (const KURL &_url, bool _is_local)

## Protected Member Functions

virtual QPixmap | pixmap (KIcon::Group a, int b, int c, QString *d) const
virtual void | virtual_hook (int id, void *data)

## Static Protected Member Functions

static pid_t | runFSDevice (const KURL &_url, const KSimpleConfig &cfg)
static pid_t | runApplication (const KURL &_url, const QString &_serviceFile)
static pid_t | runLink (const KURL &_url, const KSimpleConfig &cfg)
static pid_t | runMimeType (const KURL &_url, const KSimpleConfig &cfg)

## Classes

struct | Service
| Structure representing a service, in the list of services returned by builtinServices and userDefinedServices. More...

## Detailed Description

Mime type for desktop files. Mimetype for a .desktop file.

Handles mount/umount icon, and user-defined properties.

Definition at line 506 of file kmimetype.h.

## Constructor & Destructor Documentation

KDEDesktopMimeType::KDEDesktopMimeType | ( | KDesktopFile * | config | ) | `[inline]`

Construct a desktop mimetype and take all information from a desktop file.

Parameters:

  | config | the desktop configuration file that describes the mime type

Definition at line 534 of file kmimetype.h.

## Member Function Documentation

QString KDEDesktopMimeType::icon | ( | const QString & | _url,
|  | bool | _is_local
| ) | const`[virtual]`

Return the filename of the icon associated with the mimetype.

The arguments are unused, but provided so that KMimeType-derived classes can use them (e.g. KFolderType uses the URL to return one out of 2 icons)

Returns:
  The path to the icon associated with this MIME type.

Reimplemented from KMimeType.

Definition at line 696 of file kmimetype.cpp.

References KServiceType::icon().

Referenced by icon().

QString KDEDesktopMimeType::icon | ( | const KURL & | _url,
|  | bool | _is_local
| ) | const`[virtual]`

Return the filename of the icon associated with the mimetype.

The arguments are unused, but provided so that KMimeType-derived classes can use them (e.g. KFolderType uses the URL to return one out of 2 icons)

Returns:
  The path to the icon associated with this MIME type.

Reimplemented from KMimeType.

Definition at line 705 of file kmimetype.cpp.

References KIO::findDeviceMountPoint(), icon(), KServiceType::icon(), QString::isEmpty(), QString::isNull(), KURL::protocol(), KConfigBase::readBoolEntry(), and KConfigBase::setGroup().

QPixmap KDEDesktopMimeType::pixmap | ( | const KURL & | _url,
|  | KIcon::Group | _group,
|  | int | _force_size = `0`,
|  | int | _state = `0`,
|  | QString * | _path = `0L`
| ) | const`[virtual]`

Find the pixmap for a given file of this mimetype.

Convenience method that uses icon(), but also locates and load the pixmap.

Parameters:

  | _url | URL for the file.
  | _group | The icon group where the icon is going to be used.
  | _force_size | Override globallly configured icon size. Use 0 for the default size
  | _state | The icon state, one of: KIcon::DefaultState, KIcon::ActiveState or KIcon::DisabledState.
  | _path | Output parameter to get the full path. Seldom needed. Ignored if 0

Returns:
  the pixmap of the URL, can be a default icon if not found

Reimplemented from KMimeType.

Definition at line 750 of file kmimetype.cpp.

References KServiceType::icon(), KGlobal::iconLoader(), QPixmap::isNull(), and KIconLoader::loadIcon().

QString KDEDesktopMimeType::comment | ( | const QString & | _url,
|  | bool | _is_local
| ) | const`[virtual]`

Returns the descriptive comment associated with the MIME type.

The arguments are unused, but provided so that KMimeType derived classes can use them.

Returns:
  The descriptive comment associated with the MIME type, if any.

Reimplemented from KMimeType.

Definition at line 762 of file kmimetype.cpp.

References KMimeType::comment().

Referenced by comment().

QString KDEDesktopMimeType::comment | ( | const KURL & | _url,
|  | bool | _is_local
| ) | const`[virtual]`

Returns the descriptive comment associated with the MIME type.

The arguments are unused, but provided so that KMimeType derived classes can use them.

Returns:
  The descriptive comment associated with the MIME type, if any.

Reimplemented from KMimeType.

Definition at line 771 of file kmimetype.cpp.

References comment(), KMimeType::comment(), and QString::isEmpty().

QValueList< KDEDesktopMimeType::Service > KDEDesktopMimeType::builtinServices | ( | const KURL & | _url | ) | `[static]`

Returns a list of services for the given .desktop file that are handled by kio itself.

Namely mount/unmount for FSDevice files.

Returns:
  the list of services

Definition at line 915 of file kmimetype.cpp.

References QValueList::append(), QString::arg(), KIO::findDeviceMountPoint(), QString::isEmpty(), KDEDesktopMimeType::Service::m_strName, and KDEDesktopMimeType::Service::m_type.

QValueList< KDEDesktopMimeType::Service > KDEDesktopMimeType::userDefinedServices | ( | const QString & | path,
|  | bool | bLocalFiles
| ) | `[static]`

Returns a list of services defined by the user as possible actions on the given .desktop file.

May include empty actions which represent where visual separators should appear in user-visible representations of those actions, such as separators in a menu.

Parameters:

  | path | the path to the desktop file describing the services
  | bLocalFiles | true if those services are to be applied to local files only (if false, services that don't have u or U in the Exec line won't be taken into account).

Returns:
  the list of user deviced actions

Definition at line 968 of file kmimetype.cpp.

QValueList< KDEDesktopMimeType::Service > KDEDesktopMimeType::userDefinedServices | ( | const QString & | path,
|  | KConfig & | config,
|  | bool | bLocalFiles
| ) | `[static]`

Overload of userDefinedServices for speed purposes: it takes a KConfig* so that the caller can check things in the file without having it parsed twice.

Since:
  3.4

Definition at line 974 of file kmimetype.cpp.

References QValueList::append(), QString::contains(), KStandardDirs::findExe(), QString::isEmpty(), KDEDesktopMimeType::Service::m_display, KDEDesktopMimeType::Service::m_strExec, KDEDesktopMimeType::Service::m_strIcon, KDEDesktopMimeType::Service::m_strName, KDEDesktopMimeType::Service::m_type, and QString::prepend().

void KDEDesktopMimeType::executeService | ( | const QString & | _path,
|  | KDEDesktopMimeType::Service & | _service
| ) | `[static]`

Parameters:

  | _path | is the path of the desktop entry.
  | service | the service to execute

Deprecated:
  , see the other executeService

Definition at line 1050 of file kmimetype.cpp.

References QValueList::append(), and KURL::setPath().

void KDEDesktopMimeType::executeService | ( | const KURL::List & | urls,
|  | KDEDesktopMimeType::Service & | service
| ) | `[static]`

Execute `service` on the list of `urls`.

Parameters:

  | urls | the list of urls
  | service | the service to execute

Definition at line 1059 of file kmimetype.cpp.

References QString::arg(), endl(), KIO::findDeviceMountPoint(), QString::isEmpty(), kdDebug(), KConfigBase::readBoolEntry(), KConfigBase::readEntry(), KRun::run(), and KConfigBase::setDesktopGroup().

pid_t KDEDesktopMimeType::run | ( | const KURL & | _url,
|  | bool | _is_local
| ) | `[static]`

Invokes the default action for the desktop entry.

If the desktop entry is not local, then only false is returned. Otherwise we would create a security problem. Only types Link and Mimetype could be followed.

Parameters:

  | _url | the url to run
  | _is_local | true if the URL is local, false otherwise

Returns:
  true on success and false on failure.

See also:
  KRun::runURL

Definition at line 785 of file kmimetype.cpp.

References QString::arg(), and QString::isEmpty().

Referenced by KRun::runURL().

virtual QPixmap KDEDesktopMimeType::pixmap | ( | KIcon::Group | a,
|  | int | b,
|  | int | c,
|  | QString * | d
| ) | const`[inline, protected, virtual]`

Use this function only if you don't have a special URL for which you search a pixmap.

This function is useful to find out, which icon is usually chosen for a certain mime type. Since no URL is passed, it is impossible to obey icon hints in desktop entries for example.

Parameters:

  | group | The icon group where the icon is going to be used.
  | force_size | Override globallly configured icon size. Use 0 for the default size
  | state | The icon state, one of: `KIcon::DefaultState`, `KIcon::ActiveState` or `KIcon::DisabledState`.
  | path | Output parameter to get the full path. Seldom needed. Ignored if 0

Returns:
  the pixmap of the mime type, can be a default icon if not found

Reimplemented from KMimeType.

Definition at line 598 of file kmimetype.h.

References KMimeType::pixmap().

The documentation for this class was generated from the following files:

- kmimetype.h
- kmimetype.cpp

This file is part of the documentation for kio Library Version 3.4.1.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sat Jun 11 20:24:24 2005 by doxygen 1.4.1 written by Dimitri van Heesch, © 1997-2003