audio: add language display
[enigma2.git] / lib / python / Screens / AudioSelection.py
index 6e3a288e203a81256b5b53dd26699babe6d9b1d5..a38417475e62feaee4b6b106280812d499dcdf21 100644 (file)
@@ -2,17 +2,19 @@ from Screen import Screen
 from Components.ActionMap import ActionMap
 from Components.MenuList import MenuList
 from Components.Label import Label
+from Tools.ISO639 import LanguageCodes
 
 class AudioSelection(Screen):
        def KeyOk(self):
                selection = self["tracks"].getCurrent()
                print "select track " + str(selection[1])
+               
                self.audio.selectTrack(selection[1])
                self.close()
        def __init__(self, session, audio):
                Screen.__init__(self, session)
 
-               self["actions"] = ActionMap(["SetupActions"], 
+               self["actions"] = ActionMap(["OkCancelActions"], 
                        {
                                "cancel": self.close,
                                "ok": self.KeyOk,
@@ -24,8 +26,17 @@ class AudioSelection(Screen):
                n = audio.getNumberOfTracks()
                for x in range(n):
                        i = audio.getTrackInfo(x)
-                       tlist.append((i.getDescription(), x))
+                       langCode = i.getLanguage()
+                       
+                       description = i.getDescription();
+                       
+                       if langCode in LanguageCodes:
+                               language = LanguageCodes[langCode][0]
+                               if len(description):
+                                       description += " (" + language + ")"
+                               else:
+                                       description = language
 
-               self["tracks"] = MenuList(tlist)
+                       tlist.append((description, x))
 
-               
\ No newline at end of file
+               self["tracks"] = MenuList(tlist)