Exemple #1
0
    def create_widgets(self):
        '''Create basic 3 row x 3 col search (find) dialog.

        Other dialogs override subsidiary create_x methods as needed.
        Replace and Find-in-Files add another entry row.
        '''
        top = Toplevel(self.root)
        top.bind("<Return>", self.default_command)
        top.bind("<Escape>", self.close)
        top.protocol("WM_DELETE_WINDOW", self.close)
        top.wm_title(self.title)
        top.wm_iconname(self.icon)
        self.top = top
        self.inner = ui.padframe(ui.Frame(top), 10)
        self.inner.grid(column=0, row=0, sticky='nwes')

        self.row = 0
        self.inner.grid_columnconfigure(0, pad=2, weight=0)
        self.inner.grid_columnconfigure(1, pad=2, minsize=100, weight=100)

        self.create_entries()  # row 0 (and maybe 1), cols 0, 1
        self.create_option_buttons()  # next row, cols 0, 1
        self.create_other_buttons()  # next row, cols 0, 1
        self.create_command_buttons()  # col 2, all rows
Exemple #2
0
    def create_widgets(self):
        '''Create basic 3 row x 3 col search (find) dialog.

        Other dialogs override subsidiary create_x methods as needed.
        Replace and Find-in-Files add another entry row.
        '''
        top = Toplevel(self.root)
        top.bind("<Return>", self.default_command)
        top.bind("<Escape>", self.close)
        top.protocol("WM_DELETE_WINDOW", self.close)
        top.wm_title(self.title)
        top.wm_iconname(self.icon)
        self.top = top
        self.inner = ui.padframe(ui.Frame(top), 10)
        self.inner.grid(column=0, row=0, sticky='nwes')

        self.row = 0
        self.inner.grid_columnconfigure(0, pad=2, weight=0)
        self.inner.grid_columnconfigure(1, pad=2, minsize=100, weight=100)

        self.create_entries()  # row 0 (and maybe 1), cols 0, 1
        self.create_option_buttons()  # next row, cols 0, 1
        self.create_other_buttons()  # next row, cols 0, 1
        self.create_command_buttons()  # col 2, all rows
