Don't invoke notifications for own messages, fixes #507
[quassel.git] / src / core / userinputhandler.h
index f8f936f..5df2686 100644 (file)
@@ -1,5 +1,5 @@
 /***************************************************************************
- *   Copyright (C) 2005-08 by the Quassel Project                          *
+ *   Copyright (C) 2005-09 by the Quassel Project                          *
  *   devel@quassel-irc.org                                                 *
  *                                                                         *
  *   This program is free software; you can redistribute it and/or modify  *
@@ -29,7 +29,7 @@ class UserInputHandler : public BasicHandler {
   Q_OBJECT
 
 public:
-  UserInputHandler(NetworkConnection *parent = 0);
+  UserInputHandler(CoreNetwork *parent = 0);
 
   void handleUserInput(const BufferInfo &bufferInfo, const QString &text);
   
@@ -60,6 +60,7 @@ public slots:
   void handleSay(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);
   void handleWho(const BufferInfo &bufferInfo, const QString &text);
   void handleWhois(const BufferInfo &bufferInfo, const QString &text);
   void handleWhowas(const BufferInfo &bufferInfo, const QString &text);
@@ -68,9 +69,23 @@ public slots:
 
   void issueQuit(const QString &reason);
 
+protected:
+  void timerEvent(QTimerEvent *event);
+
 private:
   void expand(const QString &alias, const BufferInfo &bufferInfo, const QString &msg);
   void banOrUnban(const BufferInfo &bufferInfo, const QString &text, bool ban);
+  void putPrivmsg(const QByteArray &target, const QByteArray &message);
+  int lastParamOverrun(const QString &cmd, const QList<QByteArray> &params);
+
+  struct Command {
+    BufferInfo bufferInfo;
+    QString command;
+    Command(const BufferInfo &info, const QString &command) : bufferInfo(info), command(command) {}
+    Command() {}
+  };
+
+  QHash<int, Command> _delayedCommands;
 };