Codestyle fix

This commit is contained in:
Wojtek Figat
2023-08-14 18:53:11 +02:00
parent b3fc7b3b68
commit 95fdcf01be

View File

@@ -388,45 +388,40 @@ namespace FlaxEditor.Viewport
InputActions.Add(options => options.TranslateMode, () => TransformGizmo.ActiveMode = TransformGizmoBase.Mode.Translate); InputActions.Add(options => options.TranslateMode, () => TransformGizmo.ActiveMode = TransformGizmoBase.Mode.Translate);
InputActions.Add(options => options.RotateMode, () => TransformGizmo.ActiveMode = TransformGizmoBase.Mode.Rotate); InputActions.Add(options => options.RotateMode, () => TransformGizmo.ActiveMode = TransformGizmoBase.Mode.Rotate);
InputActions.Add(options => options.ScaleMode, () => TransformGizmo.ActiveMode = TransformGizmoBase.Mode.Scale); InputActions.Add(options => options.ScaleMode, () => TransformGizmo.ActiveMode = TransformGizmoBase.Mode.Scale);
InputActions.Add(options => options.LockFocusSelection, LockFocusSelection); InputActions.Add(options => options.LockFocusSelection, LockFocusSelection);
InputActions.Add(options => options.FocusSelection, FocusSelection); InputActions.Add(options => options.FocusSelection, FocusSelection);
InputActions.Add(options => options.RotateSelection, RotateSelection); InputActions.Add(options => options.RotateSelection, RotateSelection);
InputActions.Add(options => options.Delete, _editor.SceneEditing.Delete); InputActions.Add(options => options.Delete, _editor.SceneEditing.Delete);
} }
/// <inheritdoc />
public override void Update(float deltaTime) public override void Update(float deltaTime)
{ {
base.Update(deltaTime); base.Update(deltaTime);
var hasSelections = TransformGizmo.SelectedParents.Count != 0; var selection = TransformGizmo.SelectedParents;
var requestUnlockFocus = FlaxEngine.Input.Mouse.GetButtonDown(MouseButton.Right) || FlaxEngine.Input.Mouse.GetButtonDown(MouseButton.Left); var requestUnlockFocus = FlaxEngine.Input.Mouse.GetButtonDown(MouseButton.Right) || FlaxEngine.Input.Mouse.GetButtonDown(MouseButton.Left);
if (TransformGizmo.SelectedParents.Count == 0 || (requestUnlockFocus && ContainsFocus))
if ((IsFocused && requestUnlockFocus) || !hasSelections)
{ {
UnlockFocusSelection(); UnlockFocusSelection();
} }
else if (_lockedFocus)
if (_lockedFocus)
{ {
var selectionBounds = BoundingSphere.Empty; var selectionBounds = BoundingSphere.Empty;
for (int i = 0; i < TransformGizmo.SelectedParents.Count; i++) for (int i = 0; i < selection.Count; i++)
{ {
TransformGizmo.SelectedParents[i].GetEditorSphere(out var sphere); selection[i].GetEditorSphere(out var sphere);
BoundingSphere.Merge(ref selectionBounds, ref sphere, out selectionBounds); BoundingSphere.Merge(ref selectionBounds, ref sphere, out selectionBounds);
} }
var focusDistance = Mathf.Max(selectionBounds.Radius * 2d, 100d); if (ContainsFocus)
if (IsFocused)
{ {
var viewportFocusDistance = Vector3.Distance(ViewPosition, selectionBounds.Center) / 10f; var viewportFocusDistance = Vector3.Distance(ViewPosition, selectionBounds.Center) / 10f;
_lockedFocusOffset -= FlaxEngine.Input.Mouse.ScrollDelta * viewportFocusDistance; _lockedFocusOffset -= FlaxEngine.Input.Mouse.ScrollDelta * viewportFocusDistance;
} }
var viewportPosition = selectionBounds.Center + (-ViewDirection * (focusDistance + _lockedFocusOffset)); var focusDistance = Mathf.Max(selectionBounds.Radius * 2d, 100d);
ViewPosition = selectionBounds.Center + (-ViewDirection * (focusDistance + _lockedFocusOffset));
ViewPosition = viewportPosition;
} }
} }