Пример #1
0
 static public XmlNode UpdateCompoundDateField(string Field, MyDatePicker DatePicker, XmlNode Node)
 {
     if (DatePicker.Checked)
     {
         XmlNode TmpNode = GEDXMLUtilites.UpdateSingleField(Field, GEDXMLUtilites.InsertEmpty, Node);
         GEDXMLUtilites.UpdateSingleField("DATE", DatePicker.Date.MedString(), TmpNode);
         GEDXMLUtilites.UpdateSingleField("PLAC", DatePicker.Place, TmpNode);
         GEDXMLUtilites.UpdateSingleField("NOTE", DatePicker.Note, TmpNode);
         return(TmpNode);
     }
     else
     {
         return(GEDXMLUtilites.UpdateSingleField(Field, "", Node));
     }
 }
Пример #2
0
        void UpdateAllFields(XmlNode Node)
        {
            XmlNode TmpNode;

            GEDXMLUtilites.UpdateSingleField("NAME", txtName.Text, Node);
            if (rdoMale.Checked)
            {
                GEDXMLUtilites.UpdateSingleField("SEX", "M", Node);
            }
            else
            {
                GEDXMLUtilites.UpdateSingleField("SEX", "F", Node);
            }

            GEDXMLUtilites.UpdateCompoundDateField("BIRT", mdpBirth, Node);
            GEDXMLUtilites.UpdateCompoundDateField("DEAT", mdpDeath, Node);

            if (txtAKA.Text != "")
            {
                TmpNode = GEDXMLUtilites.UpdateSingleField("EVEN", txtAKA.Text, Node);
                GEDXMLUtilites.UpdateSingleField("TYPE", "AKA", TmpNode);
            }
            GEDXMLUtilites.UpdateSingleField("IMG", txtImage.Text, Node);
            GEDXMLUtilites.UpdateSingleField("NOTE", Note, Node);

            if (Source != null)
            {
                TmpNode = GEDXMLUtilites.UpdateSingleField("SOUR", GEDXMLUtilites.InsertEmpty, Node);
                GEDXMLUtilites.SetAttribute("REF", Source.ID, TmpNode);
            }

            //case "EMIG":
            //    break;
            //case "OCCU":
            //    break;
        }
Пример #3
0
        void UpdateAllFields(XmlNode Node)
        {
            XmlNode TmpNode;

            GEDXMLUtilites.UpdateCompoundDateField("MARR", mdpMarriage, Node);
            GEDXMLUtilites.UpdateCompoundDateField("DIV", mdpDivorce, Node);

            if (lblHusband.Text != "")
            {
                TmpNode = GEDXMLUtilites.UpdateSingleField("HUSB", GEDXMLUtilites.InsertEmpty, Node);
                GEDXMLUtilites.SetAttribute("REF", lblHusband.Tag.ToString(), TmpNode);
            }
            else
            {
                GEDXMLUtilites.UpdateSingleField("HUSB", "", Node);
            }

            if (lblWife.Text != "")
            {
                TmpNode = GEDXMLUtilites.UpdateSingleField("WIFE", GEDXMLUtilites.InsertEmpty, Node);
                GEDXMLUtilites.SetAttribute("REF", lblWife.Tag.ToString(), TmpNode);
            }
            else
            {
                GEDXMLUtilites.UpdateSingleField("WIFE", "", Node);
            }

            // Children...
            string[] ChildIDs = new string[lstChildren.Items.Count];

            for (int i = 0; i < lstChildren.Items.Count; i++)
            {
                ChildIDs[i] = ((GEDFileEntryIndi)lstChildren.Items[i]).ID;
            }
            GEDXMLUtilites.UpdateMultipleFieldAttr("CHIL", "REF", ChildIDs, Node);

            // And now make sure the various individuals are linked back...
            XmlNode tmpIndiNode;
            string  MyID;

            MyID = Node.Attributes["ID"].Value;

            foreach (XmlNode Child in Node.ChildNodes)
            {
                try
                {
                    string SourceID = Child.Attributes["REF"].Value;
                    TmpNode = GEDXMLUtilites.GlobalLocateNodeByID(SourceID, "INDI", Child);
                    if (TmpNode != null)
                    {
                        if (Child.Name.ToUpper() == "HUSB" || Child.Name.ToUpper() == "WIFE")
                        {
                            tmpIndiNode = GEDXMLUtilites.UpdateSingleField("FAMS", GEDXMLUtilites.InsertEmpty, TmpNode);
                            GEDXMLUtilites.SetAttribute("REF", MyID, tmpIndiNode);
                        }
                        else if (Child.Name.ToUpper() == "CHIL")
                        {
                            tmpIndiNode = GEDXMLUtilites.UpdateSingleField("FAMC", GEDXMLUtilites.InsertEmpty, TmpNode);
                            GEDXMLUtilites.SetAttribute("REF", MyID, tmpIndiNode);
                        }
                    }
                }
                catch (Exception) { }
            }
        }