head	1.5;
access;
symbols
	core-8-5-9:1.4
	core-8-5-8:1.4
	macosx-cocoa-merge:1.5
	macosx-cocoa-premerge:1.5
	macosx-carbon-freeze:1.5
	core-8-5-7:1.4
	core-8-5-6:1.4
	core-8-6-b1:1.4
	core-8-6-a3:1.4
	core-8-5-5:1.4
	core-8-6-a2:1.4
	core-8-5-4:1.4
	core-8-5-3:1.4
	core-8-6-a1:1.4
	core-8-4-19:1.3
	core-8-5-branch:1.4.0.6
	core-8-5-2:1.4
	core-8-4-18:1.3
	core-8-5-1:1.4
	core-8-4-17:1.3
	core-8-5-0:1.4
	core-8-5-b3:1.4
	core-8-5-b2:1.4
	core-8-4-16:1.3
	core-8-5-b1:1.4
	core-stablilizer-merge:1.4
	core-stabilizer-branch:1.4.0.4
	core-stabilizer-merge:1.4
	core-8-4-15:1.3
	core-8-5-a6:1.4
	core-8-5-a5:1.4
	core-8-4-14:1.3
	core-8-5-a4:1.4
	core-8-4-13:1.3
	core-8-4-12:1.3
	core-8-4-11:1.3
	core-8-5-a3:1.4
	core-8-4-10:1.3
	core-8-4-9-branch:1.3.0.4
	core-8-5-a2:1.4
	core-8-4-9:1.3
	core-8-4-8:1.3
	core-8-4-7:1.3
	core-8-5-a1:1.4
	core-8-4-6:1.3
	core-8-4-5:1.3
	mistachkin-dev-branch:1.4.0.2
	core-8-4-4:1.3
	core-8-4-3:1.3
	core-8-4-branch:1.3.0.2
	core-8-4-2:1.3
	core-8-4-1:1.3
	core-8-3-5:1.2.18.1
	core-8-4-0:1.3
	macosx-8-4-merge-2002-08-31-trunk:1.3
	macosx-8-4-premerge-2002-08-31-branch:1.2.24.1
	macosx-8-4-premerge-2002-08-31-trunk:1.3
	macosx-8-4-merge-2002-08-30-branch:1.2.24.1
	macosx-8-4-merge-2002-08-30-trunk:1.3
	macosx-8-4-merge-2002-08-20-branch:1.2.24.1
	macosx-8-4-merge-2002-08-20-trunk:1.3
	core-8-4-b2:1.3
	core-8-4-b1:1.3
	macosx-premerge-6-9-02:1.2.24.1
	core-8-4-a4:1.3
	core-8-3-4:1.2.18.1
	macosx-8-4-branch:1.2.0.24
	macosx-8-4-branchpoint:1.2
	core-8-4-a3:1.2
	core-8-3-3:1.2
	dgp-privates-into-namespace:1.2.0.22
	tclpro-1-5-0:1.2
	core-8-4-win-speedup:1.2.0.20
	core-8-4-a2:1.2
	tclpro-1-4-1:1.2
	tclpro-1-4-0:1.2
	core-8-3-2:1.2
	ajuba-ajuba2-2-1-base:1.2
	ajuba-ajuba2-2-0:1.2
	core-8-4-a1:1.2
	core-8-3-1-branch:1.2.0.18
	core-8-3-1:1.2
	scriptics-sc-2-0-b5:1.2
	scriptics-sc-2-0-fixed:1.2
	scriptics-sc-2-0-b2:1.2
	scriptics-sc-2-0-b1:1.2
	core-8-3-0:1.2
	core-8-3-b2:1.2
	core-8-3-b1:1.2
	scriptics-sc-1-1:1.2
	scriptics-sc-1-1-b1:1.2
	core-8-2-3:1.2
	scriptics-sc-1-1-branch:1.2.0.16
	scriptics-sc-1-1-base:1.2
	scriptics-sc-1-0:1.2
	scriptics-sc-1-0-branch:1.2.0.14
	scriptics-sc-1-0-base:1.2
	core-8-2-2:1.2
	core-8-2-1:1.2
	scriptics-bc-1-0-b1:1.2
	core-8-2-1-branch:1.2.0.12
	scriptics-tclpro-1-3-0:1.2
	core-8-2-0:1.2
	core-8-2-b3-branch:1.2.0.10
	core-8-2-b3-base:1.2
	scriptics-tclpro-1-3-b4:1.2
	core-8-2-b2:1.2
	scriptics-tclpro-1-3-b3:1.2
	core-8-2-b1:1.2
	scriptics-tclpro-1-3-b2:1.2
	merge-to-mainline-5/21/99:1.2
	scriptics-tclpro-1-3-b2-branch:1.2.0.8
	core-8-1-1:1.2
	scriptics-tclpro-1-3-b1:1.2
	core-8-1-1-base:1.2
	core-8-1-0:1.2
	merge-to-mainline-4-29-99:1.2
	merge-to-mainline-4-23-99:1.2
	core-8-1-branch-old:1.1.0.4
	core-8-0-6-branch:1.2.0.6
	core-8-0-6-base:1.2
	core-8-0-5:1.2
	core-8-1-b3:1.1.4.1
	core-8-1-b2:1.1.4.1
	dev-8-1-stubs-branch:1.1.4.1.0.2
	dev-stubs-branch:1.2.0.4
	scriptics-tclpro-1-2:1.2
	scriptics-tclpro-1-2-b2:1.2
	core-8-1-merge-2/10/99:1.2
	core-8-0-5-branch:1.2.0.2
	core-8-0-5-base:1.2
	scriptics-tclpro-1-2-b1:1.2
	scriptics-tclpro-1-2-a1:1.2
	core-8-1-b1:1.1.4.1
	core-8-0-4:1.2
	core-8-1-a2:1.1
	core-8-0-2:1.1
	core-8-0-3:1.2;
