diff options
| author | spycrab <spycrab@users.noreply.github.com> | 2018-07-07 00:40:15 +0200 |
|---|---|---|
| committer | spycrab <spycrab@users.noreply.github.com> | 2018-07-07 00:48:38 +0200 |
| commit | 13ba24c5a6795532c8893eccf2a21ae95682e1b7 (patch) | |
| tree | 747e394036c189c46add1b3e1451e50f48230e11 /Source/Core/DolphinQt/Config/Graphics/GraphicsBool.cpp | |
| parent | 059880bb1640d5a3b0e1fbbf66e1a356df4b9f41 (diff) | |
Move DolphinQt2 to DolphinQt
Diffstat (limited to 'Source/Core/DolphinQt/Config/Graphics/GraphicsBool.cpp')
| -rw-r--r-- | Source/Core/DolphinQt/Config/Graphics/GraphicsBool.cpp | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/Source/Core/DolphinQt/Config/Graphics/GraphicsBool.cpp b/Source/Core/DolphinQt/Config/Graphics/GraphicsBool.cpp new file mode 100644 index 0000000000..192a2120c3 --- /dev/null +++ b/Source/Core/DolphinQt/Config/Graphics/GraphicsBool.cpp @@ -0,0 +1,54 @@ +// Copyright 2017 Dolphin Emulator Project +// Licensed under GPLv2+ +// Refer to the license.txt file included. + +#include "DolphinQt/Config/Graphics/GraphicsBool.h" + +#include "Common/Config/Config.h" + +#include "DolphinQt/Settings.h" + +#include <QFont> + +GraphicsBool::GraphicsBool(const QString& label, const Config::ConfigInfo<bool>& setting, + bool reverse) + : QCheckBox(label), m_setting(setting), m_reverse(reverse) +{ + connect(this, &QCheckBox::toggled, this, &GraphicsBool::Update); + setChecked(Config::Get(m_setting) ^ reverse); + + connect(&Settings::Instance(), &Settings::ConfigChanged, [this] { + QFont bf = font(); + bf.setBold(Config::GetActiveLayerForConfig(m_setting) != Config::LayerType::Base); + setFont(bf); + + bool old = blockSignals(true); + setChecked(Config::Get(m_setting) ^ m_reverse); + blockSignals(old); + }); +} + +void GraphicsBool::Update() +{ + Config::SetBaseOrCurrent(m_setting, static_cast<bool>(isChecked() ^ m_reverse)); +} + +GraphicsBoolEx::GraphicsBoolEx(const QString& label, const Config::ConfigInfo<bool>& setting, + bool reverse) + : QRadioButton(label), m_setting(setting), m_reverse(reverse) +{ + connect(this, &QCheckBox::toggled, this, &GraphicsBoolEx::Update); + setChecked(Config::Get(m_setting) ^ reverse); + + if (Config::GetActiveLayerForConfig(m_setting) != Config::LayerType::Base) + { + QFont bf = font(); + bf.setBold(true); + setFont(bf); + } +} + +void GraphicsBoolEx::Update() +{ + Config::SetBaseOrCurrent(m_setting, static_cast<bool>(isChecked() ^ m_reverse)); +} |
