diff options
| author | 2021-12-17 07:07:47 -0500 | |
|---|---|---|
| committer | 2021-12-17 07:07:47 -0500 | |
| commit | 558b1e35fd0777ac97763c1b28056ac984e583e7 (patch) | |
| tree | 1eb2557119a117ea76535c89cd14a49e510b96bf /SQLiteStudio3/guiSQLiteStudio/style.cpp | |
| parent | c22eb635c11fd45f9c30f911d70e1d79111a49ce (diff) | |
| parent | 1fdc150116cad39aae5c5da407c3312b47a59e3a (diff) | |
Update upstream source from tag 'upstream/3.3.3+dfsg1'
Update to upstream version '3.3.3+dfsg1'
with Debian dir 9a301fff4922aed2fec0c04c7d011947168c42f1
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(); +} |
