From a9589a258f6173fc8af17d802def10d0d918bc16 Mon Sep 17 00:00:00 2001 From: ghost Date: Fri, 27 Feb 2009 23:19:00 +0100 Subject: add possibility to change services in single service epg with bouquet +/- key --- lib/python/Screens/EpgSelection.py | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) (limited to 'lib/python/Screens/EpgSelection.py') diff --git a/lib/python/Screens/EpgSelection.py b/lib/python/Screens/EpgSelection.py index ae96333e..49308994 100644 --- a/lib/python/Screens/EpgSelection.py +++ b/lib/python/Screens/EpgSelection.py @@ -25,12 +25,14 @@ class EPGSelection(Screen): ZAP = 1 - def __init__(self, session, service, zapFunc=None, eventid=None, bouquetChangeCB=None): + def __init__(self, session, service, zapFunc=None, eventid=None, bouquetChangeCB=None, serviceChangeCB=None): Screen.__init__(self, session) self.bouquetChangeCB = bouquetChangeCB + self.serviceChangeCB = serviceChangeCB self.ask_time = -1 #now self["key_red"] = Button("") self.closeRecursive = False + self.saved_title = None if isinstance(service, str) and eventid != None: self.type = EPG_TYPE_SIMILAR self["key_yellow"] = Button() @@ -81,19 +83,22 @@ class EPGSelection(Screen): "red": self.zapTo, "input_date_time": self.enterDateTime, "nextBouquet": self.nextBouquet, - "prevBouquet": self.prevBouquet + "prevBouquet": self.prevBouquet, }) self["actions"].csel = self - self.onLayoutFinish.append(self.onCreate) def nextBouquet(self): - if self.bouquetChangeCB: + if self.serviceChangeCB: + self.serviceChangeCB(1, self) + elif self.bouquetChangeCB: self.bouquetChangeCB(1, self) def prevBouquet(self): if self.bouquetChangeCB: self.bouquetChangeCB(-1, self) + elif self.serviceChangeCB: + self.serviceChangeCB(-1, self) def enterDateTime(self): if self.type == EPG_TYPE_MULTI: @@ -129,6 +134,10 @@ class EPGSelection(Screen): self.services = services self.onCreate() + def setService(self, service): + self.currentService = service + self.onCreate() + #just used in multipeg def onCreate(self): l = self["list"] @@ -137,7 +146,12 @@ class EPGSelection(Screen): l.fillMultiEPG(self.services, self.ask_time) l.moveToService(self.session.nav.getCurrentlyPlayingServiceReference()) elif self.type == EPG_TYPE_SINGLE: - l.fillSingleEPG(self.currentService) + service = self.currentService + if self.saved_title is None: + self.saved_title = self.instance.getTitle() + title = self.saved_title + ' - ' + service.getServiceName() + self.instance.setTitle(title) + l.fillSingleEPG(service) else: l.fillSimilarList(self.currentService, self.eventid) -- cgit v1.2.3 From 23d87e80ac74cea3df87ac89cef734509341fa98 Mon Sep 17 00:00:00 2001 From: ghost Date: Sat, 28 Feb 2009 10:23:47 +0100 Subject: use < > keys vor next / previous service in single service epg --- data/keymap.xml | 2 ++ lib/python/Screens/EpgSelection.py | 18 ++++++++++++------ 2 files changed, 14 insertions(+), 6 deletions(-) (limited to 'lib/python/Screens/EpgSelection.py') diff --git a/data/keymap.xml b/data/keymap.xml index 264afccf..0865e416 100644 --- a/data/keymap.xml +++ b/data/keymap.xml @@ -475,6 +475,8 @@ + + diff --git a/lib/python/Screens/EpgSelection.py b/lib/python/Screens/EpgSelection.py index 49308994..d09ed004 100644 --- a/lib/python/Screens/EpgSelection.py +++ b/lib/python/Screens/EpgSelection.py @@ -82,22 +82,28 @@ class EPGSelection(Screen): "info": self.infoKeyPressed, "red": self.zapTo, "input_date_time": self.enterDateTime, - "nextBouquet": self.nextBouquet, - "prevBouquet": self.prevBouquet, + "nextBouquet": self.nextBouquet, # just used in multi epg yet + "prevBouquet": self.prevBouquet, # just used in multi epg yet + "nextService": self.nextService, # just used in single epg yet + "prevService": self.prevService, # just used in single epg yet }) self["actions"].csel = self self.onLayoutFinish.append(self.onCreate) def nextBouquet(self): - if self.serviceChangeCB: - self.serviceChangeCB(1, self) - elif self.bouquetChangeCB: + if self.bouquetChangeCB: self.bouquetChangeCB(1, self) def prevBouquet(self): if self.bouquetChangeCB: self.bouquetChangeCB(-1, self) - elif self.serviceChangeCB: + + def nextService(self): + if self.serviceChangeCB: + self.serviceChangeCB(1, self) + + def prevService(self): + if self.serviceChangeCB: self.serviceChangeCB(-1, self) def enterDateTime(self): -- cgit v1.2.3