Ejemplo n.º 1
0
        public override void Clear()
        {
            base.Clear();

            for (int i = fChildToFamilyLinks.Count - 1; i >= 0; i--)
            {
                GEDCOMFamilyRecord family = fChildToFamilyLinks[i].Family;
                family.DeleteChild(this);
            }
            fChildToFamilyLinks.Clear();

            for (int i = fSpouseToFamilyLinks.Count - 1; i >= 0; i--)
            {
                GEDCOMFamilyRecord family = fSpouseToFamilyLinks[i].Family;
                family.RemoveSpouse(this);
            }
            fSpouseToFamilyLinks.Clear();

            for (int i = fGroups.Count - 1; i >= 0; i--)
            {
                GEDCOMGroupRecord group = (GEDCOMGroupRecord)fGroups[i].Value;
                group.RemoveMember(this);
            }
            fGroups.Clear();

            fPersonalNames.Clear();
            fIndividualOrdinances.Clear();
            fSubmittors.Clear();
            fAssociations.Clear();
            fAliasses.Clear();
            fAncestorsInterest.Clear();
            fDescendantsInterest.Clear();
        }
Ejemplo n.º 2
0
        public void RemoveGroup(GEDCOMGroupRecord groupRecord)
        {
            if (groupRecord == null)
            {
                return;
            }

            fGroups.DeleteAt(IndexOfGroup(groupRecord));
        }
Ejemplo n.º 3
0
        public GEDCOMGroupRecord CreateGroup()
        {
            GEDCOMGroupRecord result = new GEDCOMGroupRecord(this, this, "", "");

            result.InitNew();
            result.ChangeDate.ChangeDateTime = DateTime.Now;

            AddRecord(result);
            return(result);
        }
Ejemplo n.º 4
0
        public bool AddGroup(GEDCOMGroupRecord groupRecord)
        {
            bool result = false;

            if (groupRecord != null)
            {
                GEDCOMPointer ptr = new GEDCOMPointer(Owner, this, "", "");
                ptr.SetNamedValue("_GROUP", groupRecord);
                fGroups.Add(ptr);
                result = true;
            }

            return(result);
        }
Ejemplo n.º 5
0
        public bool DeleteGroupRecord(GEDCOMGroupRecord groupRec)
        {
            if (groupRec == null)
            {
                return(false);
            }

            for (int i = groupRec.Members.Count - 1; i >= 0; i--)
            {
                GEDCOMIndividualRecord member = groupRec.Members[i].Value as GEDCOMIndividualRecord;
                groupRec.RemoveMember(member);
            }

            DeleteRecord(groupRec);
            return(true);
        }
Ejemplo n.º 6
0
        public int IndexOfGroup(GEDCOMGroupRecord groupRec)
        {
            if (groupRec != null)
            {
                int num = fGroups.Count;
                for (int i = 0; i < num; i++)
                {
                    if (fGroups[i].XRef == groupRec.XRef)
                    {
                        return(i);
                    }
                }
            }

            return(-1);
        }
Ejemplo n.º 7
0
        public int IndexOfGroup(GEDCOMGroupRecord groupRec)
        {
            int result = -1;

            if (groupRec != null)
            {
                int num = fGroups.Count;
                for (int i = 0; i < num; i++)
                {
                    if (fGroups[i].XRef == groupRec.XRef)
                    {
                        result = i;
                        break;
                    }
                }
            }

            return(result);
        }