X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fqtui%2Fsettingspages%2Fcolorsettingspage.cpp;h=6fff138925ca0e9e96e3839106ea7198fda99277;hb=f35121d25f2aa4b47b3f36730058600e2281cfea;hp=a301bd8ba798ed9b3205999f62a621aa3a47b198;hpb=b3ec58929bead822048a25f87f6a0d699c490b7a;p=quassel.git diff --git a/src/qtui/settingspages/colorsettingspage.cpp b/src/qtui/settingspages/colorsettingspage.cpp index a301bd8b..6fff1389 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(); @@ -167,6 +153,7 @@ void ColorSettingsPage::defaultMessage() { ui.senderBG->setColor(QColor("white")); ui.senderBG->setEnabled(false); ui.senderUseBG->setChecked(false); + ui.senderAutoColor->setChecked(false); ui.newMsgMarkerFG->setColor(Qt::red); /* @@ -212,6 +199,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))); @@ -334,6 +332,8 @@ void ColorSettingsPage::load() { ui.timestampBG->setColor(QtUi::style()->format(UiStyle::Timestamp).background().color()); ui.senderFG->setColor(QtUi::style()->format(UiStyle::Sender).foreground().color()); ui.senderBG->setColor(QtUi::style()->format(UiStyle::Sender).background().color()); + settings["SenderAutoColor"] = s.value("senderAutoColor", QVariant(false)); + ui.senderAutoColor->setChecked(settings["SenderAutoColor"].toBool()); settings["NewMsgMarkerFG"] = s.value("newMsgMarkerFG", QColor(Qt::red)); ui.newMsgMarkerFG->setColor(settings["NewMsgMarkerFG"].value()); @@ -378,6 +378,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(); @@ -432,6 +446,8 @@ void ColorSettingsPage::save() { s.setValue("timestampUseBG", ui.timestampUseBG->isChecked()); saveColor(UiStyle::Sender, ui.senderFG->color(), ui.senderBG->color(), ui.senderUseBG->isChecked()); s.setValue("senderUseBG", ui.senderUseBG->isChecked()); + s.setValue("senderAutoColor", ui.senderAutoColor->isChecked()); + QtUi::style()->setSenderAutoColor(ui.senderAutoColor->isChecked()); s.setValue("newMsgMarkerFG", ui.newMsgMarkerFG->color()); /* @@ -464,6 +480,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); } @@ -555,6 +578,7 @@ bool ColorSettingsPage::testHasChanged() { if(QtUi::style()->format(UiStyle::Sender).foreground().color() != ui.senderFG->color()) return true; if(QtUi::style()->format(UiStyle::Sender).background().color() != ui.senderBG->color()) return true; if(settings["SenderUseBG"].toBool() != ui.senderUseBG->isChecked()) return true; + if(settings["SenderAutoColor"].toBool() != ui.senderAutoColor->isChecked()) return true; if(settings["NewMsgMarkerFG"].value() != ui.newMsgMarkerFG->color()) return true; /* @@ -592,6 +616,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; }