diff options
author | Vikas Pachdha <vikas.pachdha@qt.io> | 2020-07-14 11:14:36 +0200 |
---|---|---|
committer | Vikas Pachdha <vikas.pachdha@qt.io> | 2020-07-15 11:02:45 +0000 |
commit | f1d5e56f09cbfbc4520b865adaa14625db055dc3 (patch) | |
tree | de220055a07456b85adc0ba2e41424aaf9143cff | |
parent | 42d0c2b9f402fab26e88f2e404b422a23d75d740 (diff) |
AssetExport: Fix metadata schema
Task-number: QDS-1556
Change-Id: I13aef8af5094cf6a5c3f53f92643fd23492922d8
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
4 files changed, 16 insertions, 9 deletions
diff --git a/src/plugins/qmldesigner/assetexporterplugin/assetexportpluginconstants.h b/src/plugins/qmldesigner/assetexporterplugin/assetexportpluginconstants.h index a1c0e2181c..8702435527 100644 --- a/src/plugins/qmldesigner/assetexporterplugin/assetexportpluginconstants.h +++ b/src/plugins/qmldesigner/assetexporterplugin/assetexportpluginconstants.h @@ -50,7 +50,7 @@ const char YPosTag[] = "y"; const char WidthTag[] = "width"; const char HeightTag[] = "height"; - +const char MetadataTag[] = "metadata"; const char QmlIdTag[] = "qmlId"; const char ExportTypeTag[] = "exportType"; const char QmlPropertiesTag[] = "qmlProperties"; diff --git a/src/plugins/qmldesigner/assetexporterplugin/parsers/assetnodeparser.cpp b/src/plugins/qmldesigner/assetexporterplugin/parsers/assetnodeparser.cpp index a42b730062..adc46678ae 100644 --- a/src/plugins/qmldesigner/assetexporterplugin/parsers/assetnodeparser.cpp +++ b/src/plugins/qmldesigner/assetexporterplugin/parsers/assetnodeparser.cpp @@ -58,7 +58,10 @@ QJsonObject AssetNodeParser::json(Component &component) const Utils::FilePath assetPath = component.exporter().exportAsset(objectNode(), uuid()); QJsonObject assetData; assetData.insert(AssetPathTag, assetPath.toString()); - jsonObject.insert(AssetDataTag, assetData); + + QJsonObject metadata = jsonObject.value(MetadataTag).toObject(); + metadata.insert(AssetDataTag, assetData); + jsonObject.insert(MetadataTag, metadata); return jsonObject; } } diff --git a/src/plugins/qmldesigner/assetexporterplugin/parsers/modelitemnodeparser.cpp b/src/plugins/qmldesigner/assetexporterplugin/parsers/modelitemnodeparser.cpp index 5104732e1c..5a236a366c 100644 --- a/src/plugins/qmldesigner/assetexporterplugin/parsers/modelitemnodeparser.cpp +++ b/src/plugins/qmldesigner/assetexporterplugin/parsers/modelitemnodeparser.cpp @@ -47,10 +47,9 @@ QJsonObject QmlDesigner::ItemNodeParser::json(QmlDesigner::Component &component) Q_UNUSED(component); const QmlObjectNode &qmlObjectNode = objectNode(); QJsonObject jsonObject; - jsonObject.insert(QmlIdTag, qmlObjectNode.id()); - QmlItemNode itemNode = qmlObjectNode.toQmlItemNode(); // Position relative to parent + QmlItemNode itemNode = qmlObjectNode.toQmlItemNode(); QPointF pos = itemNode.instancePosition(); jsonObject.insert(XPosTag, pos.x()); jsonObject.insert(YPosTag, pos.y()); @@ -60,10 +59,13 @@ QJsonObject QmlDesigner::ItemNodeParser::json(QmlDesigner::Component &component) jsonObject.insert(WidthTag, size.width()); jsonObject.insert(HeightTag, size.height()); - jsonObject.insert(UuidTag, uuid()); - jsonObject.insert(ExportTypeTag, "child"); - jsonObject.insert(TypeNameTag, QString::fromLatin1(m_node.type())); + QJsonObject metadata; + metadata.insert(QmlIdTag, qmlObjectNode.id()); + metadata.insert(UuidTag, uuid()); + metadata.insert(ExportTypeTag, "child"); + metadata.insert(TypeNameTag, QString::fromLatin1(m_node.type())); - return jsonObject; + jsonObject.insert(MetadataTag, metadata); + return jsonObject; } } diff --git a/src/plugins/qmldesigner/assetexporterplugin/parsers/textnodeparser.cpp b/src/plugins/qmldesigner/assetexporterplugin/parsers/textnodeparser.cpp index bffe5ed8d5..9b797ad77d 100644 --- a/src/plugins/qmldesigner/assetexporterplugin/parsers/textnodeparser.cpp +++ b/src/plugins/qmldesigner/assetexporterplugin/parsers/textnodeparser.cpp @@ -81,7 +81,9 @@ QJsonObject TextNodeParser::json(Component &component) const textDetails.insert(IsMultilineTag, propertyValue("wrapMode").toString().compare("NoWrap") != 0); - jsonObject.insert(TextDetailsTag, textDetails); + QJsonObject metadata = jsonObject.value(MetadataTag).toObject(); + metadata.insert(TextDetailsTag, textDetails); + jsonObject.insert(MetadataTag, metadata); return jsonObject; } } |