- # This file is a Tcl script to test out the procedures in tkCanvWind.c,
- # which implement canvas "window" items. It is organized in the standard
- # fashion for Tcl tests.
- #
- # Copyright (c) 1997 Sun Microsystems, Inc.
- # Copyright (c) 1998-1999 by Scriptics Corporation.
- # All rights reserved.
- #
- # RCS: @(#) $Id: canvWind.test,v 1.4 2002/07/14 05:48:46 dgp Exp $
- package require tcltest 2.1
- namespace import -force tcltest::configure
- namespace import -force tcltest::testsDirectory
- configure -testdir [file join [pwd] [file dirname [info script]]]
- configure -loadfile [file join [testsDirectory] constraints.tcl]
- tcltest::loadTestedCommands
- test canvWind-1.1 {DisplayWinItem, windows off-screen vertically} {
- catch {destroy .t}
- toplevel .t
- canvas .t.c -scrollregion {0 0 1000 800} -width 250 -height 200 -bd 2
- -relief sunken -xscrollincrement 1 -yscrollincrement 1
- -highlightthickness 1
- pack .t.c -fill both -expand 1 -padx 20 -pady 20
- wm geometry .t +0+0
- set f .t.f
- frame $f -width 80 -height 50 -bg red
- .t.c create window 300 400 -window $f -anchor nw
- .t.c xview moveto .3
- .t.c yview moveto .50
- update
- set x [list [list [winfo ismapped $f] [winfo y $f]]]
- .t.c yview scroll 52 units
- update
- lappend x [list [winfo ismapped $f] [winfo y $f]]
- .t.c yview scroll 1 units
- update
- lappend x [list [winfo ismapped $f] [winfo y $f]]
- .t.c yview scroll -255 units
- update
- lappend x [list [winfo ismapped $f] [winfo y $f]]
- .t.c yview scroll -1 units
- update
- lappend x [list [winfo ismapped $f] [winfo y $f]]
- } {{1 23} {1 -29} {0 -29} {1 225} {0 225}}
- test canvWind-1.2 {DisplayWinItem, windows off-screen vertically} {
- catch {destroy .t}
- toplevel .t
- canvas .t.c -scrollregion {0 0 1000 800} -width 250 -height 200 -bd 2
- -relief sunken -xscrollincrement 1 -yscrollincrement 1
- -highlightthickness 1
- pack .t.c -fill both -expand 1 -padx 20 -pady 20
- wm geometry .t +0+0
- set f .t.c.f
- frame $f -width 80 -height 50 -bg red
- .t.c create window 300 400 -window $f -anchor nw
- .t.c xview moveto .3
- .t.c yview moveto .50
- update
- set x [list [list [winfo ismapped $f] [winfo y $f]]]
- .t.c yview scroll 52 units
- update
- lappend x [list [winfo ismapped $f] [winfo y $f]]
- .t.c yview scroll 1 units
- update
- lappend x [list [winfo ismapped $f] [winfo y $f]]
- .t.c yview scroll -255 units
- update
- lappend x [list [winfo ismapped $f] [winfo y $f]]
- .t.c yview scroll -1 units
- update
- lappend x [list [winfo ismapped $f] [winfo y $f]]
- } {{1 3} {1 -49} {0 -49} {1 205} {0 205}}
- test canvWind-1.3 {DisplayWinItem, windows off-screen horizontally} {
- catch {destroy .t}
- toplevel .t
- canvas .t.c -scrollregion {0 0 1000 800} -width 250 -height 200 -bd 2
- -relief sunken -xscrollincrement 1 -yscrollincrement 1
- -highlightthickness 1
- pack .t.c -fill both -expand 1 -padx 20 -pady 20
- wm geometry .t +0+0
- set f .t.f
- frame $f -width 80 -height 50 -bg red
- .t.c create window 300 400 -window $f -anchor nw
- .t.c xview moveto .3
- .t.c yview moveto .50
- update
- set x [list [list [winfo ismapped $f] [winfo x $f]]]
- .t.c xview scroll 82 units
- update
- lappend x [list [winfo ismapped $f] [winfo x $f]]
- .t.c xview scroll 1 units
- update
- lappend x [list [winfo ismapped $f] [winfo x $f]]
- .t.c xview scroll -335 units
- update
- lappend x [list [winfo ismapped $f] [winfo x $f]]
- .t.c xview scroll -1 units
- update
- lappend x [list [winfo ismapped $f] [winfo x $f]]
- } {{1 23} {1 -59} {0 -59} {1 275} {0 275}}
- test canvWind-1.4 {DisplayWinItem, windows off-screen horizontally} {
- catch {destroy .t}
- toplevel .t
- canvas .t.c -scrollregion {0 0 1000 800} -width 250 -height 200 -bd 2
- -relief sunken -xscrollincrement 1 -yscrollincrement 1
- -highlightthickness 1
- pack .t.c -fill both -expand 1 -padx 20 -pady 20
- wm geometry .t +0+0
- set f .t.c.f
- frame $f -width 80 -height 50 -bg red
- .t.c create window 300 400 -window $f -anchor nw
- .t.c xview moveto .3
- .t.c yview moveto .50
- update
- set x [list [list [winfo ismapped $f] [winfo x $f]]]
- .t.c xview scroll 82 units
- update
- lappend x [list [winfo ismapped $f] [winfo x $f]]
- .t.c xview scroll 1 units
- update
- lappend x [list [winfo ismapped $f] [winfo x $f]]
- .t.c xview scroll -335 units
- update
- lappend x [list [winfo ismapped $f] [winfo x $f]]
- .t.c xview scroll -1 units
- update
- lappend x [list [winfo ismapped $f] [winfo x $f]]
- } {{1 3} {1 -79} {0 -79} {1 255} {0 255}}
- catch {destroy .t}
- # cleanup
- ::tcltest::cleanupTests
- return