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>
This commit is contained in:
Thomas Hartmann
2022-06-22 17:13:25 +02:00
parent 5fa46d6659
commit a0d474f2de

View File

@@ -252,9 +252,11 @@ ModelNode TransitionEditorView::addNewTransition()
if (!idPropertyList.isEmpty()) {
executeInTransaction(
" TransitionEditorView::addNewTransition", [&transition, idPropertyList, root, this]() {
const NodeMetaInfo transitionMetaInfo = model()->metaInfo("QtQuick.Transition");
transition = createModelNode("QtQuick.Transition",
2,
0,
transitionMetaInfo.majorVersion(),
transitionMetaInfo.minorVersion(),
{{
"from",
"*",
@@ -268,26 +270,28 @@ ModelNode TransitionEditorView::addNewTransition()
root.nodeListProperty("transitions").reparentHere(transition);
for (auto it = idPropertyList.cbegin(); it != idPropertyList.cend(); ++it) {
ModelNode parallelAnimation = createModelNode("QtQuick.ParallelAnimation",
2,
12);
ModelNode parallelAnimation = createModelNode("QtQuick.ParallelAnimation");
transition.defaultNodeAbstractProperty().reparentHere(parallelAnimation);
for (const QString &property : it.value()) {
ModelNode sequentialAnimation
= createModelNode("QtQuick.SequentialAnimation", 2, 12);
= createModelNode("QtQuick.SequentialAnimation");
parallelAnimation.defaultNodeAbstractProperty().reparentHere(
sequentialAnimation);
const NodeMetaInfo pauseMetaInfo = model()->metaInfo("QtQuick.PauseAnimation");
ModelNode pauseAnimation = createModelNode("QtQuick.PauseAnimation",
2,
12,
pauseMetaInfo.majorVersion(),
pauseMetaInfo.minorVersion(),
{{"duration", 50}});
sequentialAnimation.defaultNodeAbstractProperty().reparentHere(
pauseAnimation);
const NodeMetaInfo propertyMetaInfo = model()->metaInfo("QtQuick.PauseAnimation");
ModelNode propertyAnimation = createModelNode("QtQuick.PropertyAnimation",
2,
12,
propertyMetaInfo.majorVersion(),
propertyMetaInfo.minorVersion(),
{{"property", property},
{"duration", 150}});
propertyAnimation.bindingProperty("target").setExpression(it.key());