ClientUserInputHandler is now a BasicHandler
[quassel.git] / src / client / clientuserinputhandler.h
index 21d2757..0b44c91 100644 (file)
 #ifndef CLIENTUSERINPUTHANDLER_H_
 #define CLIENTUSERINPUTHANDLER_H_
 
-#include "bufferinfo.h"
+//#include "bufferinfo.h"
+#include "basichandler.h"
 
-class ClientUserInputHandler : public QObject {
+class BufferInfo;
+class NetworkId;
+
+class ClientUserInputHandler : public BasicHandler {
   Q_OBJECT
 
 public:
@@ -38,10 +42,19 @@ signals:
 private slots:
   void completionSuffixChanged(const QVariant &);
 
-  void handleExec(const BufferInfo &bufferInfo, const QString &execStr);
+  void handleExec(const BufferInfo &bufferInfo, const QString &execString);
+  void handleJoin(const BufferInfo &bufferInfo, const QString &text);
+  void handleQuery(const BufferInfo &bufferInfo, const QString &text);
+  void defaultHandler(const QString &cmd, const BufferInfo &bufferInfo, const QString &text);
 
 private:
   QRegExp _nickRx;
+
+  //! Helper method for switching to new/existing buffers
+  /** Immediately switches to the given buffer or schedules a switch for whenever
+    * the buffer is created
+    */
+  void switchBuffer(const NetworkId &networkId, const QString &bufferName);
 };
 
 #endif