Only enable the relevant highlight depending on core features
[quassel.git] / src / qtui / settingspages / corehighlightsettingspage.h
index 393f31a..637c3ba 100644 (file)
  *   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.         *
  ***************************************************************************/
 
-#ifndef _COREHIGHLIGHTSETTINGSPAGE_H_
-#define _COREHIGHLIGHTSETTINGSPAGE_H_
+#pragma once
 
 #include <QVariantList>
 #include <QTableWidgetItem>
-#include <highlightrulemanager.h>
 
+#include "highlightrulemanager.h"
 #include "settingspage.h"
+
 #include "ui_corehighlightsettingspage.h"
 
 class CoreHighlightSettingsPage : public SettingsPage
@@ -37,6 +37,8 @@ public:
 
     bool hasDefaults() const override;
 
+    bool isSelectable() const override;
+
 public slots:
     void save() override;
     void load() override;
@@ -45,6 +47,7 @@ public slots:
     void clientConnected();
 
 private slots:
+    void coreConnectionStateChanged(bool state);
     void widgetHasChanged();
     void addNewHighlightRow(bool enable = true, const QString &name = tr("highlight rule"), bool regex = false,
                             bool cs = false, const QString &sender = "", const QString &chanName = "",
@@ -60,8 +63,10 @@ private slots:
 
 private:
     Ui::CoreHighlightSettingsPage ui;
+
     HighlightRuleManager::HighlightRuleList highlightList;
     HighlightRuleManager::HighlightRuleList ignoredList;
+
     enum column {
         EnableColumn = 0,
         NameColumn = 1,
@@ -77,8 +82,7 @@ private:
 
     void setupRuleTable(QTableWidget *highlightTable) const;
 
+    void importRules();
+
     bool _initialized;
 };
-
-
-#endif