17 #ifndef IGNITION_GUI_MAINWINDOW_HH_ 18 #define IGNITION_GUI_MAINWINDOW_HH_ 26 #include <ignition/common/Console.hh> 29 #include "ignition/gui/Export.hh" 35 class MainWindowPrivate;
50 NOTIFY PluginCountChanged
57 WRITE SetMaterialTheme
58 NOTIFY MaterialThemeChanged
65 WRITE SetMaterialPrimary
66 NOTIFY MaterialPrimaryChanged
73 WRITE SetMaterialAccent
74 NOTIFY MaterialAccentChanged
82 NOTIFY ShowDrawerChanged
87 bool showDefaultDrawerOpts
88 READ ShowDefaultDrawerOpts
89 WRITE SetShowDefaultDrawerOpts
90 NOTIFY ShowDefaultDrawerOptsChanged
97 WRITE SetShowPluginMenu
98 NOTIFY ShowPluginMenuChanged
105 public: virtual ~MainWindow();
109 public: QQuickWindow *QuickWindow() const;
115 public:
void SaveConfig(const
std::
string &_path);
128 public slots:
void OnAddPlugin(
QString _plugin);
132 public: Q_INVOKABLE
QStringList PluginListModel() const;
137 public: Q_INVOKABLE
int PluginCount() const;
142 public: Q_INVOKABLE
void SetPluginCount(const
int _pluginCount);
146 public: Q_INVOKABLE
QString MaterialTheme() const;
150 public: Q_INVOKABLE
void SetMaterialTheme(
151 const
QString &_materialTheme);
155 public: Q_INVOKABLE
QString MaterialPrimary() const;
159 public: Q_INVOKABLE
void SetMaterialPrimary(
160 const
QString &_materialPrimary);
164 public: Q_INVOKABLE
QString MaterialAccent() const;
168 public: Q_INVOKABLE
void SetMaterialAccent(
169 const
QString &_materialAccent);
173 public: Q_INVOKABLE
bool ShowDrawer() const;
177 public: Q_INVOKABLE
void SetShowDrawer(const
bool _showDrawer);
181 public: Q_INVOKABLE
bool ShowDefaultDrawerOpts() const;
185 public: Q_INVOKABLE
void SetShowDefaultDrawerOpts(
186 const
bool _showDefaultDrawerOpts);
190 public: Q_INVOKABLE
bool ShowPluginMenu() const;
194 public: Q_INVOKABLE
void SetShowPluginMenu(const
bool _showPluginMenu);
197 public slots:
void OnLoadConfig(const
QString &_path);
200 public slots:
void OnSaveConfig();
203 public slots:
void OnSaveConfigAs(const
QString &_path);
206 signals:
void PluginCountChanged();
209 signals:
void MaterialThemeChanged();
212 signals:
void MaterialPrimaryChanged();
215 signals:
void MaterialAccentChanged();
218 signals:
void ShowDrawerChanged();
221 signals:
void ShowDefaultDrawerOptsChanged();
224 signals:
void ShowPluginMenuChanged();
227 signals:
void configChanged();
230 signals:
void notify(const
QString &_message);
240 private:
std::unique_ptr<MainWindowPrivate> dataPtr;
286 bool showDrawer{
true};
289 bool showDefaultDrawerOpts{
true};
292 bool showPluginMenu{
true};
296 bool pluginsFromPaths{
true};
Holds configurations related to a MainWindow.
Definition: MainWindow.hh:244
std::set< std::string > ignoredProps
List of window properties which should be ignored on load.
Definition: MainWindow.hh:302
The main window class creates a QQuickWindow and acts as an interface which provides properties and f...
Definition: MainWindow.hh:41
QByteArray state
Window state (dock configuration)
Definition: MainWindow.hh:274
Definition: Application.hh:33
std::vector< std::string > showPlugins
List of plugins which should be shown on the list.
Definition: MainWindow.hh:299