From 66ebad610be86be6a48c793b4c9c80794d66ad55 Mon Sep 17 00:00:00 2001 From: Felix Domke Date: Fri, 24 Oct 2008 00:18:55 +0000 Subject: [PATCH 1/1] add language cache to speed up language selection and wizzard --- lib/python/Components/Language.py | 22 + lib/python/Components/Makefile.am | 2 +- lib/python/Components/language_cache.py | 575 ++++++++++++++++++++++++ lib/python/Screens/LanguageSelection.py | 27 +- 4 files changed, 615 insertions(+), 11 deletions(-) create mode 100644 lib/python/Components/language_cache.py diff --git a/lib/python/Components/Language.py b/lib/python/Components/Language.py index e0094c7b..acb50e51 100644 --- a/lib/python/Components/Language.py +++ b/lib/python/Components/Language.py @@ -2,6 +2,8 @@ import gettext from Tools.Directories import SCOPE_LANGUAGE, resolveFilename +import language_cache + class Language: def __init__(self): gettext.install('enigma2', resolveFilename(SCOPE_LANGUAGE, ""), unicode=0, codeset="utf-8") @@ -10,6 +12,7 @@ class Language: self.langlist = [] # FIXME make list dynamically # name, iso-639 language, iso-3166 country. Please don't mix language&country! + # also, see "precalcLanguageList" below on how to re-create the language cache after you added a language self.addLanguage(_("English"), "en", "EN") self.addLanguage(_("German"), "de", "DE") self.addLanguage(_("Arabic"), "ar", "AE") @@ -81,4 +84,23 @@ class Language: def addCallback(self, callback): self.callbacks.append(callback) + def precalcLanguageList(self): + # excuse me for those T1, T2 hacks please. The goal was to keep the language_cache.py as small as possible, *and* + # don't duplicate these strings. + T1 = _("Please use the UP and DOWN keys to select your language. Afterwards press the OK button.") + T2 = _("Language selection") + l = open("language_cache.py", "w") + print >>l, "# -*- coding: UTF-8 -*-" + print >>l, "LANG_TEXT = {" + for language in self.langlist: + self.activateLanguage(language) + print >>l, '"%s": {' % language + for name, lang, country in self.lang.values(): + print >>l, '\t"%s_%s": "%s",' % (lang, country, _(name)) + + print >>l, '\t"T1": "%s",' % (_(T1)) + print >>l, '\t"T2": "%s",' % (_(T2)) + print >>l, '},' + print >>l, "}" + language = Language() diff --git a/lib/python/Components/Makefile.am b/lib/python/Components/Makefile.am index d3c51ab2..074e0540 100644 --- a/lib/python/Components/Makefile.am +++ b/lib/python/Components/Makefile.am @@ -18,4 +18,4 @@ install_PYTHON = \ MultiContent.py MediaPlayer.py TunerInfo.py VideoWindow.py ChoiceList.py \ Element.py Playlist.py ParentalControl.py ParentalControlList.py \ Ipkg.py SelectionList.py Scanner.py SystemInfo.py DreamInfoHandler.py \ - Task.py + Task.py language_cache.py diff --git a/lib/python/Components/language_cache.py b/lib/python/Components/language_cache.py new file mode 100644 index 00000000..046f281d --- /dev/null +++ b/lib/python/Components/language_cache.py @@ -0,0 +1,575 @@ +# -*- coding: UTF-8 -*- +LANG_TEXT = { +"en_EN": { + "fr_FR": "French", + "fi_FI": "Finnish", + "pt_PT": "Portuguese", + "it_IT": "Italian", + "no_NO": "Norwegian", + "nl_NL": "Dutch", + "el_GR": "Greek", + "hu_HU": "Hungarian", + "lt_LT": "Lithuanian", + "hr_HR": "Croatian", + "en_EN": "English", + "es_ES": "Spanish", + "ca_AD": "Catalan", + "ru_RU": "Russian", + "is_IS": "Icelandic", + "da_DK": "Danish", + "cs_CZ": "Czech", + "tr_TR": "Turkish", + "de_DE": "German", + "ar_AE": "Arabic", + "sv_SE": "Swedish", + "pl_PL": "Polish", + "T1": "Please use the UP and DOWN keys to select your language. Afterwards press the OK button.", + "T2": "Language selection", +}, +"de_DE": { + "fr_FR": "Französisch", + "fi_FI": "Finnisch", + "pt_PT": "portugiesisch", + "it_IT": "Italienisch", + "no_NO": "Norwegisch", + "nl_NL": "Holländisch", + "el_GR": "Griechisch", + "hu_HU": "Ungarisch", + "lt_LT": "litauisch", + "hr_HR": "Kroatisch", + "en_EN": "Englisch", + "es_ES": "Spanisch", + "ca_AD": "Katalanisch", + "ru_RU": "Russisch", + "is_IS": "Isländisch", + "da_DK": "Dänisch", + "cs_CZ": "Tschechisch", + "tr_TR": "Türkisch", + "de_DE": "Deutsch", + "ar_AE": "Arabisch", + "sv_SE": "Schwedisch", + "pl_PL": "Polnisch", + "T1": "Bitte benutzen Sie die Hoch/Runter-Tasten, um Ihre Sprache auszuwählen. Danach drücken Sie bitte OK.", + "T2": "Sprachauswahl", +}, +"ar_AE": { + "fr_FR": "French", + "fi_FI": "Finnish", + "pt_PT": "Portuguese", + "it_IT": "Italian", + "no_NO": "Norwegian", + "nl_NL": "Dutch", + "el_GR": "Greek", + "hu_HU": "Hungarian", + "lt_LT": "Lithuanian", + "hr_HR": "Croatian", + "en_EN": "إنجليزى", + "es_ES": "Spanish", + "ca_AD": "Catalan", + "ru_RU": "Russian", + "is_IS": "Icelandic", + "da_DK": "Danish", + "cs_CZ": "Czech", + "tr_TR": "Turkish", + "de_DE": "المانـى", + "ar_AE": "Arabic", + "sv_SE": "Swedish", + "pl_PL": "Polish", + "T1": "Please use the UP and DOWN keys to select your language. Afterwards press the OK button.", + "T2": "إختيار اللغه", +}, +"ca_AD": { + "fr_FR": "Francès", + "fi_FI": "Finlandès", + "pt_PT": "Portuguès", + "it_IT": "Italià", + "no_NO": "Noruec", + "nl_NL": "Holandès", + "el_GR": "Grec", + "hu_HU": "Hongarès", + "lt_LT": "Lituà", + "hr_HR": "Croat", + "en_EN": "Anglès", + "es_ES": "Espanyol", + "ca_AD": "Català", + "ru_RU": "Rus", + "is_IS": "Islandès", + "da_DK": "Danès", + "cs_CZ": "Txec", + "tr_TR": "Turc", + "de_DE": "Alemany", + "ar_AE": "Àrab", + "sv_SE": "Suec", + "pl_PL": "Polish", + "T1": "Please use the UP and DOWN keys to select your language. Afterwards press the OK button.", + "T2": "Selecció d'idioma", +}, +"hr_HR": { + "fr_FR": "Francuski", + "fi_FI": "Finski", + "pt_PT": "Portugalski", + "it_IT": "Talijanski", + "no_NO": "Norveški", + "nl_NL": "Nizozemski", + "el_GR": "Grčki", + "hu_HU": "Mađarski", + "lt_LT": "Litvanski", + "hr_HR": "Hrvatski", + "en_EN": "Engleski", + "es_ES": "Španjolski", + "ca_AD": "Katalonski", + "ru_RU": "Ruski", + "is_IS": "Islandski", + "da_DK": "Danski", + "cs_CZ": "Češki", + "tr_TR": "Turski", + "de_DE": "Njemački", + "ar_AE": "Arabski", + "sv_SE": "Švedski", + "pl_PL": "Poljski", + "T1": "Please use the UP and DOWN keys to select your language. Afterwards press the OK button.", + "T2": "Odaberite Jezik", +}, +"cs_CZ": { + "fr_FR": "Francouzsky", + "fi_FI": "Finsky", + "pt_PT": "Portugalsky", + "it_IT": "Italsky", + "no_NO": "Norsky", + "nl_NL": "Holandsky", + "el_GR": "Řecky", + "hu_HU": "Maďarsky", + "lt_LT": "Litevsky", + "hr_HR": "Chorvatsky", + "en_EN": "Anglicky", + "es_ES": "Španělsky", + "ca_AD": "Katalánsky", + "ru_RU": "Rusky", + "is_IS": "Islandsky", + "da_DK": "Dánsky", + "cs_CZ": "Česky", + "tr_TR": "Turecky", + "de_DE": "Německy", + "ar_AE": "Arabsky", + "sv_SE": "Švédsky", + "pl_PL": "Polsky", + "T1": "Please use the UP and DOWN keys to select your language. Afterwards press the OK button.", + "T2": "Výběr jazyka", +}, +"da_DK": { + "fr_FR": "Fransk", + "fi_FI": "Finsk", + "pt_PT": "Portugisisk", + "it_IT": "Italiensk", + "no_NO": "Norsk", + "nl_NL": "Hollandsk", + "el_GR": "Græsk", + "hu_HU": "Ungarsk", + "lt_LT": "Litauisk", + "hr_HR": "Kroatisk", + "en_EN": "Engelsk", + "es_ES": "Spansk", + "ca_AD": "Catalansk", + "ru_RU": "Russisk", + "is_IS": "Islandsk", + "da_DK": "Dansk", + "cs_CZ": "Tjekkisk", + "tr_TR": "Tyrkisk", + "de_DE": "Tysk", + "ar_AE": "Arabisk", + "sv_SE": "Svensk", + "pl_PL": "Polsk", + "T1": "Benyt venligst OP og NED tasten til at vælge sprog. Tryk bagefter på OK knappen.", + "T2": "Valg af Sprog", +}, +"nl_NL": { + "fr_FR": "Frans", + "fi_FI": "Fins", + "pt_PT": "Portugees", + "it_IT": "Italiaans", + "no_NO": "Noors", + "nl_NL": "Nederlands", + "el_GR": "Grieks", + "hu_HU": "Hongaars", + "lt_LT": "Litouws", + "hr_HR": "Kroatisch", + "en_EN": "Engels", + "es_ES": "Spaans", + "ca_AD": "Catalaans", + "ru_RU": "Russisch", + "is_IS": "Ijslands", + "da_DK": "Deens", + "cs_CZ": "Tsjechisch", + "tr_TR": "Turks", + "de_DE": "Duits", + "ar_AE": "Arabisch", + "sv_SE": "Zweeds", + "pl_PL": "Pools", + "T1": "Gebruik de omhoog/omlaag toeten om de gewenste taal te selecteren. Druk daarna op OK.", + "T2": "Taalkeuze", +}, +"fi_FI": { + "fr_FR": "Ranska", + "fi_FI": "Suomi", + "pt_PT": "Portugali", + "it_IT": "Italia", + "no_NO": "Norja", + "nl_NL": "Hollanti", + "el_GR": "Kreikka", + "hu_HU": "Unkari", + "lt_LT": "Liettua", + "hr_HR": "Kroatia", + "en_EN": "Englanti", + "es_ES": "Espanja", + "ca_AD": "Katalaani", + "ru_RU": "Venäjä", + "is_IS": "Islanti", + "da_DK": "Tanska", + "cs_CZ": "Tšekki", + "tr_TR": "Turkki", + "de_DE": "Saksa", + "ar_AE": "Arabia", + "sv_SE": "Ruotsi", + "pl_PL": "Puola", + "T1": "Valitse kieli ylös/alas nappuloilla ja paina OK.", + "T2": "Kielivalinta", +}, +"fr_FR": { + "fr_FR": "Français", + "fi_FI": "Finlandais", + "pt_PT": "Portugais", + "it_IT": "Italien", + "no_NO": "Norvégien", + "nl_NL": "Hollandais", + "el_GR": "Grèque", + "hu_HU": "hongrois", + "lt_LT": "Lithuanien", + "hr_HR": "Croate", + "en_EN": "Anglais", + "es_ES": "Espagnol", + "ca_AD": "Catalan", + "ru_RU": "Russe", + "is_IS": "Islandais", + "da_DK": "Danois", + "cs_CZ": "Tchèque", + "tr_TR": "Turke", + "de_DE": "Allemand", + "ar_AE": "Arabe", + "sv_SE": "Suédois", + "pl_PL": "Polonais", + "T1": "Veuillez utiliser les touches HAUT et BAS pour choisir votre langage. Ensuite presser le bouton OK.", + "T2": "Sélection de la langue", +}, +"el_GR": { + "fr_FR": "Γαλλικά", + "fi_FI": "Φιλλανδικά", + "pt_PT": "Πορτογαλλικά", + "it_IT": "Ιταλικά", + "no_NO": "Νορβηφικά", + "nl_NL": "Ολλανδικά", + "el_GR": "Ελληνικά", + "hu_HU": "Ουγγαρεζικά", + "lt_LT": "Λιθουανικά", + "hr_HR": "Κροάτικα", + "en_EN": "Αγγλικά", + "es_ES": "Ισπανικά", + "ca_AD": "Catalan", + "ru_RU": "Ρωσικά", + "is_IS": "Ισλανδικά", + "da_DK": "Δανικά", + "cs_CZ": "Τσέχικα", + "tr_TR": "Τούρκικα", + "de_DE": "Γερμανικά", + "ar_AE": "Αραβικά", + "sv_SE": "Σουιδεζικά", + "pl_PL": "Πολωνικά", + "T1": "Please use the UP and DOWN keys to select your language. Afterwards press the OK button.", + "T2": "Επιλογή γλώσσας", +}, +"hu_HU": { + "fr_FR": "Francia", + "fi_FI": "Finn", + "pt_PT": "Portugál", + "it_IT": "Olasz", + "no_NO": "Norvég", + "nl_NL": "Holland", + "el_GR": "Görög", + "hu_HU": "Magyar", + "lt_LT": "Litván", + "hr_HR": "Horvát", + "en_EN": "Angol", + "es_ES": "Spanyol", + "ca_AD": "Katalán", + "ru_RU": "Orosz", + "is_IS": "Izlandi", + "da_DK": "Dán", + "cs_CZ": "Cseh", + "tr_TR": "Török", + "de_DE": "Német", + "ar_AE": "Arab", + "sv_SE": "Svéd", + "pl_PL": "Lengyel", + "T1": "Please use the UP and DOWN keys to select your language. Afterwards press the OK button.", + "T2": "Válasszon nyelvet", +}, +"lt_LT": { + "fr_FR": "Prancūzų", + "fi_FI": "Suomių", + "pt_PT": "Portugalų", + "it_IT": "Italų", + "no_NO": "Norvegų", + "nl_NL": "Olandų", + "el_GR": "Graikų", + "hu_HU": "Vengrų", + "lt_LT": "Lietuvių", + "hr_HR": "Kroatų", + "en_EN": "Anglų", + "es_ES": "Ispanų", + "ca_AD": "Katalonų", + "ru_RU": "Rusų", + "is_IS": "Islandų", + "da_DK": "Danų", + "cs_CZ": "Čekų", + "tr_TR": "Turkų", + "de_DE": "Vokiečių", + "ar_AE": "Arabų", + "sv_SE": "Švedų", + "pl_PL": "Lenkų", + "T1": "Prašome naudoti AUKŠTYN IR ŽEMYN mygtukus, kad išsirinktumėte savo kalbą. Po to spauskite OK mygtuką.", + "T2": "Kalbos pasirinkimas", +}, +"is_IS": { + "fr_FR": "Franska", + "fi_FI": "Finnska", + "pt_PT": "Portúgalska", + "it_IT": "Ítalska", + "no_NO": "Norska", + "nl_NL": "Hollenska", + "el_GR": "Gríska", + "hu_HU": "Ungverska", + "lt_LT": "Litháíska", + "hr_HR": "Króatíska", + "en_EN": "Enska", + "es_ES": "Spænska", + "ca_AD": "Catalan", + "ru_RU": "Rússneska", + "is_IS": "Íslenska", + "da_DK": "Danska", + "cs_CZ": "Tékkneska", + "tr_TR": "Tyrkneska", + "de_DE": "Þýska", + "ar_AE": "Arabíska", + "sv_SE": "Sænskt", + "pl_PL": "Pólska", + "T1": "Please use the UP and DOWN keys to select your language. Afterwards press the OK button.", + "T2": "Val tungumáls", +}, +"it_IT": { + "fr_FR": "Francese", + "fi_FI": "Finlandese", + "pt_PT": "Portoghese", + "it_IT": "Italiano", + "no_NO": "Norvegese", + "nl_NL": "Olandese", + "el_GR": "Greco", + "hu_HU": "Ungherese", + "lt_LT": "Lituano", + "hr_HR": "Croato", + "en_EN": "Inglese", + "es_ES": "Spagnolo", + "ca_AD": "Catalano", + "ru_RU": "Russo", + "is_IS": "Islandese", + "da_DK": "Danese", + "cs_CZ": "Ceco", + "tr_TR": "Turco", + "de_DE": "Tedesco", + "ar_AE": "Arabo", + "sv_SE": "Svedese", + "pl_PL": "Polacco", + "T1": "Selezionare la propria lingua utilizzando i tasti Sù/Giù. Premere OK per confermare.", + "T2": "Selezione lingua", +}, +"no_NO": { + "fr_FR": "Fransk", + "fi_FI": "Finsk", + "pt_PT": "Portugisisk", + "it_IT": "Italiensk", + "no_NO": "Norsk", + "nl_NL": "Nederlandsk", + "el_GR": "Gresk", + "hu_HU": "Ungarsk", + "lt_LT": "Litauisk", + "hr_HR": "Kroatisk", + "en_EN": "Engelsk", + "es_ES": "Spansk", + "ca_AD": "Katalansk", + "ru_RU": "Russisk", + "is_IS": "Islandsk", + "da_DK": "Dansk", + "cs_CZ": "Tjekkisk", + "tr_TR": "Tyrkisk", + "de_DE": "Tysk", + "ar_AE": "Arabisk", + "sv_SE": "Svensk", + "pl_PL": "Polsk", + "T1": "Please use the UP and DOWN keys to select your language. Afterwards press the OK button.", + "T2": "Språkvalg", +}, +"pl_PL": { + "fr_FR": "Francuski", + "fi_FI": "Fiński", + "pt_PT": "Portugalski", + "it_IT": "Włoski", + "no_NO": "Norweski", + "nl_NL": "Holenderski", + "el_GR": "Grecki", + "hu_HU": "Węgierski", + "lt_LT": "Litewski", + "hr_HR": "Chorwacki", + "en_EN": "Angielski", + "es_ES": "Hiszpański", + "ca_AD": "Hiszpański", + "ru_RU": "Rosyjski", + "is_IS": "Islandzki", + "da_DK": "Duński", + "cs_CZ": "Czeski", + "tr_TR": "Turecki", + "de_DE": "Niemiecki", + "ar_AE": "Arabski", + "sv_SE": "Szwedzki", + "pl_PL": "Polski", + "T1": "W celu wyboru języka użyj klawiszy GÓRA i DÓŁ. Nastepnie nacisnij przycisk OK.", + "T2": "Wybór języka", +}, +"pt_PT": { + "fr_FR": "Francês", + "fi_FI": "Finlandês", + "pt_PT": "Português", + "it_IT": "Italiano", + "no_NO": "Norueguês", + "nl_NL": "Holandês", + "el_GR": "Grego", + "hu_HU": "Hungaro", + "lt_LT": "Lituano", + "hr_HR": "Croata", + "en_EN": "Inglês", + "es_ES": "Catalão", + "ca_AD": "Catalão", + "ru_RU": "Russo", + "is_IS": "Islandês", + "da_DK": "Dinamarquês", + "cs_CZ": "Checo", + "tr_TR": "Turco", + "de_DE": "Alemão", + "ar_AE": "Arabe", + "sv_SE": "Sueco", + "pl_PL": "Polaco", + "T1": "Please use the UP and DOWN keys to select your language. Afterwards press the OK button.", + "T2": "Selecção do Idioma", +}, +"ru_RU": { + "fr_FR": "Французский", + "fi_FI": "Окончание", + "pt_PT": "Portuguese", + "it_IT": "Итальянский", + "no_NO": "Норвежский", + "nl_NL": "Нидерландский", + "el_GR": "Greek", + "hu_HU": "Hungarian", + "lt_LT": "Lithuanian", + "hr_HR": "Croatian", + "en_EN": "Английский", + "es_ES": "Испанский", + "ca_AD": "Catalan", + "ru_RU": "Русский", + "is_IS": "Исландский", + "da_DK": "Датский", + "cs_CZ": "Czech", + "tr_TR": "Турецкий", + "de_DE": "Немецкий", + "ar_AE": "Арабский", + "sv_SE": "Шведский", + "pl_PL": "Polish", + "T1": "Please use the UP and DOWN keys to select your language. Afterwards press the OK button.", + "T2": "Выбор языка", +}, +"es_ES": { + "fr_FR": "Francés", + "fi_FI": "Finlandés", + "pt_PT": "Portugués", + "it_IT": "Italiano", + "no_NO": "Noruego", + "nl_NL": "Alemán", + "el_GR": "Griego", + "hu_HU": "Húngaro", + "lt_LT": "Lituano", + "hr_HR": "Croata", + "en_EN": "Inglés", + "es_ES": "Español", + "ca_AD": "Catalán", + "ru_RU": "Ruso", + "is_IS": "Islandés", + "da_DK": "Danés", + "cs_CZ": "Checo", + "tr_TR": "Turco", + "de_DE": "Alemán", + "ar_AE": "Arábigo", + "sv_SE": "Sueco", + "pl_PL": "Polaco", + "T1": "Use las teclas ARRIBA y ABAJO para seleccionar su idioma. Después, pulse el botón OK.", + "T2": "Selección de idioma", +}, +"sv_SE": { + "fr_FR": "Franska", + "fi_FI": "Finska", + "pt_PT": "Portugisiska", + "it_IT": "Italienska", + "no_NO": "Norska", + "nl_NL": "Holländska", + "el_GR": "Grekiska", + "hu_HU": "Ungerska", + "lt_LT": "Litauiska", + "hr_HR": "Kroatiska", + "en_EN": "Engelska", + "es_ES": "Spanska", + "ca_AD": "Katalanska", + "ru_RU": "Ryska", + "is_IS": "Isländska", + "da_DK": "Danska", + "cs_CZ": "Tjeckiska", + "tr_TR": "Turkiska", + "de_DE": "Tyska", + "ar_AE": "Arabiska", + "sv_SE": "Svenska", + "pl_PL": "Polska", + "T1": "Vänligen använd UPP och NER pil för att välja språk. Efter val tryck på OK knappen.", + "T2": "Välj språk", +}, +"tr_TR": { + "fr_FR": "Fransızca", + "fi_FI": "Bitiş", + "pt_PT": "Portuguese", + "it_IT": "İtalya", + "no_NO": "Norveç", + "nl_NL": "Almanca", + "el_GR": "Greek", + "hu_HU": "Hungarian", + "lt_LT": "Lithuanian", + "hr_HR": "Croatian", + "en_EN": "İngilizce", + "es_ES": "İspanyolca", + "ca_AD": "Catalan", + "ru_RU": "Russian", + "is_IS": "izlanda", + "da_DK": "Çanak", + "cs_CZ": "Czech", + "tr_TR": "Turkish", + "de_DE": "Alman", + "ar_AE": "Arapça", + "sv_SE": "İsveç", + "pl_PL": "Polish", + "T1": "Please use the UP and DOWN keys to select your language. Afterwards press the OK button.", + "T2": "Lisan Seçimi", +}, +} diff --git a/lib/python/Screens/LanguageSelection.py b/lib/python/Screens/LanguageSelection.py index 0fe53d65..94ede08c 100644 --- a/lib/python/Screens/LanguageSelection.py +++ b/lib/python/Screens/LanguageSelection.py @@ -6,6 +6,10 @@ from Components.config import config from Components.Sources.List import List from Components.Label import Label from Components.Pixmap import Pixmap +from Components.language_cache import LANG_TEXT + +def _cached(x): + return LANG_TEXT.get(config.osd.language.value, {}).get(x, "") from Screens.Rc import Rc @@ -56,27 +60,30 @@ class LanguageSelection(Screen): language.activateLanguage(self.oldActiveLanguage) self.close() - def run(self): + def run(self, justlocal = False): print "updating language..." lang = self["languages"].getCurrent()[0] - language.activateLanguage(lang) config.osd.language.value = lang config.osd.language.save() + self.setTitle(_cached("T2")) + + if justlocal: + return + + language.activateLanguage(lang) config.misc.languageselected.value = 0 config.misc.languageselected.save() - self.setTitle(_("Language selection")) print "ok" def updateList(self): - print "update list" first_time = len(self.list) == 0 self.list = [] if len(language.getLanguageList()) == 0: # no language available => display only english - self.list.append(LanguageEntryComponent("en", _("English"), "en_EN")) + self.list.append(LanguageEntryComponent("en", _cached("en_EN"), "en_EN")) else: for x in language.getLanguageList(): - self.list.append(LanguageEntryComponent(file = x[1][2].lower(), name = _(x[1][0]), index = x[0])) + self.list.append(LanguageEntryComponent(file = x[1][2].lower(), name = _cached("%s_%s" % x[1][1:3]), index = x[0])) #self.list.sort(key=lambda x: x[1][7]) print "updateList" @@ -87,7 +94,7 @@ class LanguageSelection(Screen): print "done" def changed(self): - self.run() + self.run(justlocal = True) self.updateList() class LanguageWizard(LanguageSelection, Rc): @@ -106,10 +113,10 @@ class LanguageWizard(LanguageSelection, Rc): self.selectKey("DOWN") def changed(self): - self.run() + self.run(justlocal = True) self.updateList() self.setText() def setText(self): - self["text"].setText(_("Please use the UP and DOWN keys to select your language. Afterwards press the OK button.")) - + + self["text"].setText(_cached("T1")) -- 2.30.2