private void LanguageBox_SelectedIndexChanged(object sender, EventArgs e) { int oldSel = SelectedStringInd; int index = LanguageBox.SelectedIndex; string chosenName = STR.LanguageSetNames[index]; bool langExists = false; Content.Content.Get().Changes.BlockingResMod(new ResAction(() => { langExists = ActiveString.IsSetInit((STRLangCode)(index + 1)); }, ActiveString)); if (!langExists) { var result = MessageBox.Show("This language has not been initialized for this string resource yet. Initialize '" + chosenName + "'?", "Language not initialized!", MessageBoxButtons.YesNo); if (result == DialogResult.Yes) { Content.Content.Get().Changes.BlockingResMod(new ResAction(() => { ActiveString.InitLanguageSet((STRLangCode)(index + 1)); }, ActiveString)); } else { LanguageBox.SelectedIndex = 0; return; } } ActiveLanguage = (STRLangCode)(index + 1); UpdateStrings(); SelectedStringInd = oldSel; }
public void SetString(int index, string value, STRLangCode language) { var languageSet = GetLanguageSet(language); if (index < languageSet.Strings.Length) { languageSet.Strings[index].Value = value; } }
public STRItem GetStringEntry(int index, STRLangCode language) { var languageSet = GetLanguageSet(language); if (index < languageSet.Strings.Length) { return(languageSet.Strings[index]); } return(null); }
public string GetString(int index, STRLangCode language) { var item = GetStringEntry(index, language); if (item != null) { return(item.Value); } return(null); }
public bool IsSetInit(STRLangCode set) { if (set == STRLangCode.Default) { set = DefaultLangCode; } if (set == STRLangCode.EnglishUS) { return(true); } int code = (int)set; return(LanguageSets[code - 1].Strings.Length > 0); }
public STRLanguageSet GetLanguageSet(STRLangCode set) { if (set == STRLangCode.Default) { set = DefaultLangCode; } int code = (int)set; if (LanguageSets[code - 1].Strings.Length == 0) { return(LanguageSets[0]); //if undefined, fallback to English US } else { return(LanguageSets[code - 1]); } }
public void InitLanguageSet(STRLangCode set) { if (set == STRLangCode.Default) { set = DefaultLangCode; } int code = (int)set; var length = LanguageSets[0].Strings.Length; LanguageSets[code - 1].Strings = new STRItem[length]; for (int i = 0; i < length; i++) { var src = LanguageSets[0].Strings[i]; LanguageSets[code - 1].Strings[i] = new STRItem() { LanguageCode = (byte)code, Value = src.Value, Comment = src.Comment }; } }
private void LanguageCombo_SelectedIndexChanged(object sender, EventArgs e) { if (InternalChange) { return; } int index = LanguageCombo.SelectedIndex; string chosenName = STR.LanguageSetNames[index]; bool langExists = false; Content.Content.Get().Changes.BlockingResMod(new ResAction(() => { langExists = Strings.IsSetInit((STRLangCode)(index + 1)); }, Strings)); if (!langExists) { var result = MessageBox.Show("This language has not been initialized for this TTAB yet. Initialize '" + chosenName + "'?", "Language not initialized!", MessageBoxButtons.YesNo); if (result == DialogResult.Yes) { Content.Content.Get().Changes.BlockingResMod(new ResAction(() => { Strings.InitLanguageSet((STRLangCode)(index + 1)); }, Strings)); } else { LanguageCombo.SelectedIndex = 0; return; } } ActiveLanguage = (STRLangCode)(index + 1); UpdateListing(); UpdateSelection((int)Selected.TTAIndex); }
public bool IsSetInit(STRLangCode set) { if (set == STRLangCode.Default) set = DefaultLangCode; if (set == STRLangCode.EnglishUS) return true; int code = (int)set; return (LanguageSets[code - 1].Strings.Length > 0); }
public void InitLanguageSet(STRLangCode set) { if (set == STRLangCode.Default) set = DefaultLangCode; int code = (int)set; var length = LanguageSets[0].Strings.Length; LanguageSets[code - 1].Strings = new STRItem[length]; for (int i=0; i< length; i++) { var src = LanguageSets[0].Strings[i]; LanguageSets[code - 1].Strings[i] = new STRItem() { LanguageCode = (byte)code, Value = src.Value, Comment = src.Comment }; } }
public STRItem GetStringEntry(int index, STRLangCode language) { var languageSet = GetLanguageSet(language); if (index < languageSet.Strings.Length) { return languageSet.Strings[index]; } return null; }
public string GetString(int index, STRLangCode language) { var item = GetStringEntry(index, language); if (item != null) { return item.Value; } return null; }
public STRLanguageSet GetLanguageSet(STRLangCode set) { if (set == STRLangCode.Default) set = DefaultLangCode; int code = (int)set; if (LanguageSets[code-1].Strings.Length == 0) return LanguageSets[0]; //if undefined, fallback to English US else return LanguageSets[code-1]; }
private void LanguageCombo_SelectedIndexChanged(object sender, EventArgs e) { if (InternalChange) return; int index = LanguageCombo.SelectedIndex; string chosenName = STR.LanguageSetNames[index]; bool langExists = false; Content.Content.Get().Changes.BlockingResMod(new ResAction(() => { langExists = Strings.IsSetInit((STRLangCode)(index + 1)); },Strings)); if (!langExists) { var result = MessageBox.Show("This language has not been initialized for this TTAB yet. Initialize '" + chosenName + "'?", "Language not initialized!", MessageBoxButtons.YesNo); if (result == DialogResult.Yes) { Content.Content.Get().Changes.BlockingResMod(new ResAction(() => { Strings.InitLanguageSet((STRLangCode)(index + 1)); }, Strings)); } else { LanguageCombo.SelectedIndex = 0; return; } } ActiveLanguage = (STRLangCode)(index + 1); UpdateListing(); UpdateSelection((int)Selected.TTAIndex); }