+ from Components.ActionMap import HelpableActionMap
+ class DVDMovieSelection(MovieSelection):
+ skin = """<screen name="DVDMovieSelection" position="center,center" size="560,445" title="Select a movie">
+ <ePixmap pixmap="skin_default/buttons/red.png" position="0,0" size="140,40" alphatest="on" />
+ <ePixmap pixmap="skin_default/buttons/green.png" position="140,0" size="140,40" alphatest="on" />
+ <ePixmap pixmap="skin_default/buttons/yellow.png" position="280,0" size="140,40" alphatest="on" />
+ <widget source="key_red" render="Label" position="0,0" zPosition="1" size="140,40" font="Regular;19" halign="center" valign="center" backgroundColor="#9f1313" transparent="1" />
+ <widget source="key_green" render="Label" position="140,0" zPosition="1" size="140,40" font="Regular;19" halign="center" valign="center" backgroundColor="#1f771f" transparent="1" />
+ <widget source="key_yellow" render="Label" position="280,0" zPosition="1" size="140,40" font="Regular;19" halign="center" valign="center" backgroundColor="#a08500" transparent="1" />
+ <widget name="waitingtext" position="0,45" size="560,395" zPosition="4" font="Regular;22" halign="center" valign="center" />
+ <widget name="list" position="5,40" size="550,375" zPosition="2" scrollbarMode="showOnDemand" />
+ <widget name="DescriptionBorder" pixmap="skin_default/border_eventinfo.png" position="0,316" zPosition="1" size="560,103" transparent="1" alphatest="on" />
+ <widget source="Service" render="Label" position="5,318" zPosition="1" size="480,35" font="Regular;17" foregroundColor="#cccccc">
+ <convert type="MovieInfo">ShortDescription</convert>
+ </widget>
+ <widget source="Service" render="Label" position="495,318" zPosition="1" size="60,22" font="Regular;17" halign="right">
+ <convert type="ServiceTime">Duration</convert>
+ <convert type="ClockToText">AsLength</convert>
+ </widget>
+ <widget source="Service" render="Label" position="380,337" zPosition="2" size="175,22" font="Regular;17" halign="right">
+ <convert type="MovieInfo">RecordServiceName</convert>
+ </widget>
+ <widget source="Service" render="Label" position="5,357" zPosition="1" size="550,58" font="Regular;19">
+ <convert type="EventName">ExtendedDescription</convert>
+ </widget>
+ <widget name="freeDiskSpace" position="10,425" size="540,20" font="Regular;19" valign="center" halign="right" />
+ </screen>"""
+ def __init__(self, session):
+ MovieSelection.__init__(self, session)
+ self["key_red"] = StaticText(_("Close"))
+ self["key_green"] = StaticText(_("Add"))
+ self["key_yellow"] = StaticText(_("Edit title"))
+ self["ColorActions"] = HelpableActionMap(self, "ColorActions",
+ {
+ "red": (self.close, _("Close title selection")),
+ "green": (self.insertWithoutEdit, ("insert without cutlist editor")),
+ "yellow": (self.movieSelected, _("Add a new title"))
+ })
+ def updateTags(self):
+ pass
+ def doContext(self):
+ print "context menu forbidden inside DVDBurn to prevent calling multiple instances"
+ def insertWithoutEdit(self):
+ current = self.getCurrent()
+ if current is not None:
+ current.edit = False
+ self.close(current)
+ def movieSelected(self):
+ current = self.getCurrent()
+ if current is not None:
+ current.edit = True
+ self.close(current)
+ self.session.openWithCallback(self.selectedSource, DVDMovieSelection)
+
+ def selectedSource(self, source = None):