X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/36f427fcb34bb0dafa3d395dbc6bfc060494c874..d25cc68147eac7b8e7628a9abdffe55a758612a3:/lib/python/Screens/MovieSelection.py diff --git a/lib/python/Screens/MovieSelection.py b/lib/python/Screens/MovieSelection.py index ad93a5eb..6bb18721 100644 --- a/lib/python/Screens/MovieSelection.py +++ b/lib/python/Screens/MovieSelection.py @@ -8,6 +8,8 @@ from Components.DiskInfo import DiskInfo from Screens.MessageBox import MessageBox from Screens.FixedMenu import FixedMenu +from Tools.Directories import * + from enigma import eServiceReference, eServiceCenter class ChannelContextMenu(FixedMenu): @@ -15,9 +17,9 @@ class ChannelContextMenu(FixedMenu): self.csel = csel self.service = service - menu = [("back", self.close), ("delete...", self.delete)] + menu = [(_("back"), self.close), (_("delete..."), self.delete)] - FixedMenu.__init__(self, session, "Movie Menu", menu) + FixedMenu.__init__(self, session, _("Movie Menu"), menu) self.skinName = "Menu" def delete(self): @@ -30,9 +32,9 @@ class ChannelContextMenu(FixedMenu): result = True if result == True: - self.session.openWithCallback(self.deleteConfirmed, MessageBox, "Do you really want to delete this recording?") + self.session.openWithCallback(self.deleteConfirmed, MessageBox, _("Do you really want to delete this recording?")) else: - self.session.openWithCallback(self.close, MessageBox, "You cannot delete this!") + self.session.openWithCallback(self.close, MessageBox, _("You cannot delete this!"), MessageBox.TYPE_ERROR) def deleteConfirmed(self, confirmed): if not confirmed: @@ -47,38 +49,51 @@ class ChannelContextMenu(FixedMenu): result = True if result == False: - self.session.openWithCallback(self.close, MessageBox, "Delete failed!") + self.session.openWithCallback(self.close, MessageBox, _("Delete failed!"), MessageBox.TYPE_ERROR) else: - self.csel["list"].reload() + list = self.csel["list"] + currentIndex = list.getCurrentIndex() + list.moveDown() + if list.getCurrentIndex() == currentIndex: + currentIndex -= 1 + list.reload() + list.moveToIndex(currentIndex) self.close() - class MovieSelection(Screen): - def __init__(self, session): + def __init__(self, session, selectedmovie = None): Screen.__init__(self, session) self.movemode = False self.bouquet_mark_edit = False - self["list"] = MovieList(eServiceReference("2:0:1:0:0:0:0:0:0:0:/hdd/movies/")) + self["list"] = MovieList(eServiceReference("2:0:1:0:0:0:0:0:0:0:" + resolveFilename(SCOPE_HDD))) + if (selectedmovie is not None): + self.onShown.append(self.moveTo) + self.selectedmovie = selectedmovie #self["okbutton"] = Button("ok", [self.channelSelected]) - self["freeDiskSpace"] = DiskInfo("/hdd/movies", DiskInfo.FREE) + self["freeDiskSpace"] = DiskInfo(resolveFilename(SCOPE_HDD), DiskInfo.FREE) self["actions"] = ActionMap(["OkCancelActions", "ContextMenuActions"], { - "cancel": self.close, + "cancel": self.abort, "ok": self.movieSelected, "contextMenu": self.doContext, }) self["actions"].csel = self + def moveTo(self): + self["list"].moveTo(self.selectedmovie) + def getCurrent(self): return self["list"].getCurrent()[0] def movieSelected(self): - self.session.nav.playService(self.getCurrent()) - self.close() + self.close(self.getCurrent()) def doContext(self): self.session.open(ChannelContextMenu, self, self.getCurrent()) + + def abort(self): + self.close(None)