X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1f780e48af479e7bf9a07eaaa1ab6b41f1ffb17b..4219b5e7c7886ae5985b47f622253ea7f5934151:/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..4290c71693 100644 --- a/wxPython/samples/ide/activegrid/util/xmlprettyprinter.py +++ b/wxPython/samples/ide/activegrid/util/xmlprettyprinter.py @@ -9,9 +9,10 @@ # Copyright: (c) 2004-2005 ActiveGrid, Inc. # License: wxWindows License #---------------------------------------------------------------------------- +from activegrid.util.lang import * +ifDefPy() import xml.sax -import xml.sax.handler - +endIfDef() class XMLPrettyPrinter(xml.sax.ContentHandler): def __init__(self, indentationChar=' ', newlineChar='\n'): @@ -24,7 +25,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 +37,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 +45,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 +60,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)