Make UiStyle accessible from the uisupport module
authorManuel Nickschas <sputnick@quassel-irc.org>
Mon, 3 Aug 2009 17:32:29 +0000 (19:32 +0200)
committerManuel Nickschas <sputnick@quassel-irc.org>
Thu, 6 Aug 2009 18:25:58 +0000 (20:25 +0200)
This provides GraphicalUi::uiStyle() to access UiStyle from widgets in uisupport.

src/qtui/qtui.cpp
src/qtui/qtui.h
src/uisupport/graphicalui.cpp
src/uisupport/graphicalui.h

index 2297321..7be5bd4 100644 (file)
@@ -40,7 +40,6 @@ QPointer<QtUi> QtUi::_instance = 0;
 QPointer<MainWin> QtUi::_mainWin = 0;
 QList<AbstractNotificationBackend *> QtUi::_notificationBackends;
 QList<AbstractNotificationBackend::Notification> QtUi::_notifications;
 QPointer<MainWin> QtUi::_mainWin = 0;
 QList<AbstractNotificationBackend *> QtUi::_notificationBackends;
 QList<AbstractNotificationBackend::Notification> QtUi::_notifications;
-QtUiStyle *QtUi::_style = 0;
 
 QtUi::QtUi() : GraphicalUi() {
   if(_instance != 0) {
 
 QtUi::QtUi() : GraphicalUi() {
   if(_instance != 0) {
@@ -55,7 +54,7 @@ QtUi::QtUi() : GraphicalUi() {
   QtUiSettings uiSettings;
   Quassel::loadTranslation(uiSettings.value("Locale", QLocale::system()).value<QLocale>());
 
   QtUiSettings uiSettings;
   Quassel::loadTranslation(uiSettings.value("Locale", QLocale::system()).value<QLocale>());
 
-  _style = new QtUiStyle;
+  setUiStyle(new QtUiStyle(this));
   _mainWin = new MainWin();
 
   setMainWidget(_mainWin);
   _mainWin = new MainWin();
 
   setMainWidget(_mainWin);
@@ -67,7 +66,6 @@ QtUi::QtUi() : GraphicalUi() {
 QtUi::~QtUi() {
   unregisterAllNotificationBackends();
   delete _mainWin;
 QtUi::~QtUi() {
   unregisterAllNotificationBackends();
   delete _mainWin;
-  delete _style;
 }
 
 void QtUi::init() {
 }
 
 void QtUi::init() {
index 7ef22e0..8b223af 100644 (file)
 
 #include "abstractnotificationbackend.h"
 #include "mainwin.h"
 
 #include "abstractnotificationbackend.h"
 #include "mainwin.h"
+#include "qtuistyle.h"
 
 class MainWin;
 class MessageModel;
 class QtUiMessageProcessor;
 
 class MainWin;
 class MessageModel;
 class QtUiMessageProcessor;
-class QtUiStyle;
 
 //! This class encapsulates Quassel's Qt-based GUI.
 /** This is basically a wrapper around MainWin, which is necessary because we cannot derive MainWin
 
 //! This class encapsulates Quassel's Qt-based GUI.
 /** This is basically a wrapper around MainWin, which is necessary because we cannot derive MainWin
@@ -71,13 +71,12 @@ protected slots:
 private:
   static QPointer<QtUi> _instance;
   static QPointer<MainWin> _mainWin;
 private:
   static QPointer<QtUi> _instance;
   static QPointer<MainWin> _mainWin;
-  static QtUiStyle *_style;
   static QList<AbstractNotificationBackend *> _notificationBackends;
   static QList<AbstractNotificationBackend::Notification> _notifications;
 };
 
 QtUi *QtUi::instance() { return _instance ? _instance.data() : new QtUi(); }
   static QList<AbstractNotificationBackend *> _notificationBackends;
   static QList<AbstractNotificationBackend::Notification> _notifications;
 };
 
 QtUi *QtUi::instance() { return _instance ? _instance.data() : new QtUi(); }
-QtUiStyle *QtUi::style() { return _style; }
+QtUiStyle *QtUi::style() { return qobject_cast<QtUiStyle*>(uiStyle()); }
 MainWin *QtUi::mainWindow() { return _mainWin; }
 
 #endif
 MainWin *QtUi::mainWindow() { return _mainWin; }
 
 #endif
index abd8cd1..53042b8 100644 (file)
@@ -27,6 +27,7 @@ QWidget *GraphicalUi::_mainWidget = 0;
 QHash<QString, ActionCollection *> GraphicalUi::_actionCollections;
 ContextMenuActionProvider *GraphicalUi::_contextMenuActionProvider = 0;
 ToolBarActionProvider *GraphicalUi::_toolBarActionProvider = 0;
 QHash<QString, ActionCollection *> GraphicalUi::_actionCollections;
 ContextMenuActionProvider *GraphicalUi::_contextMenuActionProvider = 0;
 ToolBarActionProvider *GraphicalUi::_toolBarActionProvider = 0;
+UiStyle *GraphicalUi::_uiStyle = 0;
 
 GraphicalUi::GraphicalUi(QObject *parent) : AbstractUi(parent)
 {
 
 GraphicalUi::GraphicalUi(QObject *parent) : AbstractUi(parent)
 {
@@ -54,3 +55,7 @@ void GraphicalUi::setContextMenuActionProvider(ContextMenuActionProvider *provid
 void GraphicalUi::setToolBarActionProvider(ToolBarActionProvider *provider) {
   _toolBarActionProvider = provider;
 }
 void GraphicalUi::setToolBarActionProvider(ToolBarActionProvider *provider) {
   _toolBarActionProvider = provider;
 }
+
+void GraphicalUi::setUiStyle(UiStyle *style) {
+  _uiStyle = style;
+}
index 392075e..f1fef7b 100644 (file)
@@ -26,6 +26,7 @@
 class ActionCollection;
 class ContextMenuActionProvider;
 class ToolBarActionProvider;
 class ActionCollection;
 class ContextMenuActionProvider;
 class ToolBarActionProvider;
+class UiStyle;
 
 class GraphicalUi : public AbstractUi {
   Q_OBJECT
 
 class GraphicalUi : public AbstractUi {
   Q_OBJECT
@@ -43,6 +44,7 @@ public:
 
   inline static ContextMenuActionProvider *contextMenuActionProvider();
   inline static ToolBarActionProvider *toolBarActionProvider();
 
   inline static ContextMenuActionProvider *contextMenuActionProvider();
   inline static ToolBarActionProvider *toolBarActionProvider();
+  inline static UiStyle *uiStyle();
 
 protected:
   //! This is the widget we associate global actions with, typically the main window
 
 protected:
   //! This is the widget we associate global actions with, typically the main window
@@ -50,13 +52,14 @@ protected:
 
   void setContextMenuActionProvider(ContextMenuActionProvider *);
   void setToolBarActionProvider(ToolBarActionProvider *);
 
   void setContextMenuActionProvider(ContextMenuActionProvider *);
   void setToolBarActionProvider(ToolBarActionProvider *);
+  void setUiStyle(UiStyle *);
 
 private:
   static QWidget *_mainWidget;
   static QHash<QString, ActionCollection *> _actionCollections;
   static ContextMenuActionProvider *_contextMenuActionProvider;
   static ToolBarActionProvider *_toolBarActionProvider;
 
 private:
   static QWidget *_mainWidget;
   static QHash<QString, ActionCollection *> _actionCollections;
   static ContextMenuActionProvider *_contextMenuActionProvider;
   static ToolBarActionProvider *_toolBarActionProvider;
-
+  static UiStyle *_uiStyle;
 };
 
 ContextMenuActionProvider *GraphicalUi::contextMenuActionProvider() {
 };
 
 ContextMenuActionProvider *GraphicalUi::contextMenuActionProvider() {
@@ -67,4 +70,8 @@ ToolBarActionProvider *GraphicalUi::toolBarActionProvider() {
   return _toolBarActionProvider;
 }
 
   return _toolBarActionProvider;
 }
 
+UiStyle *GraphicalUi::uiStyle() {
+  return _uiStyle;
+}
+
 #endif
 #endif