/// <summary>
        /// Saves docking configuration information using a provider xml writer.
        /// </summary>
        /// <param name="xmlWriter">Xml writer object.</param>
        public override void SaveElementToXml(XmlWriter xmlWriter)
        {
            KryptonDockingManager manager = DockingManager;

            // Output docking manager element
            xmlWriter.WriteStartElement(XmlElementName);
            xmlWriter.WriteAttributeString("N", Name);
            xmlWriter.WriteAttributeString("C", AutoHiddenGroupControl.Pages.Count.ToString());

            // Output an element per page
            foreach (KryptonPage page in AutoHiddenGroupControl.Pages)
            {
                // Are we allowed to save the page?
                if (page.AreFlagsSet(KryptonPageFlags.AllowConfigSave))
                {
                    xmlWriter.WriteStartElement("KP");
                    xmlWriter.WriteAttributeString("UN", page.UniqueName);
                    xmlWriter.WriteAttributeString("V", CommonHelper.BoolToString(page.LastVisibleSet));
                    xmlWriter.WriteAttributeString("S", CommonHelper.BoolToString(page is KryptonStorePage));

                    // Give event handlers a chance to save custom data with the page
                    xmlWriter.WriteStartElement("CPD");
                    DockPageSavingEventArgs args = new DockPageSavingEventArgs(manager, xmlWriter, page);
                    manager?.RaisePageSaving(args);
                    xmlWriter.WriteEndElement();

                    xmlWriter.WriteFullEndElement();
                }
            }

            // Terminate the workspace element
            xmlWriter.WriteFullEndElement();
        }
Exemplo n.º 2
0
        /// <summary>
        /// Saves docking configuration information using a provider xml writer.
        /// </summary>
        /// <param name="xmlWriter">Xml writer object.</param>
        public override void SaveElementToXml(XmlWriter xmlWriter)
        {
            // Output navigator docking element
            xmlWriter.WriteStartElement(XmlElementName);
            xmlWriter.WriteAttributeString(@"N", Name);
            xmlWriter.WriteAttributeString(@"C", DockableNavigatorControl.Pages.Count.ToString());

            // Persist each child page in turn
            KryptonDockingManager dockingManager = DockingManager;

            foreach (KryptonPage page in DockableNavigatorControl.Pages)
            {
                // Are we allowed to save the page?
                if (page.AreFlagsSet(KryptonPageFlags.AllowConfigSave))
                {
                    xmlWriter.WriteStartElement("KP");
                    CommonHelper.TextToXmlAttribute(xmlWriter, @"UN", page.UniqueName);
                    CommonHelper.TextToXmlAttribute(xmlWriter, @"S", CommonHelper.BoolToString(page is KryptonStorePage));
                    CommonHelper.TextToXmlAttribute(xmlWriter, @"V", CommonHelper.BoolToString(page.LastVisibleSet), @"True");

                    // Give event handlers a chance to save custom data with the page
                    xmlWriter.WriteStartElement(@"CPD");
                    DockPageSavingEventArgs args = new DockPageSavingEventArgs(dockingManager, xmlWriter, page);
                    dockingManager.RaisePageSaving(args);
                    xmlWriter.WriteEndElement();

                    // Terminate the page element
                    xmlWriter.WriteEndElement();
                }
            }

            // Output an xml for the contained workspace

            // Terminate the workspace element
            xmlWriter.WriteFullEndElement();
        }
Exemplo n.º 3
0
 /// <summary>
 /// Write page details to xml during save process.
 /// </summary>
 /// <param name="xmlWriter">XmlWriter to use for saving.</param>
 /// <param name="page">Reference to page.</param>
 public override void WritePageElement(XmlWriter xmlWriter, KryptonPage page)
 {
     CommonHelper.TextToXmlAttribute(xmlWriter, "UN", page.UniqueName);
     CommonHelper.TextToXmlAttribute(xmlWriter, "S", CommonHelper.BoolToString(page is KryptonStorePage));
     CommonHelper.TextToXmlAttribute(xmlWriter, "V", CommonHelper.BoolToString(page.LastVisibleSet), "True");
 }
Exemplo n.º 4
0
 /// <summary>
 /// Persists the parameters.
 /// </summary>
 /// <param name="writer">The XML writer.</param>
 void IFormatParams.Persist(XmlWriter writer)
 {
     writer.WriteElementString("BarColour", BarColour.ToArgb().ToString());
     writer.WriteElementString("GradientFill", CommonHelper.BoolToString(GradientFill));
 }