#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();
+ /** @see KUniqueApplication::newInstance(). */
+ virtual int newInstance();
+
+public slots:
+ int openWindow(const QString& url);
+
protected:
- /**
- * called by the MainWindow to deregister
- */
- void removeMainWindow( DolphinMainWindow* );
+ /** Called by the DolphinMainWindow to deregister. */
+ void removeMainWindow(DolphinMainWindow* mainWindow);
private:
QList<DolphinMainWindow*> m_mainWindows;
+ int m_lastId;
};
-
#endif