aboutsummaryrefslogtreecommitdiff
path: root/lib/python/Screens/EpgSelection.py
diff options
context:
space:
mode:
authorAndreas Monzner <andreas.monzner@multimedia-labs.de>2006-04-27 09:22:18 +0000
committerAndreas Monzner <andreas.monzner@multimedia-labs.de>2006-04-27 09:22:18 +0000
commitc803490aec2d7c7f13966e1a2e926cac018dea2e (patch)
treef50fbd414676fb98851254030d535dd15a7c7c72 /lib/python/Screens/EpgSelection.py
parent59cee6bc80d4697bec7bebb8dd65312bddec34ad (diff)
downloadenigma2-c803490aec2d7c7f13966e1a2e926cac018dea2e.tar.gz
enigma2-c803490aec2d7c7f13966e1a2e926cac018dea2e.zip
make bouquet +/- useable in multiepg to change directly from one to another bouquet epg
Diffstat (limited to 'lib/python/Screens/EpgSelection.py')
-rw-r--r--lib/python/Screens/EpgSelection.py27
1 files changed, 21 insertions, 6 deletions
diff --git a/lib/python/Screens/EpgSelection.py b/lib/python/Screens/EpgSelection.py
index a5b61a1c..1af2cbb9 100644
--- a/lib/python/Screens/EpgSelection.py
+++ b/lib/python/Screens/EpgSelection.py
@@ -19,9 +19,10 @@ from time import localtime
import xml.dom.minidom
class EPGSelection(Screen):
- def __init__(self, session, service, zapFunc=None, eventid=None):
+ def __init__(self, session, service, zapFunc=None, eventid=None, bouquetChangeCB=None):
Screen.__init__(self, session)
- self.asked_specific_time = False
+ self.bouquetChangeCB = bouquetChangeCB
+ self.ask_time = -1 #now
self["key_red"] = Button("")
self.closeRecursive = False
if isinstance(service, str) and eventid != None:
@@ -70,12 +71,22 @@ class EPGSelection(Screen):
"blue": self.blueButtonPressed,
"info": self.infoKeyPressed,
"zapTo": self.zapTo,
- "input_date_time": self.enterDateTime
+ "input_date_time": self.enterDateTime,
+ "nextBouquet": self.nextBouquet,
+ "prevBouquet": self.prevBouquet
})
self["actions"].csel = self
self.onLayoutFinish.append(self.onCreate)
+ def nextBouquet(self):
+ if self.bouquetChangeCB:
+ self.bouquetChangeCB(1, self)
+
+ def prevBouquet(self):
+ if self.bouquetChangeCB:
+ self.bouquetChangeCB(-1, self)
+
def enterDateTime(self):
if self.type == EPG_TYPE_MULTI:
self.session.openWithCallback(self.onDateTimeInputClosed, TimeDateInput)
@@ -83,7 +94,7 @@ class EPGSelection(Screen):
def onDateTimeInputClosed(self, ret):
if len(ret) > 1:
if ret[0]:
- self.asked_specific_time=True
+ self.ask_time=ret[1]
self["list"].fillMultiEPG(self.services, ret[1])
def closeScreen(self):
@@ -106,12 +117,16 @@ class EPGSelection(Screen):
def openSimilarList(self, eventid, refstr):
self.session.open(EPGSelection, refstr, None, eventid)
+ def setServices(self, services):
+ self.services = services
+ self.onCreate()
+
#just used in multipeg
def onCreate(self):
l = self["list"]
if self.type == EPG_TYPE_MULTI:
l.recalcEntrySize()
- l.fillMultiEPG(self.services)
+ l.fillMultiEPG(self.services, self.ask_time)
elif self.type == EPG_TYPE_SINGLE:
if SINGLE_CPP == 0:
l.recalcEntrySize()
@@ -218,7 +233,7 @@ class EPGSelection(Screen):
def onSelectionChanged(self):
if self.type == EPG_TYPE_MULTI:
count = self["list"].getCurrentChangeCount()
- if self.asked_specific_time:
+ if self.ask_time != -1:
self.applyButtonState(0)
elif count > 1:
self.applyButtonState(3)