from Screen import Screen from Screens.HelpMenu import HelpableScreen from Components.Label import Label from Components.Slider import Slider from Components.ActionMap import HelpableActionMap from Components.config import config, configElementBoolean from Components.Pixmap import * config.misc.firstrun = configElementBoolean("config.misc.firstrun", 1); class WelcomeWizard(Screen, HelpableScreen): skin = """ """ text = [_("Hello User.\n\nThis start-wizard will guide you through the basic setup of your Dreambox."), _("Bla"), _("Blub")] def __init__(self, session): self.skin = WelcomeWizard.skin self.numSteps = 3 self.currStep = 1 Screen.__init__(self, session) HelpableScreen.__init__(self) self["text"] = Label() self["rc"] = Pixmap() self["arrowdown"] = MovingPixmap() self["arrowdown"].moveTo(557, 232, 100) self.onShown.append(self["arrowdown"].startMoving) self["step"] = Label() self["stepslider"] = Slider(1, self.numSteps) self.updateValues() self["actions"] = HelpableActionMap(self, "OkCancelActions", { "ok": (self.ok, _("Close this Screen...")), }) def updateValues(self): self["text"].setText(self.text[self.currStep - 1]) self["step"].setText(_("Step ") + str(self.currStep) + "/" + str(self.numSteps)) self["stepslider"].setValue(self.currStep) def ok(self): if (self.currStep == self.numSteps): # wizard finished config.misc.firstrun.value = 0; config.misc.firstrun.save() self.session.close() else: self.currStep += 1 self.updateValues() def listActiveWizards(): wizards = [ ] if config.misc.firstrun.value: wizards.append(WelcomeWizard) return wizards