--- /dev/null
+# from PyQt4.QtXml import QDomNode
+
+class domItem:
+ # wrapper around PyQt4.QtXml.QDomNode
+ # it keeps an hash of childrens for
+ # performance reasons
+
+ def __init__(self, node, row, parent = 0):
+ # node is of type PyQt4.QtXml.QDomNode
+ self.domNode = node
+ self.parentItem = parent
+ self.rowNumber = row
+ self.childItems = {}
+
+ def child(self, i):
+ if i in self.childItems:
+ return self.childItems[i]
+ if i >= 0 and i < self.domNode.childNodes().count():
+ childNode = self.domNode.childNodes().item(i)
+ childItem = domItem(childNode, i, self)
+ self.childItems[i] = childItem
+ return childItem
+ return None
+
+ def parent(self):
+ return self.parentItem
+
+ def node(self):
+ return self.domNode
+
+ def row(self):
+ return self.rowNumber
+