blob: 656fd2796300ab07da6eccabff8cbabc7e7480af (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
from PerServiceDisplay import *
from enigma import iServiceInformationPtr, eServiceEventPtr
class EventInfo(PerServiceDisplay):
Now = 0
Next = 1
Now_Duration = 2
Next_Duration = 3
def __init__(self, navcore, now_or_next):
# listen to evUpdatedEventInfo and evStopService
# note that evStopService will be called once to establish a known state
self.now_or_next = now_or_next
PerServiceDisplay.__init__(self, navcore,
{
pNavigation.evUpdatedEventInfo: self.ourEvent,
pNavigation.evStopService: self.stopEvent
})
def ourEvent(self):
info = iServiceInformationPtr()
service = self.navcore.getCurrentService()
if service != None:
if not service.info(info):
ev = eServiceEventPtr()
if info.getEvent(ev, self.now_or_next & 1) == 0:
if self.now_or_next & 2:
self.setText("%d min" % (ev.m_duration / 60))
else:
self.setText(ev.m_event_name)
print "new event info in EventInfo! yeah!"
def stopEvent(self):
self.setText(
("waiting for event data...", "", "--:--", "--:--")[self.now_or_next]);
|