diff options
| author | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2006-10-30 16:08:20 +0000 |
|---|---|---|
| committer | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2006-10-30 16:08:20 +0000 |
| commit | 619983c4f596e3371c58c52dd725680846376484 (patch) | |
| tree | f1764d9738ba447c53dde66be02da0e7f0318cae /lib/python/Screens/Subtitles.py | |
| parent | 0e3e7773e5d8e7ff159316db3de7fcfad57bb9e8 (diff) | |
| download | enigma2-619983c4f596e3371c58c52dd725680846376484.tar.gz enigma2-619983c4f596e3371c58c52dd725680846376484.zip | |
add missing file
Diffstat (limited to 'lib/python/Screens/Subtitles.py')
| -rw-r--r-- | lib/python/Screens/Subtitles.py | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/lib/python/Screens/Subtitles.py b/lib/python/Screens/Subtitles.py new file mode 100644 index 00000000..6a1deedb --- /dev/null +++ b/lib/python/Screens/Subtitles.py @@ -0,0 +1,74 @@ +from Screen import Screen +from Components.ActionMap import ActionMap +from Components.ConfigList import ConfigList, ConfigListScreen +from Components.config import config, getConfigListEntry, ConfigNothing +from Components.Label import Label + +from Tools.ISO639 import LanguageCodes + +class Subtitles(Screen, ConfigListScreen): + def __init__(self, session): + Screen.__init__(self, session) + + self["actions"] = ActionMap(["SetupActions"], + { + "ok": self.ok, + "cancel": self.cancel, + }, -2) + + self.list = [] + ConfigListScreen.__init__(self, self.list) + self.infobar = self.session.infobar + if self.subtitlesEnabled(): + self.list.append(getConfigListEntry(_("Disable Subtitles"), ConfigNothing(), None)) + sel = self.infobar.selected_subtitle + else: + sel = None + for x in self.getSubtitleList(): + if sel and sel == x: + text = _("Running") + else: + text = _("Enable") + if x[0] == 0: + self.list.append(getConfigListEntry(text+" DVB "+LanguageCodes[x[4]][0], ConfigNothing(), x)) + elif x[0] == 1: + if x[4] == 'und': #undefined + self.list.append(getConfigListEntry(text+" TTX "+_("Page")+" "+str(x[2])+"/"+str(x[3]), ConfigNothing(), x)) + else: + self.list.append(getConfigListEntry(text+" TTX "+LanguageCodes[x[4]][0], ConfigNothing(), x)) +# return _("Disable subtitles") + self["config"].list = self.list + self["config"].l.setList(self.list) + + def getSubtitleList(self): + s = self.infobar and self.infobar.getCurrentServiceSubtitle() + l = s and s.getSubtitleList() or [ ] + return l + + def subtitlesEnabled(self): + return self.infobar.subtitles_enabled + + def enableSubtitle(self, subtitles): + if self.infobar.selected_subtitle != subtitles: + print "enable subtitles", subtitles + self.infobar.subtitles_enabled = False + self.infobar.selected_subtitle = subtitles + self.infobar.subtitles_enabled = True + + def disableSubtitles(self): + self.infobar.subtitles_enabled = False + + def keyLeft(self): + ConfigListScreen.keyLeft(self) + + def keyRight(self): + ConfigListScreen.keyRight(self) + + def ok(self): + if len(self.list): + cur = self["config"].getCurrent() + self.enableSubtitle(cur[2]) + self.close(1) + + def cancel(self): + self.close() |
