diff options
author | Ryan Rix <phrkonaleash@gmail.com> | 2009-12-04 21:39:17 -0700 |
---|---|---|
committer | Ryan Rix <phrkonaleash@gmail.com> | 2009-12-04 21:39:17 -0700 |
commit | d87d53743b65d2e9f40ca24bafeb745885969c21 (patch) | |
tree | bdb0ca6d9ca7b0941f8a00aec7f73e634129dd82 /backend | |
parent | 28555e043d0c9779d4f40e3876237d78c7b4dcf9 (diff) | |
download | fedora-tour-d87d53743b65d2e9f40ca24bafeb745885969c21.tar.gz fedora-tour-d87d53743b65d2e9f40ca24bafeb745885969c21.tar.xz fedora-tour-d87d53743b65d2e9f40ca24bafeb745885969c21.zip |
Work
Diffstat (limited to 'backend')
-rw-r--r-- | backend/tour_menuobject.py | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/backend/tour_menuobject.py b/backend/tour_menuobject.py index 9149902..3ae853f 100644 --- a/backend/tour_menuobject.py +++ b/backend/tour_menuobject.py @@ -20,6 +20,7 @@ import io import os.path import xml.parsers.expat +import sys class MenuNode: parent = 0 @@ -46,6 +47,7 @@ class MenuObject: node = MenuNode() node.nodes = list() + node.parent = False if parent != False: node.parent = parent @@ -60,23 +62,26 @@ class MenuObject: def parserStartElement(self, name, attrs): print "Encountered "+name+" node Start" + self.currentElement = name + if name == "Package": self.rootNode = self.addNode(False) - self.currentElement = "Package" + self.activeNode = self.rootNode elif name == "Page": self.activeNode = self.addNode(self.activeNode) - - self.currentElement = "Page" elif name == "DisplayName": self.currentElement = "DisplayName" - elif name == "Icon": - if self.rootNode == self.activeNode: - self.currentElement = "Icon" - else: - print "<Icon> node is only allowed underneath the <Package> Node. Please file a bug on the Fedora-tour Fedora component at http://bugzilla.redhat.com" + elif name == "Icon" or name == "DocRoot" or name == "Locale" or name == "Priority": + """ + These tags are only allowed under root, so we should err if this happens. + """ + if self.activeNode.parent != False: + print self.rootNode + print self.activeNode + print "<"+name+"> node is only allowed underneath the <Package> Node. Please file a bug on the Fedora-tour Fedora component at http://bugzilla.redhat.com" sys.exit() def parserEndElement(self, name): |