using UnityEditor; using UnityEngine.UI; using UnityEngine; namespace vnxbqy.UI { [CustomEditor(typeof(FunctionButton), true), CanEditMultipleObjects] public class FunctionButtonEditor : UnityEditor.UI.ButtonEditor { public override void OnInspectorGUI() { base.OnInspectorGUI(); EditorGUILayout.Space(); var instance = target as FunctionButton; instance.order = EditorGUILayout.IntField("Order", instance.order); instance.functionId = EditorGUILayout.IntField("FunctionId", instance.functionId); instance.redpoint = (RedpointBehaviour)EditorGUILayout.ObjectField("Redpoint", instance.redpoint, typeof(RedpointBehaviour), true); instance.state = (TitleBtnState)EditorGUILayout.EnumPopup("State", instance.state); instance.button = (Button)EditorGUILayout.ObjectField("Button", instance.button, typeof(Button), true); instance.icon = (ImageEx)EditorGUILayout.ObjectField("Image", instance.icon, typeof(ImageEx), true); instance.title = (TextEx)EditorGUILayout.ObjectField("Title", instance.title, typeof(TextEx), true); instance.shadow = (Shadow)EditorGUILayout.ObjectField("Shadow", instance.shadow, typeof(Shadow), true); instance.locked = (Transform)EditorGUILayout.ObjectField("Locked", instance.locked, typeof(Transform), true); instance.clickAudio = EditorGUILayout.IntField("Audio", instance.clickAudio); instance.useDefaultConfig = EditorGUILayout.Toggle("DefaultConfig", instance.useDefaultConfig); if (!instance.useDefaultConfig) { EditorGUI.indentLevel++; instance.alternativeConfig = (FunctionButtonConfig)EditorGUILayout.ObjectField("备用配置", instance.alternativeConfig, typeof(FunctionButtonConfig), true); EditorGUI.indentLevel--; } instance.group = (FunctionButtonGroup)EditorGUILayout.ObjectField("Group", instance.group, typeof(FunctionButtonGroup), true); } } }