/// <summary> /// This gets called every time the translation needs updating. /// </summary> /// <param name="translation">Translation.</param> public override void UpdateTranslation(LeanTranslation translation) { if (translation != null) { tooltipText = string.Format(translation.Text, paramText); } else { tooltipText = PhraseName; } }
// This gets called every time the translation needs updating public override void UpdateTranslation(LeanTranslation translation) { // Use translation? if (translation != null && translation.Data is string) { CurrentValue = LeanTranslation.FormatText((string)translation.Data, null, this); } // Use fallback? else { CurrentValue = FallbackText; } }
public override void UpdateTranslation(LeanTranslation translation) { if (translation == null) { return; } TMP_Text text = GetComponent <TMP_Text>(); if (text == null) { return; } text.text = translation.Text; }
public override void UpdateTranslation(LeanTranslation translation) { // Get the TextMeshProUGUI component attached to this GameObject var text = GetComponent <TextMeshProUGUI>(); // Use translation? if (translation != null && translation.Data is string) { text.text = LeanTranslation.FormatText(prefix + (string)translation.Data, text.text, this); } // Use fallback? else { text.text = LeanTranslation.FormatText(FallbackText, text.text, this); } }
// This gets called every time the translation needs updating public override void UpdateTranslation(LeanTranslation translation) { #if UNITY_EDITOR if (!Application.isPlaying) { return; } #endif // Get the tooltip component attached to this GameObject var text = GetComponent <VRTK_ObjectTooltip>(); // Use translation? if (translation != null && translation.Data is string) { text.UpdateText(LeanTranslation.FormatText((string)translation.Data, text.displayText, this)); } // Use fallback? else { text.UpdateText(LeanTranslation.FormatText(FallbackText, text.displayText, this)); } }
private void TestUpdate() { LocalizationConfigurator configurator = (LocalizationConfigurator)target; string[] lines = File.ReadAllLines(string.Format("{0}/test.csv", Application.dataPath)); string[] languages = lines[0].Split(','); for (int i = 1; i < languages.Length; i++) { configurator.AddLanguage(languages[i]); } for (int i = 1; i < lines.Length; i++) { string[] lineInfo = lines[i].Split(','); LeanPhrase phrase = configurator.AddPhrase(lineInfo[0]); for (int j = 1; j < languages.Length; j++) { LeanTranslation translation = phrase.AddTranslation(languages[j]); translation.Text = lineInfo[j]; } } }
private void DrawTranslations() { var rectA = Reserve(); var rectB = rectA; rectB.xMin += EditorGUIUtility.labelWidth; rectB.xMax -= 37.0f; var rectC = rectA; rectC.xMin = rectC.xMax - 35.0f; EditorGUI.LabelField(rectA, "Translations", EditorStyles.boldLabel); translationFilter = EditorGUI.TextField(rectB, "", translationFilter); BeginDisabled(string.IsNullOrEmpty(translationFilter) == true || LeanLocalization.CurrentTranslations.ContainsKey(translationFilter) == true); if (GUI.Button(rectC, "Add", EditorStyles.miniButton) == true) { var phrase = LeanLocalization.AddPhraseToFirst(translationFilter); LeanLocalization.UpdateTranslations(); Selection.activeObject = phrase; EditorGUIUtility.PingObject(phrase); } EndDisabled(); if (LeanLocalization.CurrentTranslations.Count == 0 && string.IsNullOrEmpty(translationFilter) == true) { Info("Type in the name of a translation, and click the 'Add' button. Or, drag and drop a prefab that contains some."); } else { var total = 0; BeginIndent(); foreach (var pair in LeanLocalization.CurrentTranslations) { var name = pair.Key; if (string.IsNullOrEmpty(translationFilter) == true || name.IndexOf(translationFilter, System.StringComparison.InvariantCultureIgnoreCase) >= 0) { var translation = pair.Value; var rectT = Reserve(); var expand = EditorGUI.Foldout(new Rect(rectT.x, rectT.y, 20, rectT.height), expandTranslation == translation, ""); if (expand == true) { expandTranslation = translation; } else if (expandTranslation == translation) { expandTranslation = null; } CalculateTranslation(pair.Value); var data = translation.Data; total++; BeginDisabled(true); BeginError(missing.Count > 0 || clashes.Count > 0); if (data is Object) { EditorGUI.ObjectField(rectT, name, (Object)data, typeof(Object), true); } else { EditorGUI.TextField(rectT, name, data != null ? data.ToString() : ""); } EndError(); if (expand == true) { BeginIndent(); foreach (var entry in translation.Entries) { BeginError(clashes.Contains(entry.Language) == true); EditorGUILayout.ObjectField(entry.Language, entry.Owner, typeof(Object), true); EndError(); } EndIndent(); } EndDisabled(); if (expand == true) { foreach (var language in missing) { Warning("This translation isn't defined for the " + language + " language."); } foreach (var language in clashes) { Warning("This translation is defined multiple times for the " + language + " language."); } } } } EndIndent(); if (total == 0) { Info("No translation with this name exists, click the 'Add' button to create it."); } } }