from Components.Header import Header
# hack ... must be made dynamic
+from Screens.Setup import Setup
from ServiceScan import ServiceScan
from ScartLoopThrough import ScartLoopThrough
from Components.Button import Button
from xml.dom import EMPTY_NAMESPACE
from skin import elementsWithTag
+from Tools import XMLTools
+
# some screens
def doGlobal(screen):
screen["clock"] = Clock()
<item text="Standby debug">quitMainloop()</item>
<item text="Automatic Scan">self.openDialog(ServiceScan)</item>
+ <item text="Blub1">self.openSetup("rc")</item>
+ <item text="Blub2">self.openSetup("blasel")</item>
+
<item text="TV-Mode">self.setModeTV()</item>
<item text="Radio-Mode">self.setModeRadio()</item>
<item text="File-Mode">self.setModeFile()</item>
</menu>
</menu>""")
-def getText(nodelist):
- rc = ""
- for node in nodelist:
- if node.nodeType == node.TEXT_NODE:
- rc = rc + node.data
- return rc
-
def getValbyAttr(x, attr):
for p in range(x.attributes.length):
a = x.attributes.item(p)
self["sld_gamma"] = ProgressBar()
self["sld_gamma"].setValue(50)
-
-
-
class Menu(Screen):
- #add file load functions for the xml-file
- #remove old code (i.e. goScan / goClock...)
-
- def openDialog(self, dialog):
- self.session.open(dialog)
-
- def goSetup(self):
- self.session.open(configTest)
-
- def setModeTV(self):
- print "set Mode to TV"
- pass
-
- def setModeRadio(self):
- print "set Mode to Radio"
- pass
-
- def setModeFile(self):
- print "set Mode to File"
- pass
-
- def goScan(self):
- self.session.open(ServiceScan)
-
- def goClock(self):
- self.session.open(clockDisplay, Clock())
-
def okbuttonClick(self):
+ print "okbuttonClick"
selection = self["menu"].getCurrent()
selection[1]()
def nothing(self): #dummy
pass
+ def openDialog(self, dialog): # in every layer needed
+ self.session.open(dialog)
+
+ def openSetup(self, dialog):
+ self.session.open(setup, dialog)
+
def addMenu(self, destList, node):
MenuTitle = getValbyAttr(node, "text")
if MenuTitle != "": #check for title
def addItem(self, destList, node):
ItemText = getValbyAttr(node, "text")
if ItemText != "": #check for name
- b = getText(node.childNodes)
+ b = XMLTools.mergeText(node.childNodes)
if b != "": #check for function
destList.append((ItemText,boundFunction(self.evalText,b)))
else:
a = getValbyAttr(parent, "text")
self["title"] = Header(a)
+class FixedMenu(Screen):
+ def okbuttonClick(self):
+ selection = self["menu"].getCurrent()
+ selection[1]()
+
+ def __init__(self, session, title, list):
+ Screen.__init__(self, session)
+
+ self["menu"] = MenuList(list)
+
+ self["actions"] = ActionMap(["OkCancelActions"],
+ {
+ "ok": self.okbuttonClick,
+ "cancel": self.close
+ })
+
+ self["title"] = Header(title)
+
+
+class MainMenu(Menu):
+ #add file load functions for the xml-file
+ #remove old code (i.e. goScan / goClock...)
+
+ def __init__(self, *x):
+ Menu.__init__(self, *x)
+ self.skinName = "Menu"
+
+ def openDialog(self, dialog):
+ self.session.open(dialog)
+
+ def openSetup(self, dialog):
+ self.session.open(Setup, dialog)
+
+ def goSetup(self):
+ self.session.open(configTest)
+
+ def setModeTV(self):
+ print "set Mode to TV"
+ pass
+
+ def setModeRadio(self):
+ print "set Mode to Radio"
+ pass
+
+ def setModeFile(self):
+ print "set Mode to File"
+ pass
+
+ def goScan(self):
+ self.session.open(ServiceScan)
+
+ def goClock(self):
+ self.session.open(clockDisplay, Clock())