summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRyan Rix <phrkonaleash@gmail.com>2009-12-04 21:48:14 -0700
committerRyan Rix <phrkonaleash@gmail.com>2009-12-04 21:48:14 -0700
commitd228176beddc3c66664cf95956b58c6e49c1d922 (patch)
tree0bbcacddb7882ab4bfbf83c586b6f7ac5d96c20a
parentd87d53743b65d2e9f40ca24bafeb745885969c21 (diff)
downloadfedora-tour-d228176beddc3c66664cf95956b58c6e49c1d922.tar.gz
fedora-tour-d228176beddc3c66664cf95956b58c6e49c1d922.tar.xz
fedora-tour-d228176beddc3c66664cf95956b58c6e49c1d922.zip
Maybe finished parser
-rw-r--r--backend/tour_menuobject.py42
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