// Add a new culture public LeanCulture AddCulture(string language, string alias) { if (Cultures == null) { Cultures = new List <LeanCulture>(); } var culture = Cultures.Find(c => c.Language == language && c.Alias == alias); if (culture == null) { culture = new LeanCulture(); culture.Language = language; culture.Alias = alias; Cultures.Add(culture); } return(culture); }
private static void Validate(LeanLocalization localization) { if (localization.Languages == null) { localization.Languages = new List <string>(); } if (localization.Cultures == null) { localization.Cultures = new List <LeanCulture>(); } if (localization.Phrases == null) { localization.Phrases = new List <LeanPhrase>(); } for (var i = localization.Cultures.Count - 1; i >= 0; i--) { var culture = localization.Cultures[i]; if (culture == null) { culture = new LeanCulture(); culture.Language = "New Language"; culture.Alias = "new-Alias"; localization.Cultures[i] = culture; } } for (var i = localization.Phrases.Count - 1; i >= 0; i--) { var phrase = localization.Phrases[i]; if (phrase.Translations == null) { phrase.Translations = new List <LeanTranslation>(); } } }
// Add a new language to this localization public void AddLanguage(string language, string[] aliases = null) { Debug.Log("AddLanguage"); if (Languages == null) { Languages = new List <string>(); } // Add language to languages list? if (Languages.Contains(language) == false) { Languages.Add(language); } // Add cultures to language cultures list? if (aliases != null && aliases.Length > 0) { if (Cultures == null) { Cultures = new List <LeanCulture>(); } for (var i = 0; i < aliases.Length; i++) { var alias = aliases[i]; if (Cultures.Exists(c => c.Language == language && c.Alias == alias) == false) { var newCulture = new LeanCulture(); newCulture.Language = language; newCulture.Alias = alias; Cultures.Add(newCulture); } } } }
private void DrawCulture(LeanLocalization localization, LeanCulture culture, bool full) { var labelA = Reserve(); var valueA = Reserve(ref labelA, 20.0f); BeginModifications(); { //culture.Language = EditorGUI.TextField(labelA, "", culture.Name); culture.Alias = EditorGUI.TextField(labelA, "", culture.Alias); if (GUI.Button(valueA, "X") == true) { MarkAsModified(); localization.Cultures.Remove(culture); if (localization.Cultures.Exists(c => c.Language == culture.Language) == false) { cultureIndex = 0; } } } EndModifications(); }