private void ConfirmLanguageChoiceDialog(string selected_preinstalled_translation, PublishedFileId_t selected_language_pack) { if (selected_language_pack != PublishedFileId_t.Invalid) { Localization.SelectedLanguageType selectedLanguageType = Localization.GetSelectedLanguageType(); if (selectedLanguageType == Localization.SelectedLanguageType.UGC && selected_language_pack == currentLanguage) { Deactivate(); } else { System.DateTime lastModified; string languageFile = GetLanguageFile(selected_language_pack, out lastModified); string[] lines = languageFile.Split('\n'); ConfirmLanguageChoiceDialog(lines, false, delegate { SetCurrentLanguage(selected_language_pack); }); } } else { ConfirmLanguageChoiceDialog(selected_preinstalled_translation); } }
private void ConfirmLanguageChoiceDialog(string selected_preinstalled_translation) { Localization.SelectedLanguageType selectedLanguageType = Localization.GetSelectedLanguageType(); if (!string.IsNullOrEmpty(selected_preinstalled_translation)) { string selectedPreinstalledLanguageCode = Localization.GetSelectedPreinstalledLanguageCode(); if (selectedLanguageType == Localization.SelectedLanguageType.Preinstalled && selectedPreinstalledLanguageCode == selected_preinstalled_translation) { Deactivate(); } else { string preinstalledLocalizationFilePath = Localization.GetPreinstalledLocalizationFilePath(selected_preinstalled_translation); string[] lines = File.ReadAllLines(preinstalledLocalizationFilePath, Encoding.UTF8); ConfirmLanguageChoiceDialog(lines, false, delegate { Localization.LoadPreinstalledTranslation(selected_preinstalled_translation); }); } } else if (selectedLanguageType == Localization.SelectedLanguageType.None) { Deactivate(); } else { string defaultLocalizationFilePath = Localization.GetDefaultLocalizationFilePath(); string[] lines2 = File.ReadAllLines(defaultLocalizationFilePath, Encoding.UTF8); ConfirmLanguageChoiceDialog(lines2, true, delegate { Localization.ClearLanguage(); }); } }