# kdecore Library API Documentation

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

# KApplication Class Reference

Controls and provides information to all KDE applications. Controls and provides information to all KDE applications. More...

`#include <kapplication.h>`

Inheritance diagram for KApplication:

[legend]
Collaboration diagram for KApplication:

[legend]
List of all members.

## Public Types

enum | CaptionLayout { CaptionAppLast = 1, CaptionAppFirst, CaptionNoApp }
enum | ShutdownConfirm { ShutdownConfirmDefault = -1, ShutdownConfirmNo = 0, ShutdownConfirmYes = 1 }
| The possible values for the `confirm` parameter of requestShutDown(). More...
enum | ShutdownType { ShutdownTypeDefault = -1, ShutdownTypeNone = 0, ShutdownTypeReboot = 1, ShutdownTypeHalt = 2 }
| The possible values for the `sdtype` parameter of requestShutDown(). More...
enum | ShutdownMode { ShutdownModeDefault = -1, ShutdownModeSchedule = 0, ShutdownModeTryNow = 1, ShutdownModeForceNow = 2, ShutdownModeInteractive = 3 }
| The possible values for the `sdmode` parameter of requestShutDown(). More...
enum | { ShiftModifier = 1<<0, LockModifier = 1<<1, ControlModifier = 1<<2, Modifier1 = 1<<3, Modifier2 = 1<<4, Modifier3 = 1<<5, Modifier4 = 1<<6, Modifier5 = 1<<7 }
enum | { Button1Pressed = 1<<8, Button2Pressed = 1<<9, Button3Pressed = 1<<10, Button4Pressed = 1<<11, Button5Pressed = 1<<12 }
enum | SettingsCategory { SETTINGS_MOUSE, SETTINGS_COMPLETION, SETTINGS_PATHS, SETTINGS_POPUPMENU, SETTINGS_QT, SETTINGS_SHORTCUTS }
| Valid values for the settingsChanged signal. More...

## Public Slots

void | invokeBrowser (const QString &url)
| Invokes the standard browser.
void | ref ()
| Tells KApplication about one more operation that should be finished before the application exits.
void | deref ()
| Tells KApplication that one operation such as those described in just finished.

## Signals

void | kdisplayPaletteChanged ()
| Emitted when KApplication has changed its palette due to a KControl request.
void | kdisplayStyleChanged ()
| Emitted when KApplication has changed its GUI style in response to a KControl request.
void | kdisplayFontChanged ()
| Emitted when KApplication has changed its font in response to a KControl request.
void | appearanceChanged ()
| Emitted when KApplication has changed either its GUI style, its font or its palette in response to a kdisplay request.
void | toolbarAppearanceChanged (int)
| Emitted when the settings for toolbars have been changed.
void | backgroundChanged (int desk)
| Emitted when the desktop background has been changed by `kcmdisplay`.
void | settingsChanged (int category)
| Emitted when the global settings have been changed - see KGlobalSettings KApplication takes care of calling reparseConfiguration on KGlobal::config() so that applications/classes using this only have to re-read the configuration.
void | iconChanged (int group)
| Emitted when the global icon settings have been changed.
void | kipcMessage (int id, int data)
| Emitted when a KIPC user message has been received.
void | saveYourself ()
| Session management asks you to save the state of your application.
void | shutDown ()
| Your application is killed.

## Public Member Functions

| KApplication (bool allowStyles=true, bool GUIenabled=true)
| This constructor takes aboutData and command line arguments from KCmdLineArgs.
| KApplication (Display *display, int &argc, char **argv, const QCString &rAppName, bool allowStyles=true, bool GUIenabled=true)
| Constructor.
| KApplication (int &argc, char **argv, const QCString &rAppName, bool allowStyles=true, bool GUIenabled=true)
| This class or method is obsolete, it is provided for compatibility only. // REMOVE FOR KDE 4.0 - using it only gives crashing applications because // KCmdLineArgs::init isn't called
KConfig * | sessionConfig ()
| Returns the application session config object.
bool | isRestored () const
| Is the application restored from the session manager?
void | disableSessionManagement ()
| Disables session management for this application.
bool | requestShutDown (ShutdownConfirm confirm=ShutdownConfirmDefault, ShutdownType sdtype=ShutdownTypeDefault, ShutdownMode sdmode=ShutdownModeDefault)
| Asks the session manager to shut the session down.
void | propagateSessionManager ()
| Propagates the network address of the session manager in the SESSION_MANAGER environment variable so that child processes can pick it up.
void | commitData (QSessionManager &sm)
void | saveState (QSessionManager &sm)
bool | sessionSaving () const
| Returns true if the application is currently saving its session data (most probably before KDE logout).
QPixmap | icon () const
| Returns a QPixmap with the application icon.
QString | iconName () const
| Returns the name of the application icon.
QPixmap | miniIcon () const
| Returns the mini-icon for the application as a QPixmap.
QString | miniIconName () const
| Returns the name of the mini-icon for the application.
void | setTopWidget (QWidget *topWidget)
| Sets the top widget of the application.
void | invokeHelp (const QString &anchor=QString::null, const QString &appname=QString::null) const
| Invokes the KHelpCenter HTML help viewer from docbook sources.
void | invokeHTMLHelp (const QString &aFilename, const QString &aTopic=QString::null) const
| This class or method is obsolete, it is provided for compatibility only. Invoke the khelpcenter HTML help viewer from HTML sources.
void | invokeMailer (const QString &address, const QString &subject)
| Convenience method; invokes the standard email application.
void | invokeMailer (const KURL &mailtoURL)
| Invokes the standard email application.
void | invokeMailer (const QString &to, const QString &cc, const QString &bcc, const QString &subject, const QString &body, const QString &messageFile=QString::null, const QStringList &attachURLs=QStringList())
| Convenience method; invokes the standard email application.
QString | caption () const
| Returns a text for the window caption.
KStyle * | kstyle () const
| This class or method is obsolete, it is provided for compatibility only.
QString | makeStdCaption (const QString &userCaption, bool withAppName=true, bool modified=false) const
| Builds a caption that contains the application name along with the userCaption() using a standard layout.
QString | tempSaveName (const QString &pFilename) const
| Get a file name in order to make a temporary copy of your document.
QString | checkRecoverFile (const QString &pFilename, bool &bRecover) const
| Check whether an auto-save file exists for the document you want to open.
void | enableStyles ()
| Enables style plugins.
void | disableStyles ()
| Disables style plugins.
void | installX11EventFilter (QWidget *filter)
| Installs widget filter as global X11 event filter.
void | addKipcEventMask (int id)
| Adds a message type to the KIPC event mask.
void | removeKipcEventMask (int id)
| Removes a message type from the KIPC event mask.
QCString | startupId () const
| Returns the app startup notification identifier for this running application.
void | setStartupId (const QCString &startup_id)
| Sets a new value for the application startup notification window property for newly created toplevel windows.
QString | geometryArgument () const
| Returns the argument to --geometry if any, so the geometry can be set wherever necessary.
void | installKDEPropertyMap ()
| Install a Qt SQL property map with entries for all KDE widgets Call this in any application using KDE widgets in QSqlForm or QDataView.
bool | authorize (const QString &genericAction)
| Returns whether a certain action is authorized.
bool | authorizeKAction (const char *action)
| Returns whether a certain KAction is authorized.
bool | authorizeURLAction (const QString &action, const KURL &baseURL, const KURL &destURL)
| Returns whether a certain URL related action is authorized.
bool | notify (QObject *receiver, QEvent *event)
int | xioErrhandler ()
void | iceIOErrorHandler (_IceConn *conn)

## Static Public Member Functions

void | addCmdLineOptions ()
| Add Qt and KDE command line options to KCmdLineArgs.
KApplication * | kApplication ()
| Returns the current application object.
DCOPClient * | dcopClient ()
| Returns a pointer to a DCOPClient for the application.
void | disableAutoDcopRegistration ()
| Disable automatic dcop registration Must be called before creating a KApplication instance to have an effect.
QCString | launcher ()
| Returns the DCOP name of the service launcher.
int | startServiceByName (const QString &_name, const QString &URL, QString *error=0, QCString *dcopService=0, int *pid=0, const QCString &startup_id="", bool noWait=false)
| Starts a service based on the (translated) name of the service.
int | startServiceByName (const QString &_name, const QStringList &URLs=QStringList(), QString *error=0, QCString *dcopService=0, int *pid=0, const QCString &startup_id="", bool noWait=false)
| Starts a service based on the (translated) name of the service.
int | startServiceByDesktopPath (const QString &_name, const QString &URL, QString *error=0, QCString *dcopService=0, int *pid=0, const QCString &startup_id="", bool noWait=false)
| Starts a service based on the desktop path of the service.
int | startServiceByDesktopPath (const QString &_name, const QStringList &URLs=QStringList(), QString *error=0, QCString *dcopService=0, int *pid=0, const QCString &startup_id="", bool noWait=false)
| Starts a service based on the desktop path of the service.
int | startServiceByDesktopName (const QString &_name, const QString &URL, QString *error=0, QCString *dcopService=0, int *pid=0, const QCString &startup_id="", bool noWait=false)
| Starts a service based on the desktop name of the service.
int | startServiceByDesktopName (const QString &_name, const QStringList &URLs=QStringList(), QString *error=0, QCString *dcopService=0, int *pid=0, const QCString &startup_id="", bool noWait=false)
| Starts a service based on the desktop name of the service.
int | kdeinitExec (const QString &name, const QStringList &args=QStringList(), QString *error=0, int *pid=0)
| Starts a program via kdeinit.
int | kdeinitExecWait (const QString &name, const QStringList &args=QStringList(), QString *error=0, int *pid=0)
| Starts a program via kdeinit and wait for it to finish.
int | random ()
| Generates a uniform random number.
QString | randomString (int length)
| Generates a random string.
uint | keyboardModifiers ()
| Returns the currently pressed keyboard modifiers (e.g.
uint | mouseState ()
| Returns the currently pressed mouse buttons.
void | startKdeinit ()
QPalette | createApplicationPalette ()
| Used to obtain the QPalette that will be used to set the application palette.
QPalette | createApplicationPalette (KConfig *config, int contrast)

## Static Public Attributes

bool | loadedByKdeinit = false

## Protected Member Functions

| KApplication (bool allowStyles, bool GUIenabled, KInstance *_instance)
virtual void | virtual_hook (int id, void *data)

## Protected Attributes

Atom | kipcCommAtom
int | kipcEventMask
int | pArgc

## Static Protected Attributes

KApplication * | KApp = 0L
| Current application object.

## Detailed Description

Controls and provides information to all KDE applications. Controls and provides information to all KDE applications.

Only one object of this class can be instantiated in a single app. This instance is always accessible via the kApplication() method.

This class provides the following services to all KDE applications.

- It controls the event queue (see QApplication ).
- It provides the application with KDE resources such as accelerators, common menu entries, a KConfig object. session management events, help invocation etc.
- Installs a signal handler for the SIGCHLD signal in order to avoid zombie children. If you want to catch this signal yourself or don't want it to be caught at all, you have set a new signal handler (or SIG_IGN) after KApplication's constructor has run.
- It can start new services

The way a service gets started depends on the 'X-DCOP-ServiceType' entry in the desktop file of the service:

There are three possibilities:

- X-DCOP-ServiceType=None (default) Always start a new service, don't wait till the service registers with dcop.
- X-DCOP-ServiceType=Multi Always start a new service, wait until the service has registered with dcop.
- X-DCOP-ServiceType=Unique Only start the service if it isn't already running, wait until the service has registered with dcop.

Author:
  Matthias Kalle Dalheimer <kalle@kde.org>

Version:
  Id
    kapplication.h,v 1.278.2.1 2003/03/03 14:39:42 lunakl Exp

Definition at line 91 of file kapplication.h.

## Member Enumeration Documentation

enum KApplication::ShutdownConfirm

The possible values for the `confirm` parameter of requestShutDown().

Enumeration values:

  ShutdownConfirmDefault | Obey the user's confirmation setting.
  ShutdownConfirmNo | Don't confirm, shutdown without asking.
  ShutdownConfirmYes | Always confirm, ask even if the user turned it off.

Definition at line 210 of file kapplication.h.

enum KApplication::ShutdownType

The possible values for the `sdtype` parameter of requestShutDown().

Enumeration values:

  ShutdownTypeDefault | Select previous action or the default if it's the first time.
  ShutdownTypeNone | Only log out.
  ShutdownTypeReboot | Log out and reboot the machine.
  ShutdownTypeHalt | Log out and halt the machine.

Definition at line 228 of file kapplication.h.

enum KApplication::ShutdownMode

The possible values for the `sdmode` parameter of requestShutDown().

Enumeration values:

  ShutdownModeDefault | Select previous mode or the default if it's the first time.
  ShutdownModeSchedule | Schedule a shutdown (halt or reboot) for the time all active sessions have exited.
  ShutdownModeTryNow | Shut down, if no sessions are active. Otherwise do nothing.
  ShutdownModeForceNow | Force shutdown. Kill any possibly active sessions.
  ShutdownModeInteractive | Pop up a dialog asking the user what to do if sessions are still active.

Definition at line 250 of file kapplication.h.

enum KApplication::SettingsCategory

| Valid values for the settingsChanged signal. Definition at line 956 of file kapplication.h.

## Constructor & Destructor Documentation

KApplication::KApplication | ( | bool | allowStyles = true,
|  | bool | GUIenabled = true
| ) |

This constructor takes aboutData and command line arguments from KCmdLineArgs.

Parameters:

  allowStyles | Set to false to disable the loading on plugin based styles. This is only useful to applications that do not display a GUI normally. If you do create an application with `allowStyles` set to false it normally runs in the background but under special circumstances displays widgets. Call enableStyles() before displaying any widgets.
  GUIenabled | Set to false to disable all GUI stuff. This implies no styles either.

Definition at line 515 of file kapplication.cpp.

References KInstance::instanceName().

KApplication::KApplication | ( | Display * | display,
|  | int & | argc,
|  | char ** | argv,
|  | const QCString & | rAppName,
|  | bool | allowStyles = true,
|  | bool | GUIenabled = true
| ) |

Constructor.

Parses command-line arguments. Use this constructor to use KApplication in a Motif or Xt program.

Parameters:

  display | Will be passed to Qt as the X display. The display must be valid and already opened.
  rAppName | application name. Will be used for finding the associated message files and icon files, and as the default registration name for DCOP. This is a mandatory parameter.
  allowStyles | Set to false to disable the loading on plugin based styles. This is only useful to applications that do not display a GUI normally. If you do create an application with `allowStyles` set to false that normally runs in the background but under special circumstances displays widgets call enableStyles() before displaying any widgets.
  GUIenabled | Set to false to disable all GUI stuff. This implies no styles either.

KApplication::KApplication | ( | int & | argc,
|  | char ** | argv,
|  | const QCString & | rAppName,
|  | bool | allowStyles = true,
|  | bool | GUIenabled = true
| ) |

This class or method is obsolete, it is provided for compatibility only. // REMOVE FOR KDE 4.0 - using it only gives crashing applications because // KCmdLineArgs::init isn't called

Constructor. Parses command-line arguments.

Parameters:

  rAppName | application name. Will be used for finding the associated message files and icon files, and as the default registration name for DCOP. This is a mandatory parameter.
  allowStyles | Set to false to disable the loading on plugin based styles. This is only useful to applications that do not display a GUI normally. If you do create an application with `allowStyles` set to false that normally runs in the background but under special circumstances displays widgets call enableStyles() before displaying any widgets.
  GUIenabled | Set to false to disable all GUI stuff. This implies no styles either.

Definition at line 494 of file kapplication.cpp.

References QCString::isEmpty(), and QApplication::Q_ASSERT().

## Member Function Documentation

void KApplication::addCmdLineOptions | ( |  | ) | `[static]`

| Add Qt and KDE command line options to KCmdLineArgs. Reimplemented in KUniqueApplication. Definition at line 1213 of file kapplication.cpp. References KCmdLineArgs::addCmdLineOptions(). Referenced by KCmdLineArgs::init().

KApplication* KApplication::kApplication | ( |  | ) | `[inline, static]`

Returns the current application object.

This is similar to the global QApplication pointer qApp. It allows access to the single global KApplication object, since more than one cannot be created in the same application. It saves you the trouble of having to pass the pointer explicitly to every function that may require it.

Returns:
  the current application object

Definition at line 178 of file kapplication.h.

References KApp.

KConfig * KApplication::sessionConfig | ( |  | ) |

Returns the application session config object.

Returns:
  A pointer to the application's instance specific KConfig object.

See also:
  KConfig

Definition at line 817 of file kapplication.cpp.

bool KApplication::isRestored | ( |  | ) | const`[inline]`

Is the application restored from the session manager?

Returns:
  If true, this application was restored by the session manager. Note that this may mean the config object returned by sessionConfig() contains data saved by a session closedown.

See also:
  sessionConfig()

Definition at line 197 of file kapplication.h.

References QApplication::isSessionRestored().

void KApplication::disableSessionManagement | ( |  | ) |

| Disables session management for this application. Useful in case your application is started by the initial "startkde" script. Definition at line 863 of file kapplication.cpp.

bool KApplication::requestShutDown | ( | ShutdownConfirm | confirm = ShutdownConfirmDefault,
|  | ShutdownType | sdtype = ShutdownTypeDefault,
|  | ShutdownMode | sdmode = ShutdownModeDefault
| ) |

Asks the session manager to shut the session down.

Using `confirm` == ShutdownConfirmYes or `sdtype` != ShutdownTypeDefault or `sdmode` != ShutdownModeDefault causes the use of ksmserver's DCOP interface. The remaining two combinations use the standard XSMP and will work with any session manager compliant with it.

Parameters:

  confirm | Whether to ask the user if he really wants to log out. ShutdownConfirm
  sdtype | The action to take after logging out. ShutdownType
  sdmode | If/When the action should be taken. ShutdownMode

Returns:
  true on sucess, false if the session manager could not be contacted.

Definition at line 868 of file kapplication.cpp.

References dcopClient(), QCString::isEmpty(), propagateSessionManager(), DCOPClient::send(), ShutdownConfirmNo, ShutdownConfirmYes, ShutdownModeDefault, ShutdownTypeDefault, and QApplication::syncX().

void KApplication::propagateSessionManager | ( |  | ) |

Propagates the network address of the session manager in the SESSION_MANAGER environment variable so that child processes can pick it up.

If SESSION_MANAGER isn't defined yet, the address is searched in $HOME/.KSMserver.

This function is called by clients that are started outside the session ( i.e. before ksmserver is started), but want to launch other processes that should participate in the session. Examples are kdesktop or kicker.

Definition at line 931 of file kapplication.cpp.

References QFile::close(), QFile::encodeName(), QCString::find(), QCString::isEmpty(), QFileInfo::lastModified(), QString::latin1(), QFile::open(), QTextStream::readLine(), QCString::replace(), and QTextStream::setEncoding().

Referenced by requestShutDown().

bool KApplication::sessionSaving | ( |  | ) | const

Returns true if the application is currently saving its session data (most probably before KDE logout).

This is intended for use mainly in KMainWindow::queryClose() and KMainWindow::queryExit().

See also:
  KMainWindow::queryClose

  KMainWindow::queryExit

Since:
  3.1.1

Definition at line 1098 of file kapplication.cpp.

DCOPClient * KApplication::dcopClient | ( |  | ) | `[static]`

Returns a pointer to a DCOPClient for the application.

If a client does not exist yet, it is created when this function is called.

Returns:
  the DCOPClient for the application

Definition at line 767 of file kapplication.cpp.

References KCmdLineArgs::getOption(), KCmdLineArgs::isSet(), KCmdLineArgs::parsedArgs(), DCOPClient::setMainClient(), and DCOPClient::setServerAddress().

Referenced by requestShutDown(), and KUniqueApplication::start().

void KApplication::disableAutoDcopRegistration | ( |  | ) | `[static]`

| Disable automatic dcop registration Must be called before creating a KApplication instance to have an effect. Definition at line 812 of file kapplication.cpp.

QPixmap KApplication::icon | ( |  | ) | const

Returns a QPixmap with the application icon.

Returns:
  the application icon

Definition at line 1319 of file kapplication.cpp.

References aIconPixmap, KInstance::instanceName(), and QPixmap::isNull().

Referenced by setTopWidget().

QString KApplication::iconName | ( |  | ) | const

Returns the name of the application icon.

Returns:
  the icon's name

Definition at line 1328 of file kapplication.cpp.

References KInstance::instanceName(), and QString::isNull().

QPixmap KApplication::miniIcon | ( |  | ) | const

Returns the mini-icon for the application as a QPixmap.

Returns:
  the application's mini icon

Definition at line 1333 of file kapplication.cpp.

References aMiniIconPixmap, KInstance::instanceName(), and QPixmap::isNull().

Referenced by setTopWidget().

QString KApplication::miniIconName | ( |  | ) | const

Returns the name of the mini-icon for the application.

Returns:
  the mini icon's name

Definition at line 1342 of file kapplication.cpp.

References KInstance::instanceName(), and QString::isNull().

void KApplication::setTopWidget | ( | QWidget * | topWidget | ) |

Sets the top widget of the application.

This means basically applying the right window caption and icon. An application may have several top widgets. You don't need to call this function manually when using KMainWindow.

Parameters:

  topWidget | A top widget of the application.

See also:
  icon(), caption()

Definition at line 2247 of file kapplication.cpp.

References KCmdLineArgs::appName(), caption(), icon(), miniIcon(), QWidget::setCaption(), QWidget::setIcon(), KWin::setIcons(), startupId(), QString::utf8(), and QWidget::winId().

void KApplication::invokeHelp | ( | const QString & | anchor = QString::null,
|  | const QString & | appname = QString::null
| ) | const

Invokes the KHelpCenter HTML help viewer from docbook sources.

Parameters:

  anchor | This has to be a defined anchor in your docbook sources. If empty the main index is loaded
  appname | This allows you to show the help of another application. If empty the current name() is used

Definition at line 1818 of file kapplication.cpp.

References QString::arg(), QString::isEmpty(), KStdAction::name(), and startServiceByDesktopName().

void KApplication::invokeHTMLHelp | ( | const QString & | aFilename,
|  | const QString & | aTopic = QString::null
| ) | const

This class or method is obsolete, it is provided for compatibility only. Invoke the khelpcenter HTML help viewer from HTML sources.

Please use invokeHelp() instead.

Parameters:

  aFilename | The filename that is to be loaded. Its location is computed automatically according to the KFSSTND. If `aFilename` is empty, the logical appname with .html appended to it is used.
  aTopic | This allows context-sensitive help. Its value will be appended to the filename, prefixed with a "#" (hash) character.

Definition at line 1842 of file kapplication.cpp.

References QString::arg(), QString::isEmpty(), KStdAction::name(), and startServiceByDesktopName().

void KApplication::invokeMailer | ( | const QString & | address,
|  | const QString & | subject
| ) |

Convenience method; invokes the standard email application.

Parameters:

  address | The destination address
  subject | Subject string. Can be QString::null.

Definition at line 1869 of file kapplication.cpp.

Referenced by invokeMailer().

void KApplication::invokeMailer | ( | const KURL & | mailtoURL | ) |

Invokes the standard email application.

Parameters:

  mailtoURL | A mailto URL.

Definition at line 1874 of file kapplication.cpp.

References KURL::decode_string(), invokeMailer(), QString::mid(), KURL::path(), KURL::query(), QStringList::split(), and QString::startsWith().

void KApplication::invokeMailer | ( | const QString & | to,
|  | const QString & | cc,
|  | const QString & | bcc,
|  | const QString & | subject,
|  | const QString & | body,
|  | const QString & | messageFile = QString::null,
|  | const QStringList & | attachURLs = QStringList()
| ) |

Convenience method; invokes the standard email application.

All parameters are optional.

Parameters:

  to | The destination address.
  cc | The Cc field
  bcc | The Bcc field
  subject | Subject string
  body | A string containing the body of the mail (exclusive with messageFile)
  messageFile | A file (URL) containing the body of the mail (exclusive with body) - currently unsupported
  attachURLs | List of URLs to be attached to the mail.

Definition at line 1900 of file kapplication.cpp.

References KInstance::config(), QString::fromLatin1(), QString::insert(), QString::isEmpty(), kdeinitExec(), KConfigBase::readBoolEntry(), KConfigBase::readPathEntry(), QString::remove(), QString::right(), KConfigBase::setGroup(), QString::simplifyWhiteSpace(), and QStringList::split().

void KApplication::invokeBrowser | ( | const QString & | url | ) | `[slot]`

Invokes the standard browser.

Note that you should only do this when you know for sure that the browser can handle the URL (i.e. its mimetype). In doubt, if the URL can point to an image or anything else than directory or HTML, prefer to use new KRun( url ).

Parameters:

  url | The destination address

Definition at line 1975 of file kapplication.cpp.

References startServiceByDesktopName().

QCString KApplication::launcher | ( |  | ) | `[static]`

Returns the DCOP name of the service launcher.

This will be something like klaucher_$host_$uid.

Returns:
  the name of the service launcher

Definition at line 1987 of file kapplication.cpp.

int KApplication::startServiceByName | ( | const QString & | _name,
|  | const QString & | URL,
|  | QString * | error = 0,
|  | QCString * | dcopService = 0,
|  | int * | pid = 0,
|  | const QCString & | startup_id = "",
|  | bool | noWait = false
| ) | `[static]`

Starts a service based on the (translated) name of the service.

E.g. "Web Browser"

Parameters:

  name | the name of the service
  URL | if not empty this URL is passed to the service
  error | On failure, `error` contains a description of the error that occurred. If the pointer is 0, the argument will be ignored
  dcopService | On success, `dcopService` contains the DCOP name under which this service is available. If empty, the service does not provide DCOP services. If the pointer is 0 the argument will be ignored
  pid | On success, the process id of the new service will be written here. If the pointer is 0, the argument will be ignored.
  startup_id | for app startup notification, "0" for none, "" ( empty string ) is the default
  noWait | if set, the function does not wait till the service is running.

Returns:
  an error code indicating success (== 0) or failure (> 0).

Definition at line 2069 of file kapplication.cpp.

References QString::isEmpty().

int KApplication::startServiceByName | ( | const QString & | _name,
|  | const QStringList & | URLs = QStringList(),
|  | QString * | error = 0,
|  | QCString * | dcopService = 0,
|  | int * | pid = 0,
|  | const QCString & | startup_id = "",
|  | bool | noWait = false
| ) | `[static]`

Starts a service based on the (translated) name of the service.

E.g. "Web Browser"

Parameters:

  name | the name of the service
  URLs | if not empty these URLs will be passed to the service
  error | On failure, `error` contains a description of the error that occurred. If the pointer is 0, the argument will be ignored
  dcopService | On success, `dcopService` contains the DCOP name under which this service is available. If empty, the service does not provide DCOP services. If the pointer is 0 the argument will be ignored
  pid | On success, the process id of the new service will be written here. If the pointer is 0, the argument will be ignored.
  startup_id | for app startup notification, "0" for none, "" ( empty string ) is the default
  noWait | if set, the function does not wait till the service is running.

Returns:
  an error code indicating success (== 0) or failure (> 0).

Definition at line 2081 of file kapplication.cpp.

int KApplication::startServiceByDesktopPath | ( | const QString & | _name,
|  | const QString & | URL,
|  | QString * | error = 0,
|  | QCString * | dcopService = 0,
|  | int * | pid = 0,
|  | const QCString & | startup_id = "",
|  | bool | noWait = false
| ) | `[static]`

Starts a service based on the desktop path of the service.

E.g. "Applications/konqueror.desktop" or "/home/user/bla/myfile.desktop"

Parameters:

  name | the path of the desktop file
  URL | if not empty this URL is passed to the service
  error | On failure, `error` contains a description of the error that occurred. If the pointer is 0, the argument will be ignored
  dcopService | On success, `dcopService` contains the DCOP name under which this service is available. If empty, the service does not provide DCOP services. If the pointer is 0 the argument will be ignored
  pid | On success, the process id of the new service will be written here. If the pointer is 0, the argument will be ignored.
  startup_id | for app startup notification, "0" for none, "" ( empty string ) is the default
  noWait | if set, the function does not wait till the service is running.

Returns:
  an error code indicating success (== 0) or failure (> 0).

Definition at line 2090 of file kapplication.cpp.

References QString::isEmpty().

int KApplication::startServiceByDesktopPath | ( | const QString & | _name,
|  | const QStringList & | URLs = QStringList(),
|  | QString * | error = 0,
|  | QCString * | dcopService = 0,
|  | int * | pid = 0,
|  | const QCString & | startup_id = "",
|  | bool | noWait = false
| ) | `[static]`

Starts a service based on the desktop path of the service.

E.g. "Applications/konqueror.desktop" or "/home/user/bla/myfile.desktop"

Parameters:

  name | the path of the desktop file
  URLs | if not empty these URLs will be passed to the service
  error | On failure, `error` contains a description of the error that occurred. If the pointer is 0, the argument will be ignored
  dcopService | On success, `dcopService` contains the DCOP name under which this service is available. If empty, the service does not provide DCOP services. If the pointer is 0 the argument will be ignored
  pid | On success, the process id of the new service will be written here. If the pointer is 0, the argument will be ignored.
  startup_id | for app startup notification, "0" for none, "" ( empty string ) is the default
  noWait | if set, the function does not wait till the service is running.

Returns:
  an error code indicating success (== 0) or failure (> 0).

Definition at line 2102 of file kapplication.cpp.

int KApplication::startServiceByDesktopName | ( | const QString & | _name,
|  | const QString & | URL,
|  | QString * | error = 0,
|  | QCString * | dcopService = 0,
|  | int * | pid = 0,
|  | const QCString & | startup_id = "",
|  | bool | noWait = false
| ) | `[static]`

Starts a service based on the desktop name of the service.

E.g. "konqueror"

Parameters:

  name | the desktop name of the service
  URL | if not empty this URL is passed to the service
  error | On failure, `error` contains a description of the error that occurred. If the pointer is 0, the argument will be ignored
  dcopService | On success, `dcopService` contains the DCOP name under which this service is available. If empty, the service does not provide DCOP services. If the pointer is 0 the argument will be ignored
  pid | On success, the process id of the new service will be written here. If the pointer is 0, the argument will be ignored.
  startup_id | for app startup notification, "0" for none, "" ( empty string ) is the default
  noWait | if set, the function does not wait till the service is running.

Returns:
  an error code indicating success (== 0) or failure (> 0).

Definition at line 2111 of file kapplication.cpp.

References QString::isEmpty().

Referenced by invokeBrowser(), invokeHelp(), invokeHTMLHelp(), and KNotifyClient::startDaemon().

int KApplication::startServiceByDesktopName | ( | const QString & | _name,
|  | const QStringList & | URLs = QStringList(),
|  | QString * | error = 0,
|  | QCString * | dcopService = 0,
|  | int * | pid = 0,
|  | const QCString & | startup_id = "",
|  | bool | noWait = false
| ) | `[static]`

Starts a service based on the desktop name of the service.

E.g. "konqueror"

Parameters:

  name | the desktop name of the service
  URLs | if not empty these URLs will be passed to the service
  error | On failure, `error` contains a description of the error that occurred. If the pointer is 0, the argument will be ignored
  dcopService | On success, `dcopService` contains the DCOP name under which this service is available. If empty, the service does not provide DCOP services. If the pointer is 0 the argument will be ignored
  pid | On success, the process id of the new service will be written here. If the pointer is 0, the argument will be ignored.
  startup_id | for app startup notification, "0" for none, "" ( empty string ) is the default
  noWait | if set, the function does not wait till the service is running.

Returns:
  an error code indicating success (== 0) or failure (> 0).

Definition at line 2123 of file kapplication.cpp.

int KApplication::kdeinitExec | ( | const QString & | name,
|  | const QStringList & | args = QStringList(),
|  | QString * | error = 0,
|  | int * | pid = 0
| ) | `[static]`

Starts a program via kdeinit.

There will be no application startup notification, so you should use it only for starting internal processes.

program name and arguments are converted to according to the local encoding and passed as is to kdeinit.

Parameters:

  name | Name of the program to start
  args | Arguments to pass to the program
  error | On failure, `error` contains a description of the error that occurred. If the pointer is 0, the argument will be ignored
  pid | On success, the process id of the new service will be written here. If the pointer is 0, the argument will be ignored.

Returns:
  an error code indicating success (== 0) or failure (> 0).

Definition at line 2132 of file kapplication.cpp.

References KStdAction::name().

Referenced by invokeMailer().

int KApplication::kdeinitExecWait | ( | const QString & | name,
|  | const QStringList & | args = QStringList(),
|  | QString * | error = 0,
|  | int * | pid = 0
| ) | `[static]`

Starts a program via kdeinit and wait for it to finish.

Like kdeinitExec(), but it waits till the program is finished. As such it behaves similar to the system(...) function.

Parameters:

  name | Name of the program to start
  args | Arguments to pass to the program
  error | On failure, `error` contains a description of the error that occurred. If the pointer is 0, the argument will be ignored
  pid | On success, the process id of the new service will be written here. If the pointer is 0, the argument will be ignored.

Returns:
  an error code indicating success (== 0) or failure (> 0).

Definition at line 2140 of file kapplication.cpp.

References KStdAction::name().

Referenced by KConfig::checkUpdate().

QString KApplication::caption | ( |  | ) | const

Returns a text for the window caption.

This may be set by "-caption", otherwise it will be equivalent to the name of the executable.

Returns:
  the text for the window caption

Definition at line 1578 of file kapplication.cpp.

References KInstance::aboutData(), KGlobal::instance(), QString::isNull(), KStdAction::name(), and KAboutData::programName().

Referenced by makeStdCaption(), and setTopWidget().

KStyle* KApplication::kstyle | ( |  | ) | const`[inline]`

| This class or method is obsolete, it is provided for compatibility only. Definition at line 652 of file kapplication.h.

QString KApplication::makeStdCaption | ( | const QString & | userCaption,
|  | bool | withAppName = true,
|  | bool | modified = false
| ) | const

Builds a caption that contains the application name along with the userCaption() using a standard layout.

To make a compliant caption for your window, simply do: `setCaption`(kapp->makeStdCaption(yourCaption));

Parameters:

  userCaption | The caption string you want to display in the window caption area. Do not include the application name!
  withAppName | Indicates that the method shall include or ignore the application name when making the caption string. You are not compliant if you set this to `false`.
  modified | If true, a 'modified' sign will be included in the returned string. This is useful when indicating that a file is modified, i.e., it contains data that has not been saved.

Returns:
  the created caption

Definition at line 1597 of file kapplication.cpp.

References caption(), QString::endsWith(), QString::fromUtf8(), QString::isEmpty(), and QString::isNull().

QString KApplication::tempSaveName | ( | const QString & | pFilename | ) | const

Get a file name in order to make a temporary copy of your document.

Parameters:

  pFilename | The full path to the current file of your document.

Returns:
  A new filename for auto-saving.

Definition at line 2147 of file kapplication.cpp.

References QDir::absPath(), KGlobal::dirs(), QDir::exists(), QDir::homeDirPath(), QDir::mkdir(), QString::replace(), and QDir::setPath().

QString KApplication::checkRecoverFile | ( | const QString & | pFilename,
|  | bool & | bRecover
| ) | const

Check whether an auto-save file exists for the document you want to open.

Parameters:

  pFilename | The full path to the document you want to open.
  bRecover | This gets set to true if there was a recover file.

Returns:
  The full path of the file to open.

Definition at line 2175 of file kapplication.cpp.

References QDir::absPath(), KGlobal::dirs(), QDir::exists(), QDir::homeDirPath(), QDir::mkdir(), QString::replace(), and QDir::setPath().

void KApplication::enableStyles | ( |  | ) |

| Enables style plugins. This is useful only to applications that normally do not display a GUI and create the KApplication with allowStyles set to false. Definition at line 1537 of file kapplication.cpp.

void KApplication::disableStyles | ( |  | ) |

| Disables style plugins. Current style plugins do not get unloaded. This is only useful when used in combination with enableStyles(). Definition at line 1546 of file kapplication.cpp.

void KApplication::installX11EventFilter | ( | QWidget * | filter | ) |

| Installs widget filter as global X11 event filter. The widget filter receives XEvents in its standard QWidget::x11Event() function. Warning: Only do this when absolutely necessary. An installed X11 filter can slow things down. Definition at line 351 of file kapplication.cpp.

int KApplication::random | ( |  | ) | `[static]`

Generates a uniform random number.

Returns:
  A truly unpredictable number in the range [0, RAND_MAX)

Definition at line 2321 of file kapplication.cpp.

References KStdAction::close(), and KStdAction::open().

Referenced by randomString(), and KRandomSequence::setSeed().

QString KApplication::randomString | ( | int | length | ) | `[static]`

Generates a random string.

It operates in the range [A-Za-z0-9]

Parameters:

  length | Generate a string of this length.

Returns:
  the random string

Definition at line 2341 of file kapplication.cpp.

References random().

void KApplication::addKipcEventMask | ( | int | id | ) |

Adds a message type to the KIPC event mask.

You can only add "system messages" to the event mask. These are the messages with id < 32. Messages with id >= 32 are user messages.

Parameters:

  id | The message id. See KIPC::Message.

See also:
  KIPC

  removeKipcEventMask()

  kipcMessage()

Definition at line 1517 of file kapplication.cpp.

void KApplication::removeKipcEventMask | ( | int | id | ) |

Removes a message type from the KIPC event mask.

This message will not be handled anymore.

Parameters:

  id | The message id.

See also:
  KIPC

  addKipcEventMask()

  kipcMessage()

Definition at line 1527 of file kapplication.cpp.

QCString KApplication::startupId | ( |  | ) | const

Returns the app startup notification identifier for this running application.

Returns:
  the startup notification identifier

Definition at line 2297 of file kapplication.cpp.

Referenced by setTopWidget().

void KApplication::setStartupId | ( | const QCString & | startup_id | ) |

Sets a new value for the application startup notification window property for newly created toplevel windows.

Parameters:

  the | startup notification identifier

Definition at line 2302 of file kapplication.cpp.

References QCString::isEmpty().

QString KApplication::geometryArgument | ( |  | ) | const

Returns the argument to --geometry if any, so the geometry can be set wherever necessary.

Returns:
  the geometry argument, or QString::null if there is none

Definition at line 1314 of file kapplication.cpp.

void KApplication::installKDEPropertyMap | ( |  | ) |

| Install a Qt SQL property map with entries for all KDE widgets Call this in any application using KDE widgets in QSqlForm or QDataView. Definition at line 1786 of file kapplication.cpp. References QSqlPropertyMap::insert(), and QSqlPropertyMap::installDefaultMap().

bool KApplication::authorize | ( | const QString & | genericAction | ) |

Returns whether a certain action is authorized.

Parameters:

  genericAction | The name of a generic action

Returns:
  true if the action is authorized

Definition at line 2358 of file kapplication.cpp.

References KGlobal::config(), and KConfigBase::readBoolEntry().

Referenced by authorizeKAction().

bool KApplication::authorizeKAction | ( | const char * | action | ) |

Returns whether a certain KAction is authorized.

Parameters:

  action | The name of a KAction action. The name is prepended with "action/" before being passed to authorize()

Returns:
  true if the KAction is authorized

Definition at line 2368 of file kapplication.cpp.

References KStdAction::action(), authorize(), and KGlobal::staticQString().

bool KApplication::authorizeURLAction | ( | const QString & | action,
|  | const KURL & | baseURL,
|  | const KURL & | destURL
| ) |

Returns whether a certain URL related action is authorized.

Parameters:

  action | The name of the action. Known actions are list (may be listed (e.g. in file selection dialog)), link (may be linked to), open (may open) and redirect (may be redirected to)
  baseURL | The url where the action originates from
  destURL | The object of the action

Returns:
  true when the action is authorized, false otherwise.

Since:
  3.1

Definition at line 2474 of file kapplication.cpp.

References KStdAction::action(), QDir::cleanDirPath(), KURL::isEmpty(), KURL::path(), and KURL::setPath().

uint KApplication::keyboardModifiers | ( |  | ) | `[static]`

Returns the currently pressed keyboard modifiers (e.g.

shift, control, etc.) Usually you simply want to test for those in key events, in which case QKeyEvent::state() does the job (or QKeyEvent::key() to notice when a modifier is pressed alone). But it can be useful to query for the status of the modifiers at another moment (e.g. some KDE apps do that upon a drop event).

Returns:
  the keyboard modifiers

Since:
  3.1

Definition at line 2503 of file kapplication.cpp.

uint KApplication::mouseState | ( |  | ) | `[static]`

Returns the currently pressed mouse buttons.

Usually you simply want to test for those in mouse events, in which case QMouseEvent::button() does the job (or QMouseEvent::state()). But it can be useful to query for the status of the mouse buttons at another moment. To query for the mouse pointer position, use QCursor::pos().

Returns:
  the currently pressed mouse buttons

Since:
  3.1

Definition at line 2514 of file kapplication.cpp.

void KApplication::ref | ( |  | ) | `[slot]`

| Tells KApplication about one more operation that should be finished before the application exits. The standard behavior is to exit on the "last window closed" event, but some events should outlive the last window closed (e.g. a file copy for a file manager, or 'compacting folders on exit' for a mail client). Definition at line 827 of file kapplication.cpp.

void KApplication::deref | ( |  | ) | `[slot]`

| Tells KApplication that one operation such as those described in just finished. The application exits if the counter is back to 0. Definition at line 833 of file kapplication.cpp. References QApplication::quit().

QPalette KApplication::createApplicationPalette | ( |  | ) | `[static]`

Used to obtain the QPalette that will be used to set the application palette.

This is only useful for configuration modules such as krdb and should not be used in normal circumstances.

Returns:
  the QPalette

Since:
  3.1

Definition at line 1616 of file kapplication.cpp.

References KGlobal::config(), and KGlobalSettings::contrast().

void KApplication::kdisplayPaletteChanged | ( |  | ) | `[signal]`

| Emitted when KApplication has changed its palette due to a KControl request. Normally, widgets will update their palette automatically, but you should connect to this to program special behavior.

void KApplication::kdisplayStyleChanged | ( |  | ) | `[signal]`

| Emitted when KApplication has changed its GUI style in response to a KControl request. Normally, widgets will update their styles automatically (as they would respond to an explicit setGUIStyle() call), but you should connect to this to program special behavior.

void KApplication::kdisplayFontChanged | ( |  | ) | `[signal]`

| Emitted when KApplication has changed its font in response to a KControl request. Normally widgets will update their fonts automatically, but you should connect to this to monitor global font changes, especially if you are using explicit fonts.

void KApplication::appearanceChanged | ( |  | ) | `[signal]`

| Emitted when KApplication has changed either its GUI style, its font or its palette in response to a kdisplay request. Normally, widgets will update their styles automatically, but you should connect to this to program special behavior.

void KApplication::toolbarAppearanceChanged | ( | int |  | ) | `[signal]`

| Emitted when the settings for toolbars have been changed. KToolBar will know what to do.

void KApplication::backgroundChanged | ( | int | desk | ) | `[signal]`

Emitted when the desktop background has been changed by `kcmdisplay`.

Parameters:

  desk | The desktop whose background has changed.

void KApplication::settingsChanged | ( | int | category | ) | `[signal]`

Emitted when the global settings have been changed - see KGlobalSettings KApplication takes care of calling reparseConfiguration on KGlobal::config() so that applications/classes using this only have to re-read the configuration.

Parameters:

  category | the category among the enum above

void KApplication::iconChanged | ( | int | group | ) | `[signal]`

Emitted when the global icon settings have been changed.

Parameters:

  group | the new group

void KApplication::kipcMessage | ( | int | id,
|  | int | data
| ) | `[signal]`

Emitted when a KIPC user message has been received.

Parameters:

  id | the message id
  data | the data

See also:
  KIPC

  KIPC::Message

  addKipcEventMask

  removeKipcEventMask

void KApplication::saveYourself | ( |  | ) | `[signal]`

Session management asks you to save the state of your application.

This signal is provided for compatibility only. For new applications, simply use KMainWindow. By reimplementing KMainWindow::queryClose(), KMainWindow::saveProperties() and KMainWindow::readProperties() you can simply handle session management for applications with multiple toplevel windows.

For purposes without KMainWindow, create an instance of KSessionManaged and reimplement the functions KSessionManaged::commitData() and/or KSessionManaged::saveState()

If you still want to use this signal, here is what you should do:

Connect to this signal in order to save your data. Do NOT manipulate the UI in that slot, it is blocked by the session manager.

Use the sessionConfig() KConfig object to store all your instance specific data.

Do not do any closing at this point! The user may still select Cancel wanting to continue working with your application. Cleanups could be done after shutDown() (see the following).

void KApplication::shutDown | ( |  | ) | `[signal]`

| Your application is killed. Either by your program itself, `xkill` or (the usual case) by KDE's logout. The signal is particularly useful if your application has to do some last-second cleanups. Note that no user interaction is possible at this state.

## Member Data Documentation

KApplication * KApplication::KApp = 0L`[static, protected]`

| Current application object. Definition at line 132 of file kapplication.cpp. Referenced by kApplication().

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

- kapplication.h
- kapplication.cpp

This file is part of the documentation for kdelibs Version 3.1.5.
Documentation copyright © 1996-2002 the KDE developers.
Generated on Wed Jan 28 12:47:14 2004 by doxygen 1.3.4 written by Dimitri van Heesch, © 1997-2001