3 ** Copyright 2010 Mikko Keinänen
5 ** This file is part of EmuFront.
8 ** EmuFront is free software: you can redistribute it and/or modify
9 ** it under the terms of the GNU General Public License version 2 as published by
10 ** the Free Software Foundation and appearing in the file gpl.txt included in the
11 ** packaging of this file.
13 ** EmuFront is distributed in the hope that it will be useful,
14 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
15 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 ** GNU General Public License for more details.
18 ** You should have received a copy of the GNU General Public License
19 ** along with EmuFront. If not, see <http://www.gnu.org/licenses/>.
20 */#ifndef MAINWINDOW_H
23 #include <QMainWindow>
27 //class PlatformDialog;
28 class PlatformEditView;
29 class MediaTypeEditView;
31 //class MediaTypeDialog;
32 class MediaTypeEditView;
34 //class MediaImagePathMainDialog;
35 class FilePathEditView;
37 //class SetupMainDialog;
40 //class ExecutableMainDialog;
41 class ExternalExecutableEditView;
42 //class TmpFolderEditDialog;
44 class DatabaseManager;
50 class MainWindow : public QMainWindow
55 MainWindow(bool reset = false);
59 void closeEvent(QCloseEvent *event);
63 //void configurePlatforms();
64 void configurePlatformss();
66 //void configureMediaTypes();
67 void configureMediaTypess();
69 //void configureMediaImagePaths();
70 void configureMediaImagePathss();
72 //void configureSetups();
73 void configureSetupss();
75 //void configureEmulators();
76 void configureEmulatorss();
77 void configureTmpDir();
80 void manageDatFiles();
84 static QString aboutStr;
85 static QString aboutTitle;
88 void createStatusBar();
92 void connectSignals();
93 void activateDialog(EmuFrontDialog*) const;
94 bool testDB(bool reset);
95 void createDB() const;
98 //PlatformDialog *platformDialog;
99 PlatformEditView *plfDialog;
101 //MediaTypeDialog *mediaTypeDialog;
102 MediaTypeEditView *mdtDialog;
104 //MediaImagePathMainDialog *mediaImagePathDialog;
105 FilePathEditView *mediaImagePathView;
107 //SetupMainDialog *setupMainDialog;
108 SetupEditView *setupMainView;
110 //ExecutableMainDialog *executableMainDialog;
111 ExternalExecutableEditView *emulatorEditView;
112 //TmpFolderEditDialog *tmpFolderDialog;
117 //QAction *configPlatformAction;
118 QAction *configPlatformsAction;
120 //QAction *configMediaTypeAction;
121 QAction *configMediaTypesAction;
123 //QAction *configMediaImagePathAction;
124 QAction *configMediaImagePathsAction;
126 //QAction *configSetupAction;
127 QAction *configSetupsAction;
129 //QAction *configEmulatorAction;
130 QAction *configEmulatorsAction;
132 QAction *resetDbAction;
133 QAction *aboutAction;
134 QAction *configTmpDirAction;
135 QAction *manageDatFilesAction;
136 QLabel *messageLabel;
137 DatabaseManager *dbManager;
138 EmuLauncher *launcher;
139 QString tmpDirFilePath;
140 QErrorMessage *errorMessage;