blob: bc8ad6f791bf1b9e5e840e75d77227dcbc38e6b3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
############ scratcher procedures -- ydegoyon@free.fr #########
proc scratcher_apply {id} {
# strip "." from the TK id to make a variable name suffix
set vid [string trimleft $id .]
# for each variable, make a local variable to hold its name...
set var_graph_width [concat graph_width_$vid]
global $var_graph_width
set var_graph_height [concat graph_height_$vid]
global $var_graph_height
set cmd [concat $id dialog \
[eval concat $$var_graph_width] \
[eval concat $$var_graph_height] \
\;]
#puts stderr $cmd
pd $cmd
}
proc scratcher_cancel {id} {
set cmd [concat $id cancel \;]
#puts stderr $cmd
pd $cmd
}
proc scratcher_ok {id} {
scratcher_apply $id
scratcher_cancel $id
}
proc pdtk_scratcher_dialog {id width height} {
set vid [string trimleft $id .]
set var_graph_width [concat graph_width_$vid]
global $var_graph_width
set var_graph_height [concat graph_height_$vid]
global $var_graph_height
set $var_graph_width $width
set $var_graph_height $height
toplevel $id
wm title $id {scratcher}
wm protocol $id WM_DELETE_WINDOW [concat scratcher_cancel $id]
label $id.label -text {SCRATCHER PROPERTIES}
pack $id.label -side top
frame $id.buttonframe
pack $id.buttonframe -side bottom -fill x -pady 2m
button $id.buttonframe.cancel -text {Cancel}\
-command "scratcher_cancel $id"
button $id.buttonframe.apply -text {Apply}\
-command "scratcher_apply $id"
button $id.buttonframe.ok -text {OK}\
-command "scratcher_ok $id"
pack $id.buttonframe.cancel -side left -expand 1
pack $id.buttonframe.apply -side left -expand 1
pack $id.buttonframe.ok -side left -expand 1
frame $id.1rangef
pack $id.1rangef -side top
label $id.1rangef.lwidth -text "Width :"
entry $id.1rangef.width -textvariable $var_graph_width -width 7
pack $id.1rangef.lwidth $id.1rangef.width -side left
frame $id.2rangef
pack $id.2rangef -side top
label $id.2rangef.lheight -text "Height :"
entry $id.2rangef.height -textvariable $var_graph_height -width 7
pack $id.2rangef.lheight $id.2rangef.height -side left
bind $id.1rangef.name <KeyPress-Return> [concat scratcher_ok $id]
bind $id.2rangef.height <KeyPress-Return> [concat scratcher_ok $id]
focus $id.1rangef.name
}
############ scratcher procedures END -- ydegoyon@free.fr #########
|