diff options
Diffstat (limited to 'tcl/library/demos/square')
-rw-r--r-- | tcl/library/demos/square | 55 |
1 files changed, 0 insertions, 55 deletions
diff --git a/tcl/library/demos/square b/tcl/library/demos/square deleted file mode 100644 index 2ea0722f924..00000000000 --- a/tcl/library/demos/square +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/sh -# the next line restarts using wish \ -exec wish "$0" "$@" - -# square -- -# This script generates a demo application containing only a "square" -# widget. It's only usable in the "tktest" application or if Tk has -# been compiled with tkSquare.c. This demo arranges the following -# bindings for the widget: -# -# Button-1 press/drag: moves square to mouse -# "a": toggle size animation on/off -# -# RCS: @(#) $Id$ - -square .s -pack .s -expand yes -fill both -wm minsize . 1 1 - -bind .s <1> {center %x %y} -bind .s <B1-Motion> {center %x %y} -bind .s a animate -focus .s - -# The procedure below centers the square on a given position. - -proc center {x y} { - set a [.s size] - .s position [expr $x-($a/2)] [expr $y-($a/2)] -} - -# The procedures below provide a simple form of animation where -# the box changes size in a pulsing pattern: larger, smaller, larger, -# and so on. - -set inc 0 -proc animate {} { - global inc - if {$inc == 0} { - set inc 3 - timer - } else { - set inc 0 - } -} - -proc timer {} { - global inc - set s [.s size] - if {$inc == 0} return - if {$s >= 40} {set inc -3} - if {$s <= 10} {set inc 3} - .s size [expr {$s+$inc}] - after 30 timer -} |