* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the *
* Free Software Foundation, Inc., *
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA *
***************************************************************************/
#ifndef _DOLPHIN_APPLICATION_H
#define _DOLPHIN_APPLICATION_H
-#include <kapplication.h>
+#include <kuniqueapplication.h>
+#include <kurl.h>
class DolphinMainWindow;
+class KUrl;
/**
- *
- * 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 KUrl& 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