Make BufferInfo qDebug()able as per EgS' request.
[quassel.git] / src / common / networkinfo.h
index 6f2ab48..e27c66b 100644 (file)
@@ -1,11 +1,11 @@
 /***************************************************************************
- *   Copyright (C) 2005/06 by The Quassel Team                             *
+ *   Copyright (C) 2005-07 by the Quassel IRC Team                         *
  *   devel@quassel-irc.org                                                 *
  *                                                                         *
  *   This program is free software; you can redistribute it and/or modify  *
  *   it under the terms of the GNU General Public License as published by  *
  *   the Free Software Foundation; either version 2 of the License, or     *
- *   (at your option) any later version.                                   *
+ *   (at your option) version 3.                                           *
  *                                                                         *
  *   This program is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
@@ -29,7 +29,6 @@
 #include <QPointer>
 
 class SignalProxy;
-class Synchronizer;
 class IrcUser;
 class IrcChannel;
 
@@ -42,13 +41,15 @@ class NetworkInfo : public QObject {
   Q_PROPERTY(QString myNick READ myNick WRITE setMyNick STORED false)
 
 public:
-  NetworkInfo(const uint &networkid, SignalProxy *proxy, QObject *parent = 0);
-  //  virtual ~NetworkInfo();
+  NetworkInfo(const uint &networkid, QObject *parent = 0);
+  //virtual ~NetworkInfo();
 
   uint networkId() const;
   bool initialized() const;
-  Synchronizer *synchronizer();
 
+  SignalProxy *proxy() const;
+  void setProxy(SignalProxy *proxy);
+  
   bool isMyNick(const QString &nick) const;
   bool isMyNick(IrcUser *ircuser) const;
 
@@ -72,11 +73,11 @@ public:
   QString support(const QString &param) const;
   
   IrcUser *newIrcUser(const QString &hostmask);
-  IrcUser *ircUser(const QString &nickname) const;
+  IrcUser *ircUser(QString nickname) const;
   QList<IrcUser *> ircUsers() const;
   
   IrcChannel *newIrcChannel(const QString &channelname);
-  IrcChannel *ircChannel(const QString &channelname);
+  IrcChannel *ircChannel(QString channelname);
   QList<IrcChannel *> ircChannels() const;
 
 public slots:
@@ -88,6 +89,7 @@ public slots:
   void removeSupport(const QString &param);
 
   inline void addIrcUser(const QString &hostmask) { newIrcUser(hostmask); }
+  void removeIrcUser(QString nick);
   
   //init geters
   QVariantMap initSupports() const;
@@ -104,23 +106,26 @@ public slots:
   // these slots are to keep the hashlists of all users and the
   // channel lists up to date
   void ircUserNickChanged(QString newnick);
+  void setInitialized();
 
+private slots:
   void ircUserDestroyed();
   void channelDestroyed();
-
-  void setInitialized();
+  void removeIrcUser(IrcUser *ircuser);
   
 signals:
   void networkNameSet(const QString &networkName);
   void currentServerSet(const QString &currentServer);
   void myNickSet(const QString &mynick);
 
-  void supportAdded(const QString &param, const QString &value = QString());
+  void supportAdded(const QString &param, const QString &value);
   void supportRemoved(const QString &param);
   
   void ircUserAdded(QString hostmask);
   void ircChannelAdded(QString channelname);
 
+  void ircUserRemoved(QString nick);
+  
   void initDone();
   void ircUserInitDone();
   void ircChannelInitDone();
@@ -143,9 +148,9 @@ private:
   //QVariantMap networkSettings;
   //QVariantMap identity;
   
-  QPointer<Synchronizer> _synchronizer;
-  
+  QPointer<SignalProxy> _proxy;
   void determinePrefixes();
+
 };
 
 #endif