X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fclientignorelistmanager.h;h=51f020302a11d8718c71948cdf67f0f06868e58e;hp=eac7c721cfe58746f48027d23e959b38e9ceadeb;hb=f19fea582ace1d8f3dfe29c1096c48758079e56e;hpb=577206b749ceca0eac05320a7e93d5fe2308b011 diff --git a/src/client/clientignorelistmanager.h b/src/client/clientignorelistmanager.h index eac7c721..51f02030 100644 --- a/src/client/clientignorelistmanager.h +++ b/src/client/clientignorelistmanager.h @@ -22,6 +22,7 @@ #define CLIENTIGNORELISTMANAGER_H #include "ignorelistmanager.h" +#include class ClientIgnoreListManager : public IgnoreListManager { @@ -32,8 +33,20 @@ public: explicit ClientIgnoreListManager(QObject *parent = 0); inline virtual const QMetaObject *syncMetaObject() const { return &IgnoreListManager::staticMetaObject; } + //! Fetch all matching ignore rules for a given hostmask + /** \param hostmask The hostmask of the user + * \param network The network name + * \param channel The channel name + * \return Returns a QMap with the rule as key and a bool, representing if the rule is enabled or not, as value + */ + QMap matchingRulesForHostmask(const QString &hostmask, const QString &network, const QString &channel) const; + signals: void ignoreListChanged(); + +private: + // matches an ignore rule against a given string + bool pureMatch(const IgnoreListItem &item, const QString &string) const; }; #endif // CLIENTIGNORELISTMANAGER_H