Started implementing better MVC support: thanks Petro for the idea! ;)
[emufront] / src / mainwindow.h
index c569f76..10f2d94 100644 (file)
 
 class QAction;
 class PlatformDialog;
+class PlatformMainDialog;
 class MediaTypeDialog;
 class MediaImagePathMainDialog;
 class SetupMainDialog;
 class ExecutableMainDialog;
+//class TmpFolderEditDialog;
 class QLabel;
 class DatabaseManager;
 class EmuFrontDialog;
 class EmuLauncher;
+class DatFileUtil;
+class QErrorMessage;
 
 class MainWindow : public QMainWindow
 {
        Q_OBJECT
 
 public:
-       MainWindow();
+    MainWindow(bool reset = false);
     //~MainWindow()
 
 protected:
        void closeEvent(QCloseEvent *event);
 
 private slots:
-       void configurePlatforms();
+    void configurePlatforms();
+    void configurePlatformss();
     void configureMediaTypes();
     void configureMediaImagePaths();
     void configureSetups();
     void configureEmulators();
+    void configureTmpDir();
+    void resetDb();
+    void updateData();
+    void manageDatFiles();
+    void about();
 
 private:
-       void createActions();
+    static QString aboutStr;
+    static QString aboutTitle;
+    void createActions();
        void createMenus();
        void createStatusBar();
        void readSettings();
        void writeSettings();
        bool okToContinue();
+    void connectSignals();
     void activateDialog(EmuFrontDialog*) const;
-       PlatformDialog *platformDialog;
+    bool testDB(bool reset);
+    void createDB() const;
+    PlatformDialog *platformDialog;
+    PlatformMainDialog *plfDialog;
     MediaTypeDialog *mediaTypeDialog;
     MediaImagePathMainDialog *mediaImagePathDialog;
     SetupMainDialog *setupMainDialog;
     ExecutableMainDialog *executableMainDialog;
+    //TmpFolderEditDialog *tmpFolderDialog;
        QMenu *configMenu;
-       QMenu *fileMenu;
+    QMenu *fileMenu;
+    QMenu *helpMenu;
     QAction *configPlatformAction;
+    QAction *configPlatformsAction;
     QAction *configMediaTypeAction;
     QAction *configMediaImagePathAction;
     QAction *configSetupAction;
     QAction *configEmulatorAction;
     QAction *exitAction;
+    QAction *resetDbAction;
+    QAction *aboutAction;
+    QAction *configTmpDirAction;
+    QAction *manageDatFilesAction;
        QLabel *messageLabel;
     DatabaseManager *dbManager;
     EmuLauncher *launcher;
+    QString tmpDirFilePath;
+    QErrorMessage *errorMessage;
 };
 
 #endif