#ifndef MAINDIALOG_H #define MAINDIALOG_H #include #include class QListWidget; class QListWidgetItem; class QStackedWidget; class QStringList; class QStringListModel; class QString; class PlayPage; class GraphicsPage; class DataFilesPage; class GameSettings; class GraphicsSettings; class LauncherSettings; class MainDialog : public QMainWindow { Q_OBJECT public: MainDialog(GameSettings &gameSettings, GraphicsSettings &GraphicsSettings, LauncherSettings &launcherSettings); bool setup(); public slots: void changePage(QListWidgetItem *current, QListWidgetItem *previous); void play(); private: void createIcons(); void createPages(); void loadSettings(); void saveSettings(); void writeSettings(); void closeEvent(QCloseEvent *event); QListWidget *mIconWidget; QStackedWidget *mPagesWidget; PlayPage *mPlayPage; GraphicsPage *mGraphicsPage; DataFilesPage *mDataFilesPage; Files::ConfigurationManager mCfgMgr; GameSettings &mGameSettings; GraphicsSettings &mGraphicsSettings; LauncherSettings &mLauncherSettings; }; #endif