示例#1
0
        public void SaveAnouncement(AnouncementData ad)
        {
            // Search and remove the previous version
            XmlNode nodeToRemove = null;

            foreach (XmlNode xn in xd.DocumentElement.ChildNodes)
            {
                if (xn.Name == "Anouncement" && xn.Attributes["Name"].InnerText == ad.name)
                {
                    nodeToRemove = xn;
                }
            }
            if (nodeToRemove != null)
            {
                xd.DocumentElement.RemoveChild(nodeToRemove);
            }

            // Write the new version
            XmlNode      an     = xd.CreateElement("Anouncement");
            XmlAttribute xaName = xd.CreateAttribute("Name");

            xaName.InnerText = ad.name;
            an.Attributes.Append(xaName);
            AddStringNode(an, "ImageId", ad.imageId.ToString());
            AddStringNode(an, "Opacity", ad.opacity.ToString());

            // Write out each region
            foreach (GfxTextRegion tr in ad.lTextRegions)
            {
                XmlNode xnTr = xd.CreateElement("TextRegion");

                // Save basics
                string bounds = tr.bounds.X.ToString() + "," + tr.bounds.Y.ToString() + "," +
                                tr.bounds.Width.ToString() + "," + tr.bounds.Height.ToString();
                AddStringNode(xnTr, "Bounds", bounds);
                AddStringNode(xnTr, "Message", tr.message);

                // Save the font
                PresenterFont.AppendToXMLNode(xnTr, tr.font);

                an.AppendChild(xnTr);
            }

            // Finish and save
            xd.DocumentElement.AppendChild(an);
            Save();
        }
示例#2
0
        public void SaveProject(ScrollerData sd)
        {
            // Search and remove the previous version
            XmlNode nodeToRemove = null;

            foreach (XmlNode xn in xd.DocumentElement.ChildNodes)
            {
                if (xn.Name == "Project" && xn.Attributes["Name"].InnerText == sd.name)
                {
                    nodeToRemove = xn;
                }
            }
            if (nodeToRemove != null)
            {
                xd.DocumentElement.RemoveChild(nodeToRemove);
            }

            // Write the new version
            XmlNode      an     = xd.CreateElement("Project");
            XmlAttribute xaName = xd.CreateAttribute("Name");

            xaName.InnerText = sd.name;
            an.Attributes.Append(xaName);
            AddStringNode(an, "LeftMessage", sd.leftMessage);
            AddStringNode(an, "Message", sd.message);
            AddStringNode(an, "RightMessage", sd.rightMessage);

            if (sd.font == null)
            {
                sd.font = new PresenterFont();
                sd.font.SizeInPoints = 12;
            }
            PresenterFont.AppendToXMLNode(an, sd.font);

            // Finish and save
            xd.DocumentElement.AppendChild(an);
            Save();
        }