diff --git a/Source/Editor/CustomEditors/Dedicated/ActorEditor.cs b/Source/Editor/CustomEditors/Dedicated/ActorEditor.cs
index 792d3ae4d..7f217917b 100644
--- a/Source/Editor/CustomEditors/Dedicated/ActorEditor.cs
+++ b/Source/Editor/CustomEditors/Dedicated/ActorEditor.cs
@@ -94,7 +94,7 @@ namespace FlaxEditor.CustomEditors.Dedicated
{
if (actor != null)
group.Panel.TooltipText = Surface.SurfaceUtils.GetVisualScriptTypeDescription(TypeUtils.GetObjectType(actor));
- const float settingsButtonSize = 14;
+ const float settingsButtonSize = 20;
var settingsButton = new Image
{
TooltipText = "Settings",
diff --git a/Source/Editor/CustomEditors/Dedicated/ScriptsEditor.cs b/Source/Editor/CustomEditors/Dedicated/ScriptsEditor.cs
index 5e8b44f3c..a02b84617 100644
--- a/Source/Editor/CustomEditors/Dedicated/ScriptsEditor.cs
+++ b/Source/Editor/CustomEditors/Dedicated/ScriptsEditor.cs
@@ -641,16 +641,16 @@ namespace FlaxEditor.CustomEditors.Dedicated
IsScrollable = false,
Checked = script.Enabled,
Parent = group.Panel,
- Size = new Float2(14, 14),
- Bounds = new Rectangle(16, 0, 14, 14),
- BoxSize = 12.0f,
+ Size = new Float2(20, 20),
+ Bounds = new Rectangle(20, 0, 20, 20),
+ BoxSize = 16.0f,
Tag = script,
};
scriptToggle.StateChanged += OnScriptToggleCheckChanged;
_scriptToggles[i] = scriptToggle;
// Add drag button to the group
- const float dragIconSize = 14;
+ const float dragIconSize = 20;
var scriptDrag = new ScriptDragIcon(this, script)
{
TooltipText = "Script reference",
@@ -665,7 +665,7 @@ namespace FlaxEditor.CustomEditors.Dedicated
};
// Add settings button to the group
- const float settingsButtonSize = 14;
+ const float settingsButtonSize = 20;
var settingsButton = new Image
{
TooltipText = "Settings",
diff --git a/Source/Editor/CustomEditors/Elements/Container/GroupElement.cs b/Source/Editor/CustomEditors/Elements/Container/GroupElement.cs
index a26fa3b0d..676dd99ae 100644
--- a/Source/Editor/CustomEditors/Elements/Container/GroupElement.cs
+++ b/Source/Editor/CustomEditors/Elements/Container/GroupElement.cs
@@ -18,6 +18,9 @@ namespace FlaxEditor.CustomEditors.Elements
ArrowImageClosed = new SpriteBrush(Style.Current.ArrowRight),
ArrowImageOpened = new SpriteBrush(Style.Current.ArrowDown),
EnableDropDownIcon = true,
+ ItemsMargin = new Margin(7, 7, 3, 3),
+ HeaderHeight = 20,
+ EnableContainmentLines = true,
};
///
diff --git a/Source/Editor/CustomEditors/LayoutElementsContainer.cs b/Source/Editor/CustomEditors/LayoutElementsContainer.cs
index 4829d11fa..936851b15 100644
--- a/Source/Editor/CustomEditors/LayoutElementsContainer.cs
+++ b/Source/Editor/CustomEditors/LayoutElementsContainer.cs
@@ -96,6 +96,7 @@ namespace FlaxEditor.CustomEditors
if (useTransparentHeader)
{
element.Panel.EnableDropDownIcon = true;
+ element.Panel.EnableContainmentLines = false;
element.Panel.HeaderColor = element.Panel.HeaderColorMouseOver = Color.Transparent;
}
OnAddElement(element);
diff --git a/Source/Engine/UI/GUI/Panels/DropPanel.cs b/Source/Engine/UI/GUI/Panels/DropPanel.cs
index 482460d04..409209549 100644
--- a/Source/Engine/UI/GUI/Panels/DropPanel.cs
+++ b/Source/Engine/UI/GUI/Panels/DropPanel.cs
@@ -131,6 +131,12 @@ namespace FlaxEngine.GUI
[EditorDisplay("Style"), EditorOrder(2000)]
public bool EnableDropDownIcon { get; set; }
+ ///
+ /// Gets or sets a value indicating whether to enable containment line drawing,
+ ///
+ [EditorDisplay("Style"), EditorOrder(2000)]
+ public bool EnableContainmentLines { get; set; } = false;
+
///
/// Occurs when mouse right-clicks over the header.
///
@@ -370,6 +376,16 @@ namespace FlaxEngine.GUI
Render2D.DrawText(HeaderTextFont.GetFont(), HeaderTextMaterial, HeaderText, textRect, textColor, TextAlignment.Near, TextAlignment.Center);
+
+ if (!_isClosed && EnableContainmentLines)
+ {
+ Color lineColor = Style.Current.ForegroundGrey - new Color(0, 0, 0, 100);
+ float lineThickness = 0.05f;
+ Render2D.DrawLine(new Float2(1, HeaderHeight), new Float2(1, Height), lineColor, lineThickness);
+ Render2D.DrawLine(new Float2(1, Height), new Float2(Width, Height), lineColor, lineThickness);
+ Render2D.DrawLine(new Float2(Width, HeaderHeight), new Float2(Width, Height), lineColor, lineThickness);
+ }
+
// Children
DrawChildren();
}