28 lines
		
	
	
	
		
			767 B
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
	
		
			767 B
		
	
	
	
		
			Text
		
	
	
	
	
	
# ----------------------------------------------------------------------
 | 
						|
#  DEMO: spinner in [incr Widgets]
 | 
						|
# ----------------------------------------------------------------------
 | 
						|
package require Iwidgets 4.0
 | 
						|
 | 
						|
option add *textBackground seashell
 | 
						|
 | 
						|
proc spinMonth {win step} {
 | 
						|
    set months {
 | 
						|
        January February March April
 | 
						|
        May June July August September
 | 
						|
        October November December
 | 
						|
    }
 | 
						|
 | 
						|
    set index [expr [lsearch $months [$win get]] + $step]
 | 
						|
 | 
						|
    if {$index < 0} {set index 11}
 | 
						|
    if {$index > 11} {set index 0}
 | 
						|
 | 
						|
    $win delete 0 end
 | 
						|
    $win insert 0 [lindex $months $index]
 | 
						|
}
 | 
						|
 | 
						|
iwidgets::spinner .sm -labeltext "Month:" -width 10 -fixed 10 \
 | 
						|
    -decrement {spinMonth .sm -1} -increment {spinMonth .sm 1}
 | 
						|
 | 
						|
pack .sm
 | 
						|
.sm insert 0 "January"
 |