diff options
| author | 2021-12-17 07:06:30 -0500 | |
|---|---|---|
| committer | 2021-12-17 07:06:30 -0500 | |
| commit | 1fdc150116cad39aae5c5da407c3312b47a59e3a (patch) | |
| tree | 123c79a4d7ad2d45781ba03ce939f7539fb428d8 /SQLiteStudio3/guiSQLiteStudio/style.cpp | |
| parent | feda8a7db8d1d7c5439aa8f8feef7cc0dd2b59a0 (diff) | |
New upstream version 3.3.3+dfsg1.upstream/3.3.3+dfsg1
Diffstat (limited to 'SQLiteStudio3/guiSQLiteStudio/style.cpp')
| -rw-r--r-- | SQLiteStudio3/guiSQLiteStudio/style.cpp | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/SQLiteStudio3/guiSQLiteStudio/style.cpp b/SQLiteStudio3/guiSQLiteStudio/style.cpp new file mode 100644 index 0000000..525a832 --- /dev/null +++ b/SQLiteStudio3/guiSQLiteStudio/style.cpp @@ -0,0 +1,48 @@ +#include "style.h" +#include "themetuner.h" +#include "common/global.h" +#include "mainwindow.h" +#include <QApplication> +#include <QToolTip> + +Style* Style::instance = nullptr; + +Style* Style::getInstance() +{ + if (instance == nullptr) + instance = new Style(QApplication::style()); + + return instance; +} + +const ExtendedPalette& Style::extendedPalette() const +{ + return extPalette; +} + +void Style::setStyle(QStyle *style, const QString &styleName) +{ + setBaseStyle(style); + + QApplication::setPalette(initialPalette); // reset palette, cause styles don't provide + // full palette when changed in runtime (i.e. windowsvista) + QApplication::setStyle(this); + QApplication::setPalette(standardPalette()); + THEME_TUNER->tuneTheme(styleName); + QToolTip::setPalette(standardPalette()); + + extPalette.styleChanged(this, styleName); + + MAINWINDOW->getMdiArea()->setBackground(extPalette.mdiAreaBase()); +} + +QString Style::name() const +{ + return baseStyle()->objectName(); +} + +Style::Style(QStyle *style) + : QProxyStyle(style) +{ + initialPalette = style->standardPalette(); +} |
