Update tk to version 8.5.11
[git/jnareb-git.git] / mingw / lib / tk8.5 / ttk / progress.tcl
blobb6e2ffbe789225095fa9acd9e8f69bfe47b3e793
2 # Ttk widget set: progress bar utilities.
5 namespace eval ttk::progressbar {
6 variable Timers ;# Map: widget name -> after ID
9 # Autoincrement --
10 # Periodic callback procedure for autoincrement mode
12 proc ttk::progressbar::Autoincrement {pb steptime stepsize} {
13 variable Timers
15 if {![winfo exists $pb]} {
16 # widget has been destroyed -- cancel timer
17 unset -nocomplain Timers($pb)
18 return
21 $pb step $stepsize
23 set Timers($pb) [after $steptime \
24 [list ttk::progressbar::Autoincrement $pb $steptime $stepsize] ]
27 # ttk::progressbar::start --
28 # Start autoincrement mode. Invoked by [$pb start] widget code.
30 proc ttk::progressbar::start {pb {steptime 50} {stepsize 1}} {
31 variable Timers
32 if {![info exists Timers($pb)]} {
33 Autoincrement $pb $steptime $stepsize
37 # ttk::progressbar::stop --
38 # Cancel autoincrement mode. Invoked by [$pb stop] widget code.
40 proc ttk::progressbar::stop {pb} {
41 variable Timers
42 if {[info exists Timers($pb)]} {
43 after cancel $Timers($pb)
44 unset Timers($pb)
46 $pb configure -value 0