aboutsummaryrefslogtreecommitdiff
path: root/lib/python/Screens/AudioSelection.py
blob: a38417475e62feaee4b6b106280812d499dcdf21 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
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(["OkCancelActions"], 
			{
				"cancel": self.close,
				"ok": self.KeyOk,
			})

		self.audio = audio

		tlist = []
		n = audio.getNumberOfTracks()
		for x in range(n):
			i = audio.getTrackInfo(x)
			langCode = i.getLanguage()
			
			description = i.getDescription();
			
			if langCode in LanguageCodes:
				language = LanguageCodes[langCode][0]
				if len(description):
					description += " (" + language + ")"
				else:
					description = language

			tlist.append((description, x))

		self["tracks"] = MenuList(tlist)