X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Fsettingspages%2Fcorehighlightsettingspage.cpp;h=444afd1c2c6f29afe016454a4acd3d249fd7a4da;hp=d7ed5f3325bd8eebc649539ef152bab94eff6311;hb=f4cc482f39451e564f549b39549d68f46561a9aa;hpb=e04ec81f1b7a29542135286854040d353e1e1474 diff --git a/src/qtui/settingspages/corehighlightsettingspage.cpp b/src/qtui/settingspages/corehighlightsettingspage.cpp index d7ed5f33..444afd1c 100644 --- a/src/qtui/settingspages/corehighlightsettingspage.cpp +++ b/src/qtui/settingspages/corehighlightsettingspage.cpp @@ -57,6 +57,11 @@ CoreHighlightSettingsPage::CoreHighlightSettingsPage(QWidget *parent) this, SLOT(selectIgnoredRow(QTableWidgetItem * ))); + // Update the "Case sensitive" checkbox + connect(ui.highlightNicksComboBox, + SIGNAL(currentIndexChanged(int)), + this, + SLOT(highlightNicksChanged(int))); connect(ui.highlightNicksComboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(widgetHasChanged())); connect(ui.nicksCaseSensitive, SIGNAL(clicked(bool)), this, SLOT(widgetHasChanged())); @@ -284,6 +289,12 @@ void CoreHighlightSettingsPage::removeSelectedIgnoredRows() } } +void CoreHighlightSettingsPage::highlightNicksChanged(const int index) { + // Only allow toggling "Case sensitive" when a nickname will be highlighted + auto highlightNickType = ui.highlightNicksComboBox->itemData(index).value(); + ui.nicksCaseSensitive->setEnabled(highlightNickType != HighlightRuleManager::NoNick); +} + void CoreHighlightSettingsPage::selectHighlightRow(QTableWidgetItem *item) { int row = item->row(); @@ -426,6 +437,8 @@ void CoreHighlightSettingsPage::load() int highlightNickType = ruleManager->highlightNick(); ui.highlightNicksComboBox->setCurrentIndex(ui.highlightNicksComboBox->findData(QVariant(highlightNickType))); + // Trigger the initial update of nicksCaseSensitive being enabled or not + highlightNicksChanged(ui.highlightNicksComboBox->currentIndex()); ui.nicksCaseSensitive->setChecked(ruleManager->nicksCaseSensitive()); setChangedState(false);