X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fqtui%2Fsettingspages%2Fcolorsettingspage.cpp;h=3038c18020822416d9475f5254965c0b26ad4e9a;hb=d37bdc91c5474603e1417c2cd9c40c02e1ad5ee6;hp=a301bd8ba798ed9b3205999f62a621aa3a47b198;hpb=b3ec58929bead822048a25f87f6a0d699c490b7a;p=quassel.git diff --git a/src/qtui/settingspages/colorsettingspage.cpp b/src/qtui/settingspages/colorsettingspage.cpp index a301bd8b..3038c180 100644 --- a/src/qtui/settingspages/colorsettingspage.cpp +++ b/src/qtui/settingspages/colorsettingspage.cpp @@ -28,8 +28,6 @@ #include #include -// #define PHONDEV - ColorSettingsPage::ColorSettingsPage(QWidget *parent) : SettingsPage(tr("Appearance"), tr("Color settings"), parent), mapper(new QSignalMapper(this)) @@ -46,26 +44,13 @@ ColorSettingsPage::ColorSettingsPage(QWidget *parent) connect(mapper, SIGNAL(mapped(QWidget *)), this, SLOT(chooseColor(QWidget *))); - - -#ifndef PHONDEV - ui.inactiveActivityUseBG->setEnabled(false); - ui.noActivityUseBG->setEnabled(false); - ui.highlightActivityUseBG->setEnabled(false); - ui.newMessageActivityUseBG->setEnabled(false); - ui.otherActivityUseBG->setEnabled(false); - - ui.nickFG->setEnabled(false); - ui.nickUseBG->setEnabled(false); - ui.hostmaskFG->setEnabled(false); - ui.hostmaskUseBG->setEnabled(false); - ui.channelnameFG->setEnabled(false); - ui.channelnameUseBG->setEnabled(false); - ui.modeFlagsFG->setEnabled(false); - ui.modeFlagsUseBG->setEnabled(false); - ui.urlFG->setEnabled(false); - ui.urlUseBG->setEnabled(false); -#endif + //disable unused buttons: + foreach(QWidget *widget, findChildren()) { + if(widget->property("NotInUse").toBool()) { + widget->setEnabled(false); + widget->hide(); + } + } } bool ColorSettingsPage::hasDefaults() const { @@ -78,6 +63,7 @@ void ColorSettingsPage::defaults() { defaultUserActivity(); defaultMessage(); defaultMircColorCodes(); + defaultNickview(); widgetHasChanged(); bufferviewPreview(); @@ -212,6 +198,17 @@ void ColorSettingsPage::defaultMircColorCodes() { ui.color15->setColor(QtUi::style()->format(UiStyle::FgCol15, Settings::Default).foreground().color()); } +void ColorSettingsPage::defaultNickview() { + ui.onlineStatusFG->setColor(QColor(Qt::black)); + ui.onlineStatusBG->setColor(QColor("white")); + ui.onlineStatusBG->setEnabled(false); + ui.onlineStatusUseBG->setChecked(false); + ui.awayStatusFG->setColor(QColor(Qt::gray)); + ui.awayStatusBG->setColor(QColor("white")); + ui.awayStatusBG->setEnabled(false); + ui.awayStatusUseBG->setChecked(false); +} + void ColorSettingsPage::load() { QtUiStyleSettings s("Colors"); settings["InactiveActivityFG"] = s.value("inactiveActivityFG", QVariant(QColor(Qt::gray))); @@ -378,6 +375,20 @@ void ColorSettingsPage::load() { ui.color14->setColor(QtUi::style()->format(UiStyle::FgCol14).foreground().color()); ui.color15->setColor(QtUi::style()->format(UiStyle::FgCol15).foreground().color()); + settings["OnlineStatusFG"] = s.value("onlineStatusFG", QVariant(QColor(Qt::black))); + ui.onlineStatusFG->setColor(settings["OnlineStatusFG"].value()); + settings["OnlineStatusBG"] = s.value("onlineStatusBG", QVariant(QColor(Qt::white))); + ui.onlineStatusBG->setColor(settings["OnlineStatusBG"].value()); + settings["OnlineStatusUseBG"] = s.value("onlineStatusUseBG"); + ui.onlineStatusUseBG->setChecked(settings["OnlineStatusUseBG"].toBool()); + + settings["AwayStatusFG"] = s.value("awayStatusFG", QVariant(QColor(Qt::gray))); + ui.awayStatusFG->setColor(settings["AwayStatusFG"].value()); + settings["AwayStatusBG"] = s.value("awayStatusBG", QVariant(QColor(Qt::white))); + ui.awayStatusBG->setColor(settings["AwayStatusBG"].value()); + settings["AwayStatusUseBG"] = s.value("awayStatusUseBG"); + ui.awayStatusUseBG->setChecked(settings["AwayStatusUseBG"].toBool()); + setChangedState(false); bufferviewPreview(); chatviewPreview(); @@ -464,6 +475,13 @@ void ColorSettingsPage::save() { saveMircColor(14, ui.color14->color()); saveMircColor(15, ui.color15->color()); + s.setValue("onlineStatusFG", ui.onlineStatusFG->color()); + s.setValue("onlineStatusBG", ui.onlineStatusBG->color()); + s.setValue("onlineStatusUseBG", ui.onlineStatusUseBG->isChecked()); + s.setValue("awayStatusFG", ui.awayStatusFG->color()); + s.setValue("awayStatusBG", ui.awayStatusBG->color()); + s.setValue("awayStatusUseBG", ui.awayStatusUseBG->isChecked()); + load(); //TODO: remove when settings hash map is unnescessary setChangedState(false); } @@ -592,6 +610,13 @@ bool ColorSettingsPage::testHasChanged() { if(QtUi::style()->format(UiStyle::FgCol14).foreground().color() != ui.color14->color()) return true; if(QtUi::style()->format(UiStyle::FgCol15).foreground().color() != ui.color15->color()) return true; + if(settings["OnlineStatusFG"].value() != ui.onlineStatusFG->color()) return true; + if(settings["OnlineStatusBG"].value() != ui.onlineStatusBG->color()) return true; + if(settings["OnlineStatusUseBG"].toBool() != ui.onlineStatusUseBG->isChecked()) return true; + if(settings["AwayStatusFG"].value() != ui.awayStatusFG->color()) return true; + if(settings["AwayStatusBG"].value() != ui.awayStatusBG->color()) return true; + if(settings["AwayStatusUseBG"].toBool() != ui.awayStatusUseBG->isChecked()) return true; + return false; }