QmlDesigner: Add toggle button for 3D split view

The button and puppet communication is added for split view toggle.

Task-number: QDS-10921
Change-Id: I4322dfff6772eec493a2f3ce1722cdefb69bc490
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
This commit is contained in:
Miikka Heikkinen
2023-10-12 11:35:57 +03:00
parent 12aeed97b3
commit 87695e368b
6 changed files with 33 additions and 1 deletions

View File

@@ -28,6 +28,7 @@ Item {
property color backgroundGradientColorEnd: "#999999"
property color gridColor: "#cccccc"
property bool syncEnvBackground: false
property bool splitView: false
enum SelectionMode { Item, Group }
enum TransformMode { Move, Rotate, Scale }
@@ -65,6 +66,7 @@ Item {
onShowParticleEmitterChanged: _generalHelper.storeToolState(sceneId, "showParticleEmitter", showParticleEmitter);
onSelectionModeChanged: _generalHelper.storeToolState(sceneId, "selectionMode", selectionMode);
onTransformModeChanged: _generalHelper.storeToolState(sceneId, "transformMode", transformMode);
onSplitViewChanged: _generalHelper.storeToolState(sceneId, "splitView", splitView)
onActiveSceneChanged: updateActiveScene()
@@ -294,6 +296,11 @@ Item {
cameraControl.restoreCameraState(toolStates.editCamState);
else if (resetToDefault)
cameraControl.restoreDefaultState();
if ("splitView" in toolStates)
splitView = toolStates.splitView;
else if (resetToDefault)
splitView = false;
}
function storeCurrentToolStates()
@@ -309,6 +316,7 @@ Item {
_generalHelper.storeToolState(sceneId, "globalOrientation", globalOrientation)
_generalHelper.storeToolState(sceneId, "selectionMode", selectionMode);
_generalHelper.storeToolState(sceneId, "transformMode", transformMode);
_generalHelper.storeToolState(sceneId, "splitView", splitView)
cameraControl.storeCameraState(0);
}

View File

@@ -2497,6 +2497,9 @@ void Qt5InformationNodeInstanceServer::view3DAction(const View3DActionCommand &c
return;
}
#endif
case View3DActionType::SplitViewToggle:
updatedToolState.insert("splitView", command.isEnabled());
break;
default:
break;