locks; strict;
comment	@# @;


1.5
date	2009.03.25.23.27.12;	author nijtmans;	state Exp;
branches;
next	1.4;

1.4
date	2003.09.30.14.54.30;	author dkf;	state Exp;
branches;
next	1.3;

1.3
date	2001.10.29.16.23.33;	author dkf;	state Exp;
branches;
next	1.2;

1.2
date	98.09.14.18.23.30;	author stanton;	state Exp;
branches
	1.2.18.1
	1.2.20.1
	1.2.24.1;
next	1.1;

1.1
date	98.04.01.09.54.30;	author rjohnson;	state Exp;
branches
	1.1.4.1;
next	;

1.1.4.1
date	98.09.30.02.17.56;	author stanton;	state Exp;
branches;
next	;

1.2.18.1
date	2001.10.12.10.56.13;	author dkf;	state Exp;
branches;
next	;

1.2.20.1
date	2002.04.02.20.58.51;	author hobbs;	state Exp;
branches;
next	;

1.2.24.1
date	2002.02.05.02.25.16;	author wolfsuit;	state Exp;
branches;
next	;


desc
@@


1.5
log
@bring doc and demos in line with http://wiki.tcl.tk/812
@
text
@#!/bin/sh
# the next line restarts using wish \
exec wish "$0" ${1+"$@@"}

# timer --
# This script generates a counter with start and stop buttons.
#
# RCS: @@(#) $Id: timer,v 1.4 2003/09/30 14:54:30 dkf Exp $

package require Tcl 8.4
package require Tk

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:
@


1.4
log
@Added [package require] to demos. [FRQ 815118]
@
text
@d3 1
a3 1
exec wish "$0" "$@@"
d8 1
a8 1
# RCS: @@(#) $Id: timer,v 1.3 2001/10/29 16:23:33 dkf Exp $
@


1.3
log
@Improvements to the demo scripts, mostly up-ported from 8.3.4
@
text
@d8 4
a11 1
# RCS: @@(#) $Id: timer,v 1.2.18.1 2001/10/12 10:56:13 dkf Exp $
@


