diff options
| author | Stefan Pluecken <stefan.pluecken@multimedia-labs.de> | 2005-12-09 09:38:17 +0000 |
|---|---|---|
| committer | Stefan Pluecken <stefan.pluecken@multimedia-labs.de> | 2005-12-09 09:38:17 +0000 |
| commit | a4332bd8d55eb4b54972f64c91aefd42f388de52 (patch) | |
| tree | e5bb430da56480a82558cf344661ff11d8b80f8b /lib/python/Screens/Wizard.py | |
| parent | 1a1ed192c7d9009498b004f52334e3c705380a1c (diff) | |
| download | enigma2-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/Screens/Wizard.py')
| -rw-r--r-- | lib/python/Screens/Wizard.py | 19 |
1 files changed, 13 insertions, 6 deletions
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([]) |
