|
|
|
#ifndef MAINDIALOG_H
|
|
|
|
#define MAINDIALOG_H
|
|
|
|
|
|
|
|
#include <QMainWindow>
|
|
|
|
|
|
|
|
#include <components/files/configurationmanager.hpp>
|
|
|
|
|
|
|
|
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
|