summaryrefslogtreecommitdiff
path: root/src/settings.cpp
diff options
context:
space:
mode:
authorKrzysztof Starecki <krzysztof.starecki@gmail.com>2018-12-31 18:58:11 +0100
committerKrzysztof Starecki <krzysztof.starecki@gmail.com>2018-12-31 18:58:11 +0100
commit527b310ef3eb88e9fd5e6473984e8679d125c853 (patch)
tree99c8c383bbef11ce5f07df4002cdf92a18748881 /src/settings.cpp
parentb8babae78a452071c3a707347d21a06fef759bab (diff)
parent776bc8efdfb3c6ccfe03d2a9a59a38d137e141a9 (diff)
Merge remote-tracking branch 'upstream/Develop' into download-tab
Diffstat (limited to 'src/settings.cpp')
-rw-r--r--src/settings.cpp23
1 files changed, 9 insertions, 14 deletions
diff --git a/src/settings.cpp b/src/settings.cpp
index 42bf1357..8f768fd2 100644
--- a/src/settings.cpp
+++ b/src/settings.cpp
@@ -197,9 +197,12 @@ QString Settings::deObfuscate(const QString &password)
return QString::fromUtf8(buffer.constData());
}
-QColor Settings::getIdealTextColor(const QColor& rBackgroundColor)
+QColor Settings::getIdealTextColor(const QColor& rBackgroundColor)
{
- const int THRESHOLD = 106;
+ if (rBackgroundColor.alpha() == 0)
+ return QColor(Qt::black);
+
+ const int THRESHOLD = 106 * 255.0f / rBackgroundColor.alpha();
int BackgroundDelta = (rBackgroundColor.red() * 0.299) + (rBackgroundColor.green() * 0.587) + (rBackgroundColor.blue() * 0.114);
return QColor((255 - BackgroundDelta <= THRESHOLD) ? Qt::black : Qt::white);
}
@@ -778,18 +781,10 @@ Settings::GeneralTab::GeneralTab(Settings *m_parent, SettingsDialog &m_dialog)
*/
//version with stylesheet
- m_overwritingBtn->setStyleSheet(m_dialog.getColoredButtonStyleSheet().arg(
- m_parent->modlistOverwritingLooseColor().name()).arg(getIdealTextColor(
- m_parent->modlistOverwritingLooseColor()).name()));
- m_overwrittenBtn->setStyleSheet(m_dialog.getColoredButtonStyleSheet().arg(
- m_parent->modlistOverwrittenLooseColor().name()).arg(getIdealTextColor(
- m_parent->modlistOverwrittenLooseColor()).name()));
- m_containsBtn->setStyleSheet(m_dialog.getColoredButtonStyleSheet().arg(
- m_parent->modlistContainsPluginColor().name()).arg(getIdealTextColor(
- m_parent->modlistContainsPluginColor()).name()));
- m_containedBtn->setStyleSheet(m_dialog.getColoredButtonStyleSheet().arg(
- m_parent->pluginListContainedColor().name()).arg(getIdealTextColor(
- m_parent->pluginListContainedColor()).name()));
+ m_dialog.setButtonColor(m_overwritingBtn, m_parent->modlistOverwritingLooseColor());
+ m_dialog.setButtonColor(m_overwrittenBtn, m_parent->modlistOverwrittenLooseColor());
+ m_dialog.setButtonColor(m_containsBtn, m_parent->modlistContainsPluginColor());
+ m_dialog.setButtonColor(m_containedBtn, m_parent->pluginListContainedColor());
m_dialog.setOverwritingColor(m_parent->modlistOverwritingLooseColor());
m_dialog.setOverwrittenColor(m_parent->modlistOverwrittenLooseColor());