From e75a1ea601b413749084320c103548e804abe06f Mon Sep 17 00:00:00 2001 From: Thomas Hartmann Date: Wed, 8 Apr 2020 19:20:26 +0200 Subject: [PATCH] QmlDesigner: Force node list property We assume a list property if forceNonDefaultProperty is set. Change-Id: Iabfe4753dc9af17e0504cb94170597c3b2f3c47b Reviewed-by: Tim Jenssen --- .../qmldesigner/designercore/model/qmlvisualnode.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/plugins/qmldesigner/designercore/model/qmlvisualnode.cpp b/src/plugins/qmldesigner/designercore/model/qmlvisualnode.cpp index ae9c640b380..3fa41cb1ad4 100644 --- a/src/plugins/qmldesigner/designercore/model/qmlvisualnode.cpp +++ b/src/plugins/qmldesigner/designercore/model/qmlvisualnode.cpp @@ -212,12 +212,15 @@ QmlObjectNode QmlVisualNode::createQmlObjectNode(AbstractView *view, NodeHints hints = NodeHints::fromItemLibraryEntry(itemLibraryEntry); const PropertyName forceNonDefaultProperty = hints.forceNonDefaultProperty().toUtf8(); + + QmlObjectNode newNode = QmlItemNode::createQmlObjectNode(view, itemLibraryEntry, position, parentProperty); + if (!forceNonDefaultProperty.isEmpty()) { if (parentQmlItemNode.modelNode().metaInfo().hasProperty(forceNonDefaultProperty)) - parentProperty = parentQmlItemNode.nodeAbstractProperty(forceNonDefaultProperty); + parentQmlItemNode.nodeListProperty(forceNonDefaultProperty).reparentHere(newNode); } - return QmlItemNode::createQmlObjectNode(view, itemLibraryEntry, position, parentProperty); + return newNode; }