private void OKBtn_Click(object sender, EventArgs e) { this.fEntry.Name = this.TitleBox.Text; this.fEntry.Category = this.CatBox.Text; this.fEntry.Details = (this.DetailsBox.Text != this.DetailsBox.DefaultText ? this.DetailsBox.Text : ""); this.fEntry.DMInfo = (this.DMBox.Text != this.DMBox.DefaultText ? this.DMBox.Text : ""); List <EncyclopediaLink> encyclopediaLinks = new List <EncyclopediaLink>(); foreach (EncyclopediaLink link in Session.Project.Encyclopedia.Links) { if (!link.EntryIDs.Contains(this.fEntry.ID)) { continue; } encyclopediaLinks.Add(link); } foreach (EncyclopediaLink encyclopediaLink in encyclopediaLinks) { Session.Project.Encyclopedia.Links.Remove(encyclopediaLink); } foreach (ListViewItem checkedItem in this.EntryList.CheckedItems) { EncyclopediaEntry tag = checkedItem.Tag as EncyclopediaEntry; EncyclopediaLink encyclopediaLink1 = new EncyclopediaLink(); encyclopediaLink1.EntryIDs.Add(this.fEntry.ID); encyclopediaLink1.EntryIDs.Add(tag.ID); Session.Project.Encyclopedia.Links.Add(encyclopediaLink1); } }
private void OKBtn_Click(object sender, EventArgs e) { fEntry.Name = TitleBox.Text; fEntry.Category = CatBox.Text; fEntry.Details = (DetailsBox.Text != DetailsBox.DefaultText) ? DetailsBox.Text : ""; fEntry.DMInfo = (DMBox.Text != DMBox.DefaultText) ? DMBox.Text : ""; // Remove all links containing this entry List <EncyclopediaLink> obsolete = new List <EncyclopediaLink>(); foreach (EncyclopediaLink link in Session.Project.Encyclopedia.Links) { if (link.EntryIDs.Contains(fEntry.ID)) { obsolete.Add(link); } } foreach (EncyclopediaLink link in obsolete) { Session.Project.Encyclopedia.Links.Remove(link); } // Add the required links foreach (ListViewItem lvi in EntryList.CheckedItems) { EncyclopediaEntry ee = lvi.Tag as EncyclopediaEntry; EncyclopediaLink link = new EncyclopediaLink(); link.EntryIDs.Add(fEntry.ID); link.EntryIDs.Add(ee.ID); Session.Project.Encyclopedia.Links.Add(link); } }