QmlDesigner: Force node list property

We assume a list property if forceNonDefaultProperty is set.

Change-Id: Iabfe4753dc9af17e0504cb94170597c3b2f3c47b
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This commit is contained in:
Thomas Hartmann
2020-04-08 19:20:26 +02:00
parent 72cd449f80
commit e75a1ea601

View File

@@ -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;
}