📄 textwind.test
字号:
# This file is a Tcl script to test the code in the file tkTextWind.c.# This file is organized in the standard fashion for Tcl tests.## Copyright (c) 1994 The Regents of the University of California.# Copyright (c) 1994-1995 Sun Microsystems, Inc.## See the file "license.terms" for information on usage and redistribution# of this file, and for a DISCLAIMER OF ALL WARRANTIES.## SCCS: @(#) textWind.test 1.25 97/07/01 18:16:38if {[string compare test [info procs test]] == 1} then \ {source defs}foreach i [winfo child .] { catch {destroy $i}}# Create entries in the option database to be sure that geometry options# like border width have predictable values.option add *Text.borderWidth 2option add *Text.highlightThickness 2if {$tcl_platform(platform) == "windows"} { option add *Text.font {Courier -14}} else { option add *Text.font {Courier -12}}text .t -width 30 -height 6 -bd 2 -highlightthickness 2pack append . .t {top expand fill}update.t debug onwm geometry . {}if {[winfo depth .t] > 1} { set color green} else { set color black} # The statements below reset the main window; it's needed if the window# manager is mwm to make mwm forget about a previous minimum size setting.wm withdraw .wm minsize . 1 1wm positionfrom . userwm deiconify .test textWind-1.1 {basic tests of options} {fonts} { .t delete 1.0 end .t insert end "This is the first line" .t insert end "\nAnd this is a second line, which wraps around" frame .f -width 3 -height 3 -bg $color .t window create 2.2 -window .f update list [winfo ismapped .f] [winfo geom .f] [.t bbox .f] \ [.t window configure .f -window]} {1 3x3+19+23 {19 23 3 3} {-window {} {} {} .f}}test textWind-1.2 {basic tests of options} {fonts} { .t delete 1.0 end .t insert end "This is the first line" .t insert end "\nAnd this is a second line, which wraps around" frame .f -width 3 -height 3 -bg $color .t window create 2.2 -window .f -align top update list [winfo ismapped .f] [winfo geom .f] [.t bbox .f] \ [.t window configure .f -align]} {1 3x3+19+18 {19 18 3 3} {-align {} {} center top}}test textWind-1.3 {basic tests of options} { .t delete 1.0 end .t insert end "This is the first line" .t insert end "\nAnd this is a second line, which wraps around" .t window create 2.2 -create "Test script" .t window configure 2.2 -create} {-create {} {} {} {Test script}}test textWind-1.4 {basic tests of options} {fonts} { .t delete 1.0 end .t insert end "This is the first line" .t insert end "\nAnd this is a second line, which wraps around" frame .f -width 10 -height 20 -bg $color .t window create 2.2 -window .f -padx 5 update list [winfo geom .f] [.t window configure .f -padx] [.t bbox 2.3]} {10x20+24+18 {-padx {} {} 0 5} {39 21 7 13}}test textWind-1.5 {basic tests of options} {fonts} { .t delete 1.0 end .t insert end "This is the first line" .t insert end "\nAnd this is a second line, which wraps around" frame .f -width 10 -height 20 -bg $color .t window create 2.2 -window .f -pady 4 update list [winfo geom .f] [.t window configure .f -pady] [.t bbox 2.31]} {10x20+19+22 {-pady {} {} 0 4} {19 46 7 13}}test textWind-1.6 {basic tests of options} {fonts} { .t delete 1.0 end .t insert end "This is the first line" .t insert end "\nAnd this is a second line, which wraps around" frame .f -width 5 -height 5 -bg $color .t window create 2.2 -window .f -stretch 1 update list [winfo geom .f] [.t window configure .f -stretch]} {5x13+19+18 {-stretch {} {} 0 1}}.t delete 1.0 end.t insert end "This is the first line"frame .f -width 10 -height 6 -bg $color.t window create 1.3 -window .f -padx 1 -pady 2test textWind-2.1 {TkTextWindowCmd procedure} { list [catch {.t window} msg] $msg} {1 {wrong # args: should be ".t window option ?arg arg ...?"}}test textWind-2.2 {TkTextWindowCmd procedure, "cget" option} { list [catch {.t window cget} msg] $msg} {1 {wrong # args: should be ".t window cget index option"}}test textWind-2.3 {TkTextWindowCmd procedure, "cget" option} { list [catch {.t window cget a b c} msg] $msg} {1 {wrong # args: should be ".t window cget index option"}}test textWind-2.4 {TkTextWindowCmd procedure, "cget" option} { list [catch {.t window cget gorp -padx} msg] $msg} {1 {bad text index "gorp"}}test textWind-2.5 {TkTextWindowCmd procedure, "cget" option} { list [catch {.t window cget 1.2 -padx} msg] $msg} {1 {no embedded window at index "1.2"}}test textWind-2.6 {TkTextWindowCmd procedure, "cget" option} { list [catch {.t window cget .f -bogus} msg] $msg} {1 {unknown option "-bogus"}}test textWind-2.7 {TkTextWindowCmd procedure, "cget" option} { list [catch {.t window cget .f -pady} msg] $msg} {0 2}test textWind-2.8 {TkTextWindowCmd procedure} { list [catch {.t window co} msg] $msg} {1 {wrong # args: should be ".t window configure index ?option value ...?"}}test textWind-2.9 {TkTextWindowCmd procedure} { list [catch {.t window configure gorp} msg] $msg} {1 {bad text index "gorp"}}test textWind-2.10 {TkTextWindowCmd procedure} { .t delete 1.0 end list [catch {.t window configure 1.0} msg] $msg} {1 {no embedded window at index "1.0"}}test textWind-2.11 {TkTextWindowCmd procedure} { .t delete 1.0 end .t insert end "This is the first line" .t insert end "\nAnd this is a second line, which wraps around" frame .f -width 10 -height 6 -bg $color .t window create 2.2 -window .f -align baseline -padx 1 -pady 2 -create foo update list [catch {.t window configure .f} msg] $msg} {0 {{-align {} {} center baseline} {-create {} {} {} foo} {-padx {} {} 0 1} {-pady {} {} 0 2} {-stretch {} {} 0 0} {-window {} {} {} .f}}}test textWind-2.12 {TkTextWindowCmd procedure} { .t delete 1.0 end .t insert end "This is the first line" .t insert end "\nAnd this is a second line, which wraps around" frame .f -width 10 -height 6 -bg $color .t window create 2.2 -window .f -align baseline -padx 1 -pady 2 -create foo update list [.t window configure .f -padx 33] [.t window configure .f -padx]} {{} {-padx {} {} 0 33}}test textWind-2.13 {TkTextWindowCmd procedure} { .t delete 1.0 end .t insert end "This is the first line" .t insert end "\nAnd this is a second line, which wraps around" frame .f -width 10 -height 6 -bg $color .t window create 2.2 -window .f -align baseline -padx 1 -pady 2 update list [.t window configure .f -padx 14 -pady 15] \ [.t window configure .f -padx] [.t window configure .f -pady]} {{} {-padx {} {} 0 14} {-pady {} {} 0 15}}test textWind-2.14 {TkTextWindowCmd procedure} { list [catch {.t window create} msg] $msg} {1 {wrong # args: should be ".t window create index ?option value ...?"}}test textWind-2.15 {TkTextWindowCmd procedure} { list [catch {.t window create gorp} msg] $msg} {1 {bad text index "gorp"}}test textWind-2.16 {TkTextWindowCmd procedure, don't insert after end} { .t delete 1.0 end .t insert end "Line 1\nLine 2" frame .f -width 20 -height 10 -bg $color .t window create end -window .f .t index .f} {2.6}test textWind-2.17 {TkTextWindowCmd procedure} { .t delete 1.0 end list [catch {.t window create 1.0} msg] $msg [.t window configure 1.0]} {0 {} {{-align {} {} center center} {-create {} {} {} {}} {-padx {} {} 0 0} {-pady {} {} 0 0} {-stretch {} {} 0 0} {-window {} {} {} {}}}}test textWind-2.18 {TkTextWindowCmd procedure} { .t delete 1.0 end frame .f -width 10 -height 6 -bg $color list [catch {.t window create 1.0 -window .f -gorp stupid} msg] $msg \ [winfo exists .f] [.t index 1.end] [catch {.t index .f}]} {1 {unknown option "-gorp"} 0 1.0 1}test textWind-2.19 {TkTextWindowCmd procedure} { .t delete 1.0 end frame .f -width 10 -height 6 -bg $color list [catch {.t window create 1.0 -gorp -window .f stupid} msg] $msg \ [winfo exists .f] [.t index 1.end] [catch {.t index .f}]} {1 {unknown option "-gorp"} 1 1.0 1}test textWind-2.20 {TkTextWindowCmd procedure} { list [catch {.t window c} msg] $msg} {1 {bad window option "c": must be cget, configure, create, or names}}destroy .ftest textWind-2.21 {TkTextWindowCmd procedure, "names" option} { list [catch {.t window names foo} msg] $msg} {1 {wrong # args: should be ".t window names"}}test textWind-2.22 {TkTextWindowCmd procedure, "names" option} { .t delete 1.0 end .t window names} {}test textWind-2.23 {TkTextWindowCmd procedure, "names" option} { .t delete 1.0 end foreach i {.f .f2 .t.f .t.f2} { frame $i -width 20 -height 20 .t window create end -window $i } set result [.t window names] destroy .f .f2 .t.f .t.f2 lsort $result} {.f .f2 .t.f .t.f2}test textWind-3.1 {EmbWinConfigure procedure} { .t delete 1.0 end frame .f -width 10 -height 6 -bg $color .t window create 1.0 -window .f list [catch {.t window configure 1.0 -foo bar} msg] $msg} {1 {unknown option "-foo"}}test textWind-3.2 {EmbWinConfigure procedure} {fonts} { .t delete 1.0 end .t insert 1.0 "Some sample text" frame .f -width 10 -height 20 -bg $color .t window create 1.3 -window .f update .t window configure 1.3 -window {} update list [catch {.t index .f} msg] $msg [winfo ismapped .f] [.t bbox 1.4]} {1 {bad text index ".f"} 0 {26 5 7 13}}catch {destroy .f}test textWind-3.3 {EmbWinConfigure procedure} {fonts} { .t delete 1.0 end .t insert 1.0 "Some sample text" frame .t.f -width 10 -height 20 -bg $color .t window create 1.3 -window .t.f update .t window configure 1.3 -window {} update list [catch {.t index .t.f} msg] $msg [winfo ismapped .t.f] [.t bbox 1.4]} {1 {bad text index ".t.f"} 0 {26 5 7 13}}catch {destroy .t.f}test textWind-3.4 {EmbWinConfigure procedure} {fonts} { .t delete 1.0 end .t insert 1.0 "Some sample text" frame .f -width 10 -height 20 -bg $color .t window create 1.3 update .t window configure 1.3 -window .f update list [catch {.t index .f} msg] $msg [winfo ismapped .f] [.t bbox 1.4]} {0 1.3 1 {36 8 7 13}}test textWind-3.5 {EmbWinConfigure procedure} { .t delete 1.0 end .t insert 1.0 "Some sample text" frame .f frame .f.f -width 15 -height 20 -bg $color pack .f.f list [catch {.t window create 1.3 -window .f.f} msg] $msg} {1 {can't embed .f.f in .t}}catch {destroy .f}test textWind-3.6 {EmbWinConfigure procedure} { .t delete 1.0 end .t insert 1.0 "Some sample text" toplevel .t2 -width 20 -height 10 -bg $color .t window create 1.3 list [catch {.t window configure 1.3 -window .t2} msg] $msg \ [.t window configure 1.3 -window]} {1 {can't embed .t2 in .t} {-window {} {} {} {}}}catch {destroy .t2}test textWind-3.7 {EmbWinConfigure procedure} { .t delete 1.0 end .t insert 1.0 "Some sample text" .t window create 1.3 list [catch {.t window configure 1.3 -window .t} msg] $msg} {1 {can't embed .t in .t}}test textWind-3.8 {EmbWinConfigure procedure} { # This test checks for various errors when the text claims # a window away from itself. .t delete 1.0 end .t insert 1.0 "Some sample text" button .t.b -text "Hello!" .t window create 1.4 -window .t.b .t window create 1.6 -window .t.b update .t index .t.b} {1.6}.t delete 1.0 endframe .f -width 10 -height 20 -bg $color.t window create 1.0 -window .ftest textWind-4.1 {AlignParseProc and AlignPrintProc procedures} { .t window configure 1.0 -align baseline .t window configure 1.0 -align} {-align {} {} center baseline}test textWind-4.2 {AlignParseProc and AlignPrintProc procedures} { .t window configure 1.0 -align bottom .t window configure 1.0 -align} {-align {} {} center bottom}test textWind-4.3 {AlignParseProc and AlignPrintProc procedures} { .t window configure 1.0 -align center .t window configure 1.0 -align} {-align {} {} center center}test textWind-4.4 {AlignParseProc and AlignPrintProc procedures} { .t window configure 1.0 -align top .t window configure 1.0 -align} {-align {} {} center top}test textWind-4.5 {AlignParseProc and AlignPrintProc procedures} { .t window configure 1.0 -align top list [catch {.t window configure 1.0 -align gorp} msg] $msg \ [.t window configure 1.0 -align]} {1 {bad alignment "gorp": must be baseline, bottom, center, or top} {-align {} {} center top}}test textWind-5.1 {EmbWinStructureProc procedure} {fonts} { .t delete 1.0 end .t insert 1.0 "Some sample text" frame .f -width 10 -height 20 -bg $color .t window create 1.2 -window .f update destroy .f list [catch {.t index .f} msg] $msg [.t bbox 1.2] [.t bbox 1.3]} {1 {bad text index ".f"} {19 11 0 0} {19 5 7 13}}test textWind-5.2 {EmbWinStructureProc procedure} {fonts} { .t delete 1.0 end .t insert 1.0 "Some sample text" frame .f -width 10 -height 20 -bg $color .t window create 1.2 -align bottom .t window configure 1.2 -window .f update destroy .f list [catch {.t index .f} msg] $msg [.t bbox 1.2] [.t bbox 1.3]} {1 {bad text index ".f"} {19 18 0 0} {19 5 7 13}}test textWind-5.3 {EmbWinStructureProc procedure} {fonts} { .t delete 1.0 end .t insert 1.0 "Some sample text" .t window create 1.2 -create {frame .f -width 10 -height 20 -bg $color} update .t window configure 1.2 -create {frame .f -width 20 -height 10 -bg $color} destroy .f update list [catch {.t index .f} msg] $msg [.t bbox 1.2] [.t bbox 1.3]} {0 1.2 {19 6 20 10} {39 5 7 13}}test textWind-6.1 {EmbWinRequestProc procedure} {fonts} { .t delete 1.0 end .t insert 1.0 "Some sample text" frame .f -width 10 -height 20 -bg $color .t window create 1.2 -window .f set result {} lappend result [.t bbox 1.2] [.t bbox 1.3] .f configure -width 25 -height 30 lappend result [.t bbox 1.2] [.t bbox 1.3]} {{19 5 10 20} {29 8 7 13} {19 5 25 30} {44 13 7 13}}test textWind-7.1 {EmbWinLostSlaveProc procedure} {fonts} { .t delete 1.0 end .t insert 1.0 "Some sample text" frame .f -width 10 -height 20 -bg $color .t window create 1.2 -window .f update place .f -in .t -x 100 -y 50 update list [winfo geom .f] [.t bbox 1.2]} {10x20+104+54 {19 11 0 0}}test textWind-7.2 {EmbWinLostSlaveProc procedure} {fonts} { .t delete 1.0 end .t insert 1.0 "Some sample text" frame .t.f -width 10 -height 20 -bg $color .t window create 1.2 -window .t.f update place .t.f -x 100 -y 50 update list [winfo geom .t.f] [.t bbox 1.2]} {10x20+104+54 {19 11 0 0}}catch {destroy .f}catch {destroy .t.f}test textWind-8.1 {EmbWinDeleteProc procedure} {fonts} { .t delete 1.0 end .t insert 1.0 "Some sample text" frame .f -width 10 -height 20 -bg $color .t window create 1.2 -window .f bind .f <Destroy> {set x destroyed} set x XXX .t delete 1.2 list $x [.t bbox 1.2] [.t bbox 1.3] [catch {.t index .f} msg] $msg \ [winfo exists .f]} {destroyed {19 5 7 13} {26 5 7 13} 1 {bad text index ".f"} 0}test textWind-9.1 {EmbWinCleanupProc procedure} { .t delete 1.0 end .t insert 1.0 "Some sample text\nA second line." frame .f -width 10 -height 20 -bg $color .t window create 2.3 -window .f .t delete 1.5 2.1 .t index .f} 1.7proc bgerror args { global msg set msg $args}test textWind-10.1 {EmbWinLayoutProc procedure} { .t delete 1.0 end .t insert 1.0 "Some sample text" .t window create 1.5 -create { frame .f -width 10 -height 20 -bg $color } update
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -