|
|
1.1 root 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: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.