X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/7f31882035b596c3293417906a0d0a70ee636da9..0056054b80fede7d4c92f83033ba33159ea861ef:/Navigation.py?ds=sidebyside diff --git a/Navigation.py b/Navigation.py index c42a62e5..a0f40baf 100644 --- a/Navigation.py +++ b/Navigation.py @@ -19,22 +19,25 @@ class Navigation: self.pnav = pNavigation() self.pnav.m_event.get().append(self.callEvent) self.event = [ ] - self.currentlyPlayingService = None self.currentlyPlayingServiceReference = None - + self.currentlyPlayingService = None + self.state = 0 self.RecordTimer = RecordTimer.RecordTimer() def callEvent(self, i): + self.state = i != 1 for x in self.event: x(i) - + def playService(self, ref): + print "playing", ref.toString() self.currentlyPlayingServiceReference = None + self.currentlyPlayingService = None if ref is None: self.stopService() return 0 - if not self.pnav.playService(ref): + if self.pnav and not self.pnav.playService(ref): self.currentlyPlayingServiceReference = ref return 0 return 1 @@ -46,28 +49,30 @@ class Navigation: print "recording service: %s" % (str(ref)) if isinstance(ref, ServiceReference.ServiceReference): ref = ref.ref - service = self.pnav.recordService(ref) + service = self.pnav and self.pnav.recordService(ref) if service is None: print "record returned non-zero" return None else: return service - + def getCurrentService(self): - service = self.pnav.getCurrentService() - - if service is None: - return None - - return service - + if self.state: + if not self.currentlyPlayingService: + self.currentlyPlayingService = self.pnav and self.pnav.getCurrentService() + return self.currentlyPlayingService + return None + def stopService(self): - self.pnav.stopService() - + if self.pnav: + self.pnav.stopService() + self.currentlyPlayingService = None + self.currentlyPlayingServiceReference = None + def pause(self, p): - return self.pnav.pause(p) - + return self.pnav and self.pnav.pause(p) + def recordWithTimer(self, ref, begin, end, name, description, eit): if isinstance(ref, eServiceReference): ref = ServiceReference.ServiceReference(ref) @@ -77,7 +82,8 @@ class Navigation: def shutdown(self): self.RecordTimer.shutdown() - del self.pnav + self.ServiceHandler = None + self.pnav = None def stopUserServices(self): self.stopService()