• Skip to content
  • Skip to link menu
KDE 4.3 API Reference
  • KDE API Reference
  • kdelibs
  • Sitemap
  • Contact Us
 

KDECore

ktoolinvocation.h

Go to the documentation of this file.
00001 /* This file is part of the KDE libraries
00002     Copyright (c) 1997-1999 Matthias Kalle Dalheimer <kalle@kde.org>
00003     Copyright (c) 1997-2000 Matthias Ettrich <ettrich@troll.no>
00004     Copyright (c) 1998-2005 Stephan Kulow <coolo@kde.org>
00005     Copyright (c) 1999-2004 Waldo Bastian <bastian@kde.org>
00006     Copyright (c) 2001-2005 Lubos Lunak <l.lunak@kde.org>
00007     Copyright (C) 2008 Aaron Seigo <aseigo@kde.org>
00008 
00009     This library is free software; you can redistribute it and/or
00010     modify it under the terms of the GNU Library General Public
00011     License as published by the Free Software Foundation; either
00012     version 2 of the License, or (at your option) any later version.
00013 
00014     This library is distributed in the hope that it will be useful,
00015     but WITHOUT ANY WARRANTY; without even the implied warranty of
00016     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00017     Library General Public License for more details.
00018 
00019     You should have received a copy of the GNU Library General Public License
00020     along with this library; see the file COPYING.LIB.  If not, write to
00021     the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00022     Boston, MA 02110-1301, USA.
00023 */
00024 
00025 #ifndef _KTOOLINVOCATION_H
00026 #define _KTOOLINVOCATION_H
00027 
00028 #include <kdecore_export.h>
00029 
00030 #include <QtCore/QObject>
00031 #include <QtCore/QByteArray>
00032 #include <QtCore/QStringList>
00033 
00034 class OrgKdeKLauncherInterface;
00035 class KUrl;
00036 class KToolInvocationPrivate;
00037 
00071 class KDECORE_EXPORT KToolInvocation : public QObject
00072 {
00073 
00074   Q_OBJECT
00075 private:
00076     KToolInvocation();
00077 public:
00078     // @internal
00079     ~KToolInvocation();
00080     static KToolInvocation *self();
00081 
00082 public Q_SLOTS:
00096   static void invokeHelp( const QString& anchor = QString(),
00097                    const QString& appname = QString(),
00098            const QByteArray& startup_id = QByteArray());
00099 
00108   static void invokeMailer( const QString &address, const QString &subject,
00109           const QByteArray& startup_id = QByteArray() );
00110 
00120   static void invokeMailer( const KUrl &mailtoURL, const QByteArray& startup_id = QByteArray(),
00121           bool allowAttachments = false );
00122 
00138   static void invokeMailer(const QString &to, const QString &cc, const QString &bcc,
00139                     const QString &subject, const QString &body,
00140                     const QString &messageFile = QString(),
00141                     const QStringList &attachURLs = QStringList(),
00142                     const QByteArray& startup_id = QByteArray() );
00143 
00158   static void invokeBrowser( const QString &url,
00159           const QByteArray& startup_id = QByteArray() );
00160 
00171   static void invokeTerminal(const QString &command,
00172                              const QString& workdir = QString(),
00173                              const QByteArray &startup_id = "");
00174 
00175 public:
00180   static OrgKdeKLauncherInterface *klauncher();
00181 
00202   static int startServiceByName( const QString& _name, const QString &URL,
00203                                  QString *error=0, QString *serviceName=0, int *pid=0,
00204                                  const QByteArray &startup_id = QByteArray(), bool noWait = false );
00205 
00226   static int startServiceByName( const QString& _name, const QStringList &URLs=QStringList(),
00227                 QString *error=0, QString *serviceName=0, int *pid=0,
00228                 const QByteArray &startup_id = QByteArray(), bool noWait = false );
00229 
00250   static int startServiceByDesktopPath( const QString& _name, const QString &URL,
00251                 QString *error=0, QString *serviceName=0, int *pid = 0,
00252                 const QByteArray &startup_id = QByteArray(), bool noWait = false );
00253 
00273   static int startServiceByDesktopPath( const QString& _name, const QStringList &URLs=QStringList(),
00274                 QString *error=0, QString *serviceName=0, int *pid = 0,
00275                 const QByteArray &startup_id = QByteArray(), bool noWait = false );
00276 
00297   static int startServiceByDesktopName( const QString& _name, const QString &URL,
00298                                         QString *error=0, QString *serviceName=0, int *pid = 0,
00299                                         const QByteArray &startup_id = QByteArray(), bool noWait = false );
00300 
00321   static int startServiceByDesktopName( const QString& _name, const QStringList &URLs=QStringList(),
00322                                         QString *error=0, QString *serviceName=0, int *pid = 0,
00323                                         const QByteArray &startup_id = QByteArray(), bool noWait = false );
00324 
00342   static int kdeinitExec( const QString& name, const QStringList &args=QStringList(),
00343                 QString *error=0, int *pid = 0, const QByteArray& startup_id = QByteArray() );
00344 
00362   static int kdeinitExecWait( const QString& name, const QStringList &args=QStringList(),
00363                 QString *error=0, int *pid = 0, const QByteArray& startup_id = QByteArray() );
00364 
00365 Q_SIGNALS:
00370   void kapplication_hook(QStringList& env , QByteArray& startup_id);
00371 
00372 private:
00376   static void startKdeinit();
00377 
00378   int startServiceInternal(const char *_function,
00379                            const QString& _name, const QStringList &URLs,
00380                            QString *error, QString *serviceName, int *pid,
00381                            const QByteArray& startup_id, bool noWait,
00382                            const QString& workdir = QString());
00383   static bool isMainThreadActive(QString* error = 0);
00384 
00385   KToolInvocationPrivate * const d;
00386 };
00387 
00388 #endif
00389 

KDECore

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

kdelibs

Skip menu "kdelibs"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • Kate
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • kio
  • KIOSlave
  • KJS
  •   KJS-API
  •   WTF
  • kjsembed
  • KNewStuff
  • KParts
  • KPty
  • Kross
  • KUtils
  • Nepomuk
  • Plasma
  • Solid
  • Sonnet
  • ThreadWeaver
Generated for kdelibs by doxygen 1.6.1
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal