diff options
Diffstat (limited to 'lib/python/Components/EventInfo.py')
| -rw-r--r-- | lib/python/Components/EventInfo.py | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/lib/python/Components/EventInfo.py b/lib/python/Components/EventInfo.py new file mode 100644 index 00000000..125310be --- /dev/null +++ b/lib/python/Components/EventInfo.py @@ -0,0 +1,36 @@ +from PerServiceDisplay import * + +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]); + |
