private static void _LoadLanguageFile(string fileName) { var lang = new SLanguage { FilePath = Path.Combine(CSettings.ProgramFolder, CSettings.FolderNameLanguages, fileName), PartyModeTexts = new List <SPartyLanguage>() }; if (!_LoadLanguageEntries(lang.FilePath, out lang.Texts)) { return; } lang.Name = lang.Texts["language"]; if (lang.Name == CSettings.FallbackLanguage) { _FallbackLanguage = _Languages.Count; if (_CurrentLanguage < 0) { _CurrentLanguage = _FallbackLanguage; } } _Languages.Add(lang); }
private static void LoadLanguageFile(string FileName) { bool loaded = false; XPathDocument xPathDoc = null; XPathNavigator navigator = null; SLanguage lang = new SLanguage(); lang.LanguageFilePath = Path.Combine(CSettings.sFolderLanguages, FileName); try { xPathDoc = new XPathDocument(lang.LanguageFilePath); navigator = xPathDoc.CreateNavigator(); loaded = true; } catch (Exception e) { loaded = false; if (navigator != null) navigator = null; if (xPathDoc != null) xPathDoc = null; CLog.LogError("Error opening Language File " + FileName + ": " + e.Message); } if (loaded) { string value = string.Empty; if (CHelper.GetValueFromXML("//root/Info/Name", navigator, ref value, value)) { lang.Name = value; if (lang.Name == CSettings.FallbackLanguage) _FallbackLanguage = _Languages.Count; lang.Texts = new Hashtable(); List<string> texts = CHelper.GetValuesFromXML("Texts", navigator); for (int i = 0; i < texts.Count; i++) { if (CHelper.GetValueFromXML("//root/Texts/" + texts[i], navigator, ref value, value)) { try { lang.Texts.Add(texts[i], value); } catch (Exception e) { CLog.LogError("Error reading Language File " + FileName + ": " + e.Message); } } } _Languages.Add(lang); } } }
private static void LoadLanguageFile(string FileName) { bool loaded = false; XPathDocument xPathDoc = null; XPathNavigator navigator = null; SLanguage lang = new SLanguage(); lang.LanguageFilePath = Path.Combine(CSettings.sFolderLanguages, FileName); try { xPathDoc = new XPathDocument(lang.LanguageFilePath); navigator = xPathDoc.CreateNavigator(); loaded = true; } catch (Exception e) { loaded = false; if (navigator != null) { navigator = null; } if (xPathDoc != null) { xPathDoc = null; } CLog.LogError("Error opening Language File " + FileName + ": " + e.Message); } if (loaded) { string value = string.Empty; if (CHelper.GetValueFromXML("//root/Info/Name", navigator, ref value, value)) { lang.Name = value; if (lang.Name == CSettings.FallbackLanguage) { _FallbackLanguage = _Languages.Count; } lang.Texts = new Hashtable(); List <string> texts = CHelper.GetValuesFromXML("Texts", navigator); for (int i = 0; i < texts.Count; i++) { if (CHelper.GetValueFromXML("//root/Texts/" + texts[i], navigator, ref value, value)) { try { lang.Texts.Add(texts[i], value); } catch (Exception e) { CLog.LogError("Error reading Language File " + FileName + ": " + e.Message); } } } _Languages.Add(lang); } } }