forked from qt-creator/qt-creator
QmlDesigner: Make connection generation a bit more robust
* Do not hardcode the typename * Handle types without defailt property/non visual nodes Change-Id: I0db0173f7ec645dc42cdf52824fdc5ba1389bb13 Reviewed-by: Aleksei German <aleksei.german@qt.io>
This commit is contained in:
@@ -587,10 +587,15 @@ QList<SlotList> getSlotsLists(const ModelNode &node)
|
||||
ModelNode createNewConnection(ModelNode targetNode)
|
||||
{
|
||||
NodeMetaInfo connectionsMetaInfo = targetNode.view()->model()->qtQuickConnectionsMetaInfo();
|
||||
ModelNode newConnectionNode = targetNode.view()->createModelNode(
|
||||
"QtQuick.Connections", connectionsMetaInfo.majorVersion(), connectionsMetaInfo.minorVersion());
|
||||
if (QmlItemNode::isValidQmlItemNode(targetNode))
|
||||
ModelNode newConnectionNode = targetNode.view()->createModelNode(connectionsMetaInfo.typeName(),
|
||||
connectionsMetaInfo.majorVersion(),
|
||||
connectionsMetaInfo.minorVersion());
|
||||
if (QmlItemNode::isValidQmlItemNode(targetNode)) {
|
||||
targetNode.nodeAbstractProperty("data").reparentHere(newConnectionNode);
|
||||
} else {
|
||||
targetNode.view()->rootModelNode().defaultNodeAbstractProperty().reparentHere(
|
||||
newConnectionNode);
|
||||
}
|
||||
|
||||
newConnectionNode.bindingProperty("target").setExpression(targetNode.id());
|
||||
|
||||
|
Reference in New Issue
Block a user