Don't invoke notifications for own messages, fixes #507
[quassel.git] / src / core / basichandler.h
index f641a30..f67fe7f 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  *
@@ -18,8 +18,8 @@
  *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
  ***************************************************************************/
 
-#ifndef _BASICHANDLER_H_
-#define _BASICHANDLER_H_
+#ifndef BASICHANDLER_H_
+#define BASICHANDLER_H_
 
 #include <QObject>
 #include <QString>
 
 #include "message.h"
 
-class NetworkConnection;
-class Network;
+#include "corenetwork.h"
+
+class CoreSession;
 
 class BasicHandler : public QObject {
   Q_OBJECT
 
 public:
-  BasicHandler(NetworkConnection *parent = 0);
+  BasicHandler(CoreNetwork *parent = 0);
 
   QStringList providesHandlers();
 
@@ -56,13 +57,12 @@ public:
 
 signals:
   void displayMsg(Message::Type, BufferInfo::Type, QString target, QString text, QString sender = "", Message::Flags flags = Message::None);
-  void putCmd(const QString &cmd, const QVariantList &params, const QByteArray &prefix);
+  void putCmd(const QString &cmd, const QList<QByteArray> &params, const QByteArray &prefix = QByteArray());
   void putRawLine(const QByteArray &msg);
 
 protected:
   void displayMsg(Message::Type, QString target, QString text, QString sender = "", Message::Flags flags = Message::None);
   void putCmd(const QString &cmd, const QByteArray &param, const QByteArray &prefix = QByteArray());
-  void putCmd(const QString &cmd, const QList<QByteArray> &params, const QByteArray &prefix = QByteArray());
 
   virtual void handle(const QString &member, QGenericArgument val0 = QGenericArgument(0),
                       QGenericArgument val1 = QGenericArgument(), QGenericArgument val2 = QGenericArgument(),
@@ -71,15 +71,16 @@ protected:
                       QGenericArgument val7 = QGenericArgument(), QGenericArgument val8 = QGenericArgument());
 
 
-  Network * network() const;
-  NetworkConnection * networkConnection() const;
+  inline CoreNetwork *network() const { return _network; }
+  inline CoreSession *coreSession() const { return _network->coreSession(); }
+
   BufferInfo::Type typeByTarget(const QString &target) const;
 
 private:
   const QHash<QString, int> &handlerHash();
   QHash<QString, int> _handlerHash;
   int defaultHandler;
-  NetworkConnection *_networkConnection;
+  CoreNetwork *_network;
   bool initDone;
 };
 #endif