def addfilegui(self, path=None, prefonly=False): guiparam = {} guiparam['path'] = StringVar() guiparam['device'] = IntVar() guiparam['destchoice'] = IntVar() guiparam['dest'] = StringVar() guiparam['destfinal'] = StringVar() guiparam['returnval'] = BooleanVar(False) guiparam['taglan'] = StringVar() guiparam['sublan'] = StringVar() guiparam['movieset'] = StringVar() GP = self.getglobalparamcbk() if path != None: guiparam['path'].set(path) guiparam['destchoice'].set(1) if GP['DESTDIR'] != "": guiparam['dest'].set(GP['DESTDIR']) if GP['FINALDIR'] != "": guiparam['destfinal'].set(GP['FINALDIR']) guiparam['destchoice'].set(3) else: guiparam['destchoice'].set(2) guiparam['device'].set(GP['DEVICECONFS']) guiparam['taglan'].set(GP['TAGLAN']) guiparam['sublan'].set(GP['SUBLAN']) guiparam['movieset'].set(GP['MOVIESET']) filep = Toplevel(self, padx=10, pady=10) filep.protocol("WM_DELETE_WINDOW", "pass") if not prefonly: f = Frame(filep, border=1, relief=SUNKEN, padx=2, pady=2) f.pack(anchor=W, fill=BOTH) f.grid_columnconfigure(0, weight=1) Label(f, text="Select the file to transcode:").grid(row=0, column=0) Entry(f, textvariable=guiparam['path']).grid(row=1, column=0, sticky=W + E) Button(f, text="Browse", command=lambda: OSTools.browse4filename( filep, "Open file to transcode", [ ("Video files", ("*avi", "*.mkv", "*.mp4")), ("All files", "*.*") ], guiparam['path'])).grid(row=1, column=1, sticky=W + E) Label(filep, text="Encoding paramaters").pack(anchor=W) f = Frame(filep, border=1, relief=SUNKEN, padx=2, pady=2) f.pack(anchor=W, fill=BOTH) Label(f, text="Select the device to transcode to:").pack(anchor=W) for i in range(len(self.devicelabels)): Radiobutton(f, text=self.devicelabels[i], variable=guiparam['device'], value=i).pack(anchor=W) f = Frame(filep, border=1, relief=SUNKEN, padx=2, pady=2) f.pack(anchor=W, fill=BOTH) f.grid_columnconfigure(1, weight=1) f.grid_columnconfigure(3, weight=1) Label(f, text="Select output dir (Please read the manual):").grid( row=0, column=0) Radiobutton(f, text="Same dir as source", variable=guiparam['destchoice'], value=1).grid(row=1, column=0, sticky=W) Radiobutton(f, text="To this dir", variable=guiparam['destchoice'], value=2).grid(row=2, column=0, sticky=W) Radiobutton(f, text="First to one dir and then to another", variable=guiparam['destchoice'], value=3).grid(row=3, column=0, sticky=W) Entry(f, textvariable=guiparam['dest']).grid(row=2, column=1, sticky=W + E) Entry(f, textvariable=guiparam['dest']).grid(row=3, column=1, sticky=W + E) Entry(f, textvariable=guiparam['destfinal']).grid(row=3, column=3, sticky=W + E) Button(f, text="Browse", command=lambda: OSTools.browse4dir(filep, "Select directory", guiparam['dest'])).grid( row=2, column=2, sticky=W + E) Button(f, text="Browse", command=lambda: OSTools.browse4dir(filep, "Select directory", guiparam['dest'])).grid( row=3, column=2, sticky=W + E) Button(f, text="Browse", command=lambda: OSTools.browse4dir(filep, "Select directory", guiparam['destfinal'])).grid( row=3, column=4, sticky=W + E) f = Frame(filep, border=1, relief=SUNKEN, padx=2, pady=2) f.pack(anchor=W, fill=BOTH) f.grid_columnconfigure(1, weight=1) f.grid_columnconfigure(3, weight=1) Label(f, text="Tag langugage ID (en for english, fr for french, etc...):" ).grid(row=0, column=0) Entry(f, textvariable=guiparam['taglan']).grid(row=0, column=1, sticky=W + E) f = Frame(filep, border=1, relief=SUNKEN, padx=2, pady=2) f.pack(anchor=W, fill=BOTH) f.grid_columnconfigure(1, weight=1) f.grid_columnconfigure(3, weight=1) Label(f, text="XBMC .nfo prefs").grid(row=1, column=0) Label( f, text= "Subtitle download langugage ID (empty for no download, eng for english, fre for french, etc...):" ).grid(row=2, column=0) Entry(f, textvariable=guiparam['sublan']).grid(row=2, column=1, sticky=W + E) Label(f, text="Movie set (empty for None):").grid(row=3, column=0) Entry(f, textvariable=guiparam['movieset']).grid(row=3, column=1, sticky=W + E) f = Frame(filep, padx=2, pady=2) f.pack() Button(f, text="Go", command=lambda: guiparam['returnval'].set(True), width=20).grid(row=0, column=0, sticky=W) Button(f, text="Cancel", command=lambda: guiparam['returnval'].set(False), width=20).grid(row=0, column=1, sticky=E) self.wait_variable(guiparam['returnval']) filep.destroy() return guiparam
def addbtn(self): self.addfile(OSTools.browse4filename(self, "Open file to add", [("Video files", ("*avi", "*.mkv", "*.mp4")), ("All files", "*.*")])) return False
def addfilegui(self, path=None, prefonly=False): guiparam = {} guiparam['path'] = StringVar() guiparam['device'] = IntVar() guiparam['destchoice'] = IntVar() guiparam['dest'] = StringVar() guiparam['destfinal'] = StringVar() guiparam['returnval'] = BooleanVar(False) guiparam['taglan'] = StringVar() guiparam['sublan'] = StringVar() guiparam['movieset'] = StringVar() GP = self.getglobalparamcbk() if path != None: guiparam['path'].set(path) guiparam['destchoice'].set(1) if GP['DESTDIR'] != "": guiparam['dest'].set(GP['DESTDIR']) if GP['FINALDIR'] != "": guiparam['destfinal'].set(GP['FINALDIR']) guiparam['destchoice'].set(3) else: guiparam['destchoice'].set(2) guiparam['device'].set(GP['DEVICECONFS']) guiparam['taglan'].set(GP['TAGLAN']) guiparam['sublan'].set(GP['SUBLAN']) guiparam['movieset'].set(GP['MOVIESET']) filep = Toplevel(self, padx=10, pady=10) filep.protocol("WM_DELETE_WINDOW", "pass") if not prefonly: f = Frame(filep, border=1, relief=SUNKEN, padx=2, pady=2) f.pack(anchor=W, fill=BOTH) f.grid_columnconfigure(0, weight=1) Label(f, text="Select the file to transcode:").grid(row=0, column=0) Entry(f, textvariable=guiparam['path']).grid(row=1, column=0, sticky=W + E) Button(f, text="Browse", command=lambda: OSTools.browse4filename(filep, "Open file to transcode", [ ("Video files", ("*avi", "*.mkv", "*.mp4")), ("All files", "*.*")], guiparam['path'])).grid(row=1, column=1, sticky=W + E) Label(filep, text="Encoding paramaters").pack(anchor=W) f = Frame(filep, border=1, relief=SUNKEN, padx=2, pady=2) f.pack(anchor=W, fill=BOTH) Label(f, text="Select the device to transcode to:").pack(anchor=W) for i in range(len(self.devicelabels)): Radiobutton(f, text=self.devicelabels[i], variable=guiparam['device'], value=i).pack(anchor=W) f = Frame(filep, border=1, relief=SUNKEN, padx=2, pady=2) f.pack(anchor=W, fill=BOTH) f.grid_columnconfigure(1, weight=1) f.grid_columnconfigure(3, weight=1) Label(f, text="Select output dir (Please read the manual):").grid(row=0, column=0) Radiobutton(f, text="Same dir as source", variable=guiparam['destchoice'], value=1).grid(row=1, column=0, sticky=W) Radiobutton(f, text="To this dir", variable=guiparam['destchoice'], value=2).grid(row=2, column=0, sticky=W) Radiobutton(f, text="First to one dir and then to another", variable=guiparam['destchoice'], value=3).grid( row=3, column=0, sticky=W) Entry(f, textvariable=guiparam['dest']).grid(row=2, column=1, sticky=W + E) Entry(f, textvariable=guiparam['dest']).grid(row=3, column=1, sticky=W + E) Entry(f, textvariable=guiparam['destfinal']).grid(row=3, column=3, sticky=W + E) Button(f, text="Browse", command=lambda: OSTools.browse4dir(filep, "Select directory", guiparam['dest'])).grid( row=2, column=2, sticky=W + E) Button(f, text="Browse", command=lambda: OSTools.browse4dir(filep, "Select directory", guiparam['dest'])).grid( row=3, column=2, sticky=W + E) Button(f, text="Browse", command=lambda: OSTools.browse4dir(filep, "Select directory", guiparam['destfinal'])).grid(row=3, column=4, sticky=W + E) f = Frame(filep, border=1, relief=SUNKEN, padx=2, pady=2) f.pack(anchor=W, fill=BOTH) f.grid_columnconfigure(1, weight=1) f.grid_columnconfigure(3, weight=1) Label(f, text="Tag langugage ID (en for english, fr for french, etc...):").grid(row=0, column=0) Entry(f, textvariable=guiparam['taglan']).grid(row=0, column=1, sticky=W + E) f = Frame(filep, border=1, relief=SUNKEN, padx=2, pady=2) f.pack(anchor=W, fill=BOTH) f.grid_columnconfigure(1, weight=1) f.grid_columnconfigure(3, weight=1) Label(f, text="XBMC .nfo prefs").grid(row=1, column=0) Label(f, text="Subtitle download langugage ID (empty for no download, eng for english, fre for french, etc...):").grid( row=2, column=0) Entry(f, textvariable=guiparam['sublan']).grid(row=2, column=1, sticky=W + E) Label(f, text="Movie set (empty for None):").grid(row=3, column=0) Entry(f, textvariable=guiparam['movieset']).grid(row=3, column=1, sticky=W + E) f = Frame(filep, padx=2, pady=2) f.pack() Button(f, text="Go", command=lambda: guiparam['returnval'].set(True), width=20).grid(row=0, column=0, sticky=W) Button(f, text="Cancel", command=lambda: guiparam['returnval'].set(False), width=20).grid(row=0, column=1, sticky=E) self.wait_variable(guiparam['returnval']) filep.destroy() return guiparam