-from Components.PerServiceDisplay import PerServiceBase
-from Components.Element import cached
-from enigma import iPlayableService
-from Source import Source
-
-class RadioText(PerServiceBase, Source, object):
- def __init__(self, navcore):
- Source.__init__(self)
- PerServiceBase.__init__(self, navcore,
- {
- iPlayableService.evStart: self.gotEvent,
- iPlayableService.evUpdatedRadioText: self.gotEvent,
- iPlayableService.evEnd: self.gotEvent
- }, with_event=True)
-
- @cached
- def getText(self):
- service = self.navcore.getCurrentService()
- info = service and service.radioText()
- return info and info.getRadioText()
-
- radiotext = property(getText)
-
- def gotEvent(self, what):
- if what in [iPlayableService.evStart, iPlayableService.evEnd]:
- self.changed((self.CHANGED_CLEAR,))
- else:
- self.changed((self.CHANGED_ALL,))