From: Stefan Pluecken Date: Fri, 9 Dec 2005 11:29:37 +0000 (+0000) Subject: use step attribute to point to the next step for a listbox entry in the wizard X-Git-Tag: 2.6.0~4769 X-Git-Url: https://git.cweiske.de/enigma2.git/commitdiff_plain/c08166b6d0671d136ca9c62ce9c915e426cff2f7 use step attribute to point to the next step for a listbox entry in the wizard scanning is now possible through the wizard --- diff --git a/data/startwizard.xml b/data/startwizard.xml index de999de1..81d33b32 100644 --- a/data/startwizard.xml +++ b/data/startwizard.xml @@ -11,8 +11,8 @@ self["rc"].startMoving() - - + + self["arrowdown"].moveTo(557, 200, 10) diff --git a/lib/python/Screens/Satconfig.py b/lib/python/Screens/Satconfig.py index 8748438a..f2cdaace 100644 --- a/lib/python/Screens/Satconfig.py +++ b/lib/python/Screens/Satconfig.py @@ -87,10 +87,13 @@ class NimSetup(Screen): if (self["config"].getCurrent()[1].parent.enabled == True): self["config"].handleKey(config.key[str(number)]) - def keySave(self): + def run(self): for x in self["config"].list: x[1].save() nimmanager.sec.update() + + def keySave(self): + self.run() self.close() def keyCancel(self): diff --git a/lib/python/Screens/ScanSetup.py b/lib/python/Screens/ScanSetup.py index 2f204b03..648e6e7f 100644 --- a/lib/python/Screens/ScanSetup.py +++ b/lib/python/Screens/ScanSetup.py @@ -301,9 +301,11 @@ class ScanSetup(Screen): feid = config.scan.nims.value # flags |= eComponentScan.scanSearchBAT - self.session.openWithCallback(self.keyCancel, ServiceScan, tlist, feid, flags) + self.session.openWithCallback(self.doNothing, ServiceScan, tlist, feid, flags) #self.close() + def doNothing(self): + pass def keyCancel(self): for x in self["config"].list: @@ -312,7 +314,7 @@ class ScanSetup(Screen): class ScanSimple(Screen): - def keyOK(self): + def run(self): print "start scan for sats:" tlist = [ ] for x in self.list: @@ -321,8 +323,23 @@ class ScanSimple(Screen): getInitialTransponderList(tlist, x[1].parent.configPath) feid = 0 # FIXME - self.session.openWithCallback(self.keyCancel, ServiceScan, tlist, feid, eComponentScan.scanNetworkSearch) + self.session.openWithCallback(self.doNothing, ServiceScan, tlist, feid, eComponentScan.scanNetworkSearch) + + def keyGo(self): + print "start scan for sats:" + tlist = [ ] + for x in self.list: + if x[1].parent.value == 0: + print " " + str(x[1].parent.configPath) + getInitialTransponderList(tlist, x[1].parent.configPath) + + feid = 0 # FIXME + self.session.openWithCallback(self.doNothing, ServiceScan, tlist, feid, eComponentScan.scanNetworkSearch) + + def doNothing(self): + pass + def keyCancel(self): self.close() @@ -343,7 +360,7 @@ class ScanSimple(Screen): self["actions"] = ActionMap(["SetupActions"], { - "ok": self.keyOK, + "ok": self.keyGo, "cancel": self.keyCancel, "left": self.keyLeft, "right": self.keyRight, diff --git a/lib/python/Screens/Wizard.py b/lib/python/Screens/Wizard.py index b7c149dd..055bdf27 100644 --- a/lib/python/Screens/Wizard.py +++ b/lib/python/Screens/Wizard.py @@ -43,7 +43,7 @@ class WelcomeWizard(Screen, HelpableScreen): 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'))) + self.wizard[self.lastStep]["list"].append((str(attrs.get('caption')), str(attrs.get('step')))) elif (name == "config"): exec "from Screens." + str(attrs.get('module')) + " import *" self.wizard[self.lastStep]["config"]["screen"] = eval(str(attrs.get('screen'))) @@ -99,16 +99,16 @@ class WelcomeWizard(Screen, HelpableScreen): "right": self.right, "up": self.up, "down": self.down, - #"1": self.keyNumberGlobal, - #"2": self.keyNumberGlobal, - #"3": self.keyNumberGlobal, - #"4": self.keyNumberGlobal, - #"5": self.keyNumberGlobal, - #"6": self.keyNumberGlobal, - #"7": self.keyNumberGlobal, - #"8": self.keyNumberGlobal, - #"9": self.keyNumberGlobal, - #"0": self.keyNumberGlobal + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal, + "0": self.keyNumberGlobal }, -1) #self["actions"] = HelpableActionMap(self, "OkCancelActions", @@ -117,6 +117,18 @@ class WelcomeWizard(Screen, HelpableScreen): #}) def ok(self): + if (self.wizard[self.currStep]["config"]["screen"] != None): + self.configInstance.run() + + if (len(self.wizard[self.currStep]["list"]) > 0): + nextStep = self.wizard[self.currStep]["list"][self["list"].l.getCurrentSelectionIndex()][1] + if nextStep == "end": + self.currStep = self.numSteps + elif nextStep == "next": + pass + else: + self.currStep = int(nextStep) - 1 + if (self.currStep == self.numSteps): # wizard finished config.misc.firstrun.value = 0; config.misc.firstrun.save() @@ -125,6 +137,10 @@ class WelcomeWizard(Screen, HelpableScreen): self.currStep += 1 self.updateValues() + def keyNumberGlobal(self, number): + if (self.wizard[self.currStep]["config"]["screen"] != None): + self.configInstance.keyNumberGlobal(number) + def left(self): if (self.wizard[self.currStep]["config"]["screen"] != None): self.configInstance.keyLeft() @@ -160,7 +176,7 @@ class WelcomeWizard(Screen, HelpableScreen): if (len(self.wizard[self.currStep]["list"]) > 0): self["list"].instance.setZPosition(2) for x in self.wizard[self.currStep]["list"]: - self.list.append((x, None)) + self.list.append((x[0], None)) self["list"].l.setList(self.list) self["config"].instance.setZPosition(1)