+ answer = answer and answer[1]
+
+ if answer in ["quitanddelete", "quitanddeleteconfirmed"]:
+ ref = self.session.nav.getCurrentlyPlayingServiceReference()
+ from enigma import eServiceCenter
+ serviceHandler = eServiceCenter.getInstance()
+ info = serviceHandler.info(ref)
+ name = info and info.getName(ref) or _("this recording")
+
+ if answer == "quitanddelete":
+ from Screens.MessageBox import MessageBox
+ self.session.openWithCallback(self.deleteConfirmed, MessageBox, _("Do you really want to delete %s?") % name)
+ return
+
+ if answer == "quitanddeleteconfirmed":
+ offline = serviceHandler.offlineOperations(ref)
+ if offline.deleteFromDisk(0):
+ from Screens.MessageBox import MessageBox
+ self.session.openWithCallback(self.close, MessageBox, _("You cannot delete this!"), MessageBox.TYPE_ERROR)
+ return
+
+ if answer in ["quit", "quitanddeleteconfirmed"]:
+ config.movielist.last_videodir.cancel()
+ self.close()
+ elif answer == "movielist":
+ ref = self.session.nav.getCurrentlyPlayingServiceReference()
+ self.returning = True
+ from Screens.MovieSelection import MovieSelection
+ self.session.openWithCallback(self.movieSelected, MovieSelection, ref)
+ self.session.nav.stopService()
+ elif answer == "restart":
+ self.doSeek(0)
+
+ def doEofInternal(self, playing):
+ if not self.execing:
+ return
+ if not playing :
+ return
+ self.handleLeave(config.usage.on_movie_eof.value)
+
+ def showMovies(self):
+ ref = self.session.nav.getCurrentlyPlayingServiceReference()
+ from Screens.MovieSelection import MovieSelection
+ self.session.openWithCallback(self.movieSelected, MovieSelection, ref)
+
+ def movieSelected(self, service):
+ if service is not None:
+ self.is_closing = False
+ self.session.nav.playService(service)
+ self.returning = False
+ elif self.returning: