AlicizaX/Client/Packages/com.alicizax.unity.localization/Editor/LocalizationComponentInspector.cs
2025-02-06 18:08:18 +08:00

41 lines
1.1 KiB
C#

using AlicizaX.Editor;
using AlicizaX.Localization.Runtime;
using AlicizaX.Runtime;
using UnityEditor;
namespace AlicizaX.Localization.Editor
{
[CustomEditor(typeof(LocalizationComponent))]
internal sealed class LocalizationComponentInspector : ComponentTypeComponentInspector
{
private SerializedProperty _language;
public override void OnInspectorGUI()
{
base.OnInspectorGUI();
serializedObject.Update();
serializedObject.ApplyModifiedProperties();
Language language = (Language)EditorGUILayout.EnumPopup("语言", (Language)_language.enumValueIndex);
if ((int)language != _language.enumValueIndex)
{
_language.enumValueIndex = (int)language;
}
Repaint();
}
protected override void RefreshTypeNames()
{
RefreshComponentTypeNames(typeof(ILocalizationManager));
}
protected override void Enable()
{
base.Enable();
_language = serializedObject.FindProperty("_language");
}
}
}