2004-06-06 Atsushi Enomoto <atsushi@ximian.com>
authorAtsushi Eno <atsushieno@gmail.com>
Sun, 6 Jun 2004 10:57:08 +0000 (10:57 -0000)
committerAtsushi Eno <atsushieno@gmail.com>
Sun, 6 Jun 2004 10:57:08 +0000 (10:57 -0000)
* XmlTextWriter.cs : Improved indenting. For children of a mixed
  content element, it won't be indented.

svn path=/trunk/mcs/; revision=28905

mcs/class/System.XML/System.Xml/ChangeLog
mcs/class/System.XML/System.Xml/XmlTextWriter.cs

index b4e19913a55265845877659729b202792abbfb4a..ff9e0f077711ed608253a8df4e781bcff65b4a72 100644 (file)
@@ -1,3 +1,8 @@
+2004-06-06  Atsushi Enomoto <atsushi@ximian.com>
+
+       * XmlTextWriter.cs : Improved indenting. For children of a mixed 
+         content element, it won't be indented.
+
 2004-06-06  Atsushi Enomoto <atsushi@ximian.com>
 
        * DTDObjectModel.cs,
index b7ad710069c989aae8d58280862ba223c7cd7c78..7b05e90633bed1cefc68bce7e7b57fb093a6685f 100644 (file)
@@ -114,6 +114,14 @@ openElements [openElementCount - 1]).IndentingOverriden;
                        }
                }
 
+               private bool ParentIndentingOverriden {
+                       get {
+                               if (openElementCount < 2)
+                                       return false;
+                               return ((XmlTextWriterOpenElement) openElements [openElementCount - 2]).IndentingOverriden;
+                       }
+               }
+
                public int Indentation {
                        get { return indentation; }
                        set {
@@ -522,7 +530,8 @@ openElements [openElementCount - 1]).IndentingOverriden;
                                        WriteEndAttribute ();
                                if (fullEndElement) {
                                        w.Write ('>');
-                                       w.Write (indentFormatting);
+                                       if (!ParentIndentingOverriden)
+                                               w.Write (indentFormatting);
                                        w.Write ("</");
                                        XmlTextWriterOpenElement el = (XmlTextWriterOpenElement) openElements [openElementCount - 1];
                                        if (el.Prefix != String.Empty) {