public void RemoveChild(GedcomIndividualRecord child) { Children.Remove(child.XRefID); GedcomFamilyLink link; if (child.ChildInFamily(XRefID, out link)) { child.ChildIn.Remove(link); } }
public bool AddChild(GedcomIndividualRecord indi) { bool added = false; if (indi != null && ! Children.Contains(indi.XRefID)) { if (string.IsNullOrEmpty(XRefID)) { XRefID = _database.GenerateXref("FAM"); _database.Add(XRefID,this); } if (!indi.ChildInFamily(XRefID)) { GedcomFamilyLink link = new GedcomFamilyLink(); link.Database = _database; link.Family = XRefID; link.Indi = indi.XRefID; link.Level = 1; indi.ChildIn.Add(link); } Children.Add(indi.XRefID); added = true; } return added; }