Fork me on GitHub
2.15.20
FGx
A cross-platform launcher for FlightGear
launcherwindow.h
Go to the documentation of this file.
1 // -=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=-=-
2 // FGx FlightGear Launcher // launcherwindow.h
3 // -=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=-=-
4 // (c) 2010-2012
5 // Yves Sablonier, Pete Morgan
6 // Geoff McLane
7 // GNU GPLv2, see main.cpp and shipped licence.txt for further information
8 
9 #ifndef LAUNCHERWINDOW_H
10 #define LAUNCHERWINDOW_H
11 
12 #include <QWidget>
13 
14 #include <QAction>
15 #include <QActionGroup>
16 #include <QPushButton>
17 #include <QMessageBox>
18 
19 
21 class CoreSettingsWidget;
22 
24 class TimeWeatherWidget;
25 
26 #include "panes/renderingwidget.h"
27 class RenderingWidget;
28 
30 class AircraftWidget;
31 
33 class AirportsWidget;
34 
35 #include "network/networkwidget.h"
36 class NetworkWidget;
37 
40 
41 #include "xwidgets/execontrols.h"
42 class ExeControls;
43 
44 #include "launcher/headerwidget.h"
45 class HeaderWidget;
46 
47 #include "launcher/menuwidget.h"
48 class MenuWidget;
49 
50 #include "utilities/statusbar.h"
51 
52 #include "utilities/messagebox.h"
53 
54 #include "xobjects/mainobject.h"
55 #include "xwidgets/xgroupboxes.h"
56 
57 
58 
59 
60 class LauncherWindow : public QWidget
61 {
62  Q_OBJECT
63 
64 public:
65 
66  LauncherWindow(MainObject *mob, QWidget *parent = 0);
67 
69 
72 
75 
77 
78  QActionGroup *actionGroupStyle;
79  QTabWidget *tabWidget;
80 
88 
89  QPushButton *buttonLoadSettings;
90  QPushButton *buttonSaveSettings;
91  QPushButton *buttonResetSettings;
92 
96 
97  StatusBar *statusBar;
98  MessageBox *messageBox;
99 
100  QMessageBox *NativeMessageBox;
101 
102  void closeEvent(QCloseEvent *event);
103  void moveEvent(QMoveEvent *ev);
104 
105 signals:
106  void setx(QString option, bool enabled, QString value);
107 
108 public slots:
109 
110 
111  //= Start/Stop
112  void on_start_all_clicked();
113  void on_start_fgfs_clicked();
115 
116 
117 
118  //* Functions
119  void save_settings();
120  void load_profile();
121  void save_profile();
122  void reset_profile();
123  void initialize();
124  bool validate();
125 
126  //* Header messages
127  void header_show_message(QString message);
128 
129 
130  //* Ouput Buttons
131  void on_command_preview();
132 
133 
134  //* Widget Events
135  void on_tab_changed(int);
136 
137  void on_upx(QString option, bool enabled, QString value);
138 
139  void on_debug_mode();
140 };
141 
142 #endif // LAUNCHERWINDOW_H
ExpertOptionsWidget * expertOptionsWidget
void setx(QString option, bool enabled, QString value)
QTabWidget * tabWidget
QMessageBox * NativeMessageBox
NetworkWidget * networkWidget
void header_show_message(QString message)
void moveEvent(QMoveEvent *ev)
The MainObject is an extended QObject, and the main "controller" for FGx.
Definition: mainobject.h:66
AircraftWidget * aircraftWidget
LauncherWindow(MainObject *mob, QWidget *parent=0)
void on_start_fgfs_clicked()
void on_start_terrasync_clicked()
Aircraft panel with a left/right splitter, model/proxy/tree vs selected.
HeaderWidget * headerWidget
QPushButton * buttonLoadSettings
XGroupHBox * toolBox
void on_start_all_clicked()
void on_tab_changed(int)
QPushButton * buttonResetSettings
MenuWidget * menuWidget
A QGroupBox with a QHBoxLyout layout.
Definition: xgroupboxes.h:39
RenderingWidget * renderingWidget
The LauncherWindow is raised and controlled by MainObject.
QPushButton * buttonSaveSettings
ExeControls * exeAll
void closeEvent(QCloseEvent *event)
void on_upx(QString option, bool enabled, QString value)
StatusBar * statusBar
TimeWeatherWidget * timeWeatherWidget
AirportsWidget * airportsWidget
ExeControls * exeTerraSync
The HeaderWidget is the top part of the LauncherWindow and contains the info and a normally hidden me...
Definition: headerwidget.h:23
MessageBox * messageBox
CoreSettingsWidget * coreSettingsWidget
QActionGroup * actionGroupStyle
ExeControls * exeFgfs
MainObject * mainObject
The MenuWidget is the top part of the LauncherWindow.
Definition: menuwidget.h:29