SWMMVis  6.0.0-alpha.4
Qt6/C++ GIS-based graphical user interface for the SWMMVis engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
thememanager.h
Go to the documentation of this file.
1#ifndef THEMEMANAGER_H
2#define THEMEMANAGER_H
3
17#include <QObject>
18#include <Qt>
19
20namespace openswmmvis::ui {
21
22struct ThemeColors;
23
24class ThemeManager : public QObject
25{
26 Q_OBJECT
27
28public:
29 enum class Mode { System, Light, Dark };
30 Q_ENUM(Mode)
31
32 static ThemeManager *instance();
33
34 Mode mode() const { return mMode; }
37 void setMode(Mode mode);
38
42 Qt::ColorScheme effectiveScheme() const;
43
45 const ThemeColors &colors() const;
46
50 void apply();
51
54 static QString modeToString(Mode mode);
55 static Mode modeFromString(const QString &text);
56
57signals:
61
62private:
63 explicit ThemeManager(QObject *parent = nullptr);
64
65 Mode mMode = Mode::System;
66 Qt::ColorScheme mAppliedScheme = Qt::ColorScheme::Unknown;
67};
68
69} // namespace openswmmvis::ui
70
71#endif // THEMEMANAGER_H
Definition thememanager.h:25
static ThemeManager * instance()
Definition thememanager.cpp:37
Mode mode() const
Definition thememanager.h:34
Mode
Definition thememanager.h:29
void setMode(Mode mode)
Definition thememanager.cpp:45
static QString modeToString(Mode mode)
Definition thememanager.cpp:135
void apply()
Definition thememanager.cpp:77
Qt::ColorScheme effectiveScheme() const
Definition thememanager.cpp:53
static Mode modeFromString(const QString &text)
Definition thememanager.cpp:145
const ThemeColors & colors() const
Definition thememanager.cpp:71
Definition openswmmvislayer.h:43
QVector< int > parent
union-find
Definition pslgminsize.cpp:176
QString text
Definition queryparser.cpp:35
Definition themetokens.h:25