protected override void DrawInspector() { entries.Clear(); entries.AddRange(Target.Entries); languageNames.Clear(); languageNames.AddRange(LeanLocalization.CurrentLanguages.Keys); Target.Data = (LeanPhrase.DataType)GUILayout.Toolbar((int)Target.Data, new string[] { "Text", "Object", "Sprite" }); EditorGUILayout.Separator(); foreach (var languageName in languageNames) { var entry = default(LeanPhrase.Entry); if (Target.TryFindTranslation(languageName, ref entry) == true) { DrawEntry(entry, false); entries.Remove(entry); } else { EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField(languageName, EditorStyles.boldLabel); if (GUILayout.Button("Create", EditorStyles.miniButton, GUILayout.Width(45.0f)) == true) { Undo.RecordObject(Target, "Create Translation"); Target.AddEntry(languageName); Dirty(); } EditorGUILayout.EndHorizontal(); } EditorGUILayout.Separator(); } if (entries.Count > 0) { foreach (var entry in entries) { DrawEntry(entry, true); } } }