* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
***************************************************************************/
+#include <QHeaderView>
#include <QTableWidget>
-#include <QtWidgets/QHeaderView>
+#include "client.h"
#include "corehighlightsettingspage.h"
#include "qtui.h"
-#include "client.h"
CoreHighlightSettingsPage::CoreHighlightSettingsPage(QWidget *parent)
: SettingsPage(tr("Interface"), tr("Core-Side Highlights"), parent)
ui.highlightNicksComboBox->addItem(tr("Current Nick"), QVariant(HighlightRuleManager::CurrentNick));
ui.highlightNicksComboBox->addItem(tr("None"), QVariant(HighlightRuleManager::NoNick));
+ coreConnectionStateChanged(Client::isConnected()); // need a core connection!
+ connect(Client::instance(), SIGNAL(coreConnectionStateChanged(bool)), this, SLOT(coreConnectionStateChanged(bool)));
+
connect(ui.highlightAdd, SIGNAL(clicked(bool)), this, SLOT(addNewHighlightRow()));
connect(ui.highlightRemove, SIGNAL(clicked(bool)), this, SLOT(removeSelectedHighlightRows()));
connect(Client::instance(), SIGNAL(connected()), this, SLOT(clientConnected()));
}
+
+void CoreHighlightSettingsPage::coreConnectionStateChanged(bool state)
+{
+ setEnabled(state);
+ if (state) {
+ load();
+ } else {
+ revert();
+ }
+}
+
void CoreHighlightSettingsPage::setupRuleTable(QTableWidget *table) const
{
table->verticalHeader()->hide();
switch (item->column()) {
case CoreHighlightSettingsPage::EnableColumn:
highlightRule.isEnabled = (item->checkState() == Qt::Checked);
+ break;
case CoreHighlightSettingsPage::NameColumn:
if (item->text() == "")
item->setText(tr("this shouldn't be empty"));
switch (item->column()) {
case CoreHighlightSettingsPage::EnableColumn:
ignoredRule.isEnabled = (item->checkState() == Qt::Checked);
+ break;
case CoreHighlightSettingsPage::NameColumn:
if (item->text() == "")
item->setText(tr("this shouldn't be empty"));
rule.sender, rule.chanName);
}
- auto highlightNickType = ui.highlightNicksComboBox->currentData().value<int>();
+ auto highlightNickType = ui.highlightNicksComboBox->itemData(ui.highlightNicksComboBox->currentIndex()).value<int>();
clonedManager.setHighlightNick(HighlightRuleManager::HighlightNickType(highlightNickType));
clonedManager.setNicksCaseSensitive(ui.nicksCaseSensitive->isChecked());
void CoreHighlightSettingsPage::widgetHasChanged()
{
setChangedState(true);
-}
\ No newline at end of file
+}