aboutsummaryrefslogtreecommitdiff
path: root/lib/python/Screens/Subtitles.py
diff options
context:
space:
mode:
authorAndreas Monzner <andreas.monzner@multimedia-labs.de>2006-10-30 16:08:20 +0000
committerAndreas Monzner <andreas.monzner@multimedia-labs.de>2006-10-30 16:08:20 +0000
commit619983c4f596e3371c58c52dd725680846376484 (patch)
treef1764d9738ba447c53dde66be02da0e7f0318cae /lib/python/Screens/Subtitles.py
parent0e3e7773e5d8e7ff159316db3de7fcfad57bb9e8 (diff)
downloadenigma2-619983c4f596e3371c58c52dd725680846376484.tar.gz
enigma2-619983c4f596e3371c58c52dd725680846376484.zip
add missing file
Diffstat (limited to 'lib/python/Screens/Subtitles.py')
-rw-r--r--lib/python/Screens/Subtitles.py74
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()