1.2
log
@Replaced SCCS strings, fixed binary files
@
text
@d8 1
a8 1
# RCS: @@(#) $Id$
d10 1
a10 1
label .counter -text 0.00 -relief raised -width 10
d12 1
a12 1
    if $stopped {
d14 1
d16 2
d20 5
a24 1
button .stop -text Stop -command {set stopped 1}
d29 2
a30 2
set seconds 0
set hundredths 0
d34 2
a35 2
    global seconds hundredths stopped
    if $stopped return
d37 2
a38 6
    set hundredths [expr $hundredths+5]
    if {$hundredths >= 100} {
	set hundredths 0
	set seconds [expr $seconds+1]
    }
    .counter config -text [format "%d.%02d" $seconds $hundredths]
d44 4
@


1.2.20.1
log
@sync with head
@
text
@d8 1
a8 1
# RCS: @@(#) $Id: timer,v 1.3 2001/10/29 16:23:33 dkf Exp $
d10 1
a10 1
label .counter -text 0.00 -relief raised -width 10 -padx 2m -pady 1m
d12 1
a12 1
    if {$stopped} {
a13 1
	set startMoment [clock clicks -milliseconds]
a14 2
	.stop configure -state normal
	.start configure -state disabled
d17 1
a17 5
button .stop -text Stop -state disabled -command {
    set stopped 1
    .stop configure -state disabled
    .start configure -state normal
}
d22 2
a23 2
set startMoment {}

d27 2
a28 2
    global startMoment stopped
    if {$stopped} {return}
d30 6
a35 2
    set elapsedMS [expr {[clock clicks -milliseconds] - $startMoment}]
    .counter config -text [format "%.2f" [expr {double($elapsedMS)/1000}]]
a40 4

# Local Variables:
# mode: tcl
# End:
@


1.2.24.1
log
@Merge with current TOT
Added support for the wm stackorder command
Fixed crash when selecting Menu items in the Application menu that we didn't
put there.
Added first bits of the use of CG for low-level drawing.  The line-drawing works,
the rest doesn't yet.  You have to set the file static useCGDrawing to 1 and
rebuild to activate this code.
@
text
@d8 1
a8 1
# RCS: @@(#) $Id: timer,v 1.2 1998/09/14 18:23:30 stanton Exp $
d10 1
a10 1
label .counter -text 0.00 -relief raised -width 10 -padx 2m -pady 1m
d12 1
a12 1
    if {$stopped} {
a13 1
	set startMoment [clock clicks -milliseconds]
a14 2
	.stop configure -state normal
	.start configure -state disabled
d17 1
a17 5
button .stop -text Stop -state disabled -command {
    set stopped 1
    .stop configure -state disabled
    .start configure -state normal
}
d22 2
a23 2
set startMoment {}

d27 2
a28 2
    global startMoment stopped
    if {$stopped} {return}
d30 6
a35 2
    set elapsedMS [expr {[clock clicks -milliseconds] - $startMoment}]
    .counter config -text [format "%.2f" [expr {double($elapsedMS)/1000}]]
a40 4

# Local Variables:
# mode: tcl
# End:
@


1.2.18.1
log
@Updates to demos
@
text
@d8 1
a8 1
# RCS: @@(#) $Id: timer,v 1.2 1998/09/14 18:23:30 stanton Exp $
d10 1
a10 1
label .counter -text 0.00 -relief raised -width 10 -padx 2m -pady 1m
d12 1
a12 1
    if {$stopped} {
a13 1
	set startMoment [clock clicks -milliseconds]
a14 2
	.stop configure -state normal
	.start configure -state disabled
d17 1
a17 5
button .stop -text Stop -state disabled -command {
    set stopped 1
    .stop configure -state disabled
    .start configure -state normal
}
d22 2
a23 1
set startMoment {}
d27 2
a28 2
    global startMoment stopped
    if {$stopped} {return}
d30 6
a35 2
    set elapsedMS [expr {[clock clicks -milliseconds] - $startMoment}]
    .counter config -text [format "%.2f" [expr {double($elapsedMS)/1000}]]
a40 4

# Local Variables:
# mode: tcl
# End:
@


1.1
log
@Initial revision
@
text
@d8 1
a8 1
# SCCS: @@(#) timer 1.6 96/02/16 10:49:20
@


1.1.4.1
log
@Merged 8.0.3 changes into 8.1
@
text
@d8 1
a8 1
# RCS: @@(#) $Id: timer,v 1.2 1998/09/14 18:23:30 stanton Exp $
@


