#include "headers/apptheme.h" AppTheme::AppTheme(QObject *parent) : QObject(parent) { QVariantMap tmpDarkTheme = { {"backgroundColor", "#2d3037"}, {"buttonColor", "#202227"}, {"buttonPressedColor", "#41454f"}, {"buttonBorderColor", "grey"}, {"disabledButtonColor", "#555555"}, {"viewColor", "#202227"}, {"menuColor", "#292b32"}, {"delegate1Color", "#202227"}, {"delegate2Color", "#202227"}, {"delegateBackgroundColor", "#202227"}, {"delegatePressedColor", "#41454f"}, {"textColor", "#ffffff"}, {"textDarkColor", "#232323"}, {"disabledTextColor", "#777777"}, {"sliderColor", "#6ccaf2"}, {"successColor", "#6bd43b"}, {"errorColor", "#e03b2f"}, {"lineColor", "grey"}, {"backIcon", "qrc:/graphics/icons/back.png"}, {"settIcon", "qrc:/graphics/icons/settings.png"}, {"buzzerIcon", "qrc:/graphics/icons/buzzer.png"}, {"startpadIcon", "qrc:/graphics/icons/startpad.png"}, {"baseStationIcon", "qrc:/graphics/icons/BaseStation.png"}, {"profilesIcon", "qrc:/graphics/icons/user.png"}, {"confirmIcon", "qrc:/graphics/icons/ok.png"} }; this->darkTheme = tmpDarkTheme; QVariantMap tmpLightTheme = { {"backgroundColor", "white"}, {"buttonColor", "white"}, {"buttonPressedColor", "lightgrey"}, {"buttonBorderColor", "grey"}, {"disabledButtonColor", "#d5d5d5"}, {"viewColor", "white"}, {"menuColor", "#f8f8f8"}, {"delegate1Color", "#202227"}, {"delegate2Color", "#202227"}, {"delegateBackgroundColor", "white"}, {"delegatePressedColor", "#dddedf"}, {"textColor", "black"}, {"textDarkColor", "#232323"}, {"disabledTextColor", "grey"}, {"sliderColor", "#6ccaf2"}, {"successColor", "#60de26"}, {"errorColor", "#ff0000"}, {"lineColor", "grey"}, {"backIcon", "qrc:/graphics/icons/back_black.png"}, {"settIcon", "qrc:/graphics/icons/settings_black.png"}, {"buzzerIcon", "qrc:/graphics/icons/buzzer_black.png"}, {"startpadIcon", "qrc:/graphics/icons/startpad_black.png"}, {"baseStationIcon", "qrc:/graphics/icons/BaseStation_black.png"}, {"profilesIcon", "qrc:/graphics/icons/user_black.png"}, {"confirmIcon", "qrc:/graphics/icons/ok_black.png"} }; this->lightTheme = tmpLightTheme; QString currentThemeString = pGlobalAppSettings->loadSetting("theme"); if(currentThemeString == "Light"){ this->currentTheme = &this->lightTheme; } else if (currentThemeString == "Dark") { this->currentTheme = &this->darkTheme; } else { this->currentTheme = &this->lightTheme; } } QVariant AppTheme::getStyle() { return *this->currentTheme; } void AppTheme::changeTheme() { QString currentThemeString = pGlobalAppSettings->loadSetting("theme"); QString newThemeString = "Light"; if(currentThemeString == "Light"){ this->currentTheme = &this->darkTheme; newThemeString = "Dark"; } else if (currentThemeString == "Dark") { this->currentTheme = &this->lightTheme; newThemeString = "Light"; } else { this->currentTheme = &this->lightTheme; } pGlobalAppSettings->writeSetting("theme", newThemeString); emit this->styleChanged(); } void AppTheme::refreshTheme() { QString currentThemeString = pGlobalAppSettings->loadSetting("theme"); if(currentThemeString == "Light"){ this->currentTheme = &this->lightTheme; } else if (currentThemeString == "Dark") { this->currentTheme = &this->darkTheme; } emit this->styleChanged(); }