From 0ad8a5e3943746735fa6de06e089ac58c40800b6 Mon Sep 17 00:00:00 2001 From: Stefan Pluecken Date: Sat, 10 Dec 2005 23:11:45 +0000 Subject: [PATCH] add language selection to the start-wizard --- data/menu.xml | 1 + data/setup.xml | 2 +- data/skin.xml | 3 +++ data/startwizard.xml | 7 ++++--- lib/python/Components/MenuList.py | 3 ++- lib/python/Screens/LanguageSelection.py | 25 +++++++++++++++++++++++++ lib/python/Screens/Wizard.py | 18 ++++++++++++------ 7 files changed, 48 insertions(+), 11 deletions(-) diff --git a/data/menu.xml b/data/menu.xml index 485a304a..7bdc32aa 100644 --- a/data/menu.xml +++ b/data/menu.xml @@ -41,6 +41,7 @@ + diff --git a/data/setup.xml b/data/setup.xml index bdb6bde1..e04a51dc 100644 --- a/data/setup.xml +++ b/data/setup.xml @@ -39,7 +39,7 @@ config.osd.alpha config.osd.bright config.osd.contrast - config.osd.language + config.lcd.bright diff --git a/data/skin.xml b/data/skin.xml index b7b0240c..71b4b168 100644 --- a/data/skin.xml +++ b/data/skin.xml @@ -70,6 +70,9 @@ + + + diff --git a/data/startwizard.xml b/data/startwizard.xml index 89352abd..aade9c0b 100644 --- a/data/startwizard.xml +++ b/data/startwizard.xml @@ -1,6 +1,7 @@ + self["arrowdown"].moveTo(557, 232, 10) self["rc"].moveTo(500, 50, 10) @@ -23,7 +24,7 @@ self["arrowup"].startMoving() - + self["arrowup"].moveTo(740, 355, 10) self["arrowup"].startMoving() @@ -35,7 +36,7 @@ self["arrowdown"].startMoving() - + self["arrowup"].moveTo(740, 355, 10) self["arrowup"].startMoving() @@ -54,7 +55,7 @@ self["arrowdown"].startMoving() - + self["arrowup"].moveTo(740, 355, 10) self["arrowup"].startMoving() diff --git a/lib/python/Components/MenuList.py b/lib/python/Components/MenuList.py index 6fb33540..03e6be6d 100644 --- a/lib/python/Components/MenuList.py +++ b/lib/python/Components/MenuList.py @@ -6,8 +6,9 @@ from enigma import eListboxPythonStringContent, eListbox class MenuList(HTMLComponent, GUIComponent): def __init__(self, list): GUIComponent.__init__(self) + self.list = list self.l = eListboxPythonStringContent() - self.l.setList(list) + self.l.setList(self.list) def getCurrent(self): return self.l.getCurrentSelection() diff --git a/lib/python/Screens/LanguageSelection.py b/lib/python/Screens/LanguageSelection.py index e69de29b..ca7f2198 100644 --- a/lib/python/Screens/LanguageSelection.py +++ b/lib/python/Screens/LanguageSelection.py @@ -0,0 +1,25 @@ +from Screen import Screen + +from Components.MenuList import MenuList +from Components.ActionMap import ActionMap + +class LanguageSelection(Screen): + def __init__(self, session): + Screen.__init__(self, session) + + self.list = [] + self.list.append(("English", None)) + self.list.append(("German", None)) + self["list"] = MenuList(self.list) + + self["actions"] = ActionMap(["OkCancelActions"], + { + "ok": self.save, + "cancel": self.close + }) + + def save(self): + pass + + def run(self): + print "select the language here" \ No newline at end of file diff --git a/lib/python/Screens/Wizard.py b/lib/python/Screens/Wizard.py index 7687f44d..38235b12 100644 --- a/lib/python/Screens/Wizard.py +++ b/lib/python/Screens/Wizard.py @@ -39,7 +39,7 @@ class WelcomeWizard(Screen, HelpableScreen): self.currContent = name if (name == "step"): self.lastStep = int(attrs.get('number')) - self.wizard[self.lastStep] = {"text": "", "list": [], "config": {"screen": None, "args": None }, "code": ""} + self.wizard[self.lastStep] = {"text": "", "list": [], "config": {"screen": None, "args": None, "type": "" }, "code": ""} elif (name == "text"): self.wizard[self.lastStep]["text"] = str(attrs.get('value')) elif (name == "listentry"): @@ -50,6 +50,7 @@ class WelcomeWizard(Screen, HelpableScreen): if (attrs.has_key('args')): print "has args" self.wizard[self.lastStep]["config"]["args"] = str(attrs.get('args')) + self.wizard[self.lastStep]["config"]["type"] = str(attrs.get('type')) def endElement(self, name): self.currContent = "" if name == 'code': @@ -153,14 +154,14 @@ class WelcomeWizard(Screen, HelpableScreen): def up(self): if (self.wizard[self.currStep]["config"]["screen"] != None): - self["config"].instance.moveSelection(self["config"].instance.moveUp) + self[self.currConfig].instance.moveSelection(self[self.currConfig].instance.moveUp) elif (len(self.wizard[self.currStep]["list"]) > 0): self["list"].instance.moveSelection(self["config"].instance.moveUp) print "up" def down(self): if (self.wizard[self.currStep]["config"]["screen"] != None): - self["config"].instance.moveSelection(self["config"].instance.moveDown) + self[self.currConfig].instance.moveSelection(self[self.currConfig].instance.moveDown) elif (len(self.wizard[self.currStep]["list"]) > 0): self["list"].instance.moveSelection(self["config"].instance.moveDown) print "down" @@ -181,14 +182,19 @@ class WelcomeWizard(Screen, HelpableScreen): self["config"].instance.setZPosition(1) if (self.wizard[self.currStep]["config"]["screen"] != None): - self["config"].instance.setZPosition(2) + if self.wizard[self.currStep]["config"]["type"] == "ConfigList": + self.currConfig = "config" + elif self.wizard[self.currStep]["config"]["type"] == "MenuList": + self.currConfig = "list" + + self[self.currConfig].instance.setZPosition(2) 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) - self.configInstance["config"] = self["config"] + self[self.currConfig].l.setList(self.configInstance[self.currConfig].list) + self.configInstance[self.currConfig] = self[self.currConfig] else: self["config"].l.setList([]) -- 2.30.2