• Skip to content
  • Skip to link menu
KDE 4.0 API Reference
  • KDE API Reference
  • kdeutils
  • Sitemap
  • Contact Us
 

superkaramba

karambaapp.h

Go to the documentation of this file.
00001 /***************************************************************************
00002 *   Copyright (C) 2003-2004 Adam Geitgey <adam@rootnode.org>              *
00003 *   Copyright (C) 2003 Hans Karlsson <karlsson.h@home.se>                 *
00004 *   Copyright (C) 2007 Alexander Wiedenbruch <mail@wiedenbruch.de>        *
00005 *   Copyright (C) 2007 Matt Broadstone <mbroadst@gmail.com>               *
00006 *                                                                         *
00007 *   This program is free software; you can redistribute it and/or modify  *
00008 *   it under the terms of the GNU General Public License as published by  *
00009 *   the Free Software Foundation; either version 2 of the License, or     *
00010 *   (at your option) any later version.                                   *
00011 ***************************************************************************/
00012 
00013 #ifndef KARAMBAAPP_H
00014 #define KARAMBAAPP_H
00015 
00016 #include <QSystemTrayIcon>
00017 #include <QGraphicsItemGroup>
00018 
00019 #include <KUrl>
00020 #include <KUniqueApplication>
00021 
00022 #define karambaApp ((KarambaApplication*)qApp)
00023 
00024 class KCmdLineArgs;
00025 class KSystemTrayIcon;
00026 class KHelpMenu;
00027 class ThemesDlg;
00028 class Karamba;
00029 
00030 class KarambaApplication : public KUniqueApplication
00031 {
00032     Q_OBJECT
00033     Q_CLASSINFO("D-Bus Interface", "org.kde.SuperKaramba")
00034 public:
00035     KarambaApplication(Display *display, Qt::HANDLE visual, Qt::HANDLE colormap);
00036     ~KarambaApplication();
00037 
00038     int newInstance();
00039 
00040     void setupSysTray(KAboutData* about);
00041 
00042 public Q_SLOTS:
00043     void showThemesDialog(QSystemTrayIcon::ActivationReason reason = QSystemTrayIcon::Unknown);
00044 
00045     void karambaStarted(QGraphicsItemGroup*);
00046     void karambaClosed(QGraphicsItemGroup*);
00047 
00048     Q_SCRIPTABLE bool closeTheme(const QString &prettyThemeName);
00049     Q_SCRIPTABLE void hideSystemTray(bool hide);
00050     Q_SCRIPTABLE void openNamedTheme(const QString &file, const QString &themeName, bool subTheme);
00051     Q_SCRIPTABLE void openTheme(const QString &file);
00052     Q_SCRIPTABLE void quitSuperKaramba();
00053     Q_SCRIPTABLE bool setIncomingData(const QString &prettyThemeName, const QString &data);
00054     Q_SCRIPTABLE void showThemeDialog();
00055     Q_SCRIPTABLE bool themeNotify(const QString &prettyThemeName, const QString &data);
00056 
00057 private:
00058     void checkCommandLine(KCmdLineArgs *args, QList<KUrl> &lst);
00059     void startThemes(const QList<KUrl> &lst);
00060     void checkPreviousSession(QList<KUrl> &lst);
00061     void setToolTip(const QString &tip = QString());
00062     void showKarambaMenuExtension(bool show = true);
00063     void buildToolTip();
00064 
00065 private Q_SLOTS:
00066     void toggleSystemTray();
00067     void sendDataToTheme(const QString &themeName, const QString &data, bool notify);
00068 
00069 private:
00070     KSystemTrayIcon *m_sysTrayIcon;
00071     KHelpMenu *m_helpMenu;
00072 
00073     ThemesDlg *m_themesDialog;
00074 };
00075 
00076 #endif

superkaramba

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

kdeutils

Skip menu "kdeutils"
  • ark
  • kcalc
  • kcharselect
  • kdelirc
  • kdessh
  • kdf
  • kfloppy
  • kgpg
  • kjots
  • klaptopdaemon
  • kmilo
  • ksim
  • ktimer
  • kwallet
  • superkaramba
Generated for kdeutils 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