• Skip to content
  • Skip to link menu
KDE 4.1 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 
00068 class KDECORE_EXPORT KToolInvocation : public QObject
00069 {
00070 
00071   Q_OBJECT
00072 private:
00073     KToolInvocation();
00074 public:
00075     // @internal
00076     ~KToolInvocation();
00077     static KToolInvocation *self();
00078 
00079 public Q_SLOTS:
00093   static void invokeHelp( const QString& anchor = QString(),
00094                    const QString& appname = QString(),
00095            const QByteArray& startup_id = QByteArray());
00096 
00105   static void invokeMailer( const QString &address, const QString &subject,
00106           const QByteArray& startup_id = QByteArray() );
00107 
00117   static void invokeMailer( const KUrl &mailtoURL, const QByteArray& startup_id = QByteArray(),
00118           bool allowAttachments = false );
00119 
00135   static void invokeMailer(const QString &to, const QString &cc, const QString &bcc,
00136                     const QString &subject, const QString &body,
00137                     const QString &messageFile = QString(),
00138                     const QStringList &attachURLs = QStringList(),
00139                     const QByteArray& startup_id = QByteArray() );
00140 
00151   static void invokeBrowser( const QString &url,
00152           const QByteArray& startup_id = QByteArray() );
00153 
00164   static void invokeTerminal(const QString &command,
00165                              const QString& workdir = QString(),
00166                              const QByteArray &startup_id = "");
00167 
00168 public:
00173   static OrgKdeKLauncherInterface *klauncher();
00174 
00195   static int startServiceByName( const QString& _name, const QString &URL,
00196                                  QString *error=0, QString *serviceName=0, int *pid=0,
00197                                  const QByteArray &startup_id = QByteArray(), bool noWait = false );
00198 
00219   static int startServiceByName( const QString& _name, const QStringList &URLs=QStringList(),
00220                 QString *error=0, QString *serviceName=0, int *pid=0,
00221                 const QByteArray &startup_id = QByteArray(), bool noWait = false );
00222 
00243   static int startServiceByDesktopPath( const QString& _name, const QString &URL,
00244                 QString *error=0, QString *serviceName=0, int *pid = 0,
00245                 const QByteArray &startup_id = QByteArray(), bool noWait = false );
00246 
00266   static int startServiceByDesktopPath( const QString& _name, const QStringList &URLs=QStringList(),
00267                 QString *error=0, QString *serviceName=0, int *pid = 0,
00268                 const QByteArray &startup_id = QByteArray(), bool noWait = false );
00269 
00290   static int startServiceByDesktopName( const QString& _name, const QString &URL,
00291                                         QString *error=0, QString *serviceName=0, int *pid = 0,
00292                                         const QByteArray &startup_id = QByteArray(), bool noWait = false );
00293 
00314   static int startServiceByDesktopName( const QString& _name, const QStringList &URLs=QStringList(),
00315                                         QString *error=0, QString *serviceName=0, int *pid = 0,
00316                                         const QByteArray &startup_id = QByteArray(), bool noWait = false );
00317 
00335   static int kdeinitExec( const QString& name, const QStringList &args=QStringList(),
00336                 QString *error=0, int *pid = 0, const QByteArray& startup_id = QByteArray() );
00337 
00355   static int kdeinitExecWait( const QString& name, const QStringList &args=QStringList(),
00356                 QString *error=0, int *pid = 0, const QByteArray& startup_id = QByteArray() );
00357 
00358 Q_SIGNALS:
00363   void kapplication_hook(QStringList& env , QByteArray& startup_id);
00364 
00365 private:
00369   static void startKdeinit();
00370 
00371   int startServiceInternal(const char *_function,
00372                            const QString& _name, const QStringList &URLs,
00373                            QString *error, QString *serviceName, int *pid,
00374                            const QByteArray& startup_id, bool noWait,
00375                            const QString& workdir = QString());
00376   static bool isMainThreadActive(QString* error = 0);
00377 
00378   KToolInvocationPrivate * const d;
00379 };
00380 
00381 #endif
00382 

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
  • Kross
  • KUtils
  • Nepomuk
  • Solid
  • Sonnet
  • ThreadWeaver
Generated for kdelibs by doxygen 1.5.4
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