From: Andreas Monzner Date: Sun, 13 Nov 2005 11:08:33 +0000 (+0000) Subject: show servicename in eventview X-Git-Tag: 2.6.0~5266 X-Git-Url: https://git.cweiske.de/enigma2.git/commitdiff_plain/31d233dcc551b3c18cf4025ddfdc080dbd408db9 show servicename in eventview --- diff --git a/lib/python/Screens/EpgSelection.py b/lib/python/Screens/EpgSelection.py index 03228f60..def51d49 100644 --- a/lib/python/Screens/EpgSelection.py +++ b/lib/python/Screens/EpgSelection.py @@ -41,7 +41,7 @@ class EPGSelection(Screen): def eventSelected(self): event = self["list"].getCurrent() - self.session.open(EventView, event, self.eventViewCallback) + self.session.open(EventView, event, self.currentService, self.eventViewCallback) def timerAdd(self): epg = self["list"].getCurrent() @@ -69,8 +69,9 @@ class EPGSelection(Screen): self.session.nav.RecordTimer.record(answer[1]) else: print "Timeredit aborted" - + def setRoot(self, root): + self.currentService=ServiceReference(root) self["list"].setRoot(root) def moveUp(self): diff --git a/lib/python/Screens/EventView.py b/lib/python/Screens/EventView.py index 6dfb3894..275b8952 100644 --- a/lib/python/Screens/EventView.py +++ b/lib/python/Screens/EventView.py @@ -2,12 +2,14 @@ from Screen import Screen from Components.ActionMap import ActionMap from Components.Label import Label from Components.ScrollLabel import ScrollLabel -from enigma import eWidget, eServiceEventPtr, eLabel +from enigma import eServiceEventPtr +from ServiceReference import ServiceReference class EventView(Screen): - def __init__(self, session, Event, callback=None): + def __init__(self, session, Event, Ref, callback=None): Screen.__init__(self, session) self.cbFunc = callback + self.currentService=None self["epg_description"] = ScrollLabel() self["datetime"] = Label() self["channel"] = Label() @@ -22,6 +24,7 @@ class EventView(Screen): "nextEvent": self.nextEvent }) self.setEvent(Event) + self.setService(Ref) def prevEvent(self): if self.cbFunc is not None: @@ -31,14 +34,23 @@ class EventView(Screen): if self.cbFunc is not None: self.cbFunc(self.setEvent, +1) + def setService(self, service): + self.currentService=service + name = self.currentService.getServiceName() + if name is not None: + self["channel"].setText(name) + else: + self["channel"].setText("unknown service") + def setEvent(self, event): +# FIXME .. how to set eWindow titlebar? +# self.instance.setTitle(event.getEventName()) text = event.getShortDescription() if len(text) > 0: text = text + '\n\n' text = text + event.getExtendedDescription() self["epg_description"].setText(text) self["datetime"].setText(event.getBeginTimeString()) - self["channel"].setText("Unknown Service") self["duration"].setText("%d min"%(event.getDuration()/60)) def pageUp(self): diff --git a/lib/service/event.cpp b/lib/service/event.cpp index 2704ff0f..36446797 100644 --- a/lib/service/event.cpp +++ b/lib/service/event.cpp @@ -81,6 +81,7 @@ bool eServiceEvent::loadLanguage(Event *evt, std::string lang) const ExtendedEventList *itemlist = eed->getItems(); for (ExtendedEventConstIterator it = itemlist->begin(); it != itemlist->end(); ++it) { + m_extended_description += '\n'; m_extended_description += convertDVBUTF8((*it)->getItemDescription()); m_extended_description += ' '; m_extended_description += convertDVBUTF8((*it)->getItem());