df884ba970c5b5fc05c4c491b7d5f0afb479ceef
[enigma2.git] / lib / python / Screens / SessionGlobals.py
1 from enigma import iPlayableService
2 from Screens.Screen import Screen
3 from Components.Sources.CurrentService import CurrentService
4 from Components.Sources.EventInfo import EventInfo
5 from Components.Sources.FrontendStatus import FrontendStatus
6 from Components.Sources.FrontendInfo import FrontendInfo
7 from Components.Sources.Source import Source
8 from Components.Sources.Misc import Misc
9
10 class SessionGlobals(Screen):
11         def __init__(self, session):
12                 Screen.__init__(self, session)
13                 self["CurrentService"] = CurrentService(session.nav)
14                 self["Event_Now"] = EventInfo(session.nav, EventInfo.NOW)
15                 self["Event_Next"] = EventInfo(session.nav, EventInfo.NEXT)
16                 self["FrontendStatus"] = FrontendStatus(service_source = session.nav.getCurrentService)
17                 self["FrontendInfo"] = FrontendInfo(service_source = session.nav.getCurrentService)
18                 self["VideoPicture"] = Source()
19                 self["GlobalInfo"] = Misc(session)
20                 session.nav.event.append(self.serviceEvent)
21                 self.service_state = 0
22
23         def serviceEvent(self, evt):
24                 if evt == iPlayableService.evStart:
25                         self.service_state = 1
26                 elif evt == iPlayableService.evEnd:
27                         self.service_state = 0
28                 elif evt == iPlayableService.evUpdatedInfo and self.service_state == 1:
29                         self.service_state = 2
30                         self["FrontendInfo"].updateFrontendData()