The BufferSyncer cache is now purged when an unknown bufferId is encountered.
[quassel.git] / src / client / client.h
index 2c65e1e..2babb11 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  *
@@ -45,7 +45,7 @@ class BufferSyncer;
 class ClientBacklogManager;
 class ClientIrcListHelper;
 class ClientSyncer;
-class BufferViewManager;
+class ClientBufferViewManager;
 class IrcUser;
 class IrcChannel;
 class SignalProxy;
@@ -90,7 +90,7 @@ public:
    */
   static void removeIdentity(IdentityId id);
 
-  static void createNetwork(const NetworkInfo &info);
+  static void createNetwork(const NetworkInfo &info, const QStringList &persistentChannels = QStringList());
   static void updateNetwork(const NetworkInfo &info);
   static void removeNetwork(NetworkId id);
 
@@ -102,7 +102,7 @@ public:
 
   static inline ClientBacklogManager *backlogManager() { return instance()->_backlogManager; }
   static inline ClientIrcListHelper *ircListHelper() { return instance()->_ircListHelper; }
-  static inline BufferViewManager *bufferViewManager() { return instance()->_bufferViewManager; }
+  static inline ClientBufferViewManager *bufferViewManager() { return instance()->_bufferViewManager; }
 
   static AccountId currentCoreAccount();
 
@@ -116,6 +116,7 @@ public:
   static void removeBuffer(BufferId id);
   static void renameBuffer(BufferId bufferId, const QString &newName);
   static void mergeBuffersPermanently(BufferId bufferId1, BufferId bufferId2);
+  static void purgeKnownBufferIds();
 
   static void logMessage(QtMsgType type, const char *msg);
   static inline const QString &debugLog() { return instance()->_debugLogBuffer; }
@@ -129,7 +130,6 @@ signals:
   void showConfigWizard(const QVariantMap &coredata);
 
   void connected();
-  void securedConnection();
   void disconnected();
   void coreConnectionStateChanged(bool);
 
@@ -154,7 +154,7 @@ signals:
   void networkCreated(NetworkId id);
   void networkRemoved(NetworkId id);
 
-  void requestCreateNetwork(const NetworkInfo &info);
+  void requestCreateNetwork(const NetworkInfo &info, const QStringList &persistentChannels = QStringList());
   void requestRemoveNetwork(NetworkId);
 
   void newClientSyncer(ClientSyncer *);
@@ -185,9 +185,7 @@ private slots:
   void setConnectedToCore(AccountId id, QIODevice *socket = 0);
   void setSyncedToCore();
   void requestInitialBacklog();
-  void createDefautBufferView();
-  void setSecuredConnection();
-
+  void createDefaultBufferView();
 
 private:
   Client(QObject *parent = 0);
@@ -206,7 +204,7 @@ private:
   BufferModel * _bufferModel;
   BufferSyncer * _bufferSyncer;
   ClientBacklogManager *_backlogManager;
-  BufferViewManager *_bufferViewManager;
+  ClientBufferViewManager *_bufferViewManager;
   ClientIrcListHelper *_ircListHelper;
 
   MessageModel *_messageModel;