1 from Screen import Screen
3 from Components.MenuList import MenuList
4 from Components.ActionMap import ActionMap
5 from Components.Language import language
6 from Components.LanguageList import *
7 from Components.config import config
10 class LanguageSelection(Screen):
11 def __init__(self, session):
12 Screen.__init__(self, session)
15 self["list"] = LanguageList(self.list)
17 self.onLayoutFinish.append(self.selectActiveLanguage)
19 self["actions"] = ActionMap(["OkCancelActions", "DirectionActions"],
29 def selectActiveLanguage(self):
30 activeLanguage = language.getActiveLanguage()
33 if x[0] == activeLanguage:
34 self["list"].instance.moveSelectionTo(pos)
43 language.activateLanguage(self["list"].l.getCurrentSelection()[0])
44 config.osd.language.value = self["list"].l.getCurrentSelection()[0]
45 config.osd.language.save()
46 config.misc.languageselected.value = 0
47 config.misc.languageselected.save()
48 self.setTitle(_("Language selection"))
52 if len(language.getLanguageList()) == 0: # no language available => display only english
53 self.list.append(LanguageEntryComponent("en", _("English"), "en_EN"))
55 for x in language.getLanguageList():
56 self.list.append(LanguageEntryComponent(file = x[1][3].lower(), name = _(x[1][0]), index = x[0]))
57 #self.list.sort(key=lambda x: x[1][7])
58 self["list"].l.setList(self.list)
61 self["list"].instance.moveSelection(self["list"].instance.moveUp)
66 self["list"].instance.moveSelection(self["list"].instance.moveDown)
71 self["list"].instance.moveSelection(self["list"].instance.pageUp)
76 self["list"].instance.moveSelection(self["list"].instance.pageDown)