add some new (currently unused) source/renderer based elements
[enigma2.git] / lib / python / Components / Sources / EventInfo.py
1 from Components.PerServiceDisplay import PerServiceBase
2 from Tools.Event import Event
3 from enigma import iPlayableService
4 from Source import Source
5
6 class EventInfo(PerServiceBase, Source):
7         NOW = 0
8         NEXT = 1
9         
10         def __init__(self, navcore, now_or_next):
11                 Source.__init__(self)
12                 PerServiceBase.__init__(self, navcore, 
13                         { 
14                                 iPlayableService.evUpdatedEventInfo: self.ourEvent, 
15                                 iPlayableService.evEnd: self.stopEvent 
16                         })
17                 
18                 self.event = None
19                 self.now_or_next = now_or_next
20                 
21         def ourEvent(self):
22                 service = self.navcore.getCurrentService()
23                 info = service and service.info()
24                 self.event = info and info.getEvent(self.now_or_next)
25                 self.changed()
26
27         def stopEvent(self):
28                 self.event = None
29                 self.changed()