Exemple #1
0
def main():
    root = Tk()
    sizex = 800
    sizey = 600
    posx = 100
    posy = 100
    root.wm_geometry("%dx%d+%d+%d" % (sizex, sizey, posx, posy))

    root.grid()
    root.rowconfigure(0, weight=1)
    root.columnconfigure(0, weight=1)

    myframe = Frame(root, relief=GROOVE, bd=1)
    myframe.grid(row=0, column=0, sticky="NESW")

    myframe.rowconfigure(0, weight=1)
    myframe.columnconfigure(0, weight=1)
    myframe.columnconfigure(1, weight=0)

    canvas = Canvas(myframe)
    canvas.grid(row=0, column=0, sticky="NESW")

    frame = Frame(canvas)
    myscrollbar = Scrollbar(myframe, orient="vertical", command=canvas.yview)
    myscrollbar.grid(row=0, column=1, sticky="NESW")
    canvas.configure(yscrollcommand=myscrollbar.set)

    canvas.create_window((0, 0), window=frame, anchor='nw')
    frame.bind("<Configure>", lambda e, c=canvas: myfunction(c, e))
    data(frame)
    root.mainloop()
Exemple #2
0
def add_scrollbars(master, widget, w_row=0, w_column=0):
    master.rowconfigure(w_row + 1, weight=0)
    master.columnconfigure(w_column + 1, weight=0)

    vscroll = Scrollbar(master, command=widget.yview)
    vscroll.grid(row=w_row, column=w_column + 1, sticky="NESW")

    hscroll = Scrollbar(master, command=widget.xview, orient=HORIZONTAL)
    hscroll.grid(row=w_row + 1, column=w_column, sticky="NESW")

    widget.config(yscrollcommand=vscroll.set, xscrollcommand=hscroll.set)

    return vscroll, hscroll
Exemple #3
0
    def __init__(self, task, **kw):
        GUIFrame.__init__(self, **kw)

        self.grid()
        self.rowconfigure(0, weight = 1)

        # Text itself
        self.columnconfigure(0, weight = 1)
        t = GUIText(master = self, state = READONLY, wrap = NONE)
        t.grid(row = 0, column = 0, sticky = "NESW")

        # Vertical scrollbar
        self.columnconfigure(1, weight = 0)
        vsb = Scrollbar(master = self, orient = VERTICAL)
        vsb.grid(row = 0, column = 1, sticky = "NESW")

        # Horizontal scrollbar
        self.rowconfigure(1, weight = 0)
        hsb = Scrollbar(master = self, orient = HORIZONTAL)
        hsb.grid(row = 1, column = 0, sticky = "NESW")

        # Bind scrollbars and text
        t.config(yscrollcommand = vsb.set)
        vsb.config(command = t.yview)
        t.config(xscrollcommand = hsb.set)
        hsb.config(command = t.xview)

        task_traceback = []

        e = task.exception
        while isinstance(e, (CancelledCallee, FailedCallee)):
            task_traceback.append(task)

            task = e.callee
            e = task.exception

        lines = format_exception(type(e), e, task.traceback)

        lines.append("\n")
        for task in reversed(task_traceback):
            g = task.generator
            lines.append('in coroutine "%s" (%s)\n' % (
                g.__name__, type(task).__name__
            ))

        t.insert(END, "".join(lines))
Exemple #4
0
Fichier : qlv.py Projet : ufwt/qdt
    def __init__(self):
        GUITk.__init__(self)

        self.title(_("QEmu Log Viewer"))

        self.columnconfigure(0, weight = 1)

        self.rowconfigure(0, weight = 1)
        panes = AutoPanedWindow(self, orient = VERTICAL, sashrelief = RAISED)
        panes.grid(row = 0, column = 0, sticky = "NESW")

        fr_instructions = GUIFrame(panes)
        panes.add(fr_instructions)

        fr_instructions.rowconfigure(0, weight = 1)
        fr_instructions.columnconfigure(0, weight = 1)
        fr_instructions.columnconfigure(1, weight = 0)

        tv = InstructionsTreeview(fr_instructions)
        self.tv_instructions = tv
        tv.grid(row = 0, column = 0, sticky = "NESW")
        tv.bind("<<TreeviewSelect>>", self._on_instruction_selected, "+")

        vscroll = Scrollbar(fr_instructions)
        vscroll.grid(row = 0, column = 1, sticky = "NS")

        tv.config(yscrollcommand = vscroll.set)
        vscroll.config(command = tv.yview)

        # Showing trace message (CPU registers, etc.).
        self.panes_trace_text = panes_trace_text = AutoPanedWindow(panes,
            orient = HORIZONTAL,
            sashrelief = RAISED
        )
        panes.add(panes_trace_text)

        self.rowconfigure(1, weight = 0)
        self.sb = sb = Statusbar(self)
        sb.grid(row = 1, column = 0, sticky = "EWS")
        self.var_inst_n = var = IntVar(self)

        sb.right(_("Instructions"))
        sb.right(var)

        self.qlog_trace_texts = []
Exemple #5
0
def add_scrollbars_native(outer, inner, row=0, column=0, sizegrip=False):
    "Adds scroll bars to a widget which supports them natively."
    outer.rowconfigure(row + 1, weight=0)
    outer.columnconfigure(column + 1, weight=0)

    h_sb = Scrollbar(outer, orient=HORIZONTAL, command=inner.xview)
    h_sb.grid(row=row + 1, column=column, sticky="NESW")

    v_sb = Scrollbar(outer, orient=VERTICAL, command=inner.yview)
    v_sb.grid(row=row, column=column + 1, sticky="NESW")

    inner.configure(xscrollcommand=h_sb.set, yscrollcommand=v_sb.set)

    if sizegrip:
        sg = Sizegrip(outer)
        sg.grid(row=row + 1, column=column + 1, sticky="NESW")
    else:
        sg = None

    return h_sb, v_sb, sg
Exemple #6
0
    tk.rowconfigure(0, weight=1)
    tk.columnconfigure(0, weight=1)
    tk.columnconfigure(1, weight=0)

    columns = ["size", "disas"]

    tv = VarTreeview(tk, columns=columns)
    tv.heading("#0", text=_("Address"))
    tv.heading("size", text=_("Size"))
    tv.heading("disas", text=_("Disassembly"))
    tv.column("#0", minwidth=120, width=120)
    tv.column("size", minwidth=30, width=30)
    tv.column("disas", minwidth=200)
    tv.grid(row=0, column=0, sticky="NESW")

    vscroll = Scrollbar(tk)
    vscroll.grid(row=0, column=1, sticky="NS")

    tv.config(yscrollcommand=vscroll.set)
    vscroll.config(command=tv.yview)

    for i in trace:
        if DEBUG < 3:
            print("0x%08X: %s" % (i.addr, i.disas))
        tv.insert("",
                  "end",
                  text="0x%08X" % i.addr,
                  values=("-", str(i.disas)))

    tk.mainloop()