Esempio n. 1
0
        public void WriteTo(XmlWriter x)
        {
            x.WriteStartElement("DefaultCompiler");
            x.WriteString(DefaultCompiler);
            x.WriteEndElement();

            foreach (var cmp in Compilers)
            {
                x.WriteStartElement("Compiler");
                x.WriteAttributeString("Name", cmp.Vendor);

                cmp.SaveTo(x);

                x.WriteEndElement();
            }

            x.WriteStartElement("ResCmp");
            Win32ResourceCompiler.Instance.Save(x);
            x.WriteEndElement();

            x.WriteStartElement("CompletionOptions");
            CompletionOptions.Instance.Save(x);
            x.WriteEndElement();

            x.WriteStartElement("DocumentOutline");
            Outline.Save(x);
            x.WriteEndElement();

            x.WriteStartElement("FormattingCorrectsIndentOnly");
            x.WriteString(Formatting.DCodeFormatter.IndentCorrectionOnly ? "true" : "false");
            x.WriteEndElement();

            x.WriteStartElement("UnittestSettings");
            UnittestSettings.Save(x);
            x.WriteEndElement();
        }
Esempio n. 2
0
        public ICustomXmlSerializer ReadFrom(XmlReader x)
        {
            if (!x.Read())
            {
                return(this);
            }

            while (x.Read())
            {
                switch (x.LocalName)
                {
                case "DefaultCompiler":
                    if (x.MoveToAttribute("Name"))
                    {
                        DefaultCompiler = x.ReadContentAsString();
                    }
                    else
                    {
                        DefaultCompiler = x.ReadString();
                    }
                    break;

                case "Compiler":
                    var vendor = "";

                    if (x.MoveToAttribute("Name"))
                    {
                        vendor = x.ReadContentAsString();

                        x.MoveToElement();
                    }

                    var cmp = GetCompiler(vendor) ?? new DCompilerConfiguration(vendor);

                    cmp.ReadFrom(x.ReadSubtree());

                    Compilers.Add(cmp);
                    break;

                case "ResCmp":
                    Win32ResourceCompiler.Instance.Load(x.ReadSubtree());
                    break;

                case "DocumentOutline":
                    Outline.Load(x.ReadSubtree());
                    break;

                case "CompletionOptions":
                    CompletionOptions.Instance.Load(x.ReadSubtree());
                    break;

                case "FormattingCorrectsIndentOnly":
                    Formatting.DCodeFormatter.IndentCorrectionOnly = x.ReadString().ToLowerInvariant() == "true";
                    break;

                case "UnittestSettings":
                    UnittestSettings.Load(x.ReadSubtree());
                    break;
                }
            }

            return(this);
        }