aboutsummaryrefslogtreecommitdiff
path: root/lib/python
diff options
context:
space:
mode:
authorStefan Pluecken <stefan.pluecken@multimedia-labs.de>2005-12-09 09:38:17 +0000
committerStefan Pluecken <stefan.pluecken@multimedia-labs.de>2005-12-09 09:38:17 +0000
commita4332bd8d55eb4b54972f64c91aefd42f388de52 (patch)
treee5bb430da56480a82558cf344661ff11d8b80f8b /lib/python
parent1a1ed192c7d9009498b004f52334e3c705380a1c (diff)
downloadenigma2-a4332bd8d55eb4b54972f64c91aefd42f388de52.tar.gz
enigma2-a4332bd8d55eb4b54972f64c91aefd42f388de52.zip
use slotid as parameter for the SatSetup instead of nim for easier inclusing into the start wizard
add ability to pass arguments to a screen (the args-tag is evaluated with eval())
Diffstat (limited to 'lib/python')
-rw-r--r--lib/python/Screens/Satconfig.py9
-rw-r--r--lib/python/Screens/Wizard.py19
2 files changed, 16 insertions, 12 deletions
diff --git a/lib/python/Screens/Satconfig.py b/lib/python/Screens/Satconfig.py
index e6033ebc..8748438a 100644
--- a/lib/python/Screens/Satconfig.py
+++ b/lib/python/Screens/Satconfig.py
@@ -98,13 +98,10 @@ class NimSetup(Screen):
x[1].cancel()
self.close()
- def __init__(self, session, nim = None):
+ def __init__(self, session, slotid):
Screen.__init__(self, session)
- if nim == None:
- self.nim = nimmanager.nimList()[0][1]
- else:
- self.nim = nim
+ self.nim = nimmanager.nimList()[slotid][1]
self["actions"] = NumberActionMap(["SetupActions"],
{
@@ -144,5 +141,5 @@ class NimSelection(Screen):
def okbuttonClick(self):
selection = self["nimlist"].getCurrent()
if selection[1].nimType != -1: #unknown/empty
- self.session.open(NimSetup, selection[1])
+ self.session.open(NimSetup, selection[1].slotid)
\ No newline at end of file
diff --git a/lib/python/Screens/Wizard.py b/lib/python/Screens/Wizard.py
index ac85b4c6..f0d99a9e 100644
--- a/lib/python/Screens/Wizard.py
+++ b/lib/python/Screens/Wizard.py
@@ -35,18 +35,21 @@ class WelcomeWizard(Screen, HelpableScreen):
self.currContent = ""
def startElement(self, name, attrs):
+ print name
self.currContent = name
if (name == "step"):
self.lastStep = int(attrs.get('number'))
- self.wizard[self.lastStep] = {"text": "", "list": [], "config": None, "code": ""}
+ self.wizard[self.lastStep] = {"text": "", "list": [], "config": {"screen": None, "args": None }, "code": ""}
elif (name == "text"):
self.wizard[self.lastStep]["text"] = str(attrs.get('value'))
elif (name == "listentry"):
self.wizard[self.lastStep]["list"].append(str(attrs.get('caption')))
elif (name == "config"):
exec "from Screens." + str(attrs.get('module')) + " import *"
- self.wizard[self.lastStep]["config"] = eval(str(attrs.get('screen')))
-
+ self.wizard[self.lastStep]["config"]["screen"] = eval(str(attrs.get('screen')))
+ if (attrs.has_key('args')):
+ print "has args"
+ self.wizard[self.lastStep]["config"]["args"] = str(attrs.get('args'))
def endElement(self, name):
self.currContent = ""
if name == 'code':
@@ -105,9 +108,13 @@ class WelcomeWizard(Screen, HelpableScreen):
self.list.append((x, None))
self["list"].l.setList(self.list)
- if (self.wizard[self.currStep]["config"] != None):
- print self.wizard[self.currStep]["config"]
- self.configInstance = self.session.instantiateDialog(self.wizard[self.currStep]["config"])
+ if (self.wizard[self.currStep]["config"]["screen"] != None):
+ print self.wizard[self.currStep]["config"]["screen"]
+ if self.wizard[self.currStep]["config"]["args"] == None:
+ self.configInstance = self.session.instantiateDialog(self.wizard[self.currStep]["config"]["screen"])
+ else:
+ self.configInstance = self.session.instantiateDialog(self.wizard[self.currStep]["config"]["screen"], eval(self.wizard[self.currStep]["config"]["args"]))
+
self["config"].l.setList(self.configInstance["config"].list)
else:
self["config"].l.setList([])