using UnityEditor; using UnityEngine; using VketCloudGUITools.Runtime; namespace VketCloudGUITools.Editor { [CustomEditor(typeof(FlagGUIAction))] public class FlagGUIActionInspector : GUIActionInspector { GUIActionEditorRectHelpder _helper = null; public override void OnSubInspectorGUI(Rect position) { var action = target as FlagGUIAction; _helper = new GUIActionEditorRectHelpder(position); Rect typeRect, checkRect, content1Rect; _helper.GetTypeRectAndCheckRect(out typeRect, out checkRect); content1Rect = _helper.ContentRect(1); using (new GUI.GroupScope(position, GUI.skin.box)) { // Action Name var oldActionName = action.ActionName; var newActionName = DrawActionNameTypeField(checkRect, typeRect, action.ActionName, GUIActionTargetNames.FlagTargetNames); if (newActionName != oldActionName) { Undo.RecordObject(action, "GUI Action"); action.ActionName = newActionName; } // Enable var oldEnable = action.Enable; var newEnable = EditorGUI.Toggle(content1Rect, "Enable", action.Enable); if (newEnable != oldEnable) { Undo.RecordObject(action, "GUI Action"); action.Enable = newEnable; } } } public override float GetSubInspectorHeight() => EditorGUIUtility.singleLineHeight * 2; } }