This provides GraphicalUi::uiStyle() to access UiStyle from widgets in uisupport.
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) {
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);
QtUi::~QtUi() {
unregisterAllNotificationBackends();
delete _mainWin;
QtUi::~QtUi() {
unregisterAllNotificationBackends();
delete _mainWin;
#include "abstractnotificationbackend.h"
#include "mainwin.h"
#include "abstractnotificationbackend.h"
#include "mainwin.h"
class MainWin;
class MessageModel;
class QtUiMessageProcessor;
class MainWin;
class MessageModel;
class QtUiMessageProcessor;
//! 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
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
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)
{
void GraphicalUi::setToolBarActionProvider(ToolBarActionProvider *provider) {
_toolBarActionProvider = provider;
}
void GraphicalUi::setToolBarActionProvider(ToolBarActionProvider *provider) {
_toolBarActionProvider = provider;
}
+
+void GraphicalUi::setUiStyle(UiStyle *style) {
+ _uiStyle = style;
+}
class ActionCollection;
class ContextMenuActionProvider;
class ToolBarActionProvider;
class ActionCollection;
class ContextMenuActionProvider;
class ToolBarActionProvider;
class GraphicalUi : public AbstractUi {
Q_OBJECT
class GraphicalUi : public AbstractUi {
Q_OBJECT
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
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() {
return _toolBarActionProvider;
}
return _toolBarActionProvider;
}
+UiStyle *GraphicalUi::uiStyle() {
+ return _uiStyle;
+}
+