using System.Collections; using System.Collections.Generic; using UnityEditor; using UnityEngine; namespace SC.XR.Unity.Module_Keyboard { [CanEditMultipleObjects] [CustomEditor(typeof(SCKeyboard3DKey), true)] public class SCKeyboard3DKeyEditor : Editor { SerializedProperty m_SCKeyboardKeyEnum; SerializedProperty m_SpecialKeyEnum; SerializedProperty m_LanguageKeyEnum; private void OnEnable() { m_SCKeyboardKeyEnum = serializedObject.FindProperty("m_SCKeyboardKeyEnum"); m_SpecialKeyEnum = serializedObject.FindProperty("m_SpecialKeyEnum"); m_LanguageKeyEnum = serializedObject.FindProperty("m_LanguageKeyEnum"); } public override void OnInspectorGUI() { //base.OnInspectorGUI(); EditorGUILayout.Space(); SCKeyboard3DKey key3D = (SCKeyboard3DKey)target; EditorGUILayout.PropertyField(m_SCKeyboardKeyEnum); switch (key3D.m_SCKeyboardKeyEnum) { case SCKeyboardKeyEnum.ABC: case SCKeyboardKeyEnum.Num: case SCKeyboardKeyEnum.Symbol: case SCKeyboardKeyEnum.Pinyin: case SCKeyboardKeyEnum.Prompt: case SCKeyboardKeyEnum.Meme: break; case SCKeyboardKeyEnum.Special: EditorGUILayout.PropertyField(m_SpecialKeyEnum); break; case SCKeyboardKeyEnum.Language: EditorGUILayout.PropertyField(m_LanguageKeyEnum); break; } serializedObject.ApplyModifiedProperties(); } } }