Minor cleanups for core-side highlight feature
authorManuel Nickschas <sputnick@quassel-irc.org>
Wed, 20 Dec 2017 22:16:52 +0000 (23:16 +0100)
committerManuel Nickschas <sputnick@quassel-irc.org>
Wed, 20 Dec 2017 23:05:26 +0000 (00:05 +0100)
Also remove some accidental fallthroughs, and fix the Qt4 build.

Closes GH-303.

src/client/client.h
src/common/highlightrulemanager.cpp
src/common/highlightrulemanager.h
src/core/corehighlightrulemanager.cpp
src/core/corehighlightrulemanager.h
src/core/coresession.h
src/qtui/mainwin.cpp
src/qtui/settingspages/corehighlightsettingspage.cpp
src/qtui/settingspages/corehighlightsettingspage.h

index 6f261f5..89ef829 100644 (file)
  *   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.         *
  ***************************************************************************/
 
-#ifndef CLIENT_H_
-#define CLIENT_H_
+#pragma once
 
 #include <QList>
 #include <QPointer>
-#include <highlightrulemanager.h>
 
 #include "bufferinfo.h"
 #include "coreaccount.h"
 #include "coreconnection.h"
+#include "highlightrulemanager.h"
 #include "quassel.h"
 #include "types.h"
 
@@ -287,6 +286,3 @@ private:
 
     friend class CoreConnection;
 };
-
-
-#endif
index 4d74deb..207dd21 100644 (file)
  ***************************************************************************/
 
 #include "highlightrulemanager.h"
+
 #include "util.h"
 
-#include <QtCore>
 #include <QDebug>
-#include <QStringList>
 
 INIT_SYNCABLE_OBJECT(HighlightRuleManager)
 HighlightRuleManager &HighlightRuleManager::operator=(const HighlightRuleManager &other)
@@ -123,7 +122,13 @@ void HighlightRuleManager::addHighlightRule(const QString &name, bool isRegEx, b
 }
 
 
