1 from Screens.Screen import Screen
2 from Screens.HelpMenu import HelpableScreen
3 from Components.ActionMap import ActionMap, HelpableActionMap
4 from Components.ConfigList import ConfigListScreen
5 from Components.Label import Label
6 from Components.Sources.StaticText import StaticText
7 from Components.config import config, ConfigSubsection, ConfigYesNo, ConfigText, getConfigListEntry
11 from __init__ import _
13 config.plugins.youtubetv = ConfigSubsection()
14 config.plugins.youtubetv.showhelp = ConfigYesNo(default = False)
15 config.plugins.youtubetv.uri = ConfigText(default = "http://www.youtube.com/tv", visible_width = 50, fixed_size = False)
16 #config.plugins.youtubetv.uri = ConfigText(default = "http://tv-html.irt.de/", visible_width = 50, fixed_size = False)
18 vbcfg.g_youtubetv_cfg = config.plugins.youtubetv
20 class YoutubeTVWindow(Screen, HelpableScreen):
22 <screen name="YoutubeTVWindow" position="center,center" size="550,160" title="Start YouTube TV" >
23 <widget name="infomation" position="5,0" size="540,80" valign="center" halign="center" font="Regular;20" />
24 <widget name="startdesc" position="10,80" size="395,40" valign="center" font="Regular;20" />
25 <widget name="helpdesc" position="10,120" size="395,40" valign="center" font="Regular;20" />
26 <ePixmap pixmap="skin_default/buttons/green.png" position="400,80" size="140,40" alphatest="on" />
27 <ePixmap pixmap="skin_default/buttons/yellow.png" position="400,120" size="140,40" alphatest="on" />
28 <widget source="key_green" render="Label" position="400,80" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#1f771f" foregroundColor="#ffffff" transparent="1" />
29 <widget source="key_yellow" render="Label" position="400,120" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#a08500" foregroundColor="#ffffff" transparent="1" />
33 def __init__(self, session):
34 Screen.__init__(self, session)
35 HelpableScreen.__init__(self)
37 self["actions"] = ActionMap(["WizardActions", "DirectionActions", "OkCancelActions","ColorActions", "EPGSelectActions",], {
38 "cancel": self.keyCancel,
39 "red" : self.keyCancel,
40 "green" : self.keyGreen,
41 "yellow": self.keyYellow,
44 self["key_green"] = StaticText(_("Start"))
45 self["key_yellow"] = StaticText(_("Help"))
47 self["infomation"] = Label()
48 self["startdesc"] = Label()
49 self["helpdesc"] = Label()
51 self.onLayoutFinish.append(self.layoutFinished)
53 def layoutFinished(self):
54 self.setTitle(_('Start YouTube TV'))
55 self["infomation"].setText(_("YouTube TV is a new way to watch YouTube videos on Vu+"))
56 self["startdesc" ].setText(_("* Start YouTube TV"))
57 self["helpdesc" ].setText(_("* RC Help"))
59 def setHelpModeActions(self):
61 self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions", {
62 "ok" : (self.keyPass, _("Play ther selected the video")),
63 "cancel": (self.keyPass, _("Exit the YouTube TV")),
65 self["EventViewActions"] = HelpableActionMap(self, "EventViewActions", {
66 "pageUp" : (self.keyPass, _("Move up")),
67 "pageDown" : (self.keyPass, _("Move down")),
68 "prevEvent" : (self.keyPass, _("Move left")),
69 "nextEvent" : (self.keyPass, _("Move right")),
71 self["EPGSelectActions"] = HelpableActionMap(self, "EPGSelectActions", {
72 "info" : (self.keyPass, _("Search a video")),
73 "nextService" : (self.keyPass, _("Skip forward 10 sec")),
74 "prevService" : (self.keyPass, _("Skip backward 10 sec")),
76 self["MediaPlayerActions"] = HelpableActionMap(self, "MediaPlayerActions", {
77 "play" : (self.keyPass, _("Play current video")),
78 "pause" : (self.keyPass, _("Pause current video")),
79 "stop" : (self.keyPass, _("Stop current video")),
81 self["ColorActions"] = HelpableActionMap(self, "ColorActions", {
82 "red" : (self.keyPass, _("Back")),
90 config.plugins.youtubetv.showhelp.cancel()
94 config.plugins.youtubetv.showhelp.save()
95 config.plugins.youtubetv.save()
97 vbcfg.g_youtubetv_cfg = config.plugins.youtubetv
101 self.setHelpModeActions()
104 if config.plugins.youtubetv.showhelp.value == True :
105 config.plugins.youtubetv.showhelp.setValue(False)
106 else: config.plugins.youtubetv.showhelp.setValue(True)
108 class YoutubeTVSettings(ConfigListScreen, Screen):
110 <screen position="center,center" size="600,140" title="YouTube TV Settings">
111 <widget name="config" position="0,0" size="600,100" scrollbarMode="showOnDemand" />
113 <ePixmap pixmap="skin_default/buttons/red.png" position="310,100" size="140,40" alphatest="on" />
114 <ePixmap pixmap="skin_default/buttons/green.png" position="150,100" size="140,40" alphatest="on" />
116 <widget source="key_red" render="Label" position="310,100" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#9f1313" foregroundColor="#ffffff" transparent="1" />
117 <widget source="key_green" render="Label" position="150,100" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#1f771f" foregroundColor="#ffffff" transparent="1" />
121 def __init__(self, session):
122 self.session = session
125 Screen.__init__(self, session)
126 ConfigListScreen.__init__(self, self.menulist)
128 self["actions"] = ActionMap(["OkCancelActions", "ColorActions",], {
129 "ok" : self.keyGreen,
130 "green" : self.keyGreen,
132 "cancel" : self.keyRed,
134 self["key_red"] = StaticText(_("Cancel"))
135 self["key_green"] = StaticText(_("Save"))
137 self.makeConfigList()
138 self.onLayoutFinish.append(self.layoutFinished)
140 def layoutFinished(self):
141 self.setTitle(_('YouTube TV Settings'))
144 config.plugins.youtubetv.showhelp.save()
145 config.plugins.youtubetv.uri.save()
146 config.plugins.youtubetv.save()
147 config.plugins.save()
149 vbcfg.g_youtubetv_cfg = config.plugins.youtubetv
153 config.plugins.youtubetv.showhelp.cancel()
154 config.plugins.youtubetv.uri.cancel()
158 ConfigListScreen.keyLeft(self)
161 ConfigListScreen.keyRight(self)
163 def makeConfigList(self):
166 entryUri = getConfigListEntry(_("YouTube TV URL"), config.plugins.youtubetv.uri)
167 entryShowHelp = getConfigListEntry(_("Do not show YouTube TV Starter again"), config.plugins.youtubetv.showhelp)
168 self.menulist.append(entryUri)
169 self.menulist.append(entryShowHelp)
170 self["config"].list = self.menulist
171 self["config"].l.setList(self.menulist)