1 from PerServiceDisplay import *
2 from enigma import eTimer
5 from enigma import iPlayableService, iSeekableServicePtr
7 class ServicePosition(PerServiceDisplay):
12 def __init__(self, navcore, type):
13 self.updateTimer = eTimer()
14 self.updateTimer.timeout.get().append(self.update)
15 PerServiceDisplay.__init__(self, navcore,
17 iPlayableService.evStart: self.newService,
18 iPlayableService.evEnd: self.stopEvent
24 self.setType(self.type)
26 def setType(self, type):
29 self.updateTimer.start(500)
33 service = self.navcore.getCurrentService()
38 if what == self.TYPE_LENGTH:
40 elif what == self.TYPE_POSITION:
41 r = seek.getPlayPosition()
49 service = self.navcore.getCurrentService()
54 if self.type == self.TYPE_LENGTH:
55 l = self.get(self.TYPE_LENGTH)
56 elif self.type == self.TYPE_POSITION:
57 l = self.get(self.TYPE_POSITION)
58 elif self.type == self.TYPE_REMAINING:
59 l = self.get(self.TYPE_LENGTH) - self.get(self.TYPE_POSITION)
61 self.setText("%d:%02d" % (l/60, l%60))
62 self.updateTimer.start(500)
64 self.updateTimer.start(10000)
68 self.updateTimer.stop()