using UnityEditor; using UnityEngine; using VketCloudGUITools.Runtime; namespace VketCloudGUITools.Editor { [CustomEditor(typeof(CallScriptGUIAction))] public class CallScriptGUIActionInspector : GUIActionInspector { GUIActionEditorRectHelpder _helper = null; public override void OnSubInspectorGUI(Rect position) { var action = target as CallScriptGUIAction; _helper = new GUIActionEditorRectHelpder(position); Rect typeRect, checkRect, content1Rect, content2Rect; _helper.GetTypeRectAndCheckRect(out typeRect, out checkRect); content1Rect = _helper.ContentRect(1); content2Rect = _helper.ContentRect(1); using (new GUI.GroupScope(position, GUI.skin.box)) { // Action Name DrawActionNameTypeFieldDummy(checkRect, typeRect, action.FuncName); // Category var oldCategory = action.Category; var newCategory = EditorGUI.TextField(content1Rect, "Category", oldCategory); if (newCategory != oldCategory) { Undo.RecordObject(action, "GUI Action"); action.Category = newCategory; } // Param var oldParam = action.Param; var newParam = EditorGUI.TextField(content2Rect, "Param", oldParam); if (newParam != oldParam) { Undo.RecordObject(action, "GUI Action"); action.Param = newParam; } } } public override float GetSubInspectorHeight() => EditorGUIUtility.singleLineHeight * 3; } }