From f6efe3a55813a5d5d46a8a82958dbfae6dc3cbc7 Mon Sep 17 00:00:00 2001 From: salnx Date: Tue, 9 Jun 2009 23:54:55 +0400 Subject: [PATCH 3/4] Make Highlight table select newly added rule This also slightly improves usability if table contains many rows so user don't have to scroll down manually when adding rule. --- src/qtui/settingspages/highlightsettingspage.cpp | 7 +++++-- src/qtui/settingspages/highlightsettingspage.h | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/qtui/settingspages/highlightsettingspage.cpp b/src/qtui/settingspages/highlightsettingspage.cpp index 3bd2e56..52a974e 100644 --- a/src/qtui/settingspages/highlightsettingspage.cpp +++ b/src/qtui/settingspages/highlightsettingspage.cpp @@ -73,7 +73,7 @@ void HighlightSettingsPage::defaults() { widgetHasChanged(); } -void HighlightSettingsPage::addNewRow(QString name, bool regex, bool cs, bool enable, QString chanName) { +void HighlightSettingsPage::addNewRow(QString name, bool regex, bool cs, bool enable, QString chanName, bool self) { ui.highlightTable->setRowCount(ui.highlightTable->rowCount()+1); QTableWidgetItem *nameItem = new QTableWidgetItem(name); @@ -108,6 +108,9 @@ void HighlightSettingsPage::addNewRow(QString name, bool regex, bool cs, bool en ui.highlightTable->setItem(lastRow, HighlightSettingsPage::EnableColumn, enableItem); ui.highlightTable->setItem(lastRow, HighlightSettingsPage::ChanColumn, chanNameItem); + if(!self) + ui.highlightTable->setCurrentItem(nameItem); + QVariantMap highlightRule; highlightRule["Name"] = name; highlightRule["RegEx"] = regex; @@ -199,7 +202,7 @@ void HighlightSettingsPage::load() { bool enable = highlightRule["Enable"].toBool(); QString chanName = highlightRule["Chan"].toString(); - addNewRow(name, regex, cs, enable, chanName); + addNewRow(name, regex, cs, enable, chanName, true); } switch(notificationSettings.highlightNick()) diff --git a/src/qtui/settingspages/highlightsettingspage.h b/src/qtui/settingspages/highlightsettingspage.h index 60996f1..d4fd3d3 100644 --- a/src/qtui/settingspages/highlightsettingspage.h +++ b/src/qtui/settingspages/highlightsettingspage.h @@ -42,7 +42,7 @@ class HighlightSettingsPage : public SettingsPage { private slots: void widgetHasChanged(); - void addNewRow(QString name = tr("highlight rule"), bool regex = false, bool cs = true, bool enable = true, QString chanName = ""); + void addNewRow(QString name = tr("highlight rule"), bool regex = false, bool cs = true, bool enable = true, QString chanName = "", bool self = false); void removeSelectedRows(); void selectRow(QTableWidgetItem *item); void tableChanged(QTableWidgetItem *item); -- 1.6.2.3