mirror of
				https://github.com/python/cpython.git
				synced 2025-11-04 11:49:12 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			38 lines
		
	
	
	
		
			766 B
		
	
	
	
		
			Python
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
	
		
			766 B
		
	
	
	
		
			Python
		
	
	
		
			Executable file
		
	
	
	
	
#! /usr/local/bin/python
 | 
						|
 | 
						|
# TestSched
 | 
						|
 | 
						|
import stdwin
 | 
						|
from WindowParent import WindowParent, MainLoop
 | 
						|
import WindowSched
 | 
						|
from Buttons import PushButton
 | 
						|
 | 
						|
def my_ringer(child):
 | 
						|
	child.my_id = None
 | 
						|
	stdwin.fleep()
 | 
						|
 | 
						|
def my_hook(child):
 | 
						|
	# schedule for the bell to ring in N seconds; cancel previous
 | 
						|
	if child.my_id:
 | 
						|
		WindowSched.cancel(child.my_id)
 | 
						|
	child.my_id = \
 | 
						|
		WindowSched.enter(child.my_number*1000, 0, my_ringer, (child,))
 | 
						|
 | 
						|
def main(n):
 | 
						|
	from CSplit import CSplit
 | 
						|
	
 | 
						|
	window = WindowParent().create('TestSched', (0, 0))
 | 
						|
	csplit = CSplit().create(window)
 | 
						|
	
 | 
						|
	for i in range(n):
 | 
						|
		child = PushButton().define(csplit)
 | 
						|
		child.my_number = i
 | 
						|
		child.my_id = None
 | 
						|
		child.settext(`(i+n-1)%n+1`)
 | 
						|
		child.hook = my_hook
 | 
						|
	
 | 
						|
	window.realize()
 | 
						|
	
 | 
						|
	WindowSched.run()
 | 
						|
 | 
						|
main(12)
 |