feat: add language override

This commit is contained in:
Anna
2022-02-08 15:23:00 -05:00
parent 9b1e87209a
commit 4779ed0f48
8 changed files with 204 additions and 9 deletions
+5
View File
@@ -132,6 +132,7 @@ internal sealed class Settings : IUiComponent {
var fontSizeChanged = Math.Abs(this.Mutable.FontSize - this.Ui.Plugin.Config.FontSize) > 0.001
|| Math.Abs(this.Mutable.JapaneseFontSize - this.Ui.Plugin.Config.JapaneseFontSize) > 0.001
|| Math.Abs(this.Mutable.SymbolsFontSize - this.Ui.Plugin.Config.SymbolsFontSize) > 0.001;
var langChanged = this.Mutable.LanguageOverride != this.Ui.Plugin.Config.LanguageOverride;
config.UpdateFrom(this.Mutable);
@@ -145,6 +146,10 @@ internal sealed class Settings : IUiComponent {
this.Ui.Plugin.Interface.UiBuilder.RebuildFonts();
}
if (langChanged) {
this.Ui.Plugin.LanguageChanged(this.Ui.Plugin.Interface.UiLanguage);
}
if (!this.Mutable.HideChat && hideChatChanged) {
GameFunctions.GameFunctions.SetChatInteractable(true);
}
+10
View File
@@ -14,6 +14,16 @@ internal sealed class Miscellaneous : ISettingsTab {
}
public void Draw() {
if (ImGui.BeginCombo(Language.Options_Language_Name, this.Mutable.LanguageOverride.Name())) {
foreach (var language in Enum.GetValues<LanguageOverride>()) {
if (ImGui.Selectable(language.Name())) {
this.Mutable.LanguageOverride = language;
}
}
ImGui.EndCombo();
}
ImGuiUtil.HelpText(string.Format(Language.Options_Language_Description, Plugin.PluginName));
ImGui.Spacing();