QmlDesigner: Make the IconProvider available anywhere

Now the IconProvider can be used in the property editor.

Change-Id: Iaaa2674e7dc0955d91f7699090340c4646e723a0
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This commit is contained in:
Thomas Hartmann
2016-07-13 16:01:12 +02:00
committed by Alessandro Portale
parent cdcdde4dc1
commit bb162b5a77
9 changed files with 23 additions and 13 deletions

View File

@@ -13,6 +13,7 @@ SOURCES += selectioncontext.cpp
SOURCES += designeractionmanager.cpp
SOURCES += modelnodeoperations.cpp
SOURCES += crumblebar.cpp
SOURCES += qmldesignericonprovider.cpp
HEADERS += modelnodecontextmenu.h
HEADERS += theming.h
@@ -29,6 +30,7 @@ HEADERS += designeractionmanager.h
HEADERS += modelnodeoperations.h
HEADERS += actioninterface.h
HEADERS += crumblebar.h
HEADERS += qmldesignericonprovider.h
FORMS += \
$$PWD/addsignalhandlerdialog.ui

View File

@@ -23,19 +23,19 @@
**
****************************************************************************/
#include "stateseditoriconprovider.h"
#include "qmldesignericonprovider.h"
#include <coreplugin/coreicons.h>
namespace QmlDesigner {
StatesEditorIconProvider::StatesEditorIconProvider()
QmlDesignerIconProvider::QmlDesignerIconProvider()
: QQuickImageProvider(Pixmap)
{
}
QPixmap StatesEditorIconProvider::requestPixmap(const QString &id, QSize *size, const QSize &requestedSize)
QPixmap QmlDesignerIconProvider::requestPixmap(const QString &id, QSize *size, const QSize &requestedSize)
{
Q_UNUSED(requestedSize)

View File

@@ -29,10 +29,10 @@
namespace QmlDesigner {
class StatesEditorIconProvider : public QQuickImageProvider
class QmlDesignerIconProvider : public QQuickImageProvider
{
public:
StatesEditorIconProvider();
QmlDesignerIconProvider();
QPixmap requestPixmap(const QString &id, QSize *size, const QSize &requestedSize) override;
};

View File

@@ -24,6 +24,7 @@
****************************************************************************/
#include "theming.h"
#include "qmldesignericonprovider.h"
#include <utils/theme/theme.h>
@@ -87,4 +88,9 @@ QString Theming::replaceCssColors(const QString &input)
}
void Theming::registerIconProvider(QQmlEngine *engine)
{
engine->addImageProvider(QLatin1String("icons"), new QmlDesignerIconProvider());
}
} // namespace QmlDesigner

View File

@@ -25,6 +25,7 @@
#pragma once
#include <QQmlEngine>
#include <QQmlPropertyMap>
namespace QmlDesigner {
@@ -34,6 +35,7 @@ class Theming
public:
static void insertTheme(QQmlPropertyMap *map);
static QString replaceCssColors(const QString &input);
static void registerIconProvider(QQmlEngine *engine);
};
} // namespace QmlDesigner

View File

@@ -29,6 +29,7 @@
#include "fileresourcesmodel.h"
#include "gradientmodel.h"
#include "qmlanchorbindingproxy.h"
#include "theming.h"
namespace QmlDesigner {
@@ -36,6 +37,7 @@ Quick2PropertyEditorView::Quick2PropertyEditorView(QWidget *parent) :
QQuickWidget(parent)
{
setResizeMode(QQuickWidget::SizeRootObjectToView);
Theming::registerIconProvider(engine());
}
void Quick2PropertyEditorView::registerQmlTypes()

View File

@@ -5,10 +5,9 @@ VPATH += $$PWD
SOURCES += stateseditorwidget.cpp \
stateseditormodel.cpp \
stateseditorview.cpp \
stateseditorimageprovider.cpp \
stateeditorsiconprovider.cpp
stateseditorimageprovider.cpp
HEADERS += stateseditorwidget.h \
stateseditormodel.h \
stateseditorview.h \
stateseditorimageprovider.h \
stateseditoriconprovider.h
stateseditorimageprovider.h

View File

@@ -27,7 +27,6 @@
#include "stateseditormodel.h"
#include "stateseditorview.h"
#include "stateseditorimageprovider.h"
#include "stateseditoriconprovider.h"
#include <theming.h>
@@ -104,7 +103,7 @@ StatesEditorWidget::StatesEditorWidget(StatesEditorView *statesEditorView, State
Theming::insertTheme(&m_themeProperties);
rootContext()->setContextProperty(QLatin1String("creatorTheme"), &m_themeProperties);
engine()->addImageProvider(QLatin1String("icons"), new StatesEditorIconProvider());
Theming::registerIconProvider(engine());
setWindowTitle(tr("States", "Title of Editor widget"));

View File

@@ -391,6 +391,8 @@ Project {
"componentcore/modelnodeoperations.h",
"componentcore/selectioncontext.cpp",
"componentcore/selectioncontext.h",
"componentcore/qmldesignericonprovider.cpp",
"componentcore/qmldesignericonprovider.h",
"debugview/debugview.cpp",
"debugview/debugview.h",
"debugview/debugviewwidget.cpp",
@@ -557,8 +559,6 @@ Project {
"resources/resources.qrc",
"stateseditor/stateseditorimageprovider.cpp",
"stateseditor/stateseditorimageprovider.h",
"stateseditor/stateeditorsiconprovider.cpp",
"stateseditor/stateseditoriconprovider.h",
"stateseditor/stateseditormodel.cpp",
"stateseditor/stateseditormodel.h",
"stateseditor/stateseditorview.cpp",