X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1f780e48af479e7bf9a07eaaa1ab6b41f1ffb17b..efa5f7095fbdca6026a4fb5cf1be3d6eb0df8893:/wxPython/samples/ide/activegrid/util/xmlprettyprinter.py diff --git a/wxPython/samples/ide/activegrid/util/xmlprettyprinter.py b/wxPython/samples/ide/activegrid/util/xmlprettyprinter.py index 29dbf16be3..97d74130cd 100644 --- a/wxPython/samples/ide/activegrid/util/xmlprettyprinter.py +++ b/wxPython/samples/ide/activegrid/util/xmlprettyprinter.py @@ -10,8 +10,7 @@ # License: wxWindows License #---------------------------------------------------------------------------- import xml.sax -import xml.sax.handler - +from activegrid.util.lang import * class XMLPrettyPrinter(xml.sax.ContentHandler): def __init__(self, indentationChar=' ', newlineChar='\n'): @@ -24,7 +23,7 @@ class XMLPrettyPrinter(xml.sax.ContentHandler): ## ContentHandler methods def startElement(self, name, attrs): - indentation = self.newlineChar + (self.indentationLevel * self.indentationChar) + indentation = self.newlineChar + (self.indentationChar * self.indentationLevel) # build attribute string attrstring = '' for attr in attrs.getNames(): @@ -36,6 +35,7 @@ class XMLPrettyPrinter(xml.sax.ContentHandler): self.hitCharData = False def characters(self, content): +## print "--> characters(%s)" % content self.xmlOutput += content self.hitCharData = True @@ -43,11 +43,12 @@ class XMLPrettyPrinter(xml.sax.ContentHandler): self.indentationLevel -= 1 indentation = '' if not self.hitCharData: -## indentation += self.newlineChar + (self.indentationLevel * self.indentationChar) - indentation += self.indentationLevel * self.indentationChar + indentation += self.newlineChar + (self.indentationChar * self.indentationLevel) +## indentation += self.indentationChar * self.indentationLevel else: self.hitCharData = False - self.xmlOutput += '%s%s' % (indentation, self.elementStack.pop(), self.newlineChar) +## self.xmlOutput += '%s%s' % (indentation, self.elementStack.pop(), self.newlineChar) + self.xmlOutput += '%s' % (indentation, self.elementStack.pop()) def getXMLString(self): return self.xmlOutput[1:] @@ -57,7 +58,7 @@ def xmlprettyprint(xmlstr, spaces=4): xml.sax.parseString(xmlstr, xpp) return xpp.getXMLString() -if __name__ == '__main__': +if isMain(__name__): simpleTestString = """some texttwo's data""" - print prettyprint(simpleTestString) + print xmlprettyprint(simpleTestString)