📄 menudraw.test
字号:
# This file is a Tcl script to test drawing of menus in Tk. It is# organized in the standard fashion for Tcl tests.## Copyright (c) 1996-1997 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: @(#) menuDraw.test 1.11 97/06/24 13:50:34if {[lsearch [image types] test] < 0} { puts "This application hasn't been compiled with the \"test\" image" puts "type, so I can't run this test. Are you sure you're using" puts "tktest instead of wish?" return}if {[info procs test] != "test"} { source defs}proc deleteWindows {} { foreach i [winfo children .] { catch [destroy $i] }}deleteWindowswm geometry . {}raise .if {$tcl_platform(platform) == "windows" && ![info exists INTERACTIVE]} { puts " Some tests were skipped because they could not be performed" puts " automatically on this platform. If you wish to execute them" puts " interactively, set the TCL variable INTERACTIVE and re-run" puts " the test." set testConfig(menuInteractive) 0} else { set testConfig(menuInteractive) 1}test menuDraw-1.1 {TkMenuInitializeDrawingFields} { catch {destroy .m1} list [menu .m1] [destroy .m1]} {.m1 {}}test menuDraw-2.1 {TkIntializeMenuEntryDrawingFields} { catch {destroy .m1} menu .m1 list [.m1 add command] [destroy .m1]} {{} {}}test menuDraw-3.1 {TkMenuFreeDrawOptions} { catch {destroy .m1} menu .m1 list [destroy .m1]} {{}}test menuDraw-4.1 {TkMenuEntryFreeDrawOptions} { catch {destroy .m1} menu .m1 .m1 add command -label "This is a test" list [destroy .m1]} {{}}test menuDraw-4.2 {TkMenuEntryFreeDrawOptions} { catch {destroy .m1} menu .m1 .m1 add checkbutton -label "This is a test." -font "Courier 12" -activeforeground red -background green -selectcolor purple list [destroy .m1]} {{}}test menuDraw-5.1 {TkMenuConfigureDrawOptions - new menu} { catch {destroy .m1} list [menu .m1] [destroy .m1]} {.m1 {}}test menuDraw-5.2 {TkMenuConfigureDrawOptions - old menu} { catch {destroy .m1} menu .m1 list [.m1 configure -fg red] [destroy .m1]} {{} {}}test menuDraw-5.3 {TkMenuConfigureDrawOptions - no disabledFg} { catch {destroy .m1} list [menu .m1 -disabledforeground ""] [destroy .m1]} {.m1 {}} test menuDraw-6.1 {TkMenuConfigureEntryDrawOptions - no tkfont specified} { catch {destroy .m1} menu .m1 list [.m1 add command -label "foo"] [destroy .m1]} {{} {}}test menuDraw-6.2 {TkMenuConfigureEntryDrawOptions - tkfont specified} { catch {destroy .m1} menu .m1 list [.m1 add command -label "foo" -font "Courier 12"] [destroy .m1]} {{} {}}test menuDraw-6.3 {TkMenuConfigureEntryDrawOptions - active state - wrong entry} { catch {destroy .m1} menu .m1 .m1 add command -label "foo" list [.m1 entryconfigure 1 -state active] [destroy .m1]} {{} {}}test menuDraw-6.4 {TkMenuConfigureEntryDrawOptions - active state - correct entry} { catch {destroy .m1} menu .m1 .m1 add command -label "foo" .m1 activate 1 list [.m1 entryconfigure 1 -state active] [destroy .m1]} {{} {}}test menuDraw-6.5 {TkMenuConfigureEntryDrawOptions - deactivate entry} { catch {destroy .m1} menu .m1 .m1 add command -label "foo" .m1 activate 1 list [.m1 entryconfigure 1 -state normal] [destroy .m1]} {{} {}}test menuDraw-6.6 {TkMenuConfigureEntryDrawOptions - bad state} { catch {destroy .m1} menu .m1 .m1 add command -label "foo" list [catch {.m1 entryconfigure 1 -state foo} msg] $msg [destroy .m1]} {1 {bad state value "foo": must be normal, active, or disabled} {}}test menuDraw-6.7 {TkMenuConfigureEntryDrawOptions - tkfont specified} { catch {destroy .m1} menu .m1 list [.m1 add command -label "foo" -font "Courier 12"] [destroy .m1]} {{} {}}test menuDraw-6.8 {TkMenuConfigureEntryDrawOptions - border specified} { catch {destroy .m1} menu .m1 list [.m1 add command -label "foo" -background "red"] [destroy .m1]} {{} {}}test menuDraw-6.9 {TkMenuConfigureEntryDrawOptions - foreground specified} { catch {destroy .m1} menu .m1 list [.m1 add command -label "foo" -foreground "red"] [destroy .m1]} {{} {}}test menuDraw-6.10 {TkMenuConfigureEntryDrawOptions - activeBorder specified} { catch {destroy .m1} menu .m1 list [.m1 add command -label "foo" -activebackground "red"] [destroy .m1]} {{} {}}test menuDraw-6.11 {TkMenuConfigureEntryDrawOptions - activeforeground specified} { catch {destroy .m1} menu .m1 list [.m1 add command -label "foo" -activeforeground "red"] [destroy .m1]} {{} {}}test menuDraw-6.12 {TkMenuConfigureEntryDrawOptions - selectcolor specified} { catch {destroy .m1} menu .m1 list [.m1 add radiobutton -label "foo" -selectcolor "red"] [destroy .m1]} {{} {}}test menuDraw-6.13 {TkMenuConfigureEntryDrawOptions - textGC disposal} { catch {destroy .m1} menu .m1 .m1 add command -label "foo" -font "Helvetica 12" list [.m1 entryconfigure 1 -font "Courier 12"] [destroy .m1]} {{} {}}test menuDraw-6.14 {TkMenuConfigureEntryDrawOptions - activeGC disposal} { catch {destroy .m1} menu .m1 .m1 add command -label "foo" -activeforeground "red" list [.m1 entryconfigure 1 -activeforeground "green"] [destroy .m1]} {{} {}}test menuDraw-6.15 {TkMenuConfigureEntryDrawOptions - disabledGC disposal} { catch {destroy .m1} menu .m1 -disabledforeground "red" .m1 add command -label "foo" list [.m1 configure -disabledforeground "green"] [destroy .m1]} {{} {}}test menuDraw-6.16 {TkMenuConfigureEntryDrawOptions - indicatorGC disposal} { catch {destroy .m1} menu .m1 .m1 add radiobutton -label "foo" -selectcolor "red" list [.m1 entryconfigure 1 -selectcolor "green"] [destroy .m1]} {{} {}}test menuDraw-7.1 {TkEventuallyRecomputeMenu} { catch {destroy .m1} menu .m1 .m1 add command -label "This is a long label" set tearoff [tkTearOffMenu .m1] update idletasks list [.m1 entryconfigure 1 -label "foo"] [destroy .m1]} {{} {}}test menuDraw-7.2 {TkEventuallyRecomputeMenu - update pending} { catch {destroy .m1} menu .m1 .m1 add command -label "This is a long label" set tearoff [tkTearOffMenu .m1] list [.m1 entryconfigure 1 -label "foo"] [destroy .m1]} {{} {}}test menuDraw-8.1 {TkRecomputeMenu} {menuInteractive} { catch {destroy .m1} menu .m1 .m1 configure -postcommand [.m1 add command -label foo] .m1 add command -label "Hit ESCAPE to make this menu go away." list [.m1 post 0 0] [destroy .m1]} {{} {}}test menuDraw-9.1 {TkEventuallyRedrawMenu - entry test} { catch {destroy .m1} catch {unset foo} menu .m1 set foo 0 .m1 add radiobutton -variable foo -label test tkTearOffMenu .m1 update idletasks list [set foo test] [destroy .m1] [unset foo]} {test {} {}}test menuDraw-9.2 {TkEventuallyRedrawMenu - whole menu} { catch {destroy .m1} menu .m1 list [catch {tkTearOffMenu .m1}] [destroy .m1]} {0 {}}# Don't know how to test when window has been deleted and ComputeMenuGeometry# gets called.test menuDraw-10.1 {ComputeMenuGeometry - menubar} { catch {destroy .m1} menu .m1 .m1 add command -label test . configure -menu .m1 list [update idletasks] [. configure -menu ""] [destroy .m1]} {{} {} {}}test menuDraw-10.2 {ComputeMenuGeometry - non-menubar} { catch {destroy .m1} menu .m1 .m1 add command -label test list [update idletasks] [destroy .m1]} {{} {}}test menuDraw-10.3 {ComputeMenuGeometry - Resize necessary} { catch {destroy .m1} menu .m1 .m1 add command -label test list [update idletasks] [destroy .m1]} {{} {}}test menuDraw-10.4 {ComputeMenuGeometry - resize not necessary} { catch {destroy .m1} menu .m1 .m1 add command -label test update idletasks .m1 entryconfigure 1 -label test list [update idletasks] [destroy .m1]} {{} {}}test menuDraw-11.1 {TkMenuSelectImageProc - entry selected; redraw not pending} { catch {destroy .m1} catch {eval image delete [image names]} image create test image1 image create test image2 menu .m1 .m1 add checkbutton -image image1 -selectimage image2 .m1 invoke 1 set tearoff [tkTearOffMenu .m1 40 40] update idletasks list [image delete image2] [destroy .m1] [eval image delete [image names]]} {{} {} {}}test menuDraw-11.2 {TkMenuSelectImageProc - entry selected; redraw pending} { catch {destroy .m1} catch {eval image delete [image names]} image create test image1 image create test image2 menu .m1 .m1 add checkbutton -image image1 -selectimage image2 .m1 invoke 1 set tearoff [tkTearOffMenu .m1 40 40] list [image delete image2] [destroy .m1] [eval image delete [image names]]} {{} {} {}}test menuDraw-11.3 {TkMenuSelectImageProc - entry not selected} { catch {destroy .m1} catch {eval image delete [image names]}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -