summaryrefslogtreecommitdiffstats
path: root/_h5_p_t__u_g.html
diff options
context:
space:
mode:
authorlrknox <lrknox@users.noreply.github.com>2023-10-29 00:53:32 (GMT)
committerlrknox <lrknox@users.noreply.github.com>2023-10-29 00:53:32 (GMT)
commit79eef0516172959f2ea847e061c65670813a184d (patch)
tree6ddd749afe433f3c6ff3398aa19a8ca806ac8b34 /_h5_p_t__u_g.html
parentc3540968712708ffbb612a23868d95c9d2eb73d6 (diff)
downloadhdf5-79eef0516172959f2ea847e061c65670813a184d.zip
hdf5-79eef0516172959f2ea847e061c65670813a184d.tar.gz
hdf5-79eef0516172959f2ea847e061c65670813a184d.tar.bz2
deploy: edb5cffdb20ad959c80b665cb8c2589f4c71414d
Diffstat (limited to '_h5_p_t__u_g.html')
-rw-r--r--_h5_p_t__u_g.html2
1 files changed, 1 insertions, 1 deletions
diff --git a/_h5_p_t__u_g.html b/_h5_p_t__u_g.html
index 00e20c0..36bb5d8 100644
--- a/_h5_p_t__u_g.html
+++ b/_h5_p_t__u_g.html
@@ -37,7 +37,7 @@
<td id="projectlogo"><img alt="Logo" src="HDFG-logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname"><a href="https://www.hdfgroup.org">HDF5</a>
- &#160;<span id="projectnumber">1.15.0.119e694</span>
+ &#160;<span id="projectnumber">1.15.0.edb5cff</span>
</div>
<div id="projectbrief">API Reference</div>
</td>
inter/matt/canvas-gridding.py23
-rw-r--r--Demo/tkinter/matt/canvas-moving-or-creating.py45
-rw-r--r--Demo/tkinter/matt/canvas-moving-w-mouse.py30
-rw-r--r--Demo/tkinter/matt/canvas-mult-item-sel.py52
-rw-r--r--Demo/tkinter/matt/canvas-reading-tag-info.py22
-rw-r--r--Demo/tkinter/matt/canvas-w-widget-draw-el.py19
-rw-r--r--Demo/tkinter/matt/canvas-with-scrollbars.py43
-rw-r--r--Demo/tkinter/matt/dialog-box.py81
-rw-r--r--Demo/tkinter/matt/entry-with-shared-variable.py6
-rw-r--r--Demo/tkinter/matt/killing-window-w-wm.py5
-rw-r--r--Demo/tkinter/matt/menu-all-types-of-entries.py146
-rw-r--r--Demo/tkinter/matt/menu-simple.py53
-rw-r--r--Demo/tkinter/matt/not-what-you-might-think-1.py18
-rw-r--r--Demo/tkinter/matt/not-what-you-might-think-2.py21
-rw-r--r--Demo/tkinter/matt/packer-and-placer-together.py22
-rw-r--r--Demo/tkinter/matt/packer-simple.py21
-rw-r--r--Demo/tkinter/matt/placer-simple.py22
-rw-r--r--Demo/tkinter/matt/pong-demo-1.py25
-rw-r--r--Demo/tkinter/matt/printing-coords-of-items.py41
-rw-r--r--Demo/tkinter/matt/radiobutton-simple.py48
-rw-r--r--Demo/tkinter/matt/rubber-band-box-demo-1.py21
-rw-r--r--Demo/tkinter/matt/rubber-line-demo-1.py19
-rw-r--r--Demo/tkinter/matt/slider-demo-1.py34
-rw-r--r--Demo/tkinter/matt/subclass-existing-widgets.py14
-rw-r--r--Demo/tkinter/matt/two-radio-groups.py66
-rw-r--r--Demo/tkinter/matt/window-creation-more.py24
-rw-r--r--Demo/tkinter/matt/window-creation-simple.py17
-rw-r--r--Demo/tkinter/matt/window-creation-w-location.py18
43 files changed, 738 insertions, 968 deletions
diff --git a/Demo/tkinter/guido/AttrDialog.py b/Demo/tkinter/guido/AttrDialog.py
index 2b501c70..32b4b7e 100755
--- a/Demo/tkinter/guido/AttrDialog.py
+++ b/Demo/tkinter/guido/AttrDialog.py
@@ -24,12 +24,10 @@ class Option:
self.master = dialog.top
self.default, self.klass = dialog.options[option]
self.var = self.varclass(self.master)
- self.frame = Frame(self.master,
- {Pack: {'expand': 0, 'fill': 'x'}})
- self.label = Label(self.frame,
- {'text': option + ':',
- Pack: {'side': 'left'},
- })
+ self.frame = Frame(self.master)
+ self.frame.pack(fill=X)
+ self.label = Label(self.frame, text=(option + ":"))
+ self.label.pack(side=LEFT)
self.update()
self.addoption()
@@ -53,55 +51,48 @@ class BooleanOption(Option):
def addoption(self):
self.button = Checkbutton(self.frame,
- {'text': 'on/off',
- 'onvalue': '1',
- 'offvalue': '0',
- 'variable': self.var,
- 'relief': 'raised',
- 'borderwidth': 2,
- 'command': self.set,
- Pack: {'side': 'right'},
- })
+ text='on/off',
+ onvalue=1,
+ offvalue=0,
+ variable=self.var,
+ relief=RAISED,
+ borderwidth=2,
+ command=self.set)
+ self.button.pack(side=RIGHT)
class EnumOption(Option):
def addoption(self):
self.button = Menubutton(self.frame,
- {'textvariable': self.var,
- 'relief': 'raised',
- 'borderwidth': 2,
- Pack: {'side': 'right'},
- })
+ textvariable=self.var,
+ relief=RAISED, borderwidth=2)
+ self.button.pack(side=RIGHT)
self.menu = Menu(self.button)
self.button['menu'] = self.menu
for v in self.dialog.classes[self.klass]:
self.menu.add_radiobutton(
- {'label': v,
- 'variable': self.var,
- 'value': v,
- 'command': self.set,
- })
+ label=v,
+ variable=self.var,
+ value=v,
+ command=self.set)
class StringOption(Option):
def addoption(self):
self.entry = Entry(self.frame,
- {'textvariable': self.var,
- 'width': 10,
- 'relief': 'sunken',
- 'borderwidth': 2,
- Pack: {'side': 'right',
- 'fill': 'x', 'expand': 1},
- })
+ textvariable=self.var,
+ width=10,
+ relief=SUNKEN,
+ borderwidth=2)
+ self.entry.pack(side=RIGHT, fill=X, expand=1)
self.entry.bind('<Return>', self.set)
class ReadonlyOption(Option):
def addoption(self):
- self.label = Label(self.frame,
- {'textvariable': self.var,
- 'anchor': 'e',
- Pack: {'side': 'right'}})
+ self.label = Label(self.frame, textvariable=self.var,
+ anchor=E)
+ self.label.pack(side=RIGHT)
class Dialog:
@@ -156,7 +147,7 @@ class PackDialog(Dialog):
Dialog.__init__(self, widget)
def refresh(self):
- self.current = self.widget.newinfo()
+ self.current = self.widget.info()
self.current['.class'] = self.widget.winfo_class()
self.current['.name'] = self.widget._w
@@ -164,8 +155,8 @@ class PackDialog(Dialog):
def set(self, e=None):
self.current = self.var.get()
try:
- Pack.config(self.dialog.widget,
- {self.option: self.current})
+ apply(self.dialog.widget.pack, (),
+ {self.option: self.current})
except TclError, msg:
print msg
self.refresh()
@@ -192,14 +183,14 @@ class PackDialog(Dialog):
}
classes = {
- 'Anchor': ('n','ne', 'e','se', 's','sw', 'w','nw', 'center'),
+ 'Anchor': (N, NE, E, SE, S, SW, W, NW, CENTER),
'Boolean': 'boolean',
'Class': 'readonly',
'Expand': 'boolean',
- 'Fill': ('none', 'x', 'y', 'both'),
+ 'Fill': (NONE, X, Y, BOTH),
'Name': 'readonly',
'Pad': 'pixel',
- 'Side': ('top', 'right', 'bottom', 'left'),
+ 'Side': (TOP, RIGHT, BOTTOM, LEFT),
'Widget': 'readonly',
}
@@ -220,7 +211,7 @@ class RemotePackDialog(PackDialog):
words = self.master.tk.splitlist(
self.master.send(self.app,
'pack',
- 'newinfo',
+ 'info',
self.widget))
except TclError, msg:
print msg
@@ -306,7 +297,7 @@ class WidgetDialog(Dialog):
# Universal classes
classes = {
- 'Anchor': ('n','ne', 'e','se', 's','sw', 'w','nw', 'center'),
+ 'Anchor': (N, NE, E, SE, S, SW, W, NW, CENTER),
'Aspect': 'integer',
'Background': 'color',
'Bitmap': 'bitmap',
@@ -325,16 +316,16 @@ class WidgetDialog(Dialog):
'Geometry': 'geometry',
'Height': 'pixel',
'InsertWidth': 'time',
- 'Justify': ('left', 'center', 'right'),
+ 'Justify': (LEFT, CENTER, RIGHT),
'Label': 'string',
'Length': 'pixel',
'MenuName': 'widget',
'Name': 'readonly',
'OffTime': 'time',
'OnTime': 'time',
- 'Orient': ('horizontal', 'vertical'),
+ 'Orient': (HORIZONTAL, VERTICAL),
'Pad': 'pixel',
- 'Relief': ('raised', 'sunken', 'flat', 'ridge', 'groove'),
+ 'Relief': (RAISED, SUNKEN, FLAT, RIDGE, GROOVE),
'RepeatDelay': 'time',
'RepeatInterval': 'time',
'ScrollCommand': 'command',
@@ -351,12 +342,12 @@ class WidgetDialog(Dialog):
'Variable': 'variable',
'Value': 'string',
'Width': 'pixel',
- 'Wrap': ('none', 'char', 'word'),
+ 'Wrap': (NONE, CHAR, WORD),
}
# Classes that (may) differ per widget type
- _tristate = {'State': ('normal', 'active', 'disabled')}
- _bistate = {'State': ('normal', 'disabled')}
+ _tristate = {'State': (NORMAL, ACTIVE, DISABLED)}
+ _bistate = {'State': (NORMAL, DISABLED)}
addclasses = {
'Button': _tristate,
'Radiobutton': _tristate,
@@ -424,14 +415,12 @@ def test():
if sys.argv[1:]:
remotetest(root, sys.argv[1])
else:
- frame = Frame(root, {'name': 'frame',
- Pack: {'expand': 1, 'fill': 'both'},
- })
- button = Button(frame, {'name': 'button',
- 'text': 'button',
- Pack: {'expand': 1}})
- canvas = Canvas(frame, {'name': 'canvas',
- Pack: {}})
+ frame = Frame(root, name='frame')
+ frame.pack(expand=1, fill=BOTH)
+ button = Button(frame, name='button', text='button')
+ button.pack(expand=1)
+ canvas = Canvas(frame, name='canvas')
+ canvas.pack()
fpd = PackDialog(frame)
fwd = WidgetDialog(frame)
bpd = PackDialog(button)
diff --git a/Demo/tkinter/guido/ManPage.py b/Demo/tkinter/guido/ManPage.py
index 4f0af8c..ccd21b4 100755
--- a/Demo/tkinter/guido/ManPage.py
+++ b/Demo/tkinter/guido/ManPage.py
@@ -20,14 +20,14 @@ ulprog = regex.compile('^[ \t]*[Xv!_][Xv!_ \t]*\n')
class EditableManPage(ScrolledText):
# Initialize instance
- def __init__(self, master=None, cnf={}):
+ def __init__(self, master=None, **cnf):
# Initialize base class
- ScrolledText.__init__(self, master, cnf)
+ apply(ScrolledText.__init__, (self, master), cnf)
# Define tags for formatting styles
- self.tag_config('X', {'underline': 1})
- self.tag_config('!', {'font': BOLDFONT})
- self.tag_config('_', {'font': ITALICFONT})
+ self.tag_config('X', underline=1)
+ self.tag_config('!', font=BOLDFONT)
+ self.tag_config('_', font=ITALICFONT)
# Set state to idle
self.fp = None
@@ -83,8 +83,8 @@ class EditableManPage(ScrolledText):
self.empty = 0
self.buffer = None
savestate = self['state']
- self['state'] = 'normal'
- self.delete('1.0', 'end')
+ self['state'] = NORMAL
+ self.delete('1.0', END)
self['state'] = savestate
# End parsing -- must be busy, need not be at EOF
@@ -133,11 +133,11 @@ class EditableManPage(ScrolledText):
self.empty = 0
return
savestate = self['state']
- self['state'] = 'normal'
+ self['state'] = NORMAL
if TkVersion >= 4.0:
self.mark_set('insert', 'end-1c')
else:
- self.mark_set('insert', 'end')
+ self.mark_set('insert', END)
if self.empty:
# One or more previous lines were empty
# -- insert one blank line in the text
@@ -176,9 +176,9 @@ class EditableManPage(ScrolledText):
class ReadonlyManPage(EditableManPage):
# Initialize instance
- def __init__(self, master=None, cnf={}):
- EditableManPage.__init__(self, master,
- (cnf, {'state': 'disabled'}))
+ def __init__(self, master=None, **cnf):
+ cnf['state'] = DISABLED
+ apply(EditableManPage.__init__, (self, master), cnf)
# Alias
ManPage = ReadonlyManPage
@@ -206,8 +206,8 @@ def test():
name = os.path.join(MANDIR, name)
root = Tk()
root.minsize(1, 1)
- manpage = ManPage(root, {'relief': 'sunken', 'bd': 2,
- Pack: {'expand': 1, 'fill': 'both'}})
+ manpage = ManPage(root, relief=SUNKEN, borderwidth=2)
+ manpage.pack(expand=1, fill=BOTH)
if formatted:
fp = open(name, 'r')
else:
diff --git a/Demo/tkinter/guido/ShellWindow.py b/Demo/tkinter/guido/ShellWindow.py
index 93a13d6..0b59daa 100755
--- a/Demo/tkinter/guido/ShellWindow.py
+++ b/Demo/tkinter/guido/ShellWindow.py
@@ -6,19 +6,12 @@ from ScrolledText import ScrolledText
from Dialog import Dialog
import signal
-TK_READABLE = 1
-TK_WRITABLE = 2
-TK_EXCEPTION = 4
-
BUFSIZE = 512
class ShellWindow(ScrolledText):
- def __init__(self, master = None, cnf = {}):
- try:
- shell = cnf['shell']
- del cnf['shell']
- except KeyError:
+ def __init__(self, master=None, shell=None, **cnf):
+ if not shell:
try:
shell = os.environ['SHELL']
except KeyError:
@@ -27,7 +20,7 @@ class ShellWindow(ScrolledText):
args = string.split(shell)
shell = args[0]
- ScrolledText.__init__(self, master, cnf)
+ apply(ScrolledText.__init__, (self, master), cnf)
self.pos = '1.0'
self.bind('<Return>', self.inputhandler)
self.bind('<Control-c>', self.sigint)
@@ -36,7 +29,7 @@ class ShellWindow(ScrolledText):
self.bind('<Control-d>', self.sendeof)
self.pid, self.fromchild, self.tochild = spawn(shell, args)
- self.tk.createfilehandler(self.fromchild, TK_READABLE,
+ self.tk.createfilehandler(self.fromchild, READABLE,
self.outputhandler)
def outputhandler(self, file, mask):
@@ -54,68 +47,60 @@ class ShellWindow(ScrolledText):
msg = "killed by signal %d" % (cause & 0x7f)
if cause & 0x80:
msg = msg + " -- core dumped"
- Dialog(self.master, {
- 'text': msg,
- 'title': "Exit status",
- 'bitmap': 'warning',
- 'default': 0,
- 'strings': ('OK',),
- })
+ Dialog(self.master,
+ text=msg,
+ title="Exit status",
+ bitmap='warning',
+ default=0,
+ strings=('OK',))
return
- self.insert('end', data)
- self.pos = self.index('end')
- self.yview_pickplace('end')
+ self.insert(END, data)
+ self.pos = self.index("end - 1 char")
+ self.yview_pickplace(END)
def inputhandler(self, *args):
if not self.pid:
- Dialog(self.master, {
- 'text': "No active process",
- 'title': "No process",
- 'bitmap': 'error',
- 'default': 0,
- 'strings': ('OK',),
- })
- return
- self.insert('end', '\n')
- line = self.get(self.pos, 'end')
- self.pos = self.index('end')
+ self.no_process()
+ return "break"
+ self.insert(END, "\n")
+ line = self.get(self.pos, "end - 1 char")
+ self.pos = self.index(END)
os.write(self.tochild, line)
+ return "break"
def sendeof(self, *args):
if not self.pid:
- Dialog(self.master, {
- 'text': "No active process",
- 'title': "No process",
- 'bitmap': 'error',
- 'default': 0,
- 'strings': ('OK',),
- })
- return
+ self.no_process()
+ return "break"
os.close(self.tochild)
+ return "break"
def sendsig(self, sig):
if not self.pid:
- Dialog(self.master, {
- 'text': "No active process",
- 'title': "No process",
- 'bitmap': 'error',
- 'default': 0,
- 'strings': ('OK',),
- })
- return
+ self.no_process()
+ return "break"
os.kill(self.pid, sig)
+ return "break"
def sigint(self, *args):
- self.sendsig(signal.SIGINT)
+ return self.sendsig(signal.SIGINT)
def sigquit(self, *args):
- self.sendsig(signal.SIGQUIT)
+ return self.sendsig(signal.SIGQUIT)
def sigterm(self, *args):
- self.sendsig(signal.SIGTERM)
+ return self.sendsig(signal.SIGTERM)
def sigkill(self, *args):
- self.sendsig(signal.SIGKILL)
+ return self.sendsig(signal.SIGKILL)
+
+ def no_process(self):
+ Dialog(self.master,
+ text="No active process",
+ title="No process",
+ bitmap='error',
+ default=0,
+ strings=('OK',))
MAXFD = 100 # Max number of file descriptors (os.getdtablesize()???)
@@ -142,7 +127,7 @@ def spawn(prog, args):
try:
os.execvp(prog, args)
finally:
- print 'execvp failed'
+ sys.stderr.write('execvp failed\n')
os._exit(1)
os.close(p2cread)
os.close(c2pwrite)
@@ -150,13 +135,13 @@ def spawn(prog, args):
def test():
shell = string.join(sys.argv[1:])
- cnf = {}
- if shell:
- cnf['shell'] = shell
root = Tk()
root.minsize(1, 1)
- w = ShellWindow(root, cnf)
- w.pack({'expand': 1, 'fill': 'both'})
+ if shell:
+ w = ShellWindow(root, shell=shell)
+ else:
+ w = ShellWindow(root)
+ w.pack(expand=1, fill=BOTH)
w.focus_set()
w.tk.mainloop()
diff --git a/Demo/tkinter/guido/dialog.py b/Demo/tkinter/guido/dialog.py
index 27cddf0..500a73d 100755
--- a/Demo/tkinter/guido/dialog.py
+++ b/Demo/tkinter/guido/dialog.py
@@ -5,55 +5,49 @@
# Cf. Ousterhout, Tcl and the Tk Toolkit, Figs. 27.2-3, pp. 269-270.
from Tkinter import *
+import sys
+
def dialog(master, title, text, bitmap, default, *args):
# 1. Create the top-level window and divide it into top
# and bottom parts.
- w = Toplevel(master, {'class': 'Dialog'})
+ w = Toplevel(master, class_='Dialog')
w.title(title)
w.iconname('Dialog')
- top = Frame(w, {'relief': 'raised', 'bd': 1,
- Pack: {'side': 'top', 'fill': 'both'}})
- bot = Frame(w, {'relief': 'raised', 'bd': 1,
- Pack: {'side': 'bottom', 'fill': 'both'}})
+ top = Frame(w, relief=RAISED, borderwidth=1)
+ top.pack(side=TOP, fill=BOTH)
+ bot = Frame(w, relief=RAISED, borderwidth=1)
+ bot.pack(side=BOTTOM, fill=BOTH)
# 2. Fill the top part with the bitmap and message.
- msg = Message(top,
- {'width': '3i',
- 'text': text,
- 'font': '-Adobe-Times-Medium-R-Normal-*-180-*',
- Pack: {'side': 'right', 'expand': 1,
- 'fill': 'both',
- 'padx': '3m', 'pady': '3m'}})
+ msg = Message(top, width='3i', text=text,
+ font='-Adobe-Times-Medium-R-Normal-*-180-*')
+ msg.pack(side=RIGHT, expand=1, fill=BOTH, padx='3m', pady='3m')
if bitmap:
- bm = Label(top, {'bitmap': bitmap,
- Pack: {'side': 'left',
- 'padx': '3m', 'pady': '3m'}})
+ bm = Label(top, bitmap=bitmap)
+ bm.pack(side=LEFT, padx='3m', pady='3m')
# 3. Create a row of buttons at the bottom of the dialog.
+ var = IntVar()
buttons = []
i = 0
for but in args:
- b = Button(bot, {'text': but,
- 'command': ('set', 'button', i)})
+ b = Button(bot, text=but, command=lambda v=var,i=i: v.set(i))
buttons.append(b)
if i == default:
- bd = Frame(bot, {'relief': 'sunken', 'bd': 1,
- Pack: {'side': 'left', 'expand': 1,
- 'padx': '3m', 'pady': '2m'}})
+ bd = Frame(bot, relief=SUNKEN, borderwidth=1)
+ bd.pack(side=LEFT, expand=1, padx='3m', pady='2m')
b.lift()
- b.pack ({'in': bd, 'side': 'left',
- 'padx': '2m', 'pady': '2m',
- 'ipadx': '2m', 'ipady': '1m'})
+ b.pack (in_=bd, side=LEFT,
+ padx='2m', pady='2m', ipadx='2m', ipady='1m')
else:
- b.pack ({'side': 'left', 'expand': 1,
- 'padx': '3m', 'pady': '3m',
- 'ipady': '2m', 'ipady': '1m'})
+ b.pack (side=LEFT, expand=1,
+ padx='3m', pady='3m', ipady='2m', ipady='1m')
i = i+1
# 4. Set up a binding for <Return>, if there's a default,
@@ -61,21 +55,21 @@ def dialog(master, title, text, bitmap, default, *args):
if default >= 0:
w.bind('<Return>',
- lambda e, b=buttons[default], i=default:
+ lambda e, b=buttons[default], v=var, i=default:
(b.flash(),
- b.setvar('button', i)))
+ v.set(i)))
- oldFocus = w.tk.call('focus') # XXX
+ oldFocus = w.focus_get()
w.grab_set()
- w.focus()
+ w.focus_set()
# 5. Wait for the user to respond, then restore the focus
# and return the index of the selected button.
- w.waitvar('button')
+ w.waitvar(var)
w.destroy()
- w.tk.call('focus', oldFocus) # XXX
- return w.getint(w.getvar('button'))
+ if oldFocus: oldFocus.focus_set()
+ return var.get()
# The rest is the test program.
@@ -105,13 +99,10 @@ def test():
global mainWidget
mainWidget = Frame()
Pack.config(mainWidget)
- start = Button(mainWidget,
- {'text': 'Press Here To Start', 'command': go})
+ start = Button(mainWidget, text='Press Here To Start', command=go)
start.pack()
- endit = Button(mainWidget,
- {'text': 'Exit',
- 'command': 'exit',
- Pack: {'fill' : 'both'}})
+ endit = Button(mainWidget, text="Exit", command=sys.exit)
+ endit.pack(fill=BOTH)
mainWidget.mainloop()
if __name__ == '__main__':
diff --git a/Demo/tkinter/guido/electrons.py b/Demo/tkinter/guido/electrons.py
index 5f6c8b5..7296955 100755
--- a/Demo/tkinter/guido/electrons.py
+++ b/Demo/tkinter/guido/electrons.py
@@ -15,7 +15,6 @@
from Tkinter import *
-
# The graphical interface
class Electrons:
@@ -30,14 +29,13 @@ class Electrons:
# Add background bitmap
if bitmap:
self.bitmap = c.create_bitmap(width/2, height/2,
- {'bitmap': bitmap,
- 'foreground': 'blue'})
+ bitmap=bitmap,
+ foreground='blue')
self.pieces = {}
x1, y1, x2, y2 = 10,70,14,74
for i in range(n,0,-1):
- p = c.create_oval(x1, y1, x2, y2,
- {'fill': 'red'})
+ p = c.create_oval(x1, y1, x2, y2, fill='red')
self.pieces[i] = p
y1, y2 = y1 +2, y2 + 2
self.tk.update()
@@ -51,11 +49,12 @@ class Electrons:
y = rand.choice(range(-3,4))
c.move(p, x, y)
self.tk.update()
+
# Run -- never returns
def run(self):
while 1:
self.random_move(self.n)
- self.tk.mainloop() # Hang around...
+
# Main program
def main():
diff --git a/Demo/tkinter/guido/hanoi.py b/Demo/tkinter/guido/hanoi.py
index 848e8e5..2cc4134 100755
--- a/Demo/tkinter/guido/hanoi.py
+++ b/Demo/tkinter/guido/hanoi.py
@@ -36,8 +36,8 @@ class Tkhanoi:
# Add background bitmap
if bitmap:
self.bitmap = c.create_bitmap(width/2, height/2,
- {'bitmap': bitmap,
- 'foreground': 'blue'})
+ bitmap=bitmap,
+ foreground='blue')
# Generate pegs
pegwidth = 10
@@ -46,13 +46,13 @@ class Tkhanoi:
x1, y1 = (pegdist-pegwidth)/2, height*1/3
x2, y2 = x1+pegwidth, y1+pegheight
self.pegs = []
- p = c.create_rectangle(x1, y1, x2, y2, {'fill': 'black'})
+ p = c.create_rectangle(x1, y1, x2, y2, fill='black')
self.pegs.append(p)
x1, x2 = x1+pegdist, x2+pegdist
- p = c.create_rectangle(x1, y1, x2, y2, {'fill': 'black'})
+ p = c.create_rectangle(x1, y1, x2, y2, fill='black')
self.pegs.append(p)
x1, x2 = x1+pegdist, x2+pegdist
- p = c.create_rectangle(x1, y1, x2, y2, {'fill': 'black'})
+ p = c.create_rectangle(x1, y1, x2, y2, fill='black')
self.pegs.append(p)
self.tk.update()
@@ -66,8 +66,7 @@ class Tkhanoi:
x2, y2 = x1+maxpiecewidth, y1+pieceheight
dx = (maxpiecewidth-minpiecewidth) / (2*max(1, n-1))
for i in range(n, 0, -1):
- p = c.create_rectangle(x1, y1, x2, y2,
- {'fill': 'red'})
+ p = c.create_rectangle(x1, y1, x2, y2, fill='red')
self.pieces[i] = p
self.pegstate[0].append(i)
x1, x2 = x1 + dx, x2-dx
diff --git a/Demo/tkinter/guido/kill.py b/Demo/tkinter/guido/kill.py
index 8f45a29..24335cc 100755
--- a/Demo/tkinter/guido/kill.py
+++ b/Demo/tkinter/guido/kill.py
@@ -5,14 +5,14 @@ from Tkinter import *
from string import splitfields
from string import split
import commands
-import posix
+import os
class BarButton(Menubutton):
- _CNF = {Pack: {'side': 'left'}}
- def __init__(self, master=None, cnf={}):
- Menubutton.__init__(self, master, (self._CNF, cnf))
- self.menu = Menu(self, {'name': 'menu'})
- self['menu'] = self.menu
+ def __init__(self, master=None, **cnf):
+ apply(Menubutton.__init__, (self, master), cnf)
+ self.pack(side=LEFT)
+ self.menu = Menu(self, name='menu')
+ self['menu'] = self.menu
class Kill(Frame):
# List of (name, option, pid_column)
@@ -27,7 +27,7 @@ class Kill(Frame):
def kill(self, selected):
c = self.format_list[self.format.get()][2]
pid = split(selected)[c]
- posix.system('kill' + ' -9 ' + pid)
+ os.system('kill -9 ' + pid)
self.do_update()
def do_update(self):
name, option, column = self.format_list[self.format.get()]
@@ -35,85 +35,64 @@ class Kill(Frame):
list = splitfields(s, '\n')
self.header.set(list[0])
del list[0]
- y = self.frame.vscroll.get()[2]
+ y = self.frame.vscroll.get()[0]
self.frame.list.delete(0, AtEnd())
for line in list:
self.frame.list.insert(0, line)
- self.frame.list.yview(y)
+ self.frame.list.yview(int(y))
def do_motion(self, e):
- e.widget.select_from(e.widget.nearest(e.y))
+ e.widget.select_clear(0, END)
+ e.widget.select_set(e.widget.nearest(e.y))
def do_leave(self, e):
- e.widget.select_clear()
+ e.widget.select_clear(0, END)
def do_1(self, e):
self.kill(e.widget.get(e.widget.nearest(e.y)))
- def __init__(self, master=None, cnf={}):
+ def __init__(self, master=None, **cnf):
Frame.__init__(self, master, cnf)
- self.pack({'expand': 'yes', 'fill': 'both'})
- self.bar = Frame(
- self,
- {'name': 'bar',
- 'relief': 'raised',
- 'bd': 2,
- Pack: {'side': 'top',
- 'fill': 'x'}})
- self.bar.file = BarButton(self.bar, {'text': 'File'})
+ self.pack(expand=1, fill=BOTH)
+ self.bar = Frame(self, name='bar', relief=RAISED,
+ borderwidth=2)
+ self.bar.pack(fill=X)
+ self.bar.file = BarButton(self.bar, text='File')
self.bar.file.menu.add_command(
- {'label': 'Quit', 'command': self.quit})
- self.bar.view = BarButton(self.bar, {'text': 'View'})
+ label='Quit', command=self.quit)
+ self.bar.view = BarButton(self.bar, text='View')
self.format = IntVar(self)
self.format.set(2)
for num in range(len(self.format_list)):
self.bar.view.menu.add_radiobutton(
- {'label': self.format_list[num][0],
- 'command': self.do_update,
- 'variable': self.format,
- 'value': num})
+ label=self.format_list[num][0],
+ command=self.do_update,
+ variable=self.format,
+ value=num)
#self.bar.view.menu.add_separator()
#XXX ...
self.bar.tk_menuBar(self.bar.file, self.bar.view)
- self.frame = Frame(
- self,
- {'relief': 'raised', 'bd': 2,
- Pack: {'side': 'top',
- 'expand': 'yes',
- 'fill': 'both'}})
+ self.frame = Frame(self, relief=RAISED, borderwidth=2)
+ self.frame.pack(expand=1, fill=BOTH)
self.header = StringVar(self)
- self.frame.label = Label(
- self.frame,
- {'relief': 'flat',
- 'anchor': 'nw',
- 'borderwidth': 0,
- 'textvariable': self.header,
- Pack: {'side': 'top',
- 'fill': 'x'}})
- self.frame.vscroll = Scrollbar(
- self.frame,
- {'orient': 'vertical'})
- self.frame.list = Listbox(
- self.frame,
- {'relief': 'sunken',
- 'selectbackground': '#eed5b7',
- 'selectborderwidth': 0,
- 'yscroll': self.frame.vscroll.set})
+ self.frame.label = Label(self.frame, relief=FLAT, anchor=NW,
+ borderwidth=0,
+ textvariable=self.header)
+ self.frame.label.pack(fill=X)
+ self.frame.vscroll = Scrollbar(self.frame, orient=VERTICAL)
+ self.frame.list = Listbox(self.frame, relief=SUNKEN,
+ selectbackground='#eed5b7',
+ selectborderwidth=0,
+ yscroll=self.frame.vscroll.set)
self.frame.vscroll['command'] = self.frame.list.yview
- self.frame.vscroll.pack({'side': 'right', 'fill': 'y'})
- self.frame.list.pack(
- {'side': 'top',
- 'expand': 'yes',
- 'fill': 'both'})
- self.update = Button(
- self,
- {'text': 'Update',
- 'command': self.do_update,
- Pack: {'expand': 'yes',
- 'fill': 'x'}})
+ self.frame.vscroll.pack(side=RIGHT, fill=Y)
+ self.frame.list.pack(expand=1, fill=BOTH)
+ self.update = Button(self, text="Update",
+ command=self.do_update)
+ self.update.pack(expand=1, fill=X)
self.frame.list.bind('<Motion>', self.do_motion)
self.frame.list.bind('<Leave>', self.do_leave)
self.frame.list.bind('<1>', self.do_1)
self.do_update()
if __name__ == '__main__':
- kill = Kill(None, {'bd': 5})
+ kill = Kill(None, borderwidth=5)
kill.winfo_toplevel().title('Tkinter Process Killer')
kill.winfo_toplevel().minsize(1, 1)
kill.mainloop()
diff --git a/Demo/tkinter/guido/listtree.py b/Demo/tkinter/guido/listtree.py
index c5e3bc5..523f209 100755
--- a/Demo/tkinter/guido/listtree.py
+++ b/Demo/tkinter/guido/listtree.py
@@ -6,16 +6,16 @@ import string
from Tkinter import *
def listtree(master, app):
- list = Listbox(master, {'name': 'list',
- Pack: {'expand': 1, 'fill': 'both'}})
+ list = Listbox(master, name='list')
+ list.pack(expand=1, fill=BOTH)
listnodes(list, app, '.', 0)
return list
def listnodes(list, app, widget, level):
klass = list.send(app, 'winfo', 'class', widget)
## i = string.rindex(widget, '.')
-## list.insert('end', '%s%s (%s)' % ((level-1)*'. ', widget[i:], klass))
- list.insert('end', '%s (%s)' % (widget, klass))
+## list.insert(END, '%s%s (%s)' % ((level-1)*'. ', widget[i:], klass))
+ list.insert(END, '%s (%s)' % (widget, klass))
children = list.tk.splitlist(
list.send(app, 'winfo', 'children', widget))
for c in children:
@@ -28,7 +28,8 @@ def main():
app = sys.argv[1]
tk = Tk()
tk.minsize(1, 1)
- f = Frame(tk, {'name': 'f', Pack: {'expand': 1, 'fill': 'both'}})
+ f = Frame(tk, name='f')
+ f.pack(expand=1, fill=BOTH)
list = listtree(f, app)
tk.mainloop()
diff --git a/Demo/tkinter/guido/svkill.py b/Demo/tkinter/guido/svkill.py
index 2881afd..dd80856 100755
--- a/Demo/tkinter/guido/svkill.py
+++ b/Demo/tkinter/guido/svkill.py
@@ -15,10 +15,10 @@ import os
user = os.environ['LOGNAME']
class BarButton(Menubutton):
- def __init__(self, master=None, cnf={}):
- Menubutton.__init__(self, master, cnf)
- self.pack(side='left')
- self.menu = Menu(self, {'name': 'menu'})
+ def __init__(self, master=None, **cnf):
+ apply(Menubutton.__init__, (self, master), cnf)
+ self.pack(side=LEFT)
+ self.menu = Menu(self, name='menu')
self['menu'] = self.menu
class Kill(Frame):
@@ -41,7 +41,7 @@ class Kill(Frame):
def kill(self, selected):
c = self.format_list[self.format.get()][2]
pid = split(selected)[c]
- os.system('kill' + ' -9 ' + pid)
+ os.system('kill -9 ' + pid)
self.do_update()
def do_update(self):
format = self.format_list[self.format.get()][1]
@@ -60,21 +60,17 @@ class Kill(Frame):
e.widget.select_clear('0', 'end')
def do_1(self, e):
self.kill(e.widget.get(e.widget.nearest(e.y)))
- def __init__(self, master=None, cnf={}):
- Frame.__init__(self, master, cnf)
- self.pack({'expand': 'yes', 'fill': 'both'})
- self.bar = Frame(
- self,
- {'name': 'bar',
- 'relief': 'raised',
- 'bd': 2,
- Pack: {'side': 'top',
- 'fill': 'x'}})
- self.bar.file = BarButton(self.bar, {'text': 'File'})
+ def __init__(self, master=None, **cnf):
+ apply(Frame.__init__, (self, master), cnf)
+ self.pack(expand=1, fill=BOTH)
+ self.bar = Frame(self, name='bar', relief=RAISED,
+ borderwidth=2)
+ self.bar.pack(fill=X)
+ self.bar.file = BarButton(self.bar, text='File')
self.bar.file.menu.add_command(
- {'label': 'Quit', 'command': self.quit})
- self.bar.view = BarButton(self.bar, {'text': 'View'})
- self.bar.format = BarButton(self.bar, {'text': 'Format'})
+ label='Quit', command=self.quit)
+ self.bar.view = BarButton(self.bar, text='View')
+ self.bar.format = BarButton(self.bar, text='Format')
self.view = IntVar(self)
self.view.set(0)
self.format = IntVar(self)
@@ -82,68 +78,51 @@ class Kill(Frame):
for num in range(len(self.view_list)):
label, option = self.view_list[num]
self.bar.view.menu.add_radiobutton(
- {'label': label,
- 'command': self.do_update,
- 'variable': self.view,
- 'value': num})
+ label=label,
+ command=self.do_update,
+ variable=self.view,
+ value=num)
for num in range(len(self.format_list)):
label, option, col = self.format_list[num]
self.bar.format.menu.add_radiobutton(
- {'label': label,
- 'command': self.do_update,
- 'variable': self.format,
- 'value': num})
+ label=label,
+ command=self.do_update,
+ variable=self.format,
+ value=num)
self.bar.tk_menuBar(self.bar.file,
self.bar.view,
self.bar.format)
- self.frame = Frame(
- self,
- {'relief': 'raised', 'bd': 2,
- Pack: {'side': 'top',
- 'expand': 'yes',
- 'fill': 'both'}})
+ self.frame = Frame(self, relief=RAISED, borderwidth=2)
+ self.frame.pack(expand=1, fill=BOTH)
self.header = StringVar(self)
self.frame.label = Label(
- self.frame,
- {'relief': 'flat',
- 'anchor': 'nw',
- 'borderwidth': 0,
- 'font': '*-Courier-Bold-R-Normal-*-120-*',
- 'textvariable': self.header,
- Pack: {'side': 'top',
- 'fill': 'y',
- 'anchor': 'w'}})
- self.frame.vscroll = Scrollbar(
- self.frame,
- {'orient': 'vertical'})
+ self.frame, relief=FLAT, anchor=NW, borderwidth=0,
+ font='*-Courier-Bold-R-Normal-*-120-*',
+ textvariable=self.header)
+ self.frame.label.pack(fill=Y, anchor=W)
+ self.frame.vscroll = Scrollbar(self.frame, orient=VERTICAL)
self.frame.list = Listbox(
self.frame,
- {'relief': 'sunken',
- 'font': '*-Courier-Medium-R-Normal-*-120-*',
- 'width': 40, 'height': 10,
- 'selectbackground': '#eed5b7',
- 'selectborderwidth': 0,
- 'selectmode': 'browse',
- 'yscroll': self.frame.vscroll.set})
+ relief=SUNKEN,
+ font='*-Courier-Medium-R-Normal-*-120-*',
+ width=40, height=10,
+ selectbackground='#eed5b7',
+ selectborderwidth=0,
+ selectmode=BROWSE,
+ yscroll=self.frame.vscroll.set)
self.frame.vscroll['command'] = self.frame.list.yview
- self.frame.vscroll.pack({'side': 'right', 'fill': 'y'})
- self.frame.list.pack(
- {'side': 'top',
- 'expand': 'yes',
- 'fill': 'both'})
- self.update = Button(
- self,
- {'text': 'Update',
- 'command': self.do_update,
- Pack: {'expand': 'no',
- 'fill': 'x'}})
+ self.frame.vscroll.pack(side=RIGHT, fill=Y)
+ self.frame.list.pack(expand=1, fill=BOTH)
+ self.update = Button(self, text='Update',
+ command=self.do_update)
+ self.update.pack(fill=X)
self.frame.list.bind('<Motion>', self.do_motion)
self.frame.list.bind('<Leave>', self.do_leave)
self.frame.list.bind('<1>', self.do_1)
self.do_update()
if __name__ == '__main__':
- kill = Kill(None, {'bd': 5})
+ kill = Kill(None, borderwidth=5)
kill.winfo_toplevel().title('Tkinter Process Killer (SYSV)')
kill.winfo_toplevel().minsize(1, 1)
kill.mainloop()
diff --git a/Demo/tkinter/guido/tkman.py b/Demo/tkinter/guido/tkman.py
index cd60487..34ca4a3 100755
--- a/Demo/tkinter/guido/tkman.py
+++ b/Demo/tkinter/guido/tkman.py
@@ -1,4 +1,3 @@
-#! /home/guido/bin.sgi/python
#! /usr/local/bin/python
# Tk man page browser -- currently only shows the Tcl/Tk man pages
@@ -32,81 +31,66 @@ class SelectionBox:
def __init__(self, master=None):
self.choices = []
- self.frame = Frame(master, {
- 'name': 'frame',
- Pack: {'expand': 1, 'fill': 'both'}})
+ self.frame = Frame(master, name="frame")
+ self.frame.pack(expand=1, fill=BOTH)
self.master = self.frame.master
- self.subframe = Frame(self.frame, {
- 'name': 'subframe',
- Pack: {'expand': 0, 'fill': 'both'}})
- self.leftsubframe = Frame(self.subframe, {
- 'name': 'leftsubframe',
- Pack: {'side': 'left', 'expand': 1, 'fill': 'both'}})
- self.rightsubframe = Frame(self.subframe, {
- 'name': 'rightsubframe',
- Pack: {'side': 'right', 'expand': 1, 'fill': 'both'}})
+ self.subframe = Frame(self.frame, name="subframe")
+ self.subframe.pack(expand=0, fill=BOTH)
+ self.leftsubframe = Frame(self.subframe, name='leftsubframe')
+ self.leftsubframe.pack(side=LEFT, expand=1, fill=BOTH)
+ self.rightsubframe = Frame(self.subframe, name='rightsubframe')
+ self.rightsubframe.pack(side=RIGHT, expand=1, fill=BOTH)
self.chaptervar = StringVar(master)
- self.chapter = Menubutton(self.rightsubframe,
- {'name': 'chapter',
- 'text': 'Directory',
- 'relief': 'raised', 'bd': 2,
- Pack: {'side': 'top'}})
- self.chaptermenu = Menu(self.chapter, {'name': 'chaptermenu'})
- self.chaptermenu.add_radiobutton({'label': 'C functions',
- 'value': MAN3DIR,
- 'variable': self.chaptervar,
- 'command': self.newchapter})
- self.chaptermenu.add_radiobutton({'label': 'Tcl/Tk functions',
- 'value': MANNDIR,
- 'variable': self.chaptervar,
- 'command': self.newchapter})
+ self.chapter = Menubutton(self.rightsubframe, name='chapter',
+ text='Directory', relief=RAISED,
+ borderwidth=2)
+ self.chapter.pack(side=TOP)
+ self.chaptermenu = Menu(self.chapter, name='chaptermenu')
+ self.chaptermenu.add_radiobutton(label='C functions',
+ value=MAN3DIR,
+ variable=self.chaptervar,
+ command=self.newchapter)
+ self.chaptermenu.add_radiobutton(label='Tcl/Tk functions',
+ value=MANNDIR,
+ variable=self.chaptervar,
+ command=self.newchapter)
self.chapter['menu'] = self.chaptermenu
- self.listbox = Listbox(self.rightsubframe,
- {'name': 'listbox',
- 'relief': 'sunken', 'bd': 2,
- 'width': 20, 'height': 5,
- Pack: {'expand': 1, 'fill': 'both'}})
- self.l1 = Button(self.leftsubframe,
- {'name': 'l1',
- 'text': 'Display manual page named:',
- 'command': self.entry_cb,
- Pack: {'side': 'top'}})
- self.entry = Entry(self.leftsubframe,
- {'name': 'entry',
- 'relief': 'sunken', 'bd': 2,
- 'width': 20,
- Pack: {'side': 'top',
- 'expand': 0, 'fill': 'x'}})
- self.l2frame = Frame(self.leftsubframe,
- {'name': 'l2frame',
- Pack: {'expand': 0, 'fill': 'none'}})
- self.l2 = Button(self.l2frame,
- {'name': 'l2',
- 'text': 'Search regexp:',
- 'command': self.search_cb,
- Pack: {'side': 'left'}})
- self.casesense = Checkbutton(self.l2frame,
- {'name': 'casesense',
- 'text': 'Case sensitive',
- 'variable': 'casesense',
- 'relief': 'flat',
- Pack: {'side': 'left'}})
- self.search = Entry(self.leftsubframe,
- {'name': 'search',
- 'relief': 'sunken', 'bd': 2,
- 'width': 20,
- Pack: {'side': 'top',
- 'expand': 0, 'fill': 'x'}})
- self.title = Label(self.leftsubframe,
- {'name': 'title',
- 'text': '(none)',
- Pack: {'side': 'bottom'}})
- self.text = ManPage(self.frame,
- {'name': 'text',
- 'relief': 'sunken', 'bd': 2,
- 'wrap': 'none', 'width': 72,
- 'selectbackground': 'pink',
- Pack: {'expand': 1, 'fill': 'both'}})
+ self.listbox = Listbox(self.rightsubframe, name='listbox',
+ relief=SUNKEN, borderwidth=2,
+ width=20, height=5)
+ self.listbox.pack(expand=1, fill=BOTH)
+ self.l1 = Button(self.leftsubframe, name='l1',
+ text='Display manual page named:',
+ command=self.entry_cb)
+ self.l1.pack(side=TOP)
+ self.entry = Entry(self.leftsubframe, name='entry',
+ relief=SUNKEN, borderwidth=2,
+ width=20)
+ self.entry.pack(expand=0, fill=X)
+ self.l2frame = Frame(self.leftsubframe, name='l2frame')
+ self.l2frame.pack(expand=0, fill=NONE)
+ self.l2 = Button(self.l2frame, name='l2',
+ text='Search regexp:',
+ command=self.search_cb)
+ self.l2.pack(side=LEFT)
+ self.casevar = BooleanVar()
+ self.casesense = Checkbutton(self.l2frame, name='casesense',
+ text='Case sensitive',
+ variable=self.casevar,
+ relief=FLAT)
+ self.casesense.pack(side=LEFT)
+ self.search = Entry(self.leftsubframe, name='search',
+ relief=SUNKEN, borderwidth=2,
+ width=20)
+ self.search.pack(expand=0, fill=X)
+ self.title = Label(self.leftsubframe, name='title',
+ text='(none)')
+ self.title.pack(side=BOTTOM)
+ self.text = ManPage(self.frame, name='text',
+ relief=SUNKEN, borderwidth=2,
+ wrap=NONE, width=72,
+ selectbackground='pink')
+ self.text.pack(expand=1, fill=BOTH)
self.entry.bind('<Return>', self.entry_cb)
self.search.bind('<Return>', self.search_cb)
@@ -195,7 +179,7 @@ class SelectionBox:
self.frame.bell()
print 'Empty search string'
return
- if self.frame.tk.getvar('casesense') != '1':
+ if not self.casevar.get():
map = regex.casefold
else:
map = None
diff --git a/Demo/tkinter/matt/00-HELLO-WORLD.py b/Demo/tkinter/matt/00-HELLO-WORLD.py
index 9e8ccf4..a32941b 100644
--- a/Demo/tkinter/matt/00-HELLO-WORLD.py
+++ b/Demo/tkinter/matt/00-HELLO-WORLD.py
@@ -8,18 +8,15 @@ class Test(Frame):
print "hi"
def createWidgets(self):
- self.QUIT = Button(self, {'text': 'QUIT',
- 'fg': 'red',
- 'command': self.quit})
+ self.QUIT = Button(self, text='QUIT', foreground='red',
+ command=self.quit)
- self.QUIT.pack({'side': 'left', 'fill': 'both'})
-
+ self.QUIT.pack(side=LEFT, fill=BOTH)
# a hello button
- self.hi_there = Button(self, {'text': 'Hello',
- 'command' : self.printit})
- self.hi_there.pack({'side': 'left'})
-
+ self.hi_there = Button(self, text='Hello',
+ command=self.printit)
+ self.hi_there.pack(side=LEFT)
def __init__(self, master=None):
Frame.__init__(self, master)
diff --git a/Demo/tkinter/matt/animation-simple.py b/Demo/tkinter/matt/animation-simple.py
index 0158793..435d6fa 100644
--- a/Demo/tkinter/matt/animation-simple.py
+++ b/Demo/tkinter/matt/animation-simple.py
@@ -7,16 +7,15 @@ class Test(Frame):
print "hi"
def createWidgets(self):
- self.QUIT = Button(self, {'text': 'QUIT',
- 'fg': 'red',
- 'command': self.quit})
- self.QUIT.pack({'side': 'left', 'fill': 'both'})
+ self.QUIT = Button(self, text='QUIT', foreground='red',
+ command=self.quit)
+ self.QUIT.pack(side=LEFT, fill=BOTH)
- self.draw = Canvas(self, {"width" : "5i", "height" : "5i"})
+ self.draw = Canvas(self, width="5i", height="5i")
# all of these work..
- self.draw.create_polygon("0", "0", "10", "0", "10", "10", "0" , "10", {"tags" : "thing"})
- self.draw.pack({'side': 'left'})
+ self.draw.create_rectangle(0, 0, 10, 10, tags="thing", fill="blue")
+ self.draw.pack(side=LEFT)
def moveThing(self, *args):
# move 1/10 of an inch every 1/10 sec (1" per second, smoothly)
diff --git a/Demo/tkinter/matt/animation-w-velocity-ctrl.py b/Demo/tkinter/matt/animation-w-velocity-ctrl.py
index d16e8a0..a45f3f0 100644
--- a/Demo/tkinter/matt/animation-w-velocity-ctrl.py
+++ b/Demo/tkinter/matt/animation-w-velocity-ctrl.py
@@ -6,29 +6,24 @@ from Tkinter import *
# Tkinter is smart enough to start the system if it's not already going.
-
-
class Test(Frame):
def printit(self):
print "hi"
def createWidgets(self):
- self.QUIT = Button(self, {'text': 'QUIT',
- 'fg': 'red',
- 'command': self.quit})
- self.QUIT.pack({'side': 'bottom', 'fill': 'both'})
+ self.QUIT = Button(self, text='QUIT', foreground='red',
+ command=self.quit)
+ self.QUIT.pack(side=BOTTOM, fill=BOTH)
- self.draw = Canvas(self, {"width" : "5i", "height" : "5i"})
+ self.draw = Canvas(self, width="5i", height="5i")
- self.speed = Scale(self, {"orient": "horiz",
- "from" : -100,
- "to" : 100})
+ self.speed = Scale(self, orient=HORIZONTAL, from_=-100, to=100)
- self.speed.pack({'side': 'bottom', "fill" : "x"})
+ self.speed.pack(side=BOTTOM, fill=X)
# all of these work..
- self.draw.create_polygon("0", "0", "10", "0", "10", "10", "0" , "10", {"tags" : "thing"})
- self.draw.pack({'side': 'left'})
+ self.draw.create_rectangle(0, 0, 10, 10, tags="thing", fill="blue")
+ self.draw.pack(side=LEFT)
def moveThing(self, *args):
velocity = self.speed.get()
@@ -37,8 +32,6 @@ class Test(Frame):
self.draw.move("thing", str, str)
self.after(10, self.moveThing)
-
-
def __init__(self, master=None):
Frame.__init__(self, master)
Pack.config(self)
diff --git a/Demo/tkinter/matt/bind-w-mult-calls-p-type.py b/Demo/tkinter/matt/bind-w-mult-calls-p-type.py
index 62beb09..0907e41 100644
--- a/Demo/tkinter/matt/bind-w-mult-calls-p-type.py
+++ b/Demo/tkinter/matt/bind-w-mult-calls-p-type.py
@@ -18,8 +18,9 @@ class App(Frame):
# Note that here is where we bind a completely different callback to
# the same event. We pass "+" here to indicate that we wish to ADD
- # this callback to the list associated with this event type. Not specifying "+" would
- # simply override whatever callback was defined on this event.
+ # this callback to the list associated with this event type.
+ # Not specifying "+" would simply override whatever callback was
+ # defined on this event.
self.entrythingy.bind('<Key-Return>', self.print_something_else, "+")
def print_contents(self, event):
diff --git a/Demo/tkinter/matt/canvas-demo-simple.py b/Demo/tkinter/matt/canvas-demo-simple.py
index c8ebfa7..d989626 100644
--- a/Demo/tkinter/matt/canvas-demo-simple.py
+++ b/Demo/tkinter/matt/canvas-demo-simple.py
@@ -7,18 +7,16 @@ class Test(Frame):
print "hi"
def createWidgets(self):
- self.QUIT = Button(self, {'text': 'QUIT',
- 'fg': 'red',
- 'command': self.quit})
- self.QUIT.pack({'side': 'bottom', 'fill': 'both'})
+ self.QUIT = Button(self, text='QUIT', foreground='red',
+ command=self.quit)
+ self.QUIT.pack(side=BOTTOM, fill=BOTH)
- self.draw = Canvas(self, {"width" : "5i", "height" : "5i"})
+ self.draw = Canvas(self, width="5i", height="5i")
# see the other demos for other ways of specifying coords for a polygon
- self.draw.create_polygon("0i", "0i", "3i", "0i", "3i", "3i", "0i" , "3i")
-
- self.draw.pack({'side': 'left'})
+ self.draw.create_rectangle(0, 0, "3i", "3i", fill="black")
+ self.draw.pack(side=LEFT)
def __init__(self, master=None):
Frame.__init__(self, master)
diff --git a/Demo/tkinter/matt/canvas-gridding.py b/Demo/tkinter/matt/canvas-gridding.py
index 3524084..b200ea4 100644
--- a/Demo/tkinter/matt/canvas-gridding.py
+++ b/Demo/tkinter/matt/canvas-gridding.py
@@ -10,15 +10,15 @@ class Test(Frame):
print "hi"
def createWidgets(self):
- self.QUIT = Button(self, {'text': 'QUIT',
- 'bg': 'red',
- 'fg': 'white',
- 'height' : 3,
- 'command': self.quit})
- self.QUIT.pack({'side': 'bottom', 'fill': 'both'})
+ self.QUIT = Button(self, text='QUIT',
+ background='red',
+ foreground='white',
+ height=3,
+ command=self.quit)
+ self.QUIT.pack(side=BOTTOM, fill=BOTH)
- self.canvasObject = Canvas(self, {"width" : "5i", "height" : "5i"})
- self.canvasObject.pack({'side': 'left'})
+ self.canvasObject = Canvas(self, width="5i", height="5i")
+ self.canvasObject.pack(side=LEFT)
def mouseDown(self, event):
# canvas x and y take the screen coords from the event and translate
@@ -29,12 +29,13 @@ class Test(Frame):
def mouseMotion(self, event):
# canvas x and y take the screen coords from the event and translate
# them into the coordinate system of the canvas object
- x = self.canvasObject.canvasx(event.x, self.griddingsize)
- y = self.canvasObject.canvasy(event.y, self.griddingsize)
+ x = self.canvasObject.canvasx(event.x, self.griddingSize)
+ y = self.canvasObject.canvasy(event.y, self.griddingSize)
if (self.startx != event.x) and (self.starty != event.y) :
self.canvasObject.delete(self.rubberbandBox)
- self.rubberbandBox = self.canvasObject.create_rectangle(self.startx, self.starty, x, y)
+ self.rubberbandBox = self.canvasObject.create_rectangle(
+ self.startx, self.starty, x, y)
# this flushes the output, making sure that
# the rectangle makes it to the screen
# before the next event is handled
diff --git a/Demo/tkinter/matt/canvas-moving-or-creating.py b/Demo/tkinter/matt/canvas-moving-or-creating.py
index f58cc97..f14a6dc 100644
--- a/Demo/tkinter/matt/canvas-moving-or-creating.py
+++ b/Demo/tkinter/matt/canvas-moving-or-creating.py
@@ -9,26 +9,24 @@ class Test(Frame):
###################################################################
def mouseDown(self, event):
# see if we're inside a dot. If we are, it
- # gets tagged as "current" for free by tk.
-
- if not event.widget.find_withtag("current"):
+ # gets tagged as CURRENT for free by tk.
+ if not event.widget.find_withtag(CURRENT):
# there is no dot here, so we can make one,
# and bind some interesting behavior to it.
# ------
-
- # create a dot, and mark it as current
- fred = self.draw.create_oval(event.x - 10, event.y -10, event.x +10, event.y + 10,
- {"fill" : "green", "tag" : "current"})
+ # create a dot, and mark it as CURRENT
+ fred = self.draw.create_oval(
+ event.x - 10, event.y -10, event.x +10, event.y + 10,
+ fill="green", tags=CURRENT)
self.draw.bind(fred, "<Any-Enter>", self.mouseEnter)
self.draw.bind(fred, "<Any-Leave>", self.mouseLeave)
-
+
self.lastx = event.x
self.lasty = event.y
-
-
+
def mouseMove(self, event):
- self.draw.move("current", event.x - self.lastx, event.y - self.lasty)
+ self.draw.move(CURRENT, event.x - self.lastx, event.y - self.lasty)
self.lastx = event.x
self.lasty = event.y
@@ -36,25 +34,22 @@ class Test(Frame):
###### Event callbacks for canvas ITEMS (stuff drawn on the canvas)
###################################################################
def mouseEnter(self, event):
- # the "current" tag is applied to the object the cursor is over.
+ # the CURRENT tag is applied to the object the cursor is over.
# this happens automatically.
- self.draw.itemconfig("current", {"fill" : "red"})
-
+ self.draw.itemconfig(CURRENT, fill="red")
+
def mouseLeave(self, event):
- # the "current" tag is applied to the object the cursor is over.
+ # the CURRENT tag is applied to the object the cursor is over.
# this happens automatically.
- self.draw.itemconfig("current", {"fill" : "blue"})
-
+ self.draw.itemconfig(CURRENT, fill="blue")
def createWidgets(self):
- self.QUIT = Button(self, {'text': 'QUIT',
- 'fg': 'red',
- 'command': self.quit})
- self.QUIT.pack({'side': 'left', 'fill': 'both'})
- self.draw = Canvas(self, {"width" : "5i", "height" : "5i"})
- self.draw.pack({'side': 'left'})
-
-
+ self.QUIT = Button(self, text='QUIT', foreground='red',
+ command=self.quit)
+ self.QUIT.pack(side=LEFT, fill=BOTH)
+ self.draw = Canvas(self, width="5i", height="5i")
+ self.draw.pack(side=LEFT)
+
Widget.bind(self.draw, "<1>", self.mouseDown)
Widget.bind(self.draw, "<B1-Motion>", self.mouseMove)
diff --git a/Demo/tkinter/matt/canvas-moving-w-mouse.py b/Demo/tkinter/matt/canvas-moving-w-mouse.py
index f07e658..447e290 100644
--- a/Demo/tkinter/matt/canvas-moving-w-mouse.py
+++ b/Demo/tkinter/matt/canvas-moving-w-mouse.py
@@ -10,11 +10,10 @@ class Test(Frame):
# remember where the mouse went down
self.lastx = event.x
self.lasty = event.y
-
-
+
def mouseMove(self, event):
- # whatever the mouse is over gets tagged as "current" for free by tk.
- self.draw.move("current", event.x - self.lastx, event.y - self.lasty)
+ # whatever the mouse is over gets tagged as CURRENT for free by tk.
+ self.draw.move(CURRENT, event.x - self.lastx, event.y - self.lasty)
self.lastx = event.x
self.lasty = event.y
@@ -22,27 +21,24 @@ class Test(Frame):
###### Event callbacks for canvas ITEMS (stuff drawn on the canvas)
###################################################################
def mouseEnter(self, event):
- # the "current" tag is applied to the object the cursor is over.
+ # the CURRENT tag is applied to the object the cursor is over.
# this happens automatically.
- self.draw.itemconfig("current", {"fill" : "red"})
+ self.draw.itemconfig(CURRENT, fill="red")
def mouseLeave(self, event):
- # the "current" tag is applied to the object the cursor is over.
+ # the CURRENT tag is applied to the object the cursor is over.
# this happens automatically.
- self.draw.itemconfig("current", {"fill" : "blue"})
-
+ self.draw.itemconfig(CURRENT, fill="blue")
def createWidgets(self):
- self.QUIT = Button(self, {'text': 'QUIT',
- 'fg': 'red',
- 'command': self.quit})
- self.QUIT.pack({'side': 'left', 'fill': 'both'})
- self.draw = Canvas(self, {"width" : "5i", "height" : "5i"})
- self.draw.pack({'side': 'left'})
-
+ self.QUIT = Button(self, text='QUIT', foreground='red',
+ command=self.quit)
+ self.QUIT.pack(side=LEFT, fill=BOTH)
+ self.draw = Canvas(self, width="5i", height="5i")
+ self.draw.pack(side=LEFT)
fred = self.draw.create_oval(0, 0, 20, 20,
- {"fill" : "green", "tag" : "selected"})
+ fill="green", tags="selected")
self.draw.tag_bind(fred, "<Any-Enter>", self.mouseEnter)
self.draw.tag_bind(fred, "<Any-Leave>", self.mouseLeave)
diff --git a/Demo/tkinter/matt/canvas-mult-item-sel.py b/Demo/tkinter/matt/canvas-mult-item-sel.py
index 1e49ba6..2368733 100644
--- a/Demo/tkinter/matt/canvas-mult-item-sel.py
+++ b/Demo/tkinter/matt/canvas-mult-item-sel.py
@@ -11,20 +11,20 @@ class Test(Frame):
###################################################################
def mouseDown(self, event):
# see if we're inside a dot. If we are, it
- # gets tagged as "current" for free by tk.
+ # gets tagged as CURRENT for free by tk.
- if not event.widget.find_withtag("current"):
+ if not event.widget.find_withtag(CURRENT):
# we clicked outside of all dots on the canvas. unselect all.
# re-color everything back to an unselected color
- self.draw.itemconfig("selected", {"fill" : UNSELECTED_COLOR})
+ self.draw.itemconfig("selected", fill=UNSELECTED_COLOR)
# unselect everything
self.draw.dtag("selected")
else:
# mark as "selected" the thing the cursor is under
- self.draw.addtag("selected", "withtag", "current")
+ self.draw.addtag("selected", "withtag", CURRENT)
# color it as selected
- self.draw.itemconfig("selected", {"fill": SELECTED_COLOR})
+ self.draw.itemconfig("selected", fill=SELECTED_COLOR)
self.lastx = event.x
self.lasty = event.y
@@ -38,40 +38,36 @@ class Test(Frame):
def makeNewDot(self):
# create a dot, and mark it as current
fred = self.draw.create_oval(0, 0, 20, 20,
- {"fill" : SELECTED_COLOR, "tag" : "current"})
+ fill=SELECTED_COLOR, tags=CURRENT)
# and make it selected
- self.draw.addtag("selected", "withtag", "current")
+ self.draw.addtag("selected", "withtag", CURRENT)
def createWidgets(self):
- self.QUIT = Button(self, {'text': 'QUIT',
- 'fg': 'red',
- 'command': self.quit})
+ self.QUIT = Button(self, text='QUIT', foreground='red',
+ command=self.quit)
################
# make the canvas and bind some behavior to it
################
- self.draw = Canvas(self, {"width" : "5i", "height" : "5i"})
+ self.draw = Canvas(self, width="5i", height="5i")
Widget.bind(self.draw, "<1>", self.mouseDown)
Widget.bind(self.draw, "<B1-Motion>", self.mouseMove)
-
# and other things.....
- self.button = Button(self, {"text" : "make a new dot",
- "command" : self.makeNewDot,
- "fg" : "blue"})
-
- self.label = Message(self,
- {"width" : "5i",
- "text" : SELECTED_COLOR + " dots are selected and can be dragged.\n" +
- UNSELECTED_COLOR + " are not selected.\n" +
- "Click in a dot to select it.\n" +
- "Click on empty space to deselect all dots." })
-
- self.QUIT.pack({'side': 'bottom', 'fill': 'both'})
- self.label.pack({"side" : "bottom", "fill" : "x", "expand" : 1})
- self.button.pack({"side" : "bottom", "fill" : "x"})
- self.draw.pack({'side': 'left'})
-
+ self.button = Button(self, text="make a new dot", foreground="blue",
+ command=self.makeNewDot)
+
+ message = ("%s dots are selected and can be dragged.\n"
+ "%s are not selected.\n"
+ "Click in a dot to select it.\n"
+ "Click on empty space to deselect all dots."
+ ) % (SELECTED_COLOR, UNSELECTED_COLOR)
+ self.label = Message(self, width="5i", text=message)
+
+ self.QUIT.pack(side=BOTTOM, fill=BOTH)
+ self.label.pack(side=BOTTOM, fill=X, expand=1)
+ self.button.pack(side=BOTTOM, fill=X)
+ self.draw.pack(side=LEFT)
def __init__(self, master=None):
Frame.__init__(self, master)
diff --git a/Demo/tkinter/matt/canvas-reading-tag-info.py b/Demo/tkinter/matt/canvas-reading-tag-info.py
index 1478621..7044691 100644
--- a/Demo/tkinter/matt/canvas-reading-tag-info.py
+++ b/Demo/tkinter/matt/canvas-reading-tag-info.py
@@ -6,17 +6,16 @@ class Test(Frame):
print "hi"
def createWidgets(self):
- self.QUIT = Button(self, {'text': 'QUIT',
- 'fg': 'red',
- 'command': self.quit})
- self.QUIT.pack({'side': 'bottom', 'fill': 'both'})
+ self.QUIT = Button(self, text='QUIT', foreground='red',
+ command=self.quit)
+ self.QUIT.pack(side=BOTTOM, fill=BOTH)
- self.drawing = Canvas(self, {"width" : "5i", "height" : "5i"})
+ self.drawing = Canvas(self, width="5i", height="5i")
# make a shape
- pgon = self.drawing.create_polygon("10", "10", "110", "10", "110", "110", "10" , "110",
- {"fill" : "red",
- "tags" : "weee foo groo"})
+ pgon = self.drawing.create_polygon(
+ 10, 10, 110, 10, 110, 110, 10 , 110,
+ fill="red", tags=("weee", "foo", "groo"))
# this is how you query an object for its attributes
# config options FOR CANVAS ITEMS always come back in tuples of length 5.
@@ -31,15 +30,14 @@ class Test(Frame):
option_value = self.drawing.itemconfig(pgon, "stipple")
print "pgon's current stipple value is -->", option_value[4], "<--"
option_value = self.drawing.itemconfig(pgon, "fill")
- print "pgon's current fill value is -->", option_value[4], "<-- when he is usually colored -->", option_value[3], "<--"
+ print "pgon's current fill value is -->", option_value[4], "<--"
+ print " when he is usually colored -->", option_value[3], "<--"
## here we print out all the tags associated with this object
option_value = self.drawing.itemconfig(pgon, "tags")
print "pgon's tags are", option_value[4]
- self.drawing.pack({'side': 'left'})
-
-
+ self.drawing.pack(side=LEFT)
def __init__(self, master=None):
Frame.__init__(self, master)
diff --git a/Demo/tkinter/matt/canvas-w-widget-draw-el.py b/Demo/tkinter/matt/canvas-w-widget-draw-el.py
index 5453859..a1bb3b5 100644
--- a/Demo/tkinter/matt/canvas-w-widget-draw-el.py
+++ b/Demo/tkinter/matt/canvas-w-widget-draw-el.py
@@ -7,15 +7,14 @@ class Test(Frame):
print "hi"
def createWidgets(self):
- self.QUIT = Button(self, {'text': 'QUIT',
- 'fg': 'red',
- 'command': self.quit})
- self.QUIT.pack({'side': 'bottom', 'fill': 'both'})
+ self.QUIT = Button(self, text='QUIT', foreground='red',
+ command=self.quit)
+ self.QUIT.pack(side=BOTTOM, fill=BOTH)
- self.draw = Canvas(self, {"width" : "5i", "height" : "5i"})
+ self.draw = Canvas(self, width="5i", height="5i")
- self.button = Button(self, {"text" : "this is a button",
- "command" : self.printhi})
+ self.button = Button(self, text="this is a button",
+ command=self.printhi)
# note here the coords are given in pixels (form the
# upper right and corner of the window, as usual for X)
@@ -23,11 +22,9 @@ class Test(Frame):
# whatever...use the "anchor" option to control what point of the
# widget (in this case the button) gets mapped to the given x, y.
# you can specify corners, edges, center, etc...
- self.draw.create_window(300, 300, {"window" : self.button})
-
- self.draw.pack({'side': 'left'})
-
+ self.draw.create_window(300, 300, window=self.button)
+ self.draw.pack(side=LEFT)
def __init__(self, master=None):
Frame.__init__(self, master)
diff --git a/Demo/tkinter/matt/canvas-with-scrollbars.py b/Demo/tkinter/matt/canvas-with-scrollbars.py
index d249822..60c7b13 100644
--- a/Demo/tkinter/matt/canvas-with-scrollbars.py
+++ b/Demo/tkinter/matt/canvas-with-scrollbars.py
@@ -10,27 +10,23 @@ class Test(Frame):
print "hi"
def createWidgets(self):
- self.question = Label(self, {"text": "Can Find The BLUE Square??????",
- Pack : {"side" : "top"}})
-
- self.QUIT = Button(self, {'text': 'QUIT',
- 'bg': 'red',
- "height" : "3",
- 'command': self.quit})
- self.QUIT.pack({'side': 'bottom', 'fill': 'both'})
- spacer = Frame(self, {"height" : "0.25i",
- Pack : {"side" : "bottom"}})
+ self.question = Label(self, text="Can Find The BLUE Square??????")
+ self.question.pack()
+
+ self.QUIT = Button(self, text='QUIT', background='red',
+ height=3, command=self.quit)
+ self.QUIT.pack(side=BOTTOM, fill=BOTH)
+ spacer = Frame(self, height="0.25i")
+ spacer.pack(side=BOTTOM)
# notice that the scroll region (20" x 20") is larger than
# displayed size of the widget (5" x 5")
- self.draw = Canvas(self, {"width" : "5i",
- "height" : "5i",
- "bg" : "white",
- "scrollregion" : "0i 0i 20i 20i"})
+ self.draw = Canvas(self, width="5i", height="5i",
+ background="white",
+ scrollregion=(0, 0, "20i", "20i"))
-
- self.draw.scrollX = Scrollbar(self, {"orient" : "horizontal"})
- self.draw.scrollY = Scrollbar(self, {"orient" : "vertical"})
+ self.draw.scrollX = Scrollbar(self, orient=HORIZONTAL)
+ self.draw.scrollY = Scrollbar(self, orient=VERTICAL)
# now tie the three together. This is standard boilerplate text
self.draw['xscrollcommand'] = self.draw.scrollX.set
@@ -40,16 +36,13 @@ class Test(Frame):
# draw something. Note that the first square
# is visible, but you need to scroll to see the second one.
- self.draw.create_polygon("0i", "0i", "3.5i", "0i", "3.5i", "3.5i", "0i" , "3.5i")
- self.draw.create_polygon("10i", "10i", "13.5i", "10i", "13.5i", "13.5i", "10i" , "13.5i", "-fill", "blue")
+ self.draw.create_rectangle(0, 0, "3.5i", "3.5i", fill="black")
+ self.draw.create_rectangle("10i", "10i", "13.5i", "13.5i", fill="blue")
-
# pack 'em up
- self.draw.scrollX.pack({'side': 'bottom',
- "fill" : "x"})
- self.draw.scrollY.pack({'side': 'right',
- "fill" : "y"})
- self.draw.pack({'side': 'left'})
+ self.draw.scrollX.pack(side=BOTTOM, fill=X)
+ self.draw.scrollY.pack(side=RIGHT, fill=Y)
+ self.draw.pack(side=LEFT)
def scrollCanvasX(self, *args):
diff --git a/Demo/tkinter/matt/dialog-box.py b/Demo/tkinter/matt/dialog-box.py
index e40c72e..cbfe29f 100644
--- a/Demo/tkinter/matt/dialog-box.py
+++ b/Demo/tkinter/matt/dialog-box.py
@@ -1,58 +1,57 @@
from Tkinter import *
+from Dialog import Dialog
-# this shows how to create a new window with a button in it that can create new windows
+# this shows how to create a new window with a button in it
+# that can create new windows
class Test(Frame):
def printit(self):
print "hi"
def makeWindow(self):
- # there is no Tkinter interface to the dialog box. Making one would mean putting
- # a few wrapper functions in the Tkinter.py file.
- # even better is to put in a SUIT-like selection of commonly-used dialogs.
- # the parameters to this call are as follows:
-
- fred = Toplevel() # a toplevel window that the dialog goes into
-
+ """Create a top-level dialog with some buttons.
- # this function returns the index of teh button chosen. In this case, 0 for "yes" and 1 for "no"
-
- print self.tk.call("tk_dialog", # the command name
- fred, # the name of a toplevel window
- "fred the dialog box", # the title on the window
- "click on a choice", # the message to appear in the window
- "info", # the bitmap (if any) to appear. If no bitmap is desired, pass ""
- # legal values here are:
- # string what it looks like
- # ----------------------------------------------
- # error a circle with a slash through it
- # grey25 grey square
- # grey50 darker grey square
- # hourglass use for "wait.."
- # info a large, lower case "i"
- # questhead a human head with a "?" in it
- # question a large "?"
- # warning a large "!"
- # @fname any X bitmap where fname is the path to the file
- #
- "0", # the index of the default button choice. hitting return selects this
- "yes", "no") # all remaining parameters are the labels for the
- # buttons that appear left to right in the dialog box
+ This uses the Dialog class, which is a wrapper around the Tcl/Tk
+ tk_dialog script. The function returns 0 if the user clicks 'yes'
+ or 1 if the user clicks 'no'.
+ """
+ # the parameters to this call are as follows:
+ d = Dialog(
+ self, ## name of a toplevel window
+ title="fred the dialog box",## title on the window
+ text="click on a choice", ## message to appear in window
+ bitmap="info", ## bitmap (if any) to appear;
+ ## if none, use ""
+ # legal values here are:
+ # string what it looks like
+ # ----------------------------------------------
+ # error a circle with a slash through it
+ # grey25 grey square
+ # grey50 darker grey square
+ # hourglass use for "wait.."
+ # info a large, lower case "i"
+ # questhead a human head with a "?" in it
+ # question a large "?"
+ # warning a large "!"
+ # @fname X bitmap where fname is the path to the file
+ #
+ default=0, # the index of the default button choice.
+ # hitting return selects this
+ strings=("yes", "no"))
+ # values of the 'strings' key are the labels for the
+ # buttons that appear left to right in the dialog box
+ return d.num
-
def createWidgets(self):
- self.QUIT = Button(self, {'text': 'QUIT',
- 'fg': 'red',
- 'command': self.quit})
-
- self.QUIT.pack({'side': 'left', 'fill': 'both'})
-
+ self.QUIT = Button(self, text='QUIT', foreground='red',
+ command=self.quit)
+ self.QUIT.pack(side=LEFT, fill=BOTH)
# a hello button
- self.hi_there = Button(self, {'text': 'Make a New Window',
- 'command' : self.makeWindow})
- self.hi_there.pack({'side': 'left'})
+ self.hi_there = Button(self, text='Make a New Window',
+ command=self.makeWindow)
+ self.hi_there.pack(side=LEFT)
def __init__(self, master=None):
diff --git a/Demo/tkinter/matt/entry-with-shared-variable.py b/Demo/tkinter/matt/entry-with-shared-variable.py
index 5eb8c5a..58fdfac 100644
--- a/Demo/tkinter/matt/entry-with-shared-variable.py
+++ b/Demo/tkinter/matt/entry-with-shared-variable.py
@@ -11,10 +11,10 @@ class App(Frame):
self.entrythingy = Entry()
self.entrythingy.pack()
- self.button = Button(self, {"text" : "Uppercase The Entry", "command" : self.upper})
+ self.button = Button(self, text="Uppercase The Entry",
+ command=self.upper)
self.button.pack()
-
# here we have the text in the entry widget tied to a variable.
# changes in the variable are echoed in the widget and vice versa.
# Very handy.
@@ -22,7 +22,7 @@ class App(Frame):
# the other variable types that can be shadowed
self.contents = StringVar()
self.contents.set("this is a variable")
- self.entrythingy.config({"textvariable":self.contents})
+ self.entrythingy.config(textvariable=self.contents)
# and here we get a callback when the user hits return. we could
# make the key that triggers the callback anything we wanted to.
diff --git a/Demo/tkinter/matt/killing-window-w-wm.py b/Demo/tkinter/matt/killing-window-w-wm.py
index 6ec3464..805a6bc 100644
--- a/Demo/tkinter/matt/killing-window-w-wm.py
+++ b/Demo/tkinter/matt/killing-window-w-wm.py
@@ -15,9 +15,8 @@ class Test(Frame):
def createWidgets(self):
# a hello button
- self.hi_there = Button(self, {'text': 'Hello'})
- self.hi_there.pack({'side': 'left'})
-
+ self.hi_there = Button(self, text='Hello')
+ self.hi_there.pack(side=LEFT)
def __init__(self, master=None):
Frame.__init__(self, master)
diff --git a/Demo/tkinter/matt/menu-all-types-of-entries.py b/Demo/tkinter/matt/menu-all-types-of-entries.py