aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Hartmann <thomas.hartmann@qt.io>2022-06-22 17:13:25 +0200
committerThomas Hartmann <thomas.hartmann@qt.io>2022-06-22 16:32:07 +0000
commita0d474f2defd3ac14ae118d5a7e3cc99b5aab9f6 (patch)
tree67503902f5f063cd2dced083661e40c7d994b4dd
parent5fa46d665971bc0c7fbd2373400c5f2120ece922 (diff)
QmlDesigner: Create transitions with proper versions
The versions were hard coded which leads to issues. Task-number: QDS-6760 Change-Id: I94c3599348b996bb700da636cd63e74ea4c02be6 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
-rw-r--r--src/plugins/qmldesigner/components/transitioneditor/transitioneditorview.cpp90
1 files changed, 47 insertions, 43 deletions
diff --git a/src/plugins/qmldesigner/components/transitioneditor/transitioneditorview.cpp b/src/plugins/qmldesigner/components/transitioneditor/transitioneditorview.cpp
index f487cc18fb..14c5eb6e95 100644
--- a/src/plugins/qmldesigner/components/transitioneditor/transitioneditorview.cpp
+++ b/src/plugins/qmldesigner/components/transitioneditor/transitioneditorview.cpp
@@ -251,50 +251,54 @@ ModelNode TransitionEditorView::addNewTransition()
if (!idPropertyList.isEmpty()) {
executeInTransaction(
- " TransitionEditorView::addNewTransition", [&transition, idPropertyList, root, this]() {
- transition = createModelNode("QtQuick.Transition",
- 2,
- 0,
- {{
- "from",
- "*",
- },
- {
- "to",
- "*",
- }});
- transition.setAuxiliaryData("transitionDuration", 2000);
- transition.validId();
- root.nodeListProperty("transitions").reparentHere(transition);
-
- for (auto it = idPropertyList.cbegin(); it != idPropertyList.cend(); ++it) {
- ModelNode parallelAnimation = createModelNode("QtQuick.ParallelAnimation",
- 2,
- 12);
- transition.defaultNodeAbstractProperty().reparentHere(parallelAnimation);
- for (const QString &property : it.value()) {
- ModelNode sequentialAnimation
- = createModelNode("QtQuick.SequentialAnimation", 2, 12);
- parallelAnimation.defaultNodeAbstractProperty().reparentHere(
- sequentialAnimation);
-
- ModelNode pauseAnimation = createModelNode("QtQuick.PauseAnimation",
- 2,
- 12,
- {{"duration", 50}});
- sequentialAnimation.defaultNodeAbstractProperty().reparentHere(
- pauseAnimation);
-
- ModelNode propertyAnimation = createModelNode("QtQuick.PropertyAnimation",
- 2,
- 12,
- {{"property", property},
- {"duration", 150}});
- propertyAnimation.bindingProperty("target").setExpression(it.key());
- sequentialAnimation.defaultNodeAbstractProperty().reparentHere(
- propertyAnimation);
- }
+ " TransitionEditorView::addNewTransition", [&transition, idPropertyList, root, this]() {
+
+ const NodeMetaInfo transitionMetaInfo = model()->metaInfo("QtQuick.Transition");
+ transition = createModelNode("QtQuick.Transition",
+ transitionMetaInfo.majorVersion(),
+ transitionMetaInfo.minorVersion(),
+ {{
+ "from",
+ "*",
+ },
+ {
+ "to",
+ "*",
+ }});
+ transition.setAuxiliaryData("transitionDuration", 2000);
+ transition.validId();
+ root.nodeListProperty("transitions").reparentHere(transition);
+
+ for (auto it = idPropertyList.cbegin(); it != idPropertyList.cend(); ++it) {
+ ModelNode parallelAnimation = createModelNode("QtQuick.ParallelAnimation");
+ transition.defaultNodeAbstractProperty().reparentHere(parallelAnimation);
+ for (const QString &property : it.value()) {
+ ModelNode sequentialAnimation
+ = createModelNode("QtQuick.SequentialAnimation");
+ parallelAnimation.defaultNodeAbstractProperty().reparentHere(
+ sequentialAnimation);
+
+ const NodeMetaInfo pauseMetaInfo = model()->metaInfo("QtQuick.PauseAnimation");
+
+ ModelNode pauseAnimation = createModelNode("QtQuick.PauseAnimation",
+ pauseMetaInfo.majorVersion(),
+ pauseMetaInfo.minorVersion(),
+ {{"duration", 50}});
+ sequentialAnimation.defaultNodeAbstractProperty().reparentHere(
+ pauseAnimation);
+
+ const NodeMetaInfo propertyMetaInfo = model()->metaInfo("QtQuick.PauseAnimation");
+
+ ModelNode propertyAnimation = createModelNode("QtQuick.PropertyAnimation",
+ propertyMetaInfo.majorVersion(),
+ propertyMetaInfo.minorVersion(),
+ {{"property", property},
+ {"duration", 150}});
+ propertyAnimation.bindingProperty("target").setExpression(it.key());
+ sequentialAnimation.defaultNodeAbstractProperty().reparentHere(
+ propertyAnimation);
}
+ }
});
} else {
QString properties;