diff --git a/Source/Editor/GUI/Tree/Tree.cs b/Source/Editor/GUI/Tree/Tree.cs
index e6add00cc..e36f0ccd5 100644
--- a/Source/Editor/GUI/Tree/Tree.cs
+++ b/Source/Editor/GUI/Tree/Tree.cs
@@ -67,6 +67,11 @@ namespace FlaxEditor.GUI.Tree
/// Gets the first selected node or null.
///
public TreeNode SelectedNode => Selection.Count > 0 ? Selection[0] : null;
+
+ ///
+ /// Allow nodes to Draw the root tree line.
+ ///
+ public bool DrawRootTreeLine = true;
///
/// Gets or sets the margin for the child tree nodes.
diff --git a/Source/Editor/GUI/Tree/TreeNode.cs b/Source/Editor/GUI/Tree/TreeNode.cs
index eb7f345cf..bed32e797 100644
--- a/Source/Editor/GUI/Tree/TreeNode.cs
+++ b/Source/Editor/GUI/Tree/TreeNode.cs
@@ -762,7 +762,7 @@ namespace FlaxEditor.GUI.Tree
{
TreeNode parentNode = Parent as TreeNode;
bool thisNodeIsLast = false;
- while (parentNode != null && parentNode != ParentTree.Children[0])
+ while (parentNode != null && (parentNode != ParentTree.Children[0] || _tree.DrawRootTreeLine))
{
float bottomOffset = 0;
float topOffset = 0;
@@ -773,7 +773,7 @@ namespace FlaxEditor.GUI.Tree
if (thisNodeIsLast && parentNode.Children.Count == 1)
bottomOffset = topOffset != 0 ? 4 : 2;
- if (Parent == parentNode && this == Parent.Children[Parent.Children.Count - 1] && !_opened)
+ if (Parent == parentNode && this == Parent.Children[^1] && !_opened)
{
thisNodeIsLast = true;
bottomOffset = topOffset != 0 ? 4 : 2;
diff --git a/Source/Editor/Windows/Assets/PrefabWindow.Hierarchy.cs b/Source/Editor/Windows/Assets/PrefabWindow.Hierarchy.cs
index 95e6b7a46..24854afb9 100644
--- a/Source/Editor/Windows/Assets/PrefabWindow.Hierarchy.cs
+++ b/Source/Editor/Windows/Assets/PrefabWindow.Hierarchy.cs
@@ -56,6 +56,7 @@ namespace FlaxEditor.Windows.Assets
public PrefabTree()
: base(true)
{
+ DrawRootTreeLine = false;
}
}
diff --git a/Source/Editor/Windows/SceneTreeWindow.cs b/Source/Editor/Windows/SceneTreeWindow.cs
index 8ab07e9c4..705976e6e 100644
--- a/Source/Editor/Windows/SceneTreeWindow.cs
+++ b/Source/Editor/Windows/SceneTreeWindow.cs
@@ -85,6 +85,7 @@ namespace FlaxEditor.Windows
{
Margin = new Margin(0.0f, 0.0f, -16.0f, _sceneTreePanel.ScrollBarsSize), // Hide root node
IsScrollable = true,
+ DrawRootTreeLine = false,
};
_tree.AddChild(root.TreeNode);
_tree.SelectedChanged += Tree_OnSelectedChanged;