Exemple #3
0
    def make_gui(self):
        pyshell = self.pyshell
        self.flist = pyshell.flist
        self.root = root = pyshell.root
        self.tooltip = None
        self.var_values = {}
        _ttk = self._ttk
        self.top = top = self.flist.new_container(own_window=True)
        self.top.add_component(self)
        self.top.w.bind("<Escape>", self.close)
        self.var_open_source_windows = BooleanVar(top.w, False)

        self.pane = ui.PanedWindow(self.top.w, orient='horizontal')
        self.pane.grid(column=0, row=0, sticky='nwes')
        self.top.w.grid_columnconfigure(0, weight=1)
        self.top.w.grid_rowconfigure(0, weight=1)
        self.left = left = ui.padframe(ui.Frame(self.pane), 5)
        if _ttk:
            self.pane.add(left, weight=1)
        else:
            self.pane.add(left, stretch='always', sticky='nsew')
        controls = ui.Frame(left)
        col = 0
        f = ('helvetica', 9)
        self.buttondata = {}
        self.buttons = ['go', 'step', 'over', 'out', 'stop', 'prefs']
        self.button_names = {
            'go': 'Go',
            'step': 'Step',
            'over': 'Over',
            'out': 'Out',
            'stop': 'Stop',
            'prefs': 'Options'
        }
        self.button_cmds = {
            'go': self.cont,
            'step': self.step,
            'over': self.next,
            'out': self.ret,
            'stop': self.quit,
            'prefs': self.options
        }
        for key in self.buttons:
            normal = ui.image('debug_' + key + '.gif')
            disabled = ui.image('debug_' + key + '_disabled.gif')
            b = ui.Label(controls,
                         image=normal,
                         text=self.button_names[key],
                         compound='top',
                         font=f)
            b.grid(column=col, row=0, padx=[0, 5])
            self.buttondata[key] = (b, normal, disabled)
            col += 1
        self.enable_buttons(['prefs'])
        self.status = ui.Label(controls, text=' ', font=('helvetica', 13))
        self.status.grid(column=6, row=0, sticky='nw', padx=[25, 0])
        controls.grid(column=0, row=0, sticky='new', pady=[0, 6])
        controls.grid_columnconfigure(7, weight=1)

        self.current_line_img = ui.image('debug_current.gif')
        self.regular_line_img = ui.image('debug_line.gif')
        if _ttk:
            self.stack = ttk.Treeview(left,
                                      columns=('statement', ),
                                      height=5,
                                      selectmode='browse')
            self.stack.column('#0', width=100)
            self.stack.column('#1', width=150)
            self.stack.tag_configure('error', foreground='red')
        else:
            self.stack = Listbox(left,
                                 height=5,
                                 width=35,
                                 selectmode='browse',
                                 exportselection=False,
                                 activestyle='none')
        self.stack.bind('<<TreeviewSelect>>' if _ttk else '<<ListboxSelect>>',
                        lambda e: self.stack_selection_changed())
        self.stack.bind('<Double-1>', lambda e: self.stack_doubleclick())
        self.stack.bind('<<context-menu>>', self.stack_contextmenu)

        scroll = ui.Scrollbar(left, command=self.stack.yview)
        self.stack['yscrollcommand'] = scroll.set
        self.stack.grid(column=0, row=2, sticky='nwes')
        scroll.grid(column=1, row=2, sticky='ns')
        left.grid_columnconfigure(0, weight=1)
        left.grid_rowconfigure(2, weight=1)

        right = ui.padframe(ui.Frame(self.pane), 5)
        if _ttk:
            self.pane.add(right, weight=1)
        else:
            self.pane.add(right, stretch='always', sticky='nsew')
        if _ttk:
            self.vars = ttk.Treeview(right,
                                     columns=('value', ),
                                     height=5,
                                     selectmode='none')
            self.locals = self.vars.insert('', 'end', text='Locals', open=True)
            self.globals = self.vars.insert('',
                                            'end',
                                            text='Globals',
                                            open=False)
            self.vars.column('#0', width=100)
            self.vars.column('#1', width=150)
        else:
            self.vars = Listbox(right,
                                height=5,
                                width=35,
                                selectmode='none',
                                exportselection=False,
                                activestyle='none')
        self.vars.bind('<Motion>', self.mouse_moved_vars)
        self.vars.bind('<Leave>', self.leave_vars)
        scroll2 = ui.Scrollbar(right, command=self.vars.yview)
        self.vars['yscrollcommand'] = scroll2.set
        self.vars.grid(column=0, row=0, sticky='nwes')
        scroll2.grid(column=1, row=0, sticky='ns')
        right.grid_columnconfigure(0, weight=1)
        right.grid_rowconfigure(0, weight=1)
        left.bind('<Configure>', lambda e: self._adjust_layout())
        self.clear_stack()
