diff options
author | Ryan Rix <phrkonaleash@gmail.com> | 2009-12-04 21:48:14 -0700 |
---|---|---|
committer | Ryan Rix <phrkonaleash@gmail.com> | 2009-12-04 21:48:14 -0700 |
commit | d228176beddc3c66664cf95956b58c6e49c1d922 (patch) | |
tree | 0bbcacddb7882ab4bfbf83c586b6f7ac5d96c20a | |
parent | d87d53743b65d2e9f40ca24bafeb745885969c21 (diff) | |
download | fedora-tour-d228176beddc3c66664cf95956b58c6e49c1d922.tar.gz fedora-tour-d228176beddc3c66664cf95956b58c6e49c1d922.tar.xz fedora-tour-d228176beddc3c66664cf95956b58c6e49c1d922.zip |
Maybe finished parser
-rw-r--r-- | backend/tour_menuobject.py | 42 |
1 files changed, 34 insertions, 8 deletions
diff --git a/backend/tour_menuobject.py b/backend/tour_menuobject.py index 3ae853f..8ca7949 100644 --- a/backend/tour_menuobject.py +++ b/backend/tour_menuobject.py @@ -26,10 +26,15 @@ class MenuNode: parent = 0 class MenuObject: - isValid = True; - currenElement = False; - rootNode = False; - activeNode = False; + isValid = True + currenElement = False + rootNode = False + activeNode = False + + Icon = False + DocRoot = False + Locale = False + Priority = False def __init__(self,package): if not os.path.isfile(package): @@ -43,11 +48,12 @@ class MenuObject: self.parser.ParseFile(open(package,"r")) - def addNode(self,parent): + def addNode(self,parent,nodeType): node = MenuNode() node.nodes = list() node.parent = False + node.nodeType = nodeType if parent != False: node.parent = parent @@ -58,6 +64,21 @@ class MenuObject: def parserCharData(self, data): if self.currenElement == False: pass + + elif self.currentElement == "DisplayName": + self.activeNode.displayName = data + + elif self.currentElement == "Icon": + self.IconID = data + + elif self.currentElement == "DocRoot": + self.DocRoot = data + + elif self.currentElement == "Locale": + self.Locale = data + + elif self.currentElement == "Priority": + self.Priority = data def parserStartElement(self, name, attrs): print "Encountered "+name+" node Start" @@ -65,11 +86,11 @@ class MenuObject: self.currentElement = name if name == "Package": - self.rootNode = self.addNode(False) + self.rootNode = self.addNode(False,"Package") self.activeNode = self.rootNode elif name == "Page": - self.activeNode = self.addNode(self.activeNode) + self.activeNode = self.addNode(self.activeNode, "Page") elif name == "DisplayName": self.currentElement = "DisplayName" @@ -85,6 +106,11 @@ class MenuObject: sys.exit() def parserEndElement(self, name): - print name + print "Encountered "+name+" node End" + + self.currentElement == False + + if name == "Page": + self.activeNode = self.activeNode.parent print MenuObject("../data/package.xml").isValid
\ No newline at end of file |