python-2.5.2/win32/tcl/tk8.4/demos/timer
changeset 0 ae805ac0140d
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/python-2.5.2/win32/tcl/tk8.4/demos/timer	Fri Apr 03 17:19:34 2009 +0100
@@ -0,0 +1,47 @@
+#!/bin/sh
+# the next line restarts using wish \
+exec wish "$0" "$@"
+
+# timer --
+# This script generates a counter with start and stop buttons.
+#
+# RCS: @(#) $Id: timer,v 1.3 2001/10/29 16:23:33 dkf Exp $
+
+label .counter -text 0.00 -relief raised -width 10 -padx 2m -pady 1m
+button .start -text Start -command {
+    if {$stopped} {
+	set stopped 0
+	set startMoment [clock clicks -milliseconds]
+	tick
+	.stop configure -state normal
+	.start configure -state disabled
+    }
+}
+button .stop -text Stop -state disabled -command {
+    set stopped 1
+    .stop configure -state disabled
+    .start configure -state normal
+}
+pack .counter -side bottom -fill both
+pack .start -side left -fill both -expand yes
+pack .stop -side right -fill both -expand yes
+
+set startMoment {}
+
+set stopped 1
+
+proc tick {} {
+    global startMoment stopped
+    if {$stopped} {return}
+    after 50 tick
+    set elapsedMS [expr {[clock clicks -milliseconds] - $startMoment}]
+    .counter config -text [format "%.2f" [expr {double($elapsedMS)/1000}]]
+}
+
+bind . <Control-c> {destroy .}
+bind . <Control-q> {destroy .}
+focus .
+
+# Local Variables:
+# mode: tcl
+# End: