diff options
author | William Joye <wjoye@cfa.harvard.edu> | 2017-10-17 19:51:44 (GMT) |
---|---|---|
committer | William Joye <wjoye@cfa.harvard.edu> | 2017-10-17 19:51:44 (GMT) |
commit | 9bfb1e415c87790341c6a3520b081292fcdb058b (patch) | |
tree | 1a2c8954ffef1f09bd97c585c5f289046497712b /tk8.6/tests/geometry.test | |
parent | 9b7a6c3507ea3383c60aaecb29f873c9b590ccca (diff) | |
parent | 991debcf36ad518e7e9a53b3ad3a388713ffdc1a (diff) | |
download | blt-9bfb1e415c87790341c6a3520b081292fcdb058b.zip blt-9bfb1e415c87790341c6a3520b081292fcdb058b.tar.gz blt-9bfb1e415c87790341c6a3520b081292fcdb058b.tar.bz2 |
Merge commit '991debcf36ad518e7e9a53b3ad3a388713ffdc1a' as 'tk8.6'
Diffstat (limited to 'tk8.6/tests/geometry.test')
-rw-r--r-- | tk8.6/tests/geometry.test | 291 |
1 files changed, 291 insertions, 0 deletions
diff --git a/tk8.6/tests/geometry.test b/tk8.6/tests/geometry.test new file mode 100644 index 0000000..13cc515 --- /dev/null +++ b/tk8.6/tests/geometry.test @@ -0,0 +1,291 @@ +# This file is a Tcl script to test the procedures in the file +# tkGeometry.c (generic support for geometry managers). It is +# organized in the standard fashion for Tcl tests. +# +# Copyright (c) 1994 The Regents of the University of California. +# Copyright (c) 1994 Sun Microsystems, Inc. +# Copyright (c) 1998-1999 by Scriptics Corporation. +# All rights reserved. + +proc getsize w { + regexp {(^[^+-]*)} [wm geometry $w] foo x + return $x +} + +package require tcltest 2.2 +eval tcltest::configure $argv +tcltest::loadTestedCommands +namespace import -force tcltest::test + + +wm geometry . 300x300 +raise . +update + +frame .f -bd 2 -relief raised +frame .f.f -bd 2 -relief sunken +frame .f.f.f -bd 2 -relief raised +button .b1 -text .b1 +button .b2 -text .b2 +button .b3 -text .b3 +button .f.f.b4 -text .b4 + +test geometry-1.1 {Tk_ManageGeometry procedure} -setup { + foreach w {.f .f.f .f.f.f .b1 .b2 .b3} { + place forget $w + } +} -body { + place .b1 -x 120 -y 80 + update + list [winfo x .b1] [winfo y .b1] +} -result {120 80} +test geometry-1.2 {Tk_ManageGeometry procedure} -setup { + foreach w {.f .f.f .f.f.f .b1 .b2 .b3} { + place forget $w + } +} -body { + place .f -x 20 -y 30 -width 200 -height 200 + place .b1 -in .f -x 40 -y 30 + update + pack .b1 -side top -anchor w + place .f -x 30 -y 40 + update + list [winfo x .b1] [winfo y .b1] +} -result {0 0} + + +test geometry-2.1 {Tk_GeometryRequest procedure} -setup { + foreach w {.f .f.f .f.f.f .b1 .b2 .b3} { + place forget $w + } + destroy .f2 +} -body { + frame .f2 + set result [list [winfo reqwidth .f2] [winfo reqheight .f2]] + .f2 configure -width 150 -height 300 + update + lappend result [winfo reqwidth .f2] [winfo reqheight .f2] \ + [winfo geom .f2] + place .f2 -x 10 -y 20 + update + lappend result [winfo geom .f2] + .f2 configure -width 100 -height 80 + update + lappend result [winfo geom .f2] +} -cleanup { + destroy .f2 +} -result {1 1 150 300 1x1+0+0 150x300+10+20 100x80+10+20} + + +test geometry-3.1 {Tk_SetInternalBorder procedure} -setup { + foreach w {.f .f.f .f.f.f .b1 .b2 .b3} { + place forget $w + } +} -body { + place .f -x 20 -y 30 -width 200 -height 200 + place .b1 -in .f -x 50 -y 5 + update + set x [list [winfo x .b1] [winfo y .b1]] + .f configure -bd 5 + update + lappend x [winfo x .b1] [winfo y .b1] +} -cleanup { + .f configure -bd 2 +} -result {72 37 75 40} + + +test geometry-4.1 {Tk_MaintainGeometry and Tk_UnmaintainGeometry} -setup { + foreach w {.f .f.f .f.f.f .b1 .b2 .b3} { + place forget $w + } +} -body { + place .f -x 20 -y 30 -width 200 -height 200 + place .f.f -x 15 -y 5 -width 150 -height 120 + place .f.f.f -width 100 -height 80 + place .b1 -in .f.f.f -x 50 -y 5 + update + list [winfo x .b1] [winfo y .b1] +} -result {91 46} +test geometry-4.2 {Tk_MaintainGeometry and Tk_UnmaintainGeometry} -setup { + foreach w {.f .f.f .f.f.f .b1 .b2 .b3} { + place forget $w + } +} -body { + place .f -x 20 -y 30 -width 200 -height 200 + place .f.f -x 15 -y 5 -width 150 -height 120 + place .f.f.f -width 100 -height 80 + place .b1 -in .f.f.f -x 50 -y 5 + place .b2 -in .f.f.f -x 10 -y 25 + place .b3 -in .f.f.f -x 50 -y 25 + update + place .f -x 30 -y 25 + update + list [winfo x .b1] [winfo y .b1] [winfo x .b2] [winfo y .b2] \ + [winfo x .b3] [winfo y .b3] +} -result {101 41 61 61 101 61} +test geometry-4.3 {Tk_MaintainGeometry and Tk_UnmaintainGeometry} -setup { + foreach w {.f .f.f .f.f.f .b1 .b2 .b3} { + place forget $w + } +} -body { + place .f -x 20 -y 30 -width 200 -height 200 + place .f.f -x 15 -y 5 -width 150 -height 120 + place .f.f.f -width 100 -height 80 + place .b1 -in .f.f.f -x 50 -y 5 + place .b2 -in .f.f.f -x 10 -y 25 + place .b3 -in .f.f.f -x 50 -y 25 + update + destroy .b1 + button .b1 -text .b1 + place .f.f -x 10 -y 25 + update + list [winfo x .b1] [winfo y .b1] [winfo x .b2] [winfo y .b2] \ + [winfo x .b3] [winfo y .b3] +} -result {0 0 46 86 86 86} +test geometry-4.4 {Tk_MaintainGeometry and Tk_UnmaintainGeometry} -setup { + foreach w {.f .f.f .f.f.f .b1 .b2 .b3} { + place forget $w + } +} -body { + place .f -x 20 -y 30 -width 200 -height 200 + place .f.f -x 15 -y 5 -width 150 -height 120 + place .f.f.f -width 100 -height 80 + place .b1 -in .f.f.f -x 50 -y 5 + place .b2 -in .f.f.f -x 10 -y 25 + place .b3 -in .f.f.f -x 50 -y 25 + update + destroy .b2 + button .b2 -text .b2 + place .f.f.f -x 2 -y 3 + update + list [winfo x .b1] [winfo y .b1] [winfo x .b2] [winfo y .b2] \ + [winfo x .b3] [winfo y .b3] +} -result {93 49 0 0 93 69} +test geometry-4.5 {Tk_MaintainGeometry and Tk_UnmaintainGeometry} -setup { + foreach w {.f .f.f .f.f.f .b1 .b2 .b3} { + place forget $w + } +} -body { + place .f -x 20 -y 30 -width 200 -height 200 + place .f.f -x 15 -y 5 -width 150 -height 120 + place .f.f.f -width 100 -height 80 + place .b1 -in .f.f.f -x 50 -y 5 + place .b2 -in .f.f.f -x 10 -y 25 + place .b3 -in .f.f.f -x 50 -y 25 + update + destroy .b3 + button .b3 -text .b3 + place .f.f.f -x 2 -y 3 + update + list [winfo x .b1] [winfo y .b1] [winfo x .b2] [winfo y .b2] \ + [winfo x .b3] [winfo y .b3] +} -result {93 49 53 69 0 0} +test geometry-4.6 {Tk_MaintainGeometry and Tk_UnmaintainGeometry} -setup { + foreach w {.f .f.f .f.f.f .b1 .b2 .b3} { + place forget $w + } +} -body { + foreach w {.f .f.f .f.f.f .b1 .b2 .b3 .f.f.b4} { + place forget $w + } + place .f -x 20 -y 30 -width 200 -height 200 + place .f.f -x 15 -y 5 -width 150 -height 120 + place .f.f.f -width 100 -height 80 + place .f.f.b4 -in .f.f.f -x 50 -y 5 + place .b2 -in .f.f.f -x 10 -y 25 + update + place .f -x 25 -y 35 + update + list [winfo x .f.f.b4] [winfo y .f.f.b4] [winfo x .b2] [winfo y .b2] +} -result {54 9 56 71} +test geometry-4.7 {Tk_MaintainGeometry and Tk_UnmaintainGeometry} -setup { + foreach w {.f .f.f .f.f.f .b1 .b2 .b3} { + place forget $w + } +} -body { + bind .b1 <Configure> {lappend x configure} + place .f -x 20 -y 30 -width 200 -height 200 + place .f.f -x 15 -y 5 -width 150 -height 120 + place .f.f.f -width 100 -height 80 + place .f.f.b4 -in .f.f.f -x 50 -y 5 + place .b1 -in .f.f.f -x 10 -y 25 + update + set x init + place .f -x 25 -y 35 + update + lappend x | + place .f -x 30 -y 40 + place .f.f -x 10 -y 0 + update + return $x +} -cleanup { + bind .b1 <Configure> {} +} -result {init configure |} +test geometry-4.8 {Tk_MaintainGeometry and Tk_UnmaintainGeometry} -setup { + foreach w {.f .f.f .f.f.f .b1 .b2 .b3} { + place forget $w + } +} -body { + place .f -x 20 -y 30 -width 200 -height 200 + place .f.f -x 15 -y 5 -width 150 -height 120 + place .f.f.f -width 100 -height 80 + place .b1 -in .f.f.f -x 50 -y 5 + place .b2 -in .f.f.f -x 10 -y 25 + place .b3 -in .f.f.f -x 50 -y 25 + update + destroy .f.f + frame .f.f -bd 2 -relief raised + frame .f.f.f -bd 2 -relief raised + place .f -x 30 -y 25 + update + list [winfo x .b1] [winfo y .b1] [winfo ismapped .b1] \ + [winfo x .b2] [winfo y .b2] [winfo ismapped .b2] \ + [winfo x .b3] [winfo y .b3] [winfo ismapped .b3] +} -result {91 46 0 51 66 0 91 66 0} +test geometry-4.9 {Tk_MaintainGeometry and Tk_UnmaintainGeometry} -setup { + foreach w {.f .f.f .f.f.f .b1 .b2 .b3} { + place forget $w + } +} -body { + place .f -x 20 -y 30 -width 200 -height 200 + place .f.f -x 15 -y 5 -width 150 -height 120 + place .f.f.f -width 100 -height 80 + place .b1 -in .f.f.f -x 50 -y 5 + update + set result [winfo ismapped .b1] + place forget .f.f + update + lappend result [winfo ismapped .b1] + place .f.f -x 15 -y 5 -width 150 -height 120 + update + lappend result [winfo ismapped .b1] +} -result {1 0 1} +test geometry-4.10 {Tk_MaintainGeometry and Tk_UnmaintainGeometry} -setup { + foreach w {.f .f.f .f.f.f .b1 .b2 .b3} { + place forget $w + } + destroy .t +} -body { + toplevel .t + wm geometry .t +0+0 + tkwait visibility .t + update + pack [frame .t.f] + button .t.quit -text Quit -command exit + pack .t.quit -in .t.f + wm iconify .t + set x 0 + after 500 {set x 1} + tkwait variable x + wm deiconify .t + update + winfo ismapped .t.quit +} -cleanup { + destroy .t +} -result {1} + + +# cleanup +cleanupTests +return + |