Data object removal implemented in the db layer. UI refreshing added
[emufront] / src / mainwindow.h
index df2b35f..84b1b1f 100644 (file)
@@ -1,3 +1,22 @@
+// EmuFront
+// Copyright 2010 Mikko Keinänen
+//
+// This file is part of EmuFront.
+//
+//
+// EmuFront is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License version 2 as published by
+// the Free Software Foundation and appearing in the file gpl.txt included in the
+// packaging of this file.
+//
+// EmuFront is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with EmuFront.  If not, see <http://www.gnu.org/licenses/>.
+
 #ifndef MAINWINDOW_H
 #define MAINWINDOW_H
 
@@ -5,8 +24,14 @@
 
 class QAction;
 class PlatformDialog;
+class MediaTypeDialog;
+class MediaImagePathMainDialog;
+class SetupMainDialog;
+class ExecutableMainDialog;
 class QLabel;
 class DatabaseManager;
+class EmuFrontDialog;
+class EmuLauncher;
 
 class MainWindow : public QMainWindow
 {
@@ -14,13 +39,18 @@ class MainWindow : public QMainWindow
 
 public:
        MainWindow();
-        //~MainWindow()
+    //~MainWindow()
 
 protected:
        void closeEvent(QCloseEvent *event);
 
 private slots:
        void configurePlatforms();
+    void configureMediaTypes();
+    void configureMediaImagePaths();
+    void configureSetups();
+    void configureEmulators();
+    void updateData();
 
 private:
        void createActions();
@@ -29,15 +59,24 @@ private:
        void readSettings();
        void writeSettings();
        bool okToContinue();
+    void connectSignals();
+    void activateDialog(EmuFrontDialog*) const;
        PlatformDialog *platformDialog;
+    MediaTypeDialog *mediaTypeDialog;
+    MediaImagePathMainDialog *mediaImagePathDialog;
+    SetupMainDialog *setupMainDialog;
+    ExecutableMainDialog *executableMainDialog;
        QMenu *configMenu;
        QMenu *fileMenu;
-        QAction *configPlatformAction; 
-       QAction *exitAction;
+    QAction *configPlatformAction;
+    QAction *configMediaTypeAction;
+    QAction *configMediaImagePathAction;
+    QAction *configSetupAction;
+    QAction *configEmulatorAction;
+    QAction *exitAction;
        QLabel *messageLabel;
-        DatabaseManager *dbManager;
-
-       // todo ks. s. 46 jatkoa...
+    DatabaseManager *dbManager;
+    EmuLauncher *launcher;
 };
 
 #endif