From f7d71a43c816f5b27fd56654ad943f712e7b08ab Mon Sep 17 00:00:00 2001 From: Thomas Hartmann <Thomas.Hartmann@digia.com> Date: Wed, 10 Apr 2013 10:15:58 +0200 Subject: [PATCH] QmlDesigner.ItemLibrary: crash fix for resources Dragging in Images from the resources tab was broken. Creating an Image has to work with QtQuick 1.0 and QtQuick 2.0. Change-Id: I60702a94ec5fc53805513775f5517c30f9e1b7cd Reviewed-by: Marco Bubke <marco.bubke@digia.com> --- .../qmldesigner/designercore/model/qmlmodelview.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/plugins/qmldesigner/designercore/model/qmlmodelview.cpp b/src/plugins/qmldesigner/designercore/model/qmlmodelview.cpp index 0b41ad18eeb..1b438b2dfa5 100644 --- a/src/plugins/qmldesigner/designercore/model/qmlmodelview.cpp +++ b/src/plugins/qmldesigner/designercore/model/qmlmodelview.cpp @@ -124,7 +124,7 @@ QmlItemNode QmlModelView::createQmlItemNodeFromImage(const QString &imageName, c } } - if (!model()->imports().contains(newImport)) + if (!model()->hasImport(newImport, true, true)) model()->changeImports(QList<Import>() << newImport, QList<Import>()); QList<QPair<PropertyName, QVariant> > propertyPairList; @@ -140,8 +140,13 @@ QmlItemNode QmlModelView::createQmlItemNodeFromImage(const QString &imageName, c } propertyPairList.append(qMakePair(PropertyName("source"), QVariant(relativeImageName))); - newNode = createQmlItemNode("QtQuick.Image", -1, -1, propertyPairList); - parentNode.nodeAbstractProperty("data").reparentHere(newNode); + NodeMetaInfo metaInfo = model()->metaInfo("QtQuick.Image"); + if (metaInfo.isValid()) { + int minorVersion = metaInfo.minorVersion(); + int majorVersion = metaInfo.majorVersion(); + newNode = createQmlItemNode("QtQuick.Image", majorVersion, minorVersion, propertyPairList); + parentNode.nodeAbstractProperty("data").reparentHere(newNode); + } Q_ASSERT(newNode.isValid()); -- GitLab