From 7076272bf5f0555a4badd8a7bcbb048c07ae6b34 Mon Sep 17 00:00:00 2001 From: Thomas Hartmann Date: Fri, 19 Apr 2013 19:42:25 +0200 Subject: [PATCH] QmlDesigner.Instances: fix delemiting of type names Import are delemited with a "." and there is a "/" between import and type. e.g.: QtQuick.Layout/QQuickLayout Change-Id: I7750b333296cceef99992610cca126530f777777 Reviewed-by: Marco Bubke --- .../qml/qmlpuppet/container/instancecontainer.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/share/qtcreator/qml/qmlpuppet/container/instancecontainer.cpp b/share/qtcreator/qml/qmlpuppet/container/instancecontainer.cpp index efb173e817a..359529fa4c2 100644 --- a/share/qtcreator/qml/qmlpuppet/container/instancecontainer.cpp +++ b/share/qtcreator/qml/qmlpuppet/container/instancecontainer.cpp @@ -33,16 +33,25 @@ namespace QmlDesigner { +static TypeName properDelemitingOfType(const TypeName &typeName) +{ + TypeName convertedTypeName = typeName; + int lastIndex = typeName.lastIndexOf('.'); + if (lastIndex > 0) + convertedTypeName[lastIndex] = '/'; + + return convertedTypeName; +} + InstanceContainer::InstanceContainer() : m_instanceId(-1), m_majorNumber(-1), m_minorNumber(-1) { } InstanceContainer::InstanceContainer(qint32 instanceId, const TypeName &type, int majorNumber, int minorNumber, const QString &componentPath, const QString &nodeSource, NodeSourceType nodeSourceType, NodeMetaType metaType) - : m_instanceId(instanceId), m_type(type), m_majorNumber(majorNumber), m_minorNumber(minorNumber), m_componentPath(componentPath), + : m_instanceId(instanceId), m_type(properDelemitingOfType(type)), m_majorNumber(majorNumber), m_minorNumber(minorNumber), m_componentPath(componentPath), m_nodeSource(nodeSource), m_nodeSourceType(nodeSourceType), m_metaType(metaType) { - m_type.replace('.', '/'); } qint32 InstanceContainer::instanceId() const