From: Andreas Frisch Date: Fri, 5 Sep 2008 21:32:12 +0000 (+0000) Subject: additional service information for DVD menu and fixes X-Git-Tag: 2.6.0~900 X-Git-Url: https://git.cweiske.de/enigma2.git/commitdiff_plain/ec970c4f4534a4ed6f1f4d930bfb8d56bf5531a9 additional service information for DVD menu and fixes --- diff --git a/lib/python/Plugins/Extensions/DVDBurn/DVDTitle.py b/lib/python/Plugins/Extensions/DVDBurn/DVDTitle.py index dad16e7e..40aefafb 100644 --- a/lib/python/Plugins/Extensions/DVDBurn/DVDTitle.py +++ b/lib/python/Plugins/Extensions/DVDBurn/DVDTitle.py @@ -9,15 +9,23 @@ class DVDTitle: self.inputfile = "" self.cutlist = [ ] self.chaptermarks = [ ] + self.timeCreate = None def addService(self, service): from os import path from enigma import eServiceCenter, iServiceInformation + from ServiceReference import ServiceReference + from time import localtime, time self.source = service serviceHandler = eServiceCenter.getInstance() info = serviceHandler.info(service) self.descr = info and " " + info.getInfoString(service, iServiceInformation.sDescription) or "" + sTimeCreate = info.getInfo(service, iServiceInformation.sTimeCreate) + if sTimeCreate > 1: + self.timeCreate = localtime(sTimeCreate) + serviceref = ServiceReference(info.getInfoString(service, iServiceInformation.sServiceref)) self.name = info and info.getName(service) or "Title" + t.descr + self.channel = serviceref.getServiceName() self.inputfile = service.getPath() self.filesize = path.getsize(self.inputfile) self.estimatedDiskspace = self.filesize diff --git a/lib/python/Plugins/Extensions/DVDBurn/Process.py b/lib/python/Plugins/Extensions/DVDBurn/Process.py index 072085ef..c4221154 100644 --- a/lib/python/Plugins/Extensions/DVDBurn/Process.py +++ b/lib/python/Plugins/Extensions/DVDBurn/Process.py @@ -296,7 +296,7 @@ class PreviewTask(Task): if self.job.menupreview: self.waitAndOpenPlayer() else: - self.job.project.session.openWithCallback(self.previewCB, MessageBox, _("Do you want to preview this project before burning?"), timeout = 60, default = False) + self.job.project.session.openWithCallback(self.previewCB, MessageBox, _("Do you want to preview this DVD before burning?"), timeout = 60, default = False) def previewCB(self, answer): if answer == True: @@ -308,7 +308,7 @@ class PreviewTask(Task): if self.job.menupreview: self.closedCB(True) else: - self.job.project.session.openWithCallback(self.closedCB, MessageBox, _("Do you want to burn this project to DVD medium?") ) + self.job.project.session.openWithCallback(self.closedCB, MessageBox, _("Do you want to burn this collection to DVD medium?") ) def closedCB(self, answer): if answer == True: @@ -341,24 +341,31 @@ def getTitlesPerMenu(nr_titles): return titles_per_menu def formatTitle(template, title, track): - import re + print template template = template.replace("$i", str(track)) + print template template = template.replace("$t", title.name) + print template template = template.replace("$d", title.descr) + print template template = template.replace("$c", str(len(title.chaptermarks)+1)) + print template template = template.replace("$f", title.inputfile) + print template + template = template.replace("$C", title.channel) + print template l = title.length lengthstring = "%d:%02d:%02d" % (l/3600, l%3600/60, l%60) template = template.replace("$l", lengthstring) - res = re.search("(?:/.*?).*/(?P\d{4})(?P\d{2})(?P\d{2}).(?P\d{2})(?P\d{2}).-.*.?.ts", title.inputfile) - if res: - template = template.replace("$Y", res.group("year")) - template = template.replace("$M", res.group("month")) - template = template.replace("$D", res.group("day")) - template = template.replace("$h", res.group("hour")) - template = template.replace("$m", res.group("minute")) + print template + if title.timeCreate: + template = template.replace("$Y", str(title.timeCreate[0])) + template = template.replace("$M", str(title.timeCreate[1])) + template = template.replace("$D", str(title.timeCreate[2])) + timestring = "%d:%02d" % (title.timeCreate[3], title.timeCreate[4]) + template = template.replace("$T", timestring) else: - template = template.replace("$Y", "").replace("$M", "").replace("$D", "").replace("$h", "").replace("$m", "") + template = template.replace("$Y", "").replace("$M", "").replace("$D", "").replace("$T", "") return template.decode("utf-8") def CreateMenus(job): diff --git a/lib/python/Plugins/Extensions/DVDBurn/ProjectSettings.py b/lib/python/Plugins/Extensions/DVDBurn/ProjectSettings.py index 3cf7f9d0..ba78e5e1 100644 --- a/lib/python/Plugins/Extensions/DVDBurn/ProjectSettings.py +++ b/lib/python/Plugins/Extensions/DVDBurn/ProjectSettings.py @@ -93,8 +93,8 @@ class ProjectSettings(Screen,ConfigListScreen): - - + + """ def __init__(self, session, project = None): @@ -106,24 +106,24 @@ class ProjectSettings(Screen,ConfigListScreen): self["key_yellow"] = StaticText(_("Load")) self["key_blue"] = StaticText(_("Save")) - infotext = _("Available format variables") + ":\n$i=" + _("Track") + ", $t=" + _("Title") + ", $d=" + _("Description") + ", $l=" + _("length") + ", $c=" + _("chapters") + "\n" + _("Record") + " $Y=" + _("year") + ", $M=" + _("month") + ", $D=" + _("day") + ", $h=" + _("hour") + ", $m=" + _("minute") + ", $f=" + _("filename") + infotext = _("Available format variables") + ":\n%i=" + _("Track") + ", %t=" + _("Title") + ", %d=" + _("Description") + ", %l=" + _("length") + ", %c=" + _("chapters") + ",\n" + _("Record") + " %T=" + _("Begin time") + ", %Y=" + _("year") + ", %M=" + _("month") + ", %D=" + _("day") + ",\n%C=" + _("Channel") + ", %f=" + _("filename") self["info"] = StaticText(infotext) self.settings = project.settings self.list = [] - self.list.append(getConfigListEntry("Collection name", self.settings.name)) - self.list.append(getConfigListEntry("Authoring mode", self.settings.authormode)) - self.list.append(getConfigListEntry("Menu background image", self.settings.menubg)) - self.list.append(getConfigListEntry("Menu title format", self.settings.titleformat)) - self.list.append(getConfigListEntry("Menu subtitle format", self.settings.subtitleformat)) - self.list.append(getConfigListEntry("Menu headline color", self.settings.color_headline)) - self.list.append(getConfigListEntry("Menu plain text color", self.settings.color_button)) - self.list.append(getConfigListEntry("Menu highlighted button color", self.settings.color_highlight)) - self.list.append(getConfigListEntry("Menu font face", self.settings.font_face)) - self.list.append(getConfigListEntry("Font size (headline, titles, subtitles)", self.settings.font_size)) - self.list.append(getConfigListEntry("Menu spaces (top, between rows, left)", self.settings.space)) - self.list.append(getConfigListEntry("Menu audio", self.settings.menuaudio)) - self.list.append(getConfigListEntry("VMGM (intro trailer)", self.settings.vmgm)) + self.list.append(getConfigListEntry(_("Collection name"), self.settings.name)) + self.list.append(getConfigListEntry(_("Authoring mode"), self.settings.authormode)) + self.list.append(getConfigListEntry(_("Menu")+' '+_("background image"), self.settings.menubg)) + self.list.append(getConfigListEntry(_("Menu")+' '+_("Title"), self.settings.titleformat)) + self.list.append(getConfigListEntry(_("Menu")+' '+_("Subtitles"), self.settings.subtitleformat)) + self.list.append(getConfigListEntry(_("Menu")+' '+_("headline")+' '+_("color"), self.settings.color_headline)) + self.list.append(getConfigListEntry(_("Menu")+' '+_("text")+' '+_("color"), self.settings.color_button)) + self.list.append(getConfigListEntry(_("Menu")+' '+_("highlighted button")+' '+_("color"), self.settings.color_highlight)) + self.list.append(getConfigListEntry(_("Menu")+' '+_("font face"), self.settings.font_face)) + self.list.append(getConfigListEntry(_("Font size")+' ('+_("headline")+', '+_("Title")+', '+_("Subtitles")+')', self.settings.font_size)) + self.list.append(getConfigListEntry(_("Menu")+' '+_("spaces (top, between rows, left)"), self.settings.space)) + self.list.append(getConfigListEntry(_("Menu")+' '+_("Audio"), self.settings.menuaudio)) + self.list.append(getConfigListEntry(_("VMGM (intro trailer)"), self.settings.vmgm)) ConfigListScreen.__init__(self, self.list) self.keydict = {} diff --git a/lib/python/Plugins/Extensions/DVDBurn/TitleList.py b/lib/python/Plugins/Extensions/DVDBurn/TitleList.py index 6edb0906..685f4b3b 100644 --- a/lib/python/Plugins/Extensions/DVDBurn/TitleList.py +++ b/lib/python/Plugins/Extensions/DVDBurn/TitleList.py @@ -41,7 +41,7 @@ class TitleList(Screen): "addTitle": (self.addTitle, _("Add a new title"), _("Add title")), "editTitle": (self.editTitle, _("Edit chapters of current title"), _("Edit title")), "removeCurrentTitle": (self.removeCurrentTitle, _("Remove currently selected title"), _("Remove title")), - "settings": (self.settings, _("Project settings"), _("Settings")), + "settings": (self.settings, _("Collection settings"), _("Settings")), "burnProject": (self.burnProject, _("Burn DVD"), _("Burn DVD")), }) @@ -55,9 +55,9 @@ class TitleList(Screen): "cancel": self.leave }) - self["key_red"] = StaticText(_("Add title")) - self["key_green"] = StaticText(_("Edit title")) - self["key_yellow"] = StaticText(_("Remove title")) + self["key_red"] = StaticText(_("Remove title")) + self["key_green"] = StaticText(_("Add title")) + self["key_yellow"] = StaticText(_("Edit title")) self["key_blue"] = StaticText(_("Settings")) self["title_label"] = StaticText() @@ -81,12 +81,12 @@ class TitleList(Screen): def showMenu(self): menu = [] + menu.append((_("Burn DVD"), "burn")); + menu.append((_("Preview menu"), "previewMenu")); menu.append((_("Collection settings"), "settings")); menu.append((_("Add a new title"), "addtitle")); menu.append((_("Remove title"), "removetitle")); menu.append((_("Edit chapters of current title"), "edittitle")); - menu.append((_("Preview menu"), "previewMenu")); - menu.append((_("Burn DVD"), "burn")); menu.append((_("Exit"), "exit")); self.session.openWithCallback(self.menuCallback, ChoiceBox, title="", list=menu) diff --git a/lib/python/Plugins/Extensions/DVDBurn/keymap.xml b/lib/python/Plugins/Extensions/DVDBurn/keymap.xml index 7b7ea31c..2727e2b8 100644 --- a/lib/python/Plugins/Extensions/DVDBurn/keymap.xml +++ b/lib/python/Plugins/Extensions/DVDBurn/keymap.xml @@ -1,9 +1,9 @@ - - + + + - diff --git a/lib/python/Plugins/Extensions/DVDBurn/template/DreamboxDVDtemplate.ddvdp.xml b/lib/python/Plugins/Extensions/DVDBurn/template/DreamboxDVDtemplate.ddvdp.xml index 5738f3a4..b839ad8a 100644 --- a/lib/python/Plugins/Extensions/DVDBurn/template/DreamboxDVDtemplate.ddvdp.xml +++ b/lib/python/Plugins/Extensions/DVDBurn/template/DreamboxDVDtemplate.ddvdp.xml @@ -4,7 +4,7 @@ name="Dreambox DVD record" authormode="linked_nomenu" titleformat="$i. $t" - subtitleformat="$Y-$M-$D, $h:$m, $d ($c chapters)" + subtitleformat="$D.$M.$Y, $T $C, $d ($c chapters)" vmgm="/usr/share/enigma2/dreamvmgm.mpg" menubg="/usr/share/enigma2/dreamdvd_boat.jpg" menuaudio="/usr/share/enigma2/silence.mp2" diff --git a/lib/python/Screens/LocationBox.py b/lib/python/Screens/LocationBox.py index e41601a9..13315ffc 100644 --- a/lib/python/Screens/LocationBox.py +++ b/lib/python/Screens/LocationBox.py @@ -125,7 +125,7 @@ class LocationBox(Screen, NumericalTextInput, HelpableScreen): "up": self.up, "down": self.down, "ok": (self.ok, _("select")), - "back": (self.cancel, _("cancel")), + "back": (self.cancel, _("Cancel")), }, -2) self["ColorActions"] = LocationBoxActionMap(self, "ColorActions", diff --git a/lib/python/Tools/NumericalTextInput.py b/lib/python/Tools/NumericalTextInput.py index 696b8e20..27493249 100644 --- a/lib/python/Tools/NumericalTextInput.py +++ b/lib/python/Tools/NumericalTextInput.py @@ -10,40 +10,40 @@ class NumericalTextInput: self.nextFunction=nextFunc if self.lang == 'de_DE': - self.mapping.append (u".,?'\"0-()@/:_") # 0 + self.mapping.append (u".,?'\"0-()@/:_$") # 0 self.mapping.append (u" 1") # 1 - self.mapping.append (u"aäbc2AÄBC") # 2 + self.mapping.append (u"a�bc2A�BC") # 2 self.mapping.append (u"def3DEF") # 3 self.mapping.append (u"ghi4GHI") # 4 self.mapping.append (u"jkl5JKL") # 5 - self.mapping.append (u"mnoö6MNOÖ") # 6 - self.mapping.append (u"pqrsß7PQRSß") # 7 - self.mapping.append (u"tuüv8TUÜV") # 8 + self.mapping.append (u"mno�6MNO�") # 6 + self.mapping.append (u"pqrs�7PQRS�") # 7 + self.mapping.append (u"tu�v8TU�V") # 8 self.mapping.append (u"wxyz9WXYZ") # 9 elif self.lang == 'es_ES': - self.mapping.append (u".,?'\"0-()@/:_") # 0 + self.mapping.append (u".,?'\"0-()@/:_$") # 0 self.mapping.append (u" 1") # 1 - self.mapping.append (u"abcáà2ABCÁÀ") # 2 - self.mapping.append (u"deéèf3DEFÉÈ") # 3 - self.mapping.append (u"ghiíì4GHIÍÌ") # 4 + self.mapping.append (u"abc��2ABC��") # 2 + self.mapping.append (u"de��f3DEF��") # 3 + self.mapping.append (u"ghi��4GHI��") # 4 self.mapping.append (u"jkl5JKL") # 5 - self.mapping.append (u"mnñoóò6MNÑOÓÒ") # 6 + self.mapping.append (u"mn�o��6MN�O��") # 6 self.mapping.append (u"pqrs7PQRS") # 7 - self.mapping.append (u"tuvúù8TUVÚÙ") # 8 + self.mapping.append (u"tuv��8TUV��") # 8 self.mapping.append (u"wxyz9WXYZ") # 9 if self.lang in ['sv_SE', 'fi_FI']: - self.mapping.append (u".,?'\"0-()@/:_") # 0 + self.mapping.append (u".,?'\"0-()@/:_$") # 0 self.mapping.append (u" 1") # 1 - self.mapping.append (u"abcåä2ABCÅÄ") # 2 - self.mapping.append (u"defé3DEFÉ") # 3 + self.mapping.append (u"abc��2ABC��") # 2 + self.mapping.append (u"def�3DEF�") # 3 self.mapping.append (u"ghi4GHI") # 4 self.mapping.append (u"jkl5JKL") # 5 - self.mapping.append (u"mnoö6MNOÖ") # 6 + self.mapping.append (u"mno�6MNO�") # 6 self.mapping.append (u"pqrs7PQRS") # 7 self.mapping.append (u"tuv8TUV") # 8 self.mapping.append (u"wxyz9WXYZ") # 9 else: - self.mapping.append (u".,?'\"0-()@/:_") # 0 + self.mapping.append (u".,?'\"0-()@/:_$") # 0 self.mapping.append (u" 1") # 1 self.mapping.append (u"abc2ABC") # 2 self.mapping.append (u"def3DEF") # 3