aboutsummaryrefslogtreecommitdiff
path: root/lib/python
diff options
context:
space:
mode:
authorAndreas Monzner <andreas.monzner@multimedia-labs.de>2005-11-17 13:23:14 +0000
committerAndreas Monzner <andreas.monzner@multimedia-labs.de>2005-11-17 13:23:14 +0000
commite0c246f039d5f97ed928c9432a69bbb3841e1568 (patch)
tree30e9989f08188a0f4c0d1a53947f7716dafd060d /lib/python
parentabea0c85ea0e0f9e7197664b70753fbe5f110b8d (diff)
downloadenigma2-e0c246f039d5f97ed928c9432a69bbb3841e1568.tar.gz
enigma2-e0c246f039d5f97ed928c9432a69bbb3841e1568.zip
show now/next info when no epg is avail
Diffstat (limited to 'lib/python')
-rw-r--r--lib/python/Screens/InfoBarGenerics.py29
1 files changed, 26 insertions, 3 deletions
diff --git a/lib/python/Screens/InfoBarGenerics.py b/lib/python/Screens/InfoBarGenerics.py
index 3af52ae8..52b1c3c0 100644
--- a/lib/python/Screens/InfoBarGenerics.py
+++ b/lib/python/Screens/InfoBarGenerics.py
@@ -9,12 +9,14 @@ from ChannelSelection import ChannelSelection
from Components.ServiceName import ServiceName
from Components.EventInfo import EventInfo
+from ServiceReference import ServiceReference
from EpgSelection import EPGSelection
from Screens.MessageBox import MessageBox
from Screens.Volume import Volume
from Screens.Mute import Mute
from Screens.Standby import Standby
+from Screens.EventView import EventView
#from enigma import eTimer, eDVBVolumecontrol, quitMainloop
from enigma import *
@@ -280,10 +282,31 @@ class InfoBarEPG:
ptr=eEPGCache.getInstance()
if ptr.startTimeQuery(ref) != -1:
self.session.open(EPGSelection, ref)
- else:
+ else: # try to show now/next
print 'no epg for service', ref.toString()
-
-class InfoBarEvent:
+ try:
+ self.epglist = [ ]
+ service = self.session.nav.getCurrentService()
+ info = service.info()
+ ptr=info.getEvent(0)
+ if ptr:
+ self.epglist.append(ptr)
+ ptr=info.getEvent(1)
+ if ptr:
+ self.epglist.append(ptr)
+ if len(self.epglist) > 0:
+ self.session.open(EventView, self.epglist[0], ServiceReference(ref), self.eventViewCallback)
+ except:
+ pass
+
+ def eventViewCallback(self, setEvent, val): #used for now/next displaying
+ if len(self.epglist) > 1:
+ tmp = self.epglist[0]
+ self.epglist[0]=self.epglist[1]
+ self.epglist[1]=tmp
+ setEvent(self.epglist[0])
+
+class InfoBarEvent:
"""provides a current/next event info display"""
def __init__(self):
self["Event_Now_StartTime"] = EventInfo(self.session.nav, EventInfo.Now_StartTime)