forked from blue/squawk
color theme setting is now working
This commit is contained in:
parent
0ff9f12157
commit
da19eb86bb
@ -2,10 +2,15 @@
|
|||||||
|
|
||||||
## Squawk 0.2.1 (UNRELEASED)
|
## Squawk 0.2.1 (UNRELEASED)
|
||||||
### Bug fixes
|
### Bug fixes
|
||||||
|
- build in release mode now no longer spams warnings
|
||||||
|
- build now correctly installs all build plugin libs
|
||||||
|
|
||||||
### Improvements
|
### Improvements
|
||||||
|
|
||||||
### New features
|
### New features
|
||||||
|
- the settings are here! You con config different stuff from there
|
||||||
|
- now it's possible to set up different qt styles from settings
|
||||||
|
- if you have KConfig nad KConfigWidgets packages installed - you can chose from global color schemes
|
||||||
|
|
||||||
## Squawk 0.2.0 (Jan 10, 2022)
|
## Squawk 0.2.0 (Jan 10, 2022)
|
||||||
### Bug fixes
|
### Bug fixes
|
||||||
|
@ -14,6 +14,8 @@
|
|||||||
- qxmpp 1.1.0 or higher
|
- qxmpp 1.1.0 or higher
|
||||||
- KDE Frameworks: kwallet (optional)
|
- KDE Frameworks: kwallet (optional)
|
||||||
- KDE Frameworks: KIO (optional)
|
- KDE Frameworks: KIO (optional)
|
||||||
|
- KDE Frameworks: KConfig (optional)
|
||||||
|
- KDE Frameworks: KConfigWidgets (optional)
|
||||||
- Boost (just one little hpp from there)
|
- Boost (just one little hpp from there)
|
||||||
- Imagemagick (for compilation, to rasterize an SVG logo)
|
- Imagemagick (for compilation, to rasterize an SVG logo)
|
||||||
|
|
||||||
@ -92,6 +94,7 @@ Here is the list of keys you can pass to configuration phase of `cmake ..`.
|
|||||||
- `SYSTEM_QXMPP` - `True` tries to link against `qxmpp` installed in the system, `False` builds bundled `qxmpp` library (default is `True`)
|
- `SYSTEM_QXMPP` - `True` tries to link against `qxmpp` installed in the system, `False` builds bundled `qxmpp` library (default is `True`)
|
||||||
- `WITH_KWALLET` - `True` builds the `KWallet` capability module if `KWallet` is installed and if not goes to `False`. `False` disables `KWallet` support (default is `True`)
|
- `WITH_KWALLET` - `True` builds the `KWallet` capability module if `KWallet` is installed and if not goes to `False`. `False` disables `KWallet` support (default is `True`)
|
||||||
- `WITH_KIO` - `True` builds the `KIO` capability module if `KIO` is installed and if not goes to `False`. `False` disables `KIO` support (default is `True`)
|
- `WITH_KIO` - `True` builds the `KIO` capability module if `KIO` is installed and if not goes to `False`. `False` disables `KIO` support (default is `True`)
|
||||||
|
- `WITH_KCONFIG` - `True` builds the `KConfig` and `KConfigWidgets` capability module if such packages are installed and if not goes to `False`. `False` disables `KConfig` and `KConfigWidgets` support (default is `True`)
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
|
@ -90,13 +90,24 @@ int main(int argc, char *argv[])
|
|||||||
new Shared::Global(); //translates enums
|
new Shared::Global(); //translates enums
|
||||||
|
|
||||||
QSettings settings;
|
QSettings settings;
|
||||||
QVariant vtheme = settings.value("theme");
|
QVariant vs = settings.value("style");
|
||||||
if (vtheme.isValid()) {
|
if (vs.isValid()) {
|
||||||
QString theme = vtheme.toString().toLower();
|
QString style = vs.toString().toLower();
|
||||||
if (theme != "system") {
|
if (style != "system") {
|
||||||
QApplication::setStyle(theme);
|
Shared::Global::setStyle(style);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (Shared::Global::supported("colorSchemeTools")) {
|
||||||
|
QVariant vt = settings.value("theme");
|
||||||
|
if (vt.isValid()) {
|
||||||
|
QString theme = vt.toString();
|
||||||
|
if (theme.toLower() != "system") {
|
||||||
|
Shared::Global::setTheme(theme);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Squawk w;
|
Squawk w;
|
||||||
w.show();
|
w.show();
|
||||||
|
@ -1,2 +1,4 @@
|
|||||||
add_library(kwalletWrapper SHARED kwallet.cpp)
|
add_library(kwalletWrapper SHARED kwallet.cpp)
|
||||||
target_link_libraries(kwalletWrapper PRIVATE KF5::Wallet)
|
target_link_libraries(kwalletWrapper PRIVATE KF5::Wallet)
|
||||||
|
|
||||||
|
install(TARGETS kwalletWrapper LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||||
|
@ -8,7 +8,10 @@ url="https://git.macaw.me/blue/squawk"
|
|||||||
license=('GPL3')
|
license=('GPL3')
|
||||||
depends=('hicolor-icon-theme' 'desktop-file-utils' 'lmdb' 'qxmpp>=1.1.0')
|
depends=('hicolor-icon-theme' 'desktop-file-utils' 'lmdb' 'qxmpp>=1.1.0')
|
||||||
makedepends=('cmake>=3.3' 'imagemagick' 'qt5-tools' 'boost')
|
makedepends=('cmake>=3.3' 'imagemagick' 'qt5-tools' 'boost')
|
||||||
optdepends=('kwallet: secure password storage (requires rebuild)' 'kio: better show in folder action (requires rebuild)')
|
optdepends=('kwallet: secure password storage (requires rebuild)'
|
||||||
|
'kconfig: system themes support (requires rebuild)'
|
||||||
|
'kconfigwidgets: system themes support (requires rebuild)'
|
||||||
|
'kio: better show in folder action (requires rebuild)')
|
||||||
|
|
||||||
source=("$pkgname-$pkgver.tar.gz")
|
source=("$pkgname-$pkgver.tar.gz")
|
||||||
sha256sums=('8e93d3dbe1fc35cfecb7783af409c6a264244d11609b2241d4fe77d43d068419')
|
sha256sums=('8e93d3dbe1fc35cfecb7783af409c6a264244d11609b2241d4fe77d43d068419')
|
||||||
|
@ -1,10 +1,14 @@
|
|||||||
if (WITH_KIO)
|
if (WITH_KIO)
|
||||||
add_library(openFileManagerWindowJob SHARED openfilemanagerwindowjob.cpp)
|
add_library(openFileManagerWindowJob SHARED openfilemanagerwindowjob.cpp)
|
||||||
target_link_libraries(openFileManagerWindowJob PRIVATE KF5::KIOWidgets)
|
target_link_libraries(openFileManagerWindowJob PRIVATE KF5::KIOWidgets)
|
||||||
|
|
||||||
|
install(TARGETS openFileManagerWindowJob LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
if (WITH_KCONFIG)
|
if (WITH_KCONFIG)
|
||||||
add_library(colorSchemeTools SHARED colorschemetools.cpp)
|
add_library(colorSchemeTools SHARED colorschemetools.cpp)
|
||||||
target_link_libraries(colorSchemeTools PRIVATE KF5::ConfigCore)
|
target_link_libraries(colorSchemeTools PRIVATE KF5::ConfigCore)
|
||||||
target_link_libraries(colorSchemeTools PRIVATE KF5::ConfigWidgets)
|
target_link_libraries(colorSchemeTools PRIVATE KF5::ConfigWidgets)
|
||||||
|
|
||||||
|
install(TARGETS colorSchemeTools LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||||
endif()
|
endif()
|
||||||
|
@ -1,7 +1,9 @@
|
|||||||
#include <QIcon>
|
#include <QIcon>
|
||||||
#include <QPainter>
|
#include <QPainter>
|
||||||
|
#include <QFileInfo>
|
||||||
|
|
||||||
#include <KConfigCore/KSharedConfig>
|
#include <KConfigCore/KSharedConfig>
|
||||||
|
#include <KConfigCore/KConfigGroup>
|
||||||
#include <KConfigWidgets/KColorScheme>
|
#include <KConfigWidgets/KColorScheme>
|
||||||
|
|
||||||
QPixmap createPixmap(int size, const QBrush& window, const QBrush& button, const QBrush& view, const QBrush& selection);
|
QPixmap createPixmap(int size, const QBrush& window, const QBrush& button, const QBrush& view, const QBrush& selection);
|
||||||
@ -24,6 +26,17 @@ extern "C" void deletePreview(QIcon* icon) {
|
|||||||
delete icon;
|
delete icon;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
extern "C" void colorSchemeName(const QString& path, QString& answer) {
|
||||||
|
KSharedConfigPtr config = KSharedConfig::openConfig(path);
|
||||||
|
KConfigGroup group(config, QStringLiteral("General"));
|
||||||
|
answer = group.readEntry("Name", QFileInfo(path).baseName());
|
||||||
|
}
|
||||||
|
|
||||||
|
extern "C" void createPalette(const QString& path, QPalette& answer) {
|
||||||
|
KSharedConfigPtr config = KSharedConfig::openConfig(path);
|
||||||
|
answer = KColorScheme::createApplicationPalette(config);
|
||||||
|
}
|
||||||
|
|
||||||
QPixmap createPixmap(int size, const QBrush& window, const QBrush& button, const QBrush& view, const QBrush& selection) {
|
QPixmap createPixmap(int size, const QBrush& window, const QBrush& button, const QBrush& view, const QBrush& selection) {
|
||||||
QPixmap pix(size, size);
|
QPixmap pix(size, size);
|
||||||
pix.fill(Qt::black);
|
pix.fill(Qt::black);
|
||||||
|
@ -32,6 +32,8 @@ Shared::Global::HighlightInFileManager Shared::Global::hfm = 0;
|
|||||||
QLibrary Shared::Global::colorSchemeTools("colorSchemeTools");
|
QLibrary Shared::Global::colorSchemeTools("colorSchemeTools");
|
||||||
Shared::Global::CreatePreview Shared::Global::createPreview = 0;
|
Shared::Global::CreatePreview Shared::Global::createPreview = 0;
|
||||||
Shared::Global::DeletePreview Shared::Global::deletePreview = 0;
|
Shared::Global::DeletePreview Shared::Global::deletePreview = 0;
|
||||||
|
Shared::Global::ColorSchemeName Shared::Global::colorSchemeName = 0;
|
||||||
|
Shared::Global::CreatePalette Shared::Global::createPalette = 0;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
Shared::Global::Global():
|
Shared::Global::Global():
|
||||||
@ -91,6 +93,7 @@ Shared::Global::Global():
|
|||||||
tr("Your password is going to be stored in KDE wallet storage (KWallet). You're going to be queried for permissions", "AccountPasswordDescription")
|
tr("Your password is going to be stored in KDE wallet storage (KWallet). You're going to be queried for permissions", "AccountPasswordDescription")
|
||||||
}),
|
}),
|
||||||
defaultSystemStyle(QApplication::style()->objectName()),
|
defaultSystemStyle(QApplication::style()->objectName()),
|
||||||
|
defaultSystemPalette(QApplication::palette()),
|
||||||
pluginSupport({
|
pluginSupport({
|
||||||
{"KWallet", false},
|
{"KWallet", false},
|
||||||
{"openFileManagerWindowJob", false},
|
{"openFileManagerWindowJob", false},
|
||||||
@ -124,7 +127,9 @@ Shared::Global::Global():
|
|||||||
if (colorSchemeTools.isLoaded()) {
|
if (colorSchemeTools.isLoaded()) {
|
||||||
createPreview = (CreatePreview) colorSchemeTools.resolve("createPreview");
|
createPreview = (CreatePreview) colorSchemeTools.resolve("createPreview");
|
||||||
deletePreview = (DeletePreview) colorSchemeTools.resolve("deletePreview");
|
deletePreview = (DeletePreview) colorSchemeTools.resolve("deletePreview");
|
||||||
if (createPreview && deletePreview) {
|
colorSchemeName = (ColorSchemeName) colorSchemeTools.resolve("colorSchemeName");
|
||||||
|
createPalette = (CreatePalette) colorSchemeTools.resolve("createPalette");
|
||||||
|
if (createPreview && deletePreview && colorSchemeName && createPalette) {
|
||||||
setSupported("colorSchemeTools", true);
|
setSupported("colorSchemeTools", true);
|
||||||
qDebug() << "Color Schemes support enabled";
|
qDebug() << "Color Schemes support enabled";
|
||||||
} else {
|
} else {
|
||||||
@ -311,6 +316,38 @@ QIcon Shared::Global::createThemePreview(const QString& path)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QString Shared::Global::getColorSchemeName(const QString& path)
|
||||||
|
{
|
||||||
|
if (supported("colorSchemeTools")) {
|
||||||
|
QString res;
|
||||||
|
colorSchemeName(path, res);
|
||||||
|
return res;
|
||||||
|
} else {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void Shared::Global::setTheme(const QString& path)
|
||||||
|
{
|
||||||
|
if (supported("colorSchemeTools")) {
|
||||||
|
if (path.toLower() == "system") {
|
||||||
|
QApplication::setPalette(getInstance()->defaultSystemPalette);
|
||||||
|
} else {
|
||||||
|
QPalette pallete;
|
||||||
|
createPalette(path, pallete);
|
||||||
|
QApplication::setPalette(pallete);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void Shared::Global::setStyle(const QString& style)
|
||||||
|
{
|
||||||
|
if (style.toLower() == "system") {
|
||||||
|
QApplication::setStyle(getInstance()->defaultSystemStyle);
|
||||||
|
} else {
|
||||||
|
QApplication::setStyle(style);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#define FROM_INT_INPL(Enum) \
|
#define FROM_INT_INPL(Enum) \
|
||||||
template<> \
|
template<> \
|
||||||
|
@ -87,6 +87,7 @@ namespace Shared {
|
|||||||
const std::deque<QString> accountPasswordDescription;
|
const std::deque<QString> accountPasswordDescription;
|
||||||
|
|
||||||
const QString defaultSystemStyle;
|
const QString defaultSystemStyle;
|
||||||
|
const QPalette defaultSystemPalette;
|
||||||
|
|
||||||
static bool supported(const QString& pluginName);
|
static bool supported(const QString& pluginName);
|
||||||
static void setSupported(const QString& pluginName, bool support);
|
static void setSupported(const QString& pluginName, bool support);
|
||||||
@ -96,6 +97,9 @@ namespace Shared {
|
|||||||
static FileInfo getFileInfo(const QString& path);
|
static FileInfo getFileInfo(const QString& path);
|
||||||
static void highlightInFileManager(const QString& path);
|
static void highlightInFileManager(const QString& path);
|
||||||
static QIcon createThemePreview(const QString& path);
|
static QIcon createThemePreview(const QString& path);
|
||||||
|
static QString getColorSchemeName(const QString& path);
|
||||||
|
static void setTheme(const QString& path);
|
||||||
|
static void setStyle(const QString& style);
|
||||||
|
|
||||||
template<typename T>
|
template<typename T>
|
||||||
static T fromInt(int src);
|
static T fromInt(int src);
|
||||||
@ -135,9 +139,13 @@ namespace Shared {
|
|||||||
|
|
||||||
typedef QIcon* (*CreatePreview)(const QString&);
|
typedef QIcon* (*CreatePreview)(const QString&);
|
||||||
typedef void (*DeletePreview)(QIcon*);
|
typedef void (*DeletePreview)(QIcon*);
|
||||||
|
typedef void (*ColorSchemeName)(const QString&, QString&);
|
||||||
|
typedef void (*CreatePalette)(const QString&, QPalette&);
|
||||||
|
|
||||||
static CreatePreview createPreview;
|
static CreatePreview createPreview;
|
||||||
static DeletePreview deletePreview;
|
static DeletePreview deletePreview;
|
||||||
|
static ColorSchemeName colorSchemeName;
|
||||||
|
static CreatePalette createPalette;
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -10,41 +10,59 @@ static const QStringList filters = {"*.colors"};
|
|||||||
PageAppearance::PageAppearance(QWidget* parent):
|
PageAppearance::PageAppearance(QWidget* parent):
|
||||||
QWidget(parent),
|
QWidget(parent),
|
||||||
m_ui(new Ui::PageAppearance()),
|
m_ui(new Ui::PageAppearance()),
|
||||||
styles()
|
styles(),
|
||||||
|
themes()
|
||||||
{
|
{
|
||||||
m_ui->setupUi(this);
|
m_ui->setupUi(this);
|
||||||
|
|
||||||
m_ui->themeInput->addItem(tr("System"));
|
m_ui->styleInput->addItem(tr("System"));
|
||||||
styles.push_back("system");
|
styles.push_back("system");
|
||||||
QStringList themes = QStyleFactory::keys();
|
QStringList systemStyles = QStyleFactory::keys();
|
||||||
for (const QString& key : themes) {
|
for (const QString& key : systemStyles) {
|
||||||
m_ui->themeInput->addItem(key);
|
m_ui->styleInput->addItem(key);
|
||||||
styles.push_back(key);
|
styles.push_back(key);
|
||||||
}
|
}
|
||||||
|
|
||||||
QSettings settings;
|
QSettings settings;
|
||||||
QVariant vtheme = settings.value("theme");
|
QVariant vs = settings.value("style");
|
||||||
if (vtheme.isValid()) {
|
if (vs.isValid()) {
|
||||||
QString theme = vtheme.toString();
|
m_ui->styleInput->setCurrentText(vs.toString());
|
||||||
m_ui->themeInput->setCurrentText(theme);
|
|
||||||
} else {
|
} else {
|
||||||
m_ui->themeInput->setCurrentText("System");
|
m_ui->styleInput->setCurrentText(tr("System"));
|
||||||
}
|
}
|
||||||
|
|
||||||
connect(m_ui->themeInput, qOverload<int>(&QComboBox::currentIndexChanged), this, &PageAppearance::onThemeChanged);
|
connect(m_ui->styleInput, qOverload<int>(&QComboBox::currentIndexChanged), this, &PageAppearance::onStyleChanged);
|
||||||
|
|
||||||
if (Shared::Global::supported("colorSchemeTools")) {
|
if (Shared::Global::supported("colorSchemeTools")) {
|
||||||
m_ui->colorInput->addItem(tr("System"));
|
themes.push_back("system");
|
||||||
|
m_ui->themeInput->addItem(tr("System"));
|
||||||
const QStringList dirs = QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, "color-schemes", QStandardPaths::LocateDirectory);
|
const QStringList dirs = QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, "color-schemes", QStandardPaths::LocateDirectory);
|
||||||
QStringList schemeFiles;
|
QStringList schemeFiles;
|
||||||
|
QString currentTheme(tr("System"));
|
||||||
|
QString requestedTheme("");
|
||||||
|
QVariant vtheme = settings.value("theme");
|
||||||
|
if (vtheme.isValid()) {
|
||||||
|
requestedTheme = vtheme.toString();
|
||||||
|
}
|
||||||
for (const QString &dir : dirs) {
|
for (const QString &dir : dirs) {
|
||||||
const QStringList fileNames = QDir(dir).entryList(filters);
|
const QStringList fileNames = QDir(dir).entryList(filters);
|
||||||
for (const QString &file : fileNames) {
|
for (const QString &file : fileNames) {
|
||||||
m_ui->colorInput->addItem(Shared::Global::createThemePreview(dir + QDir::separator() + file), file);
|
QString path = dir + QDir::separator() + file;
|
||||||
|
themes.push_back(path);
|
||||||
|
QString themeName = Shared::Global::getColorSchemeName(path);
|
||||||
|
m_ui->themeInput->addItem(Shared::Global::createThemePreview(path), themeName);
|
||||||
|
|
||||||
|
if (path == requestedTheme) {
|
||||||
|
currentTheme = themeName;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
m_ui->themeInput->setCurrentText(currentTheme);
|
||||||
|
|
||||||
|
connect(m_ui->themeInput, qOverload<int>(&QComboBox::currentIndexChanged), this, &PageAppearance::onThemeChanged);
|
||||||
} else {
|
} else {
|
||||||
m_ui->colorInput->setEnabled(false);
|
m_ui->themeInput->setEnabled(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -55,8 +73,14 @@ PageAppearance::~PageAppearance()
|
|||||||
void PageAppearance::onThemeChanged(int index)
|
void PageAppearance::onThemeChanged(int index)
|
||||||
{
|
{
|
||||||
if (index >= 0) {
|
if (index >= 0) {
|
||||||
emit variableModified("theme", styles[index]);
|
emit variableModified("theme", themes[index]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void PageAppearance::onStyleChanged(int index)
|
||||||
|
{
|
||||||
|
if (index >= 0) {
|
||||||
|
emit variableModified("style", styles[index]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@ -29,11 +29,13 @@ signals:
|
|||||||
void variableModified(const QString& key, const QVariant& value);
|
void variableModified(const QString& key, const QVariant& value);
|
||||||
|
|
||||||
protected slots:
|
protected slots:
|
||||||
|
void onStyleChanged(int index);
|
||||||
void onThemeChanged(int index);
|
void onThemeChanged(int index);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
QScopedPointer<Ui::PageAppearance> m_ui;
|
QScopedPointer<Ui::PageAppearance> m_ui;
|
||||||
std::vector<QString> styles;
|
std::vector<QString> styles;
|
||||||
|
std::vector<QString> themes;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // PAGEAPPEARANCE_H
|
#endif // PAGEAPPEARANCE_H
|
||||||
|
@ -12,20 +12,20 @@
|
|||||||
</property>
|
</property>
|
||||||
<layout class="QFormLayout" name="formLayout">
|
<layout class="QFormLayout" name="formLayout">
|
||||||
<item row="0" column="0">
|
<item row="0" column="0">
|
||||||
<widget class="QLabel" name="themeLabel">
|
<widget class="QLabel" name="styleLabel">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Theme</string>
|
<string>Theme</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="0" column="1">
|
<item row="0" column="1">
|
||||||
<widget class="QComboBox" name="themeInput"/>
|
<widget class="QComboBox" name="styleInput"/>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="1">
|
<item row="1" column="1">
|
||||||
<widget class="QComboBox" name="colorInput"/>
|
<widget class="QComboBox" name="themeInput"/>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="0">
|
<item row="1" column="0">
|
||||||
<widget class="QLabel" name="colorLabel">
|
<widget class="QLabel" name="themeLabel">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Color scheme</string>
|
<string>Color scheme</string>
|
||||||
</property>
|
</property>
|
||||||
|
@ -40,13 +40,10 @@ void Settings::apply()
|
|||||||
{
|
{
|
||||||
QSettings settings;
|
QSettings settings;
|
||||||
for (const std::pair<const QString, QVariant>& pair: modifiedSettings) {
|
for (const std::pair<const QString, QVariant>& pair: modifiedSettings) {
|
||||||
if (pair.first == "theme") {
|
if (pair.first == "style") {
|
||||||
QString theme = pair.second.toString();
|
Shared::Global::setStyle(pair.second.toString());
|
||||||
if (theme.toLower() == "system") {
|
} else if (pair.first == "theme") {
|
||||||
QApplication::setStyle(Shared::Global::getInstance()->defaultSystemStyle);
|
Shared::Global::setTheme(pair.second.toString());
|
||||||
} else {
|
|
||||||
QApplication::setStyle(theme);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
settings.setValue(pair.first, pair.second);
|
settings.setValue(pair.first, pair.second);
|
||||||
|
Loading…
Reference in New Issue
Block a user