public void Import(Encyclopedia enc) { if (enc == null) { return; } foreach (EncyclopediaEntry entry in enc.Entries) { EncyclopediaEntry encyclopediaEntry = this.FindEntry(entry.ID); if (encyclopediaEntry != null) { this.Entries.Remove(encyclopediaEntry); } this.Entries.Add(entry); } foreach (EncyclopediaGroup group in enc.Groups) { EncyclopediaGroup encyclopediaGroup = this.FindGroup(group.ID); if (encyclopediaGroup != null) { this.Groups.Remove(encyclopediaGroup); } this.Groups.Add(group); } foreach (EncyclopediaLink link in enc.Links) { EncyclopediaLink encyclopediaLink = this.FindLink(link.EntryIDs[0], link.EntryIDs[1]); if (encyclopediaLink != null) { this.Links.Remove(encyclopediaLink); } this.Links.Add(link); } }
/// <summary> /// Imports the data from another encyclopedia into this one. /// </summary> /// <param name="enc">The encyclopedia to import from.</param> public void Import(Encyclopedia enc) { if (enc == null) { return; } foreach (EncyclopediaEntry entry in enc.Entries) { // Remove any previous entry EncyclopediaEntry ee = FindEntry(entry.ID); if (ee != null) { Entries.Remove(ee); } Entries.Add(entry); } foreach (EncyclopediaGroup group in enc.Groups) { // Remove any previous group EncyclopediaGroup eg = FindGroup(group.ID); if (eg != null) { Groups.Remove(eg); } Groups.Add(group); } foreach (EncyclopediaLink link in enc.Links) { // Remove any previous link EncyclopediaLink el = FindLink(link.EntryIDs[0], link.EntryIDs[1]); if (el != null) { Links.Remove(el); } Links.Add(link); } }
public EncyclopediaEntry FindEntry(string name) { EncyclopediaEntry encyclopediaEntry; List <EncyclopediaEntry> .Enumerator enumerator = this.fEntries.GetEnumerator(); try { while (enumerator.MoveNext()) { EncyclopediaEntry current = enumerator.Current; if (current.Name.ToLower() != name.ToLower()) { continue; } encyclopediaEntry = current; return(encyclopediaEntry); } return(null); } finally { ((IDisposable)enumerator).Dispose(); } }
public EncyclopediaEntry FindEntryForAttachment(Guid attachment_id) { EncyclopediaEntry encyclopediaEntry; List <EncyclopediaEntry> .Enumerator enumerator = Session.Project.Encyclopedia.Entries.GetEnumerator(); try { while (enumerator.MoveNext()) { EncyclopediaEntry current = enumerator.Current; if (current.AttachmentID != attachment_id) { continue; } encyclopediaEntry = current; return(encyclopediaEntry); } return(null); } finally { ((IDisposable)enumerator).Dispose(); } }