def __init__(self, parent, callback, icon): self.parent = parent self.callback = callback self.icon = icon self.window = Tkinter.Toplevel(parent) self.window.withdraw() self.window.title('Translation progress') self.window.transient(parent) self.window.group(parent) self.window.protocol('WM_DELETE_WINDOW', self.stub) self.window.tk.call('wm', 'iconbitmap', self.window, self.icon) self.win_panel = TFrame(self.window, borderwidth=10) self.win_panel.pack(side=TOP, fill=BOTH) top_panel = TFrame(self.win_panel) top_panel.pack(side=TOP, fill=X, pady=5) self.label1_reference = StringVar(self.window) self.label1 = TLabel(top_panel, textvariable=self.label1_reference) self.label1.pack(side=LEFT) self.label1_reference.set('Start...') mid_panel = TFrame(self.win_panel) mid_panel.pack(side=TOP, fill=X) self.label2_reference = StringVar(self.window) self.label2 = TLabel(mid_panel, textvariable=self.label2_reference) self.label2.pack(side=LEFT) self.label2_reference.set('') self.progress_reference = IntVar(self.window) self.progress_bar = Ttk.TProgressbar(self.win_panel, orient='horizontal', length=450, variable=self.progress_reference) self.progress_bar.pack(side=TOP, anchor='w') self.progress_reference.set(10) self.window.resizable(False, False) self.set_position() self.window.deiconify()
def __init__(self, icon, options, filetypes, file=None, app_ver=None): self.icon = icon self.options = options self.encoding = sys.getfilesystemencoding() if self.encoding is None: self.encoding = sys.getdefaultencoding() if not app_ver is None: self.app_ver = app_ver exit_message = 'Cancel' if not file is None: if os.path.isfile(file): self.file = file self.filetypes = filetypes self.window = Tkinter.Tk() self.window.withdraw() self.window.title('UniConvertor ' + self.app_ver) self.window.tk.call('wm', 'iconbitmap', self.window, self.icon) self.win_panel = TFrame(self.window, borderwidth=10) self.win_panel.pack(side=TOP, fill=Tkinter.BOTH, expand=1) #File selection file_panel = TFrame(self.win_panel) label = TLabel(file_panel, text='File: ') label.pack(side=LEFT, padx=5) self.file_button = TButton(file_panel, text='...', command=self.openFile, width=0) self.file_button.pack(side=RIGHT) self.file_reference = StringVar(self.window) self.file_reference.set('<None>') self.file_entry = TEntry(file_panel, text='<None>', state='readonly', textvariable=self.file_reference) self.file_entry.pack(side=RIGHT, fill=X, expand=1) if self.file is None: file_panel.pack(side=TOP, fill=X) self.stand_alone = True #Formats label = TLabel(self.win_panel, text=' Convert to: ') label.pack(side=TOP, padx=5) format_frame = TLabelframe(self.win_panel, labelwidget=label, borderwidth=2) format_frame.pack(side=TOP, fill=Tkinter.X, expand=1, pady=2) formats = [] for item in self.options: formats.append(item[0]) self.format_reference = StringVar(self.window) self.format_reference.set(self.options[1][0]) self.format_combo = TCombobox(format_frame, values=formats, width=50, state='readonly', textvariable=self.format_reference) self.format_combo.pack(expand=1, padx=10, pady=10) #Buttons button_panel = TFrame(self.win_panel) button_panel.pack(side=BOTTOM, fill=X, expand=1, pady=5) self.but_close = TButton(button_panel, text='Cancel', width=10, command=self.close) self.but_close.pack(side=RIGHT) self.but_convert = TButton(button_panel, text='Convert', width=10, command=self.convert) self.but_convert.pack(side=RIGHT, padx=10) if self.file is None: self.but_convert['state'] = 'disabled' self.but_close['text'] = 'Close' label = TLabel(button_panel, text='http://sk1project.org', state='disabled') label.pack(side=LEFT, anchor='sw') self.window.resizable(False, False) self.set_position() self.window.deiconify()