mirror of
https://github.com/python/cpython.git
synced 2025-07-29 22:24:49 +00:00
Initial checkin of IDE scripts. (jvr)
This commit is contained in:
parent
b7ad821f02
commit
a840fca155
19 changed files with 334 additions and 0 deletions
85
Mac/IDE scripts/Widget demos/WidgetTest.py
Normal file
85
Mac/IDE scripts/Widget demos/WidgetTest.py
Normal file
|
@ -0,0 +1,85 @@
|
|||
import W
|
||||
|
||||
# define some callbacks
|
||||
def callback():
|
||||
window.close()
|
||||
|
||||
def checkcallback(value):
|
||||
print "hit the checkbox", value
|
||||
|
||||
def radiocallback(value):
|
||||
print "hit radiobutton #3", value
|
||||
|
||||
def scrollcallback(value):
|
||||
widget = window.hbar
|
||||
if value == "+":
|
||||
widget.set(widget.get() - 1)
|
||||
elif value == "-":
|
||||
widget.set(widget.get() + 1)
|
||||
elif value == "++":
|
||||
widget.set(widget.get() - 10)
|
||||
elif value == "--":
|
||||
widget.set(widget.get() + 10)
|
||||
else: # in thumb
|
||||
widget.set(value)
|
||||
print "scroll...", widget.get()
|
||||
|
||||
def textcallback():
|
||||
window.et3.set(window.et1.get())
|
||||
|
||||
def cancel():
|
||||
import EasyDialogs
|
||||
EasyDialogs.Message("Cancel!")
|
||||
|
||||
# make a non-sizable window
|
||||
#window = W.Window((200, 300), "Fixed Size")
|
||||
|
||||
# make a sizable window
|
||||
window = W.Window((200, 300), "Variable Size!", minsize = (200, 300))
|
||||
|
||||
# make some edit text widgets
|
||||
window.et1 = W.EditText((10, 10, 110, 110), "Hallo!", textcallback)
|
||||
window.et2 = W.EditText((130, 40, 60, 30), "one!")
|
||||
window.et3 = W.EditText((130, 80, -10, 40), "two?")
|
||||
|
||||
# a button
|
||||
window.button = W.Button((-70, 10, 60, 16), "Close", callback)
|
||||
|
||||
# a checkbox
|
||||
window.ch = W.CheckBox((10, 130, 160, 16), "Check (command §)", checkcallback)
|
||||
|
||||
# set of radio buttons (should become easier/nicer)
|
||||
thebuttons = []
|
||||
window.r1 = W.RadioButton((10, 150, 180, 16), "Radio 1 (cmd 1)", thebuttons)
|
||||
window.r2 = W.RadioButton((10, 170, 180, 16), "Radio 2 (cmd 2)", thebuttons)
|
||||
window.r3 = W.RadioButton((10, 190, 180, 16), "Radio 3 (cmd 3)", thebuttons, radiocallback)
|
||||
window.r1.set(1)
|
||||
|
||||
# a normal button
|
||||
window.cancelbutton = W.Button((10, 220, 60, 16), "Cancel", cancel)
|
||||
|
||||
# a scrollbar
|
||||
window.hbar = W.Scrollbar((-1, -15, -14, 16), scrollcallback, max = 100)
|
||||
|
||||
# some static text
|
||||
window.static = W.TextBox((10, 260, 110, 16), "Schtatic")
|
||||
|
||||
# bind some keystrokes to functions
|
||||
window.bind('cmd§', window.ch.push)
|
||||
window.bind('cmd1', window.r1.push)
|
||||
window.bind('cmd2', window.r2.push)
|
||||
window.bind('cmd3', window.r3.push)
|
||||
window.bind('cmdw', window.button.push)
|
||||
window.bind('cmd.', window.cancelbutton.push)
|
||||
|
||||
window.setdefaultbutton(window.button)
|
||||
# open the window
|
||||
window.open()
|
||||
|
||||
if 0:
|
||||
import time
|
||||
for i in range(20):
|
||||
window.et2.set(`i`)
|
||||
#window.et2.SetPort()
|
||||
#window.et2.draw()
|
||||
time.sleep(0.1)
|
Loading…
Add table
Add a link
Reference in a new issue