Exemple #4
0
    def make_gui(self):
        pyshell = self.pyshell
        self.flist = pyshell.flist
        self.root = root = pyshell.root
        self.tooltip = None
        self.var_values = {}
        _ttk = self._ttk
        self.top = top = self.flist.new_container(own_window=True)
        self.top.add_component(self)
        self.top.w.bind("<Escape>", self.close)
        self.var_open_source_windows = BooleanVar(top.w, False)
        
        self.pane = ui.PanedWindow(self.top.w, orient='horizontal')
        self.pane.grid(column=0, row=0, sticky='nwes')
        self.top.w.grid_columnconfigure(0, weight=1)
        self.top.w.grid_rowconfigure(0, weight=1)
        self.left = left = ui.padframe(ui.Frame(self.pane), 5)
        if _ttk:
            self.pane.add(left, weight=1)
        else:
            self.pane.add(left, stretch='always', sticky='nsew')
        controls = ui.Frame(left)
        col = 0
        f = ('helvetica', 9)
        self.buttondata = {}
        self.buttons = ['go', 'step', 'over', 'out', 'stop', 'prefs']
        self.button_names = {'go':'Go', 'step':'Step', 'over':'Over',
                             'out':'Out', 'stop':'Stop', 'prefs':'Options'}
        self.button_cmds = {'go':self.cont, 'step':self.step, 
                            'over':self.next, 'out':self.ret, 
                            'stop':self.quit, 'prefs':self.options}
        for key in self.buttons:
            normal = ui.image('debug_'+key+'.gif')
            disabled = ui.image('debug_'+key+'_disabled.gif')
            b = ui.Label(controls, image=normal, text=self.button_names[key], 
                          compound='top', font=f)
            b.grid(column=col, row=0, padx=[0,5])
            self.buttondata[key] = (b, normal, disabled)
            col += 1
        self.enable_buttons(['prefs'])
        self.status = ui.Label(controls, text=' ', font=('helvetica', 13))
        self.status.grid(column=6, row=0, sticky='nw', padx=[25,0])
        controls.grid(column=0, row=0, sticky='new', pady=[0,6])
        controls.grid_columnconfigure(7, weight=1)

        self.current_line_img = ui.image('debug_current.gif')
        self.regular_line_img = ui.image('debug_line.gif')
        if _ttk:
            self.stack = ttk.Treeview(left, columns=('statement', ),
                                      height=5, selectmode='browse')
            self.stack.column('#0', width=100)
            self.stack.column('#1', width=150)
            self.stack.tag_configure('error', foreground='red')
        else:
            self.stack = Listbox(left, height=5, width=35, selectmode='browse',
                     exportselection=False, activestyle='none')
        self.stack.bind('<<TreeviewSelect>>' if _ttk else '<<ListboxSelect>>', 
                        lambda e: self.stack_selection_changed())
        self.stack.bind('<Double-1>', lambda e: self.stack_doubleclick())
        self.stack.bind('<<context-menu>>', self.stack_contextmenu)

        scroll = ui.Scrollbar(left, command=self.stack.yview)
        self.stack['yscrollcommand'] = scroll.set
        self.stack.grid(column=0, row=2, sticky='nwes')
        scroll.grid(column=1, row=2, sticky='ns')
        left.grid_columnconfigure(0, weight=1)
        left.grid_rowconfigure(2, weight=1)

        right = ui.padframe(ui.Frame(self.pane), 5)
        if _ttk:
            self.pane.add(right, weight=1)
        else:
            self.pane.add(right, stretch='always', sticky='nsew')
        if _ttk:
            self.vars = ttk.Treeview(right, columns=('value',), height=5,
                                                    selectmode='none')
            self.locals = self.vars.insert('', 'end', text='Locals', 
                                           open=True)
            self.globals = self.vars.insert('', 'end', text='Globals',
                                            open=False)
            self.vars.column('#0', width=100)
            self.vars.column('#1', width=150)
        else:
            self.vars = Listbox(right, height=5, width=35, selectmode='none',
                    exportselection=False, activestyle='none')
        self.vars.bind('<Motion>', self.mouse_moved_vars)
        self.vars.bind('<Leave>', self.leave_vars)
        scroll2 = ui.Scrollbar(right, command=self.vars.yview)
        self.vars['yscrollcommand'] = scroll2.set
        self.vars.grid(column=0, row=0, sticky='nwes')
        scroll2.grid(column=1, row=0, sticky='ns')
        right.grid_columnconfigure(0, weight=1)
        right.grid_rowconfigure(0, weight=1)
        left.bind('<Configure>', lambda e: self._adjust_layout())
        self.clear_stack()