from Screens.Mute import Mute
from Screens.Standby import Standby
+from ServiceReference import ServiceReference
+
from enigma import *
import time
self.hideVolTimer = eTimer()
self.hideVolTimer.timeout.get().append(self.volHide)
+
+ self.powerKeyTimer = eTimer()
+ self.powerKeyTimer.timeout.get().append(self.powertimer)
#self["actions"] = ActionMap( [ "InfobarActions" ],
self["actions"] = NumberActionMap( [ "InfobarActions" ],
"hide": self.hide,
"toggleShow": self.toggleShow,
"showMovies": self.showMovies,
- "quit": self.quit,
+ #"quit": self.quit,
+ "powerdown": self.powerdown,
+ "powerup": self.powerup,
"1": self.keyNumberGlobal,
"2": self.keyNumberGlobal,
"3": self.keyNumberGlobal,
"pauseService": self.pauseService,
"unPauseService": self.unPauseService,
+
+ "seekFwd": self.seekFwd,
+ "seekBack": self.seekBack,
})
# self["okbutton"] = Button("mainMenu", [self.mainMenu])
assert menu.tagName == "menu", "root element in menu must be 'menu'!"
self.session.open(MainMenu, menu, menu.childNodes)
+ def powertimer(self):
+ print "PowerOff - Now!"
+ self.quit()
+
+ def powerdown(self):
+ self.standbyblocked = 0
+ self.powerKeyTimer.start(3000)
+
+ def powerup(self):
+ self.powerKeyTimer.stop()
+ if self.standbyblocked == 0:
+ self.standbyblocked = 1
+ self.session.open(Standby, self)
+
+
def keyNumberGlobal(self, number):
print "You pressed number " + str(number)
self.session.open(NumberZap, number)
self.muteDialog.instance.hide()
def showEPGList(self):
- self.session.open(EPGSelection, self.session.nav.getCurrentlyPlayingServiceReference())
+ ref=self.session.nav.getCurrentlyPlayingServiceReference()
+ ptr=eEPGCache.getInstance()
+ if ptr.startTimeQuery(ref) != -1:
+ self.session.open(EPGSelection, ref)
+ else:
+ print 'no epg for service', ref.toString()
def quit(self):
- self.session.open(Standby)
- #configfile.save()
- #quitMainloop()
+ # self.session.open(Standby, self)
+ configfile.save()
+ quitMainloop()
def stopCurrentRecording(self):
print "remove entry"
def unPauseService(self):
self.session.nav.pause(0)
+
+ def doSeek(self, dir, seektime):
+ service = self.session.nav.getCurrentService()
+ if service is None:
+ return
+
+ seekable = service.seek()
+ if seekable is None:
+ return
+ seekable.seekRelative(dir, 90 * seektime)
+
+ def seekFwd(self):
+ self.doSeek(+1, 10000)
+
+ def seekBack(self):
+ self.doSeek(-1, 10000)