cut away 1/4th of enigma loading time by loading languages when they are used
authorFelix Domke <tmbinc@elitedvb.net>
Fri, 8 Feb 2008 00:08:11 +0000 (00:08 +0000)
committerFelix Domke <tmbinc@elitedvb.net>
Fri, 8 Feb 2008 00:08:11 +0000 (00:08 +0000)
lib/python/Components/Language.py
lib/python/Screens/LanguageSelection.py

index 6a224c8..b5c7e18 100644 (file)
@@ -37,15 +37,16 @@ class Language:
 
        def addLanguage(self, name, lang, country):
                try:
-                       self.lang[str(lang + "_" + country)] = ((_(name), gettext.translation('enigma2', resolveFilename(SCOPE_LANGUAGE, ""), languages=[lang]), lang, country))
+                       self.lang[str(lang + "_" + country)] = ((_(name), lang, country))
                        self.langlist.append(str(lang + "_" + country))
                except:
                        print "Language " + str(name) + " not found"
 
        def activateLanguage(self, index):
                try:
-                       print "Activating language " + str(self.lang[index][0])
-                       self.lang[index][1].install()
+                       lang = self.lang[index]
+                       print "Activating language " + lang[0]
+                       gettext.translation('enigma2', resolveFilename(SCOPE_LANGUAGE, ""), languages=[lang[1]]).install()
                        self.activeLanguage = index
                        for x in self.callbacks:
                                x()
@@ -63,7 +64,7 @@ class Language:
 
        def getLanguage(self):
                try:
-                       return str(self.lang[self.activeLanguage][2]) + "_" + str(self.lang[self.activeLanguage][3])
+                       return str(self.lang[self.activeLanguage][1]) + "_" + str(self.lang[self.activeLanguage][2])
                except:
                        return ''
 
index 3e95b79..b7b1eaa 100644 (file)
@@ -76,7 +76,7 @@ class LanguageSelection(Screen):
                        self.list.append(LanguageEntryComponent("en", _("English"), "en_EN"))
                else:
                        for x in language.getLanguageList():
-                               self.list.append(LanguageEntryComponent(file = x[1][3].lower(), name = _(x[1][0]), index = x[0]))
+                               self.list.append(LanguageEntryComponent(file = x[1][2].lower(), name = _(x[1][0]), index = x[0]))
                #self.list.sort(key=lambda x: x[1][7])
                
                print "updateList"