blob: f6bbe23688a98723c5e00d985d7764316716c5b7 [file] [log] [blame]
Guido van Rossum0e71dc11992-12-14 14:10:36 +00001#! /usr/local/bin/python
Guido van Rossum9cf8f331992-03-30 10:54:51 +00002
3# TestSched
4
5import stdwin
6from WindowParent import WindowParent, MainLoop
7import WindowSched
8from Buttons import PushButton
9
10def my_ringer(child):
Guido van Rossum0e71dc11992-12-14 14:10:36 +000011 child.my_id = None
Guido van Rossum9cf8f331992-03-30 10:54:51 +000012 stdwin.fleep()
13
14def 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 = \
Guido van Rossum0e71dc11992-12-14 14:10:36 +000019 WindowSched.enter(child.my_number*1000, 0, my_ringer, (child,))
Guido van Rossum9cf8f331992-03-30 10:54:51 +000020
21def main(n):
22 from CSplit import CSplit
23
24 window = WindowParent().create('TestSched', (0, 0))
25 csplit = CSplit().create(window)
26
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
33
34 window.realize()
35
36 WindowSched.run()
37
38main(12)