Use tooltip from native function docs and support multiple colliders selected at once #2063

This commit is contained in:
Wojtek Figat
2023-12-14 11:04:24 +01:00
parent b87a7d16fb
commit 51fc4c68cd

View File

@@ -7,15 +7,12 @@ using Real = System.Single;
#endif #endif
using FlaxEngine; using FlaxEngine;
#if FLAX_EDITOR
using FlaxEditor.CustomEditors.Dedicated; using FlaxEditor.CustomEditors.Dedicated;
using FlaxEditor.CustomEditors; using FlaxEditor.CustomEditors;
#endif using FlaxEditor.Scripting;
namespace FlaxEditor.SceneGraph.Actors namespace FlaxEditor.SceneGraph.Actors
{ {
#if FLAX_EDITOR
/// <summary> /// <summary>
/// Dedicated custom editor for BoxCollider objects. /// Dedicated custom editor for BoxCollider objects.
/// </summary> /// </summary>
@@ -26,14 +23,20 @@ namespace FlaxEditor.SceneGraph.Actors
public override void Initialize(LayoutElementsContainer layout) public override void Initialize(LayoutElementsContainer layout)
{ {
base.Initialize(layout); base.Initialize(layout);
layout.Space(20f);
var autoResizeButton = layout.Button("Resize to Fit", "Resize the box collider to fit it's parent's bounds.");
BoxCollider collider = Values[0] as BoxCollider; layout.Space(20f);
autoResizeButton.Button.Clicked += collider.AutoResize; layout.Button("Resize to Fit", Editor.Instance.CodeDocs.GetTooltip(new ScriptMemberInfo(typeof(BoxCollider).GetMethod("AutoResize")))).Button.Clicked += OnResizeClicked;
}
private void OnResizeClicked()
{
foreach (var value in Values)
{
if (value is BoxCollider collider)
collider.AutoResize();
}
} }
} }
#endif
/// <summary> /// <summary>
/// Scene tree node for <see cref="BoxCollider"/> actor type. /// Scene tree node for <see cref="BoxCollider"/> actor type.
@@ -67,8 +70,8 @@ namespace FlaxEditor.SceneGraph.Actors
public override void PostSpawn() public override void PostSpawn()
{ {
base.PostSpawn(); base.PostSpawn();
BoxCollider boxCollider = Actor as BoxCollider;
boxCollider.AutoResize(); ((BoxCollider)Actor).AutoResize();
} }
} }
} }