void AAddProfileExecute(object sender, EventArgs e) { UserTranslateProfile pf = new UserTranslateProfile(); SetProfileNameForm nameForm = new SetProfileNameForm(pf, TranslateOptions.Instance.Profiles); DialogResult dr = nameForm.ShowDialog(FindForm()); nameForm.Dispose(); if(dr == DialogResult.Cancel) return; CustomProfileServicesForm form = new CustomProfileServicesForm(pf); form.ShowDialog(this); form.Dispose(); TranslateOptions.Instance.Profiles.Add(pf); TranslateOptions.Instance.CurrentProfile = pf; pf.Subjects.AddRange(pf.GetSupportedSubjects()); UpdateProfiles(); }
string GetProfileName(UserTranslateProfile profile) { string nameBase = ""; nameBase += profile.Name; nameBase += " ( "; nameBase += LangPack.TranslateLanguage(profile.TranslationDirection.From); nameBase += "->"; nameBase += LangPack.TranslateLanguage(profile.TranslationDirection.To); if(profile.Subject != SubjectConstants.Any && profile.Subject != SubjectConstants.Common) nameBase += "->" + LangPack.TranslateString(profile.Subject); nameBase += " )"; return nameBase; }
void AAddProfileExecute(object sender, EventArgs e) { UserTranslateProfile pf = new UserTranslateProfile(); SetProfileNameForm nameForm = new SetProfileNameForm(pf, profiles); DialogResult dr = nameForm.ShowDialog(FindForm()); nameForm.Dispose(); if(dr == DialogResult.Cancel) return; profiles.Add(pf); ListViewItem lvi = new ListViewItem(); lvi.Text = pf.Name; lvi.Tag = pf; lvi.SubItems.Add(LangPack.TranslateLanguage(pf.TranslationDirection.From) + " -> " + LangPack.TranslateLanguage(pf.TranslationDirection.To) ); lvi.SubItems.Add(LangPack.TranslateString(pf.Subject)); lvProfiles.Items.Add(lvi); lvProfiles.Focus(); foreach(ListViewItem lv in lvProfiles.SelectedItems) { lv.Selected = false; lv.Focused = false; } lvi.Selected = true; lvi.Focused = true; AEditServicesExecute(this, new EventArgs()); }
public CustomProfileServicesForm(UserTranslateProfile profile) { InitializeComponent(); RegisterLanguageEvent(OnLanguageChanged); this.profile = profile; ServiceItemsDataCollection services = new ServiceItemsDataCollection(); foreach(ServiceItemData sid in profile.Services) services.Add(sid); lvCurrent.Services = services; cbFrom.Items.Clear(); cbTo.Items.Clear(); for(int i = 0; i < (int)Language.Last; i++) { LanguageDataContainer ld = new LanguageDataContainer((Language)i, LangPack.TranslateLanguage((Language)i)); cbFrom.Items.Add(ld); cbTo.Items.Add(ld); } cbFrom.SelectedIndex = 0; cbTo.SelectedIndex = 0; //cbSubject foreach(string subject in Manager.Subjects) { SubjectContainer sc = new SubjectContainer(subject, LangPack.TranslateString(subject)); cbSubject.Items.Add(sc); } SubjectContainer sc1 = new SubjectContainer(SubjectConstants.Any, "+" + LangPack.TranslateString(SubjectConstants.Any)); cbSubject.Items.Add(sc1); cbSubject.SelectedIndex = 0; for(int i = 0; i < cbFrom.Items.Count; i++) { LanguageDataContainer ld = cbFrom.Items[i] as LanguageDataContainer; if(ld.Language == profile.TranslationDirection.From) cbFrom.SelectedItem = ld; if(ld.Language == profile.TranslationDirection.To) cbTo.SelectedItem = ld; } for(int i = 0; i < cbSubject.Items.Count; i++) { SubjectContainer sc = cbSubject.Items[i] as SubjectContainer; if(profile.Subject == sc.Subject) { cbSubject.SelectedItem = sc; break; } } serviceStatusSource.Visible = false; serviceStatusCurrent.Visible = false; initialized = true; CbFromSelectedIndexChanged(null, new EventArgs()); }
public SetProfileNameForm(UserTranslateProfile profile, TranslateProfilesCollection profiles) { InitializeComponent(); RegisterLanguageEvent(OnLanguageChanged); this.profile = profile; this.profiles = profiles; cbFrom.Items.Clear(); cbTo.Items.Clear(); for(int i = 0; i < (int)Language.Last; i++) { LanguageDataContainer ld = new LanguageDataContainer((Language)i, LangPack.TranslateLanguage((Language)i)); cbFrom.Items.Add(ld); cbTo.Items.Add(ld); } cbFrom.SelectedIndex = 0; cbTo.SelectedIndex = 0; foreach(string subject in Manager.Subjects) { SubjectContainer sc = new SubjectContainer(subject, LangPack.TranslateString(subject)); cbSubject.Items.Add(sc); } SubjectContainer sc1 = new SubjectContainer(SubjectConstants.Any, LangPack.TranslateString(SubjectConstants.Any)); cbSubject.Items.Add(sc1); cbSubject.SelectedIndex = 0; for(int i = 0; i < cbFrom.Items.Count; i++) { LanguageDataContainer ld = cbFrom.Items[i] as LanguageDataContainer; if(ld.Language == profile.TranslationDirection.From) cbFrom.SelectedItem = ld; if(ld.Language == profile.TranslationDirection.To) cbTo.SelectedItem = ld; } for(int i = 0; i < cbSubject.Items.Count; i++) { SubjectContainer sc = cbSubject.Items[i] as SubjectContainer; if(profile.Subject == sc.Subject) { cbSubject.SelectedItem = sc; break; } } if(!string.IsNullOrEmpty(profile.Name)) { tbName.Text = profile.Name; } else { tbName.Text = GetNewProfileName(); } initialized = true; }