Merge branch 'prefab-doubleclick-obj-ref' of https://github.com/Tryibion/FlaxEngine into Tryibion-prefab-doubleclick-obj-ref

This commit is contained in:
Wojtek Figat
2025-02-24 00:10:04 +01:00

View File

@@ -345,10 +345,19 @@ namespace FlaxEditor.CustomEditors.Editors
}
else
{
_linkedTreeNode = Editor.Instance.Scene.GetActorNode(actor).TreeNode;
_linkedTreeNode.ExpandAllParents();
Editor.Instance.Windows.SceneWin.SceneTreePanel.ScrollViewTo(_linkedTreeNode, true);
_linkedTreeNode.StartHighlight();
if (PresenterContext is PropertiesWindow)
_linkedTreeNode = Editor.Instance.Scene.GetActorNode(actor).TreeNode;
else if (PresenterContext is PrefabWindow prefabWindow)
_linkedTreeNode = prefabWindow.Graph.Root.Find(actor).TreeNode;
if (_linkedTreeNode != null)
{
_linkedTreeNode.ExpandAllParents();
if (PresenterContext is PropertiesWindow)
Editor.Instance.Windows.SceneWin.SceneTreePanel.ScrollViewTo(_linkedTreeNode, true);
else if (PresenterContext is PrefabWindow prefabWindow)
(prefabWindow.Tree.Parent as Panel).ScrollViewTo(_linkedTreeNode, true);
_linkedTreeNode.StartHighlight();
}
}
return true;
}
@@ -391,9 +400,20 @@ namespace FlaxEditor.CustomEditors.Editors
// Select object
if (_value is Actor actor)
Editor.Instance.SceneEditing.Select(actor);
{
if (PresenterContext is PropertiesWindow)
Editor.Instance.SceneEditing.Select(actor);
else if (PresenterContext is PrefabWindow prefabWindow)
prefabWindow.Select(prefabWindow.Graph.Root.Find(actor));
}
else if (_value is Script script && script.Actor)
Editor.Instance.SceneEditing.Select(script.Actor);
{
var a = script.Actor;
if (PresenterContext is PropertiesWindow)
Editor.Instance.SceneEditing.Select(a);
else if (PresenterContext is PrefabWindow prefabWindow)
prefabWindow.Select(prefabWindow.Graph.Root.Find(a));
}
else if (_value is Asset asset)
Editor.Instance.Windows.ContentWin.Select(asset);
}