-bool HighlightRuleManager::_match(const QString &msgContents, const QString &msgSender, Message::Type msgType, Message::Flags msgFlags, const QString &bufferName, const QString &currentNick, const QStringList identityNicks)
+bool HighlightRuleManager::match(const QString &msgContents,
+                                 const QString &msgSender,
+                                 Message::Type msgType,
+                                 Message::Flags msgFlags,
+                                 const QString &bufferName,
+                                 const QString &currentNick,
+                                 const QStringList identityNicks)
 {
     if (!((msgType & (Message::Plain | Message::Notice | Message::Action)) && !(msgFlags & Message::Self))) {
        return false;
@@ -222,5 +227,5 @@ void HighlightRuleManager::toggleHighlightRule(const QString &highlightRule)
 
 bool HighlightRuleManager::match(const Message &msg, const QString &currentNick, const QStringList &identityNicks)
 {
-    return _match(msg.contents(), msg.sender(), msg.type(), msg.flags(), msg.bufferInfo().bufferName(), currentNick, identityNicks);
+    return match(msg.contents(), msg.sender(), msg.type(), msg.flags(), msg.bufferInfo().bufferName(), currentNick, identityNicks);
 }
index 427b658..bda760e 100644 (file)
  *   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.         *
  ***************************************************************************/
 
-#ifndef HIGHLIGHTRULELISTMANAGER_H
-#define HIGHLIGHTRULELISTMANAGER_H
+#pragma once
 
-#include <QString>
-#include <QRegExp>
 #include <utility>
 
+#include <QRegExp>
+#include <QString>
+#include <QStringList>
+#include <QVariantList>
+#include <QVariantMap>
+
 #include "message.h"
 #include "syncableobject.h"
 
@@ -80,7 +83,7 @@ public:
     inline const HighlightRuleList &highlightRuleList() const { return _highlightRuleList; }
 
     inline HighlightNickType highlightNick() { return _highlightNick; }
-    inline bool  nicksCaseSensitive() { return _nicksCaseSensitive; }
+    inline bool nicksCaseSensitive() { return _nicksCaseSensitive; }
 
     //! Check if a message matches the HighlightRule
     /** This method checks if a message matches the users highlight rules.
@@ -141,7 +144,13 @@ public slots:
 protected:
     void setHighlightRuleList(const QList<HighlightRule> &HighlightRuleList) { _highlightRuleList = HighlightRuleList; }
 
-    bool _match(const QString &msgContents, const QString &msgSender, Message::Type msgType, Message::Flags msgFlags, const QString &bufferName, const QString &currentNick, const QStringList identityNicks);
+    bool match(const QString &msgContents,
+               const QString &msgSender,
+               Message::Type msgType,
+               Message::Flags msgFlags,
+               const QString &bufferName,
+               const QString &currentNick,
+               const QStringList identityNicks);
 
 signals:
     void ruleAdded(QString name, bool isRegEx, bool isCaseSensitive, bool isEnabled, bool isInverse, QString sender, QString chanName);
@@ -151,6 +160,3 @@ private:
     HighlightNickType _highlightNick = HighlightNickType::CurrentNick;
     bool _nicksCaseSensitive = false;
 };
-
-
-#endif // HIGHLIGHTRULELISTMANAGER_H
index c35ca50..6299e82 100644 (file)
@@ -53,5 +53,5 @@ void CoreHighlightRuleManager::save() const
 
 bool CoreHighlightRuleManager::match(const RawMessage &msg, const QString &currentNick, const QStringList &identityNicks)
 {
-    return _match(msg.text, msg.sender, msg.type, msg.flags, msg.target, currentNick, identityNicks);
+    return match(msg.text, msg.sender, msg.type, msg.flags, msg.target, currentNick, identityNicks);
 }
index 5f2db90..09d7cbf 100644 (file)
@@ -18,8 +18,7 @@
  *   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.         *
  ***************************************************************************/
 
-#ifndef COREHIGHLIGHTRULEMANAHER_H
-#define COREHIGHLIGHTRULEMANAHER_H
+#pragma once
 
 #include "highlightrulemanager.h"
 
@@ -28,8 +27,10 @@ struct RawMessage;
 
 class CoreHighlightRuleManager : public HighlightRuleManager
 {
+    Q_OBJECT
     SYNCABLE_OBJECT
-        Q_OBJECT
+
+    using HighlightRuleManager::match;
 
 public:
     explicit CoreHighlightRuleManager(CoreSession *parent);
@@ -37,6 +38,7 @@ public:
     inline virtual const QMetaObject *syncMetaObject() const { return &HighlightRuleManager::staticMetaObject; }
 
     bool match(const RawMessage &msg, const QString &currentNick, const QStringList &identityNicks);
+
 public slots:
     virtual inline void requestToggleHighlightRule(const QString &highlightRule) { toggleHighlightRule(highlightRule); }
     virtual inline void requestRemoveHighlightRule(const QString &highlightRule) { removeHighlightRule(highlightRule); }
@@ -50,6 +52,3 @@ public slots:
 private slots:
     void save() const;
 };
-
-
-#endif //COREHIGHLIGHTRULEMANAHER_H
index 3bc7cd0..c4bf9ef 100644 (file)
 
 #include "corecoreinfo.h"
 #include "corealiasmanager.h"
+#include "corehighlightrulemanager.h"
 #include "coreignorelistmanager.h"
 #include "peer.h"
 #include "protocol.h"
 #include "message.h"
 #include "storage.h"
-#include "corehighlightrulemanager.h"
 
 class CoreBacklogManager;
 class CoreBufferSyncer;
index d9c7cc3..d3687c8 100644 (file)
@@ -27,7 +27,6 @@
 #include <QTableView>
 #include <QToolBar>
 #include <QInputDialog>
-#include <settingspages/corehighlightsettingspage.h>
 
 #ifdef HAVE_KDE4
 #  include <KHelpMenu>
 #include "settingspages/connectionsettingspage.h"
 #include "settingspages/coreaccountsettingspage.h"
 #include "settingspages/coreconnectionsettingspage.h"
+#include <settingspages/corehighlightsettingspage.h>
 #include "settingspages/dccsettingspage.h"
 #include "settingspages/highlightsettingspage.h"
 #include "settingspages/identitiessettingspage.h"
index cdb5088..fba21eb 100644 (file)
  *   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)
@@ -75,6 +75,7 @@ CoreHighlightSettingsPage::CoreHighlightSettingsPage(QWidget *parent)
 
     connect(Client::instance(), SIGNAL(connected()), this, SLOT(clientConnected()));
 }
+
 void CoreHighlightSettingsPage::setupRuleTable(QTableWidget *table) const
 {
     table->verticalHeader()->hide();
@@ -318,6 +319,7 @@ void CoreHighlightSettingsPage::highlightTableChanged(QTableWidgetItem *item)
     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"));
@@ -355,6 +357,7 @@ void CoreHighlightSettingsPage::ignoredTableChanged(QTableWidgetItem *item)
     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"));
@@ -440,7 +443,7 @@ void CoreHighlightSettingsPage::save()
                                        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());
@@ -453,4 +456,4 @@ void CoreHighlightSettingsPage::save()
 void CoreHighlightSettingsPage::widgetHasChanged()
 {
     setChangedState(true);
-}
\ No newline at end of file
+}
index 393f31a..722bf00 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
@@ -60,8 +60,10 @@ private slots:
 
 private:
     Ui::CoreHighlightSettingsPage ui;
+
     HighlightRuleManager::HighlightRuleList highlightList;
     HighlightRuleManager::HighlightRuleList ignoredList;
+
     enum column {
         EnableColumn = 0,
         NameColumn = 1,
@@ -79,6 +81,3 @@ private:
 
     bool _initialized;
 };
-
-
-#endif