Add halfop support
[quassel.git] / src / core / coreuserinputhandler.h
index f2c3c6d..9db419b 100644 (file)
@@ -22,7 +22,9 @@
 #define COREUSERINPUTHANDLER_H
 
 #include "corebasichandler.h"
+#include "corenetwork.h"
 
+class Cipher;
 class Server;
 
 class CoreUserInputHandler : public CoreBasicHandler {
@@ -30,6 +32,7 @@ class CoreUserInputHandler : public CoreBasicHandler {
 
 public:
   CoreUserInputHandler(CoreNetwork *parent = 0);
+  inline CoreNetwork *coreNetwork() const { return qobject_cast<CoreNetwork *>(parent()); }
 
   void handleUserInput(const BufferInfo &bufferInfo, const QString &text);
 
@@ -40,6 +43,7 @@ public slots:
   void handleCtcp(const BufferInfo &bufferInfo, const QString &text);
   void handleDelkey(const BufferInfo &bufferInfo, const QString &text);
   void handleDeop(const BufferInfo &bufferInfo, const QString &text);
+  void handleDehalfop(const BufferInfo &bufferInfo, const QString &text);
   void handleDevoice(const BufferInfo &bufferInfo, const QString &text);
   void handleInvite(const BufferInfo &bufferInfo, const QString &text);
   void handleJoin(const BufferInfo &bufferInfo, const QString &text);
@@ -53,6 +57,7 @@ public slots:
   void handleNotice(const BufferInfo &bufferInfo, const QString &text);
   void handleOper(const BufferInfo &bufferInfo, const QString &text);
   void handleOp(const BufferInfo &bufferInfo, const QString &text);
+  void handleHalfop(const BufferInfo &bufferInfo, const QString &text);
   void handlePart(const BufferInfo &bufferInfo, const QString &text);
   void handlePing(const BufferInfo &bufferInfo, const QString &text);
   void handleQuery(const BufferInfo &bufferInfo, const QString &text);
@@ -60,6 +65,7 @@ public slots:
   void handleQuote(const BufferInfo &bufferInfo, const QString &text);
   void handleSay(const BufferInfo &bufferInfo, const QString &text);
   void handleSetkey(const BufferInfo &bufferInfo, const QString &text);
+  void handleShowkey(const BufferInfo &bufferInfo, const QString &text);
   void handleTopic(const BufferInfo &bufferInfo, const QString &text);
   void handleVoice(const BufferInfo &bufferInfo, const QString &text);
   void handleWait(const BufferInfo &bufferInfo, const QString &text);
@@ -77,9 +83,13 @@ protected:
 
 private:
   void banOrUnban(const BufferInfo &bufferInfo, const QString &text, bool ban);
-  void putPrivmsg(const QByteArray &target, const QByteArray &message);
+  void putPrivmsg(const QByteArray &target, const QByteArray &message, Cipher *cipher = 0);
   int lastParamOverrun(const QString &cmd, const QList<QByteArray> &params);
 
+#ifdef HAVE_QCA2
+  QByteArray encrypt(const QString &target, const QByteArray &message, bool *didEncrypt = 0) const;
+#endif
+
   struct Command {
     BufferInfo bufferInfo;
     QString command;