def showChooser(self, entries): if self.cFlag == 1: self.palChooser.clear() list(map(self.palChooser.add, entries)) self.root.deiconify() else: self.root = tkinter.Toplevel() self.chooserFrame = tkinter.Frame(self.root) self.palChooser = ListChooser( self.chooserFrame, mode='extended', title='Customized colors groups', entries=entries, command=self.addCustomCol, ) self.cFlag = 1 dismissChooser = tkinter.Button(self.chooserFrame, text='Dismiss', command=self.root.withdraw) self.palChooser.pack() dismissChooser.pack() self.chooserFrame.pack()
def __init__(self, master, title = '', text = '', entries = (('',None),('',None)) , cancel = None, mode = 'single', list_width = None, list_height=None, list_font = None, list_command = None): assert mode in ['single', 'browse', 'multiple', 'extended' ] self.root = Tkinter.Toplevel(master) if title: self.root.title(title) self.root.iconname(title) self.entry = None self.entries = map(lambda x: x[0], entries) self.frame = Tkinter.Frame(self.root) self.frame.pack() self.root.bind('<Return>', self.return_event) list_cfg = {} if list_height: list_cfg['height']=list_height if list_width: list_cfg['width']=list_width self.listchooser = ListChooser(self.frame, title=text, entries = entries, lbwcfg=list_cfg, command=list_command) self.listchooser.pack(fill = Tkinter.BOTH, expand=1, padx=5, pady=5) ok_button = Tkinter.Button(self.frame, text="OK", command=(lambda self=self, num=0: self.done(num))) ok_button.pack(side=Tkinter.LEFT, fill=Tkinter.BOTH, expand=1) if cancel : cancel_button = Tkinter.Button(self.frame, text="Cancel", command=(lambda self=self, num=1: self.done(num))) cancel_button.pack(side=Tkinter.LEFT, fill=Tkinter.BOTH, expand=1) if list_font: self.set_newfont(list_font) self.root.protocol('WM_DELETE_WINDOW', self.wm_delete_window)