/***************************************************************************
- * Copyright (C) 2006 by Peter Penz <peter.penz@gmx.at> *
+ * Copyright (C) 2006 by Peter Penz <peter.penz19@gmail.com> *
* Copyright (C) 2006 by Holger 'zecke' Freyther <freyther@kde.org> *
* *
* This program is free software; you can redistribute it and/or modify *
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA *
***************************************************************************/
-
#ifndef _DOLPHIN_APPLICATION_H
#define _DOLPHIN_APPLICATION_H
-#include <kapplication.h>
+#include <kuniqueapplication.h>
class DolphinMainWindow;
/**
- *
- * DolphinApplication will hold application wide data which
- * can be accessed.
+ * @brief Holds the application data which can be accessed.
* At first this will hold a list of DolphinMainWindows which
- * we will delete on application exit.
+ * we will delete on application exit.
*/
-class DolphinApplication : public KApplication {
+class DolphinApplication : public KUniqueApplication
+{
Q_OBJECT
+ Q_CLASSINFO("D-Bus Interface", "org.kde.dolphin.Application")
friend class DolphinMainWindow;
+
public:
DolphinApplication();
- ~DolphinApplication();
+ virtual ~DolphinApplication();
static DolphinApplication* app();
DolphinMainWindow* createMainWindow();
void refreshMainWindows();
-protected:
- /**
- * called by the MainWindow to deregister
- */
- void removeMainWindow( DolphinMainWindow* );
+ /** @see KUniqueApplication::newInstance(). */
+ virtual int newInstance();
+
+ /** Interface implementation for D-Bus Interface. */
+ int openWindow(const QString& urlString);
+
+private:
+ /** Called by the DolphinMainWindow to deregister. */
+ void removeMainWindow(DolphinMainWindow* mainWindow);
private:
QList<DolphinMainWindow*> m_mainWindows;
+ int m_lastId;
};
-
#endif