Periodically save all settings of a coresession
[quassel.git] / src / core / coresession.h
index 48d83f8..997d1f5 100644 (file)
@@ -26,6 +26,7 @@
 
 #include "corecoreinfo.h"
 #include "corealiasmanager.h"
+#include "coreignorelistmanager.h"
 #include "message.h"
 #include "storage.h"
 
@@ -33,6 +34,7 @@ class CoreBacklogManager;
 class CoreBufferSyncer;
 class CoreBufferViewManager;
 class CoreIrcListHelper;
+class CoreNetworkConfig;
 class Identity;
 class CoreIdentity;
 class NetworkConnection;
@@ -52,8 +54,9 @@ public:
   QList<BufferInfo> buffers() const;
   inline UserId user() const { return _user; }
   CoreNetwork *network(NetworkId) const;
-  NetworkConnection *networkConnection(NetworkId) const;
   CoreIdentity *identity(IdentityId) const;
+  inline CoreNetworkConfig *networkConfig() const { return _networkConfig; }
+  NetworkConnection *networkConnection(NetworkId) const;
 
   QVariant sessionState();
 
@@ -67,7 +70,6 @@ public:
 //   void attachNetworkConnection(NetworkConnection *conn);
 
   //! Return necessary data for restoring the session after restarting the core
-  void saveSessionState() const;
   void restoreSessionState();
 
 public slots:
@@ -146,6 +148,8 @@ private slots:
 
   void updateIdentityBySender();
 
+  void saveSessionState() const;
+
 protected:
   virtual void customEvent(QEvent *event);
 
@@ -167,6 +171,7 @@ private:
   CoreBacklogManager *_backlogManager;
   CoreBufferViewManager *_bufferViewManager;
   CoreIrcListHelper *_ircListHelper;
+  CoreNetworkConfig *_networkConfig;
   CoreCoreInfo _coreInfo;
 
   QScriptEngine *scriptEngine;
@@ -184,6 +189,7 @@ private:
   };
   QList<RawMessage> _messageQueue;
   bool _processMessages;
+  CoreIgnoreListManager _ignoreListManager;
 };
 
 #endif