diff options
author | Thomas Hartmann <thomas.hartmann@qt.io> | 2022-06-22 17:11:51 +0200 |
---|---|---|
committer | Thomas Hartmann <thomas.hartmann@qt.io> | 2022-06-22 15:19:41 +0000 |
commit | 5fa46d665971bc0c7fbd2373400c5f2120ece922 (patch) | |
tree | 444f2c8e26ee287ecffe5edc0cf5928a05aa37fd | |
parent | b63675db6ece28e1a7f896f297724f4ebaf47f2e (diff) | |
download | qt-creator-5fa46d665971bc0c7fbd2373400c5f2120ece922.tar.gz |
QmlDesigner: Add createModelNode without explicit versions
This makes it easier to create properly versioned ModelNodes.
Change-Id: I2a81021daa5e57af6740e447826124f1554a2c78
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
-rw-r--r-- | src/plugins/qmldesigner/designercore/include/abstractview.h | 2 | ||||
-rw-r--r-- | src/plugins/qmldesigner/designercore/model/abstractview.cpp | 7 |
2 files changed, 9 insertions, 0 deletions
diff --git a/src/plugins/qmldesigner/designercore/include/abstractview.h b/src/plugins/qmldesigner/designercore/include/abstractview.h index 2eecf8df5a..6971f5f39e 100644 --- a/src/plugins/qmldesigner/designercore/include/abstractview.h +++ b/src/plugins/qmldesigner/designercore/include/abstractview.h @@ -134,6 +134,8 @@ public: RewriterTransaction beginRewriterTransaction(const QByteArray &identifier); + ModelNode createModelNode(const TypeName &typeName); + ModelNode createModelNode(const TypeName &typeName, int majorVersion, int minorVersion, diff --git a/src/plugins/qmldesigner/designercore/model/abstractview.cpp b/src/plugins/qmldesigner/designercore/model/abstractview.cpp index 6826c9ed4d..e728c61358 100644 --- a/src/plugins/qmldesigner/designercore/model/abstractview.cpp +++ b/src/plugins/qmldesigner/designercore/model/abstractview.cpp @@ -31,6 +31,7 @@ #include "nodeinstanceview.h" #include <qmlstate.h> #include <qmltimeline.h> +#include <nodemetainfo.h> #include <qmldesignerconstants.h> #include <nodelistproperty.h> #include <variantproperty.h> @@ -89,6 +90,12 @@ RewriterTransaction AbstractView::beginRewriterTransaction(const QByteArray &ide return RewriterTransaction(this, identifier); } +ModelNode AbstractView::createModelNode(const TypeName &typeName) +{ + const NodeMetaInfo metaInfo = model()->metaInfo(typeName); + return createModelNode(typeName, metaInfo.majorVersion(), metaInfo.minorVersion()); +} + ModelNode AbstractView::createModelNode(const TypeName &typeName, int majorVersion, int minorVersion, |