]>
Commit | Line | Data |
---|---|---|
1 | # mkIcon w | |
2 | # | |
3 | # Create a top-level window that displays a bunch of iconic | |
4 | # buttons. | |
5 | # | |
6 | # Arguments: | |
7 | # w - Name to use for new top-level window. | |
8 | ||
9 | proc mkIcon {{w .icon}} { | |
10 | global tk_library | |
11 | catch {destroy $w} | |
12 | toplevel $w | |
13 | dpos $w | |
14 | wm title $w "Iconic Button Demonstration" | |
15 | wm iconname $w "Icons" | |
16 | message $w.msg -font -Adobe-times-medium-r-normal--*-180* -aspect 300 \ | |
17 | -text "This window shows three buttons that display bitmaps instead of text. On the left is a regular button, which changes its bitmap when you click on it. On the right are two radio buttons. Click the \"OK\" button when you're done." | |
18 | frame $w.frame -borderwidth 10 | |
19 | pack append $w.frame \ | |
20 | [button $w.frame.b1 -bitmap @$tk_library/demos/bitmaps/flagdown \ | |
21 | -command "iconCmd $w.frame.b1"] {left expand} \ | |
22 | [frame $w.frame.right] {left expand} | |
23 | radiobutton $w.frame.right.b2 -bitmap @$tk_library/demos/bitmaps/letters \ | |
24 | -variable letters | |
25 | radiobutton $w.frame.right.b3 -bitmap @$tk_library/demos/bitmaps/noletters \ | |
26 | -variable letters | |
27 | pack append $w.frame.right $w.frame.right.b2 {top expand} \ | |
28 | $w.frame.right.b3 {top expand} | |
29 | button $w.ok -text OK -command "destroy $w" | |
30 | ||
31 | pack append $w $w.msg {top frame c} $w.frame {top expand fill} \ | |
32 | $w.ok {bottom fill} | |
33 | } | |
34 | ||
35 | proc iconCmd {w} { | |
36 | global tk_library | |
37 | set bitmap [lindex [$w config -bitmap] 4] | |
38 | if {$bitmap == "@$tk_library/demos/bitmaps/flagdown"} { | |
39 | $w config -bitmap @$tk_library/demos/bitmaps/flagup | |
40 | } else { | |
41 | $w config -bitmap @$tk_library/demos/bitmaps/flagdown | |
42 | } | |
43 | } |