From: Manuel Nickschas Date: Wed, 6 Aug 2008 15:50:35 +0000 (+0200) Subject: Introduce QtUiStyleSettings and make highlight color configurable again X-Git-Tag: 0.3.0~95 X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=commitdiff_plain;h=ddba2696fe051b472d6670e225e67c2f6f1972ce Introduce QtUiStyleSettings and make highlight color configurable again --- diff --git a/src/qtui/qtuisettings.cpp b/src/qtui/qtuisettings.cpp index 2a79bc79..d89f5c15 100644 --- a/src/qtui/qtuisettings.cpp +++ b/src/qtui/qtuisettings.cpp @@ -23,3 +23,17 @@ QtUiSettings::QtUiSettings(const QString &group) : UiSettings(group) { } + +/***********************************************************************/ + +QtUiStyleSettings::QtUiStyleSettings(const QString &group) : UiStyleSettings(group) { + +} + +void QtUiStyleSettings::setHighlightColor(const QColor &col) { + setLocalValue("Colors/HighlightColor", col); +} + +QColor QtUiStyleSettings::highlightColor() { + return localValue("Colors/HighlightColor", QColor()).value(); +} diff --git a/src/qtui/qtuisettings.h b/src/qtui/qtuisettings.h index ac3b0f5f..eda3c2d2 100644 --- a/src/qtui/qtuisettings.h +++ b/src/qtui/qtuisettings.h @@ -35,10 +35,10 @@ class QtUiSettings : public UiSettings { class QtUiStyleSettings : public UiStyleSettings { public: - QtUiStyleSettings(); + QtUiStyleSettings(const QString &group = "QtUiStyle"); void setHighlightColor(const QColor &); - QColor highlightColor() const; + QColor highlightColor(); }; diff --git a/src/qtui/qtuistyle.cpp b/src/qtui/qtuistyle.cpp index 6d6660b7..bdcfc9fc 100644 --- a/src/qtui/qtuistyle.cpp +++ b/src/qtui/qtuistyle.cpp @@ -19,6 +19,7 @@ ***************************************************************************/ #include "qtuistyle.h" +#include "qtuisettings.h" QtUiStyle::QtUiStyle() : UiStyle("QtUiStyle") { // We need to just set our internal formats; everything else is done by the base class... @@ -102,7 +103,15 @@ QtUiStyle::QtUiStyle() : UiStyle("QtUiStyle") { url.setAnchor(true); setFormat(Url, url, Settings::Default); - _highlightColor = QColor(Qt::red); + QtUiStyleSettings s; + _highlightColor = s.highlightColor(); + if(!_highlightColor.isValid()) _highlightColor = QColor("lightcoral"); } QtUiStyle::~QtUiStyle() {} + +void QtUiStyle::setHighlightColor(const QColor &col) { + _highlightColor = col; + QtUiStyleSettings s; + s.setHighlightColor(col); +} diff --git a/src/qtui/qtuistyle.h b/src/qtui/qtuistyle.h index e058ac0b..8db31824 100644 --- a/src/qtui/qtuistyle.h +++ b/src/qtui/qtuistyle.h @@ -32,6 +32,7 @@ class QtUiStyle : public UiStyle { virtual inline qreal firstColumnSeparator() const { return 10; } virtual inline qreal secondColumnSeparator() const { return 10; } virtual inline QColor highlightColor() const { return _highlightColor; } + virtual void setHighlightColor(const QColor &); private: QColor _highlightColor; diff --git a/src/qtui/settingspages/colorsettingspage.cpp b/src/qtui/settingspages/colorsettingspage.cpp index e8af475f..9ea87582 100644 --- a/src/qtui/settingspages/colorsettingspage.cpp +++ b/src/qtui/settingspages/colorsettingspage.cpp @@ -535,8 +535,7 @@ void ColorSettingsPage::load() { ui.urlFG->setColor(QtUi::style()->format(UiStyle::Url).foreground().color()); ui.urlBG->setColor(QtUi::style()->format(UiStyle::Url).background().color()); - settings["HighlightColor"] = s.value("highlightColor", QVariant(QColor("lightcoral"))); - ui.highlightColor->setColor(settings["HighlightColor"].value()); + ui.highlightColor->setColor(QtUi::style()->highlightColor()); ui.color0->setColor(QtUi::style()->format(UiStyle::FgCol00).foreground().color()); ui.color1->setColor(QtUi::style()->format(UiStyle::FgCol01).foreground().color()); @@ -617,7 +616,7 @@ void ColorSettingsPage::save() { saveColor(UiStyle::RenameMsg, ui.renameMessageFG->color(), ui.renameMessageBG->color(), ui.renameMessageUseBG->isChecked()); s.setValue("renameMessageUseBG", ui.renameMessageUseBG->isChecked()); - s.setValue("highlightColor", ui.highlightColor->color()); + QtUi::style()->setHighlightColor(ui.highlightColor->color()); saveColor(UiStyle::Timestamp, ui.timestampFG->color(), ui.timestampBG->color(), ui.timestampUseBG->isChecked()); s.setValue("timestampUseBG", ui.timestampUseBG->isChecked()); @@ -744,7 +743,7 @@ bool ColorSettingsPage::testHasChanged() { if(QtUi::style()->format(UiStyle::RenameMsg).background().color() != ui.renameMessageBG->color()) return true; if(settings["RenameMessageUseBG"].toBool() != ui.renameMessageUseBG->isChecked()) return true; - if(settings["HighlightColor"].value() != ui.highlightColor->color()) return true; + if(QtUi::style()->highlightColor() != ui.highlightColor->color()) return true; if(QtUi::style()->format(UiStyle::Timestamp).foreground().color() != ui.timestampFG->color()) return true; if(QtUi::style()->format(UiStyle::Timestamp).background().color() != ui.timestampBG->color()) return true;