moving the bufferoverlay to some static place -> the client singleton
authorMarcus Eggenberger <egs@quassel-irc.org>
Mon, 16 Mar 2009 23:17:29 +0000 (00:17 +0100)
committerMarcus Eggenberger <egs@quassel-irc.org>
Mon, 16 Mar 2009 23:17:29 +0000 (00:17 +0100)
src/client/client.cpp
src/client/client.h
src/client/clientbufferviewmanager.cpp
src/client/clientbufferviewmanager.h
src/qtui/mainwin.cpp

index d90e7eb..e6387f1 100644 (file)
@@ -27,6 +27,7 @@
 #include "buffersettings.h"
 #include "buffersyncer.h"
 #include "bufferviewconfig.h"
 #include "buffersettings.h"
 #include "buffersyncer.h"
 #include "bufferviewconfig.h"
+#include "bufferviewoverlay.h"
 #include "clientbacklogmanager.h"
 #include "clientbufferviewmanager.h"
 #include "clientirclisthelper.h"
 #include "clientbacklogmanager.h"
 #include "clientbufferviewmanager.h"
 #include "clientirclisthelper.h"
@@ -78,6 +79,7 @@ Client::Client(QObject *parent)
     _bufferSyncer(0),
     _backlogManager(new ClientBacklogManager(this)),
     _bufferViewManager(0),
     _bufferSyncer(0),
     _backlogManager(new ClientBacklogManager(this)),
     _bufferViewManager(0),
+    _bufferViewOverlay(new BufferViewOverlay(this)),
     _ircListHelper(new ClientIrcListHelper(this)),
     _inputHandler(new ClientUserInputHandler(this)),
     _messageModel(0),
     _ircListHelper(new ClientIrcListHelper(this)),
     _inputHandler(new ClientUserInputHandler(this)),
     _messageModel(0),
index 3dd5b6a..dec806c 100644 (file)
@@ -42,6 +42,7 @@ class AbstractUiMsg;
 class NetworkModel;
 class BufferModel;
 class BufferSyncer;
 class NetworkModel;
 class BufferModel;
 class BufferSyncer;
+class BufferViewOverlay;
 class ClientBacklogManager;
 class ClientBufferViewManager;
 class ClientIrcListHelper;
 class ClientBacklogManager;
 class ClientBufferViewManager;
 class ClientIrcListHelper;
@@ -104,6 +105,7 @@ public:
   static inline ClientBacklogManager *backlogManager() { return instance()->_backlogManager; }
   static inline ClientIrcListHelper *ircListHelper() { return instance()->_ircListHelper; }
   static inline ClientBufferViewManager *bufferViewManager() { return instance()->_bufferViewManager; }
   static inline ClientBacklogManager *backlogManager() { return instance()->_backlogManager; }
   static inline ClientIrcListHelper *ircListHelper() { return instance()->_ircListHelper; }
   static inline ClientBufferViewManager *bufferViewManager() { return instance()->_bufferViewManager; }
+  static inline BufferViewOverlay *bufferViewOverlay() { return instance()->_bufferViewOverlay; }
   static inline ClientUserInputHandler *inputHandler() { return instance()->_inputHandler; }
 
   static AccountId currentCoreAccount();
   static inline ClientUserInputHandler *inputHandler() { return instance()->_inputHandler; }
 
   static AccountId currentCoreAccount();
@@ -204,6 +206,7 @@ private:
   BufferSyncer * _bufferSyncer;
   ClientBacklogManager *_backlogManager;
   ClientBufferViewManager *_bufferViewManager;
   BufferSyncer * _bufferSyncer;
   ClientBacklogManager *_backlogManager;
   ClientBufferViewManager *_bufferViewManager;
+  BufferViewOverlay *_bufferViewOverlay;
   ClientIrcListHelper *_ircListHelper;
   ClientUserInputHandler *_inputHandler;
 
   ClientIrcListHelper *_ircListHelper;
   ClientUserInputHandler *_inputHandler;
 
index a32f186..6682caa 100644 (file)
@@ -24,8 +24,7 @@
 #include "clientbufferviewconfig.h"
 
 ClientBufferViewManager::ClientBufferViewManager(SignalProxy *proxy, QObject *parent)
 #include "clientbufferviewconfig.h"
 
 ClientBufferViewManager::ClientBufferViewManager(SignalProxy *proxy, QObject *parent)
-  : BufferViewManager(proxy, parent),
-    _bufferViewOverlay(new BufferViewOverlay(this))
+  : BufferViewManager(proxy, parent)
 {
 }
 
 {
 }
 
index f9a6c53..f190362 100644 (file)
@@ -35,13 +35,8 @@ public:
   QList<ClientBufferViewConfig *> clientBufferViewConfigs() const;
   ClientBufferViewConfig *clientBufferViewConfig(int bufferViewId) const;
 
   QList<ClientBufferViewConfig *> clientBufferViewConfigs() const;
   ClientBufferViewConfig *clientBufferViewConfig(int bufferViewId) const;
 
-  inline BufferViewOverlay *bufferViewOverlay() const { return _bufferViewOverlay; }
-
 protected:
   virtual BufferViewConfig *bufferViewConfigFactory(int bufferViewConfigId);
 protected:
   virtual BufferViewConfig *bufferViewConfigFactory(int bufferViewConfigId);
-
-private:
-  BufferViewOverlay *_bufferViewOverlay;
 };
 
 #endif //CLIENTBUFFERVIEWMANAGER_H
 };
 
 #endif //CLIENTBUFFERVIEWMANAGER_H
index 9769de7..c798115 100644 (file)
@@ -382,9 +382,9 @@ void MainWin::bufferViewToggled(bool enabled) {
   BufferViewDock *dock = qobject_cast<BufferViewDock *>(action->parent());
   Q_ASSERT(dock);
   if(enabled) {
   BufferViewDock *dock = qobject_cast<BufferViewDock *>(action->parent());
   Q_ASSERT(dock);
   if(enabled) {
-    Client::bufferViewManager()->bufferViewOverlay()->addView(dock->bufferViewId());
+    Client::bufferViewOverlay()->addView(dock->bufferViewId());
   } else {
   } else {
-    Client::bufferViewManager()->bufferViewOverlay()->removeView(dock->bufferViewId());
+    Client::bufferViewOverlay()->removeView(dock->bufferViewId());
   }
 }
 
   }
 }
 
@@ -919,7 +919,7 @@ void MainWin::on_actionDebugBufferViewOverlay_triggered() {
   QTreeView *view = new QTreeView;
   view->setAttribute(Qt::WA_DeleteOnClose);
   view->setWindowTitle("Debug BufferViewOverlay View");
   QTreeView *view = new QTreeView;
   view->setAttribute(Qt::WA_DeleteOnClose);
   view->setWindowTitle("Debug BufferViewOverlay View");
-  BufferViewOverlayFilter *filter = new BufferViewOverlayFilter(Client::bufferModel(), Client::bufferViewManager()->bufferViewOverlay());
+  BufferViewOverlayFilter *filter = new BufferViewOverlayFilter(Client::bufferModel(), Client::bufferViewOverlay());
   filter->setParent(view);
   view->setModel(filter);
   view->setColumnWidth(0, 250);
   filter->setParent(view);
   view->setModel(filter);
   view->setColumnWidth(0, 250);