Improved some error messages for command line processing.
[python/dscho.git] / Demo / stdwin / TestSched.py
blob29274e67770b1d0f4c9ae55500d67cf654f7eca8
1 #! /usr/bin/env python
3 # TestSched
5 import stdwin
6 from WindowParent import WindowParent, MainLoop
7 import WindowSched
8 from Buttons import PushButton
10 def my_ringer(child):
11 child.my_id = None
12 stdwin.fleep()
14 def my_hook(child):
15 # schedule for the bell to ring in N seconds; cancel previous
16 if child.my_id:
17 WindowSched.cancel(child.my_id)
18 child.my_id = \
19 WindowSched.enter(child.my_number*1000, 0, my_ringer, (child,))
21 def main(n):
22 from CSplit import CSplit
24 window = WindowParent().create('TestSched', (0, 0))
25 csplit = CSplit().create(window)
27 for i in range(n):
28 child = PushButton().define(csplit)
29 child.my_number = i
30 child.my_id = None
31 child.settext(`(i+n-1)%n+1`)
32 child.hook = my_hook
34 window.realize()
36 WindowSched.run()
38 main(12)