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 *
import time
+import os
# hack alert!
from Menu import MainMenu, mdom
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)
# fix me, description.
self.recording = self.session.nav.recordWithTimer(time.time(), time.time() + 3600, serviceref, epg, "instant record")
+ self.recording.dontSave = True
def recordQuestionCallback(self, answer):
if answer == False:
self.startInstantRecording()
def instantRecord(self):
+ try:
+ stat = os.stat("/hdd/movies")
+ except:
+ self.session.open(MessageBox, "No HDD found!")
+ return
+
if self.recording != None:
self.session.openWithCallback(self.recordQuestionCallback, MessageBox, "Do you want to stop the current\n(instant) recording?")
else: