diff options
| author | 2015-05-12 16:19:40 -0400 | |
|---|---|---|
| committer | 2015-05-12 16:19:40 -0400 | |
| commit | 9618f0ebbf4b88045247c01ce8c8f58203508ebf (patch) | |
| tree | 20c9894691353ee8bab4eec668e9b0b6c6426e0f /SQLiteStudio3/guiSQLiteStudio/themetuner.h | |
| parent | a308f430f694423064ebc86fd0506c8c6fdb3d93 (diff) | |
Imported Upstream version 3.0.6upstream/3.0.6
Diffstat (limited to 'SQLiteStudio3/guiSQLiteStudio/themetuner.h')
| -rw-r--r-- | SQLiteStudio3/guiSQLiteStudio/themetuner.h | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/SQLiteStudio3/guiSQLiteStudio/themetuner.h b/SQLiteStudio3/guiSQLiteStudio/themetuner.h new file mode 100644 index 0000000..9804464 --- /dev/null +++ b/SQLiteStudio3/guiSQLiteStudio/themetuner.h @@ -0,0 +1,43 @@ +#ifndef THEMETUNER_H +#define THEMETUNER_H + +#include <QObject> +#include <QString> +#include <QHash> + +class ThemeTuner : public QObject +{ + Q_OBJECT + + public: + void tuneTheme(const QString& themeName); + void tuneCurrentTheme(); + void manageCompactLayout(QWidget* w); + void manageCompactLayout(QList<QWidget*> wList); + QString getDefaultCss(const QString& themeName = QString()) const; + + static ThemeTuner* getInstance(); + static void cleanUp(); + + private: + ThemeTuner(QObject* parent = 0); + + void init(); + void tuneCss(const QString& themeName); + void tuneMacx(); + void applyCss(const QString& css); + + QString defaultGeneralCss; + QHash<QString, QString> defaultPerStyleCss; + QList<QWidget*> widgetsForCompactLayout; + + static ThemeTuner* instance; + + private slots: + void handleWidgetDestroyed(); + void handleCompactLayoutChange(const QVariant& newValue); +}; + +#define THEME_TUNER ThemeTuner::getInstance() + +#endif // THEMETUNER_H |
