OpenMW
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
maindialog.hpp
Go to the documentation of this file.
1 #ifndef MAINDIALOG_H
2 #define MAINDIALOG_H
3 
4 #include <QMainWindow>
5 #include <QProcess>
6 
7 #ifndef Q_MOC_RUN
9 #endif
10 
12 
15 
17 
18 #include "ui_mainwindow.h"
19 
20 class QListWidgetItem;
21 class QStackedWidget;
22 class QStringList;
23 class QStringListModel;
24 class QString;
25 
26 namespace Launcher
27 {
28  class PlayPage;
29  class GraphicsPage;
30  class DataFilesPage;
31  class UnshieldThread;
32  class SettingsPage;
33  class AdvancedPage;
34 
36  {
40  };
41 
42 #ifndef WIN32
43  bool expansions(Launcher::UnshieldThread& cd);
44 #endif
45 
46  class MainDialog : public QMainWindow, private Ui::MainWindow
47  {
48  Q_OBJECT
49 
50  public:
51  explicit MainDialog(QWidget *parent = 0);
52  ~MainDialog();
53 
55 
56  bool reloadSettings();
57  bool writeSettings();
58 
59  public slots:
60  void changePage(QListWidgetItem *current, QListWidgetItem *previous);
61  void play();
62 
63  private slots:
64  void wizardStarted();
65  void wizardFinished(int exitCode, QProcess::ExitStatus exitStatus);
66 
67  private:
68  bool setup();
69 
70  void createIcons();
71  void createPages();
72 
73  bool setupLauncherSettings();
74  bool setupGameSettings();
75  bool setupGraphicsSettings();
76  bool setupGameData();
77 
78  void setVersionLabel();
79 
80  void loadSettings();
81  void saveSettings();
82 
83  inline bool startProgram(const QString &name, bool detached = false) { return startProgram(name, QStringList(), detached); }
84  bool startProgram(const QString &name, const QStringList &arguments, bool detached = false);
85 
86  void closeEvent(QCloseEvent *event);
87 
93 
96 
98 
102 
103  };
104 }
105 #endif
Definition: playpage.hpp:14
Definition: settingspage.hpp:21
Config::LauncherSettings mLauncherSettings
Definition: maindialog.hpp:101
void play()
Definition: maindialog.cpp:584
bool setupGraphicsSettings()
Definition: maindialog.cpp:404
DataFilesPage * mDataFilesPage
Definition: maindialog.hpp:90
Process::ProcessInvoker * mGameInvoker
Definition: maindialog.hpp:94
bool setup()
Definition: maindialog.cpp:209
FirstRunDialogResult
Definition: maindialog.hpp:35
PlayPage * mPlayPage
Definition: maindialog.hpp:88
void wizardStarted()
Definition: maindialog.cpp:567
Definition: maindialog.hpp:37
FirstRunDialogResult showFirstRunDialog()
Definition: maindialog.cpp:147
Definition: configurationmanager.hpp:20
void createPages()
Definition: maindialog.cpp:116
Process::ProcessInvoker * mWizardInvoker
Definition: maindialog.hpp:95
GraphicsPage * mGraphicsPage
Definition: maindialog.hpp:89
bool setupGameSettings()
Definition: maindialog.cpp:305
Definition: maindialog.hpp:46
Definition: processinvoker.hpp:10
Files::ConfigurationManager mCfgMgr
Definition: maindialog.hpp:97
Settings::Manager mEngineSettings
Definition: maindialog.hpp:100
Definition: advancedpage.hpp:15
bool setupGameData()
Definition: maindialog.cpp:363
Definition: maindialog.hpp:39
Config::GameSettings mGameSettings
Definition: maindialog.hpp:99
Definition: graphicspage.hpp:18
Definition: datafilespage.hpp:26
SettingsPage * mSettingsPage
Definition: maindialog.hpp:91
~MainDialog()
Definition: maindialog.cpp:69
bool expansions(Launcher::UnshieldThread &cd)
Definition: launchersettings.hpp:9
void wizardFinished(int exitCode, QProcess::ExitStatus exitStatus)
Definition: maindialog.cpp:572
void setVersionLabel()
Definition: maindialog.cpp:188
bool startProgram(const QString &name, bool detached=false)
Definition: maindialog.hpp:83
MainDialog(QWidget *parent=0)
Definition: maindialog.cpp:33
void loadSettings()
Definition: maindialog.cpp:459
bool setupLauncherSettings()
Definition: maindialog.cpp:271
void closeEvent(QCloseEvent *event)
Definition: maindialog.cpp:561
Settings management (can change during runtime)
Definition: settings.hpp:17
Definition: maindialog.hpp:38
void createIcons()
Definition: maindialog.cpp:75
bool writeSettings()
Definition: maindialog.cpp:489
void saveSettings()
Definition: maindialog.cpp:471
bool reloadSettings()
Definition: maindialog.cpp:233
AdvancedPage * mAdvancedPage
Definition: maindialog.hpp:92
void changePage(QListWidgetItem *current, QListWidgetItem *previous)
Definition: maindialog.cpp:261
Definition: gamesettings.hpp:20
const char * name
Definition: crashcatcher.cpp:67