From: Shane Synan Date: Wed, 28 Feb 2018 01:34:10 +0000 (-0600) Subject: client: Disable case-sensitive check for no nick X-Git-Tag: travis-deploy-test~99 X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=commitdiff_plain;h=f4cc482f39451e564f549b39549d68f46561a9aa client: Disable case-sensitive check for no nick Disable "Case sensitive" highlight checkbox when highlight nicks is set to "No nicks", as it has no effect on outcome. --- 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); diff --git a/src/qtui/settingspages/corehighlightsettingspage.h b/src/qtui/settingspages/corehighlightsettingspage.h index 53cbef28..62abae8f 100644 --- a/src/qtui/settingspages/corehighlightsettingspage.h +++ b/src/qtui/settingspages/corehighlightsettingspage.h @@ -56,6 +56,7 @@ private slots: bool cs = false, const QString &sender = "", const QString &chanName = "", bool self = false); void removeSelectedHighlightRows(); void removeSelectedIgnoredRows(); + void highlightNicksChanged(const int index); void selectHighlightRow(QTableWidgetItem *item); void selectIgnoredRow(QTableWidgetItem *item); void highlightTableChanged(QTableWidgetItem *item);