annotate xf-disp @ 10:f2aa38ce0787

add state display.
author kono
date Fri, 19 Jan 2001 23:14:00 +0900
parents 1c57a78f1d98
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1 #!/usr/local/bin/wish -f
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2 # Program: xf-disp
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
3 # Tcl version: 7.3 (Tcl/Tk/XF)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
4 # Tk version: 3.6
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
5 # XF version: 2.2
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
6 #
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
7
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
8 # module inclusion
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
9 global env
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
10 global xfLoadPath
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
11 global xfLoadInfo
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
12 set xfLoadInfo 0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
13 if {[info exists env(XF_LOAD_PATH)]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
14 if {[string first $env(XF_LOAD_PATH) /usr/local/lib/] == -1} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
15 set xfLoadPath $env(XF_LOAD_PATH):/usr/local/lib/
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
16 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
17 set xfLoadPath /usr/local/lib/
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
18 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
19 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
20 set xfLoadPath /usr/local/lib/
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
21 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
22
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
23 global argc
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
24 global argv
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
25 global tkVersion
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
26 set tmpArgv ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
27 for {set counter 0} {$counter < $argc} {incr counter 1} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
28 case [string tolower [lindex $argv $counter]] in {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
29 {-xfloadpath} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
30 incr counter 1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
31 set xfLoadPath "[lindex $argv $counter]:$xfLoadPath"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
32 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
33 {-xfstartup} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
34 incr counter 1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
35 source [lindex $argv $counter]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
36 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
37 {-xfbindfile} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
38 incr counter 1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
39 set env(XF_BIND_FILE) "[lindex $argv $counter]"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
40 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
41 {-xfcolorfile} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
42 incr counter 1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
43 set env(XF_COLOR_FILE) "[lindex $argv $counter]"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
44 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
45 {-xfcursorfile} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
46 incr counter 1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
47 set env(XF_CURSOR_FILE) "[lindex $argv $counter]"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
48 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
49 {-xffontfile} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
50 incr counter 1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
51 set env(XF_FONT_FILE) "[lindex $argv $counter]"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
52 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
53 {-xfmodelmono} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
54 if {$tkVersion >= 3.0} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
55 tk colormodel . monochrome
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
56 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
57 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
58 {-xfmodelcolor} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
59 if {$tkVersion >= 3.0} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
60 tk colormodel . color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
61 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
62 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
63 {-xfloading} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
64 set xfLoadInfo 1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
65 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
66 {-xfnoloading} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
67 set xfLoadInfo 0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
68 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
69 {default} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
70 lappend tmpArgv [lindex $argv $counter]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
71 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
72 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
73 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
74 set argv $tmpArgv
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
75 set argc [llength $tmpArgv]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
76 unset counter
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
77 unset tmpArgv
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
78
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
79
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
80 # procedure to show window .top0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
81 proc ShowWindow.top0 {args} {# xf ignore me 7
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
82
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
83 # build widget .top0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
84 if {"[info procs XFEdit]" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
85 catch "XFDestroy .top0"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
86 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
87 catch "destroy .top0"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
88 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
89 toplevel .top0 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
90 -background {Cornsilk2}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
91
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
92 # Window manager configurations
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
93 global tkVersion
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
94 wm positionfrom .top0 ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
95 wm sizefrom .top0 ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
96 wm maxsize .top0 1000 1000
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
97 wm minsize .top0 10 10
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
98 wm title .top0 {Execution}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
99
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
100
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
101 # build widget .top0.frame0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
102 frame .top0.frame0 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
103 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
104 -relief {raised}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
105
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
106 # build widget .top0.frame0.scrollbar3
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
107 scrollbar .top0.frame0.scrollbar3 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
108 -activeforeground {CornSilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
109 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
110 -command {.top0.frame0.canvas2 xview} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
111 -foreground {#ffe4c4} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
112 -orient {horizontal} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
113 -relief {raised}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
114
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
115 # build widget .top0.frame0.scrollbar1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
116 scrollbar .top0.frame0.scrollbar1 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
117 -activeforeground {CornSilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
118 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
119 -command {.top0.frame0.canvas2 yview} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
120 -foreground {#ffe4c4} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
121 -relief {raised}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
122
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
123 # build widget .top0.frame0.canvas2
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
124 canvas .top0.frame0.canvas2 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
125 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
126 -confine {0} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
127 -height {384} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
128 -insertofftime {600} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
129 -relief {raised} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
130 -scrollregion {-1c -1c 20c 20c} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
131 -selectbackground {#b2dfee} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
132 -selectborderwidth {1} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
133 -selectforeground {CornSilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
134 -width {394} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
135 -xscrollcommand {.top0.frame0.scrollbar3 set} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
136 -yscrollcommand {.top0.frame0.scrollbar1 set}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
137 # bindings
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
138 bind .top0.frame0.canvas2 <Button-1> {crosshair .top0.frame0.canvas2 %x %y}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
139
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
140 # pack widget .top0.frame0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
141 pack append .top0.frame0 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
142 .top0.frame0.scrollbar1 {right frame center filly} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
143 .top0.frame0.canvas2 {top frame center expand fill} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
144 .top0.frame0.scrollbar3 {top frame center fillx}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
145
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
146 # build widget .top0.frame1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
147 frame .top0.frame1 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
148 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
149 -borderwidth {2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
150 -relief {raised}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
151
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
152 # build widget .top0.frame1.label6
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
153 label .top0.frame1.label6 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
154 -anchor {w} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
155 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
156 -font {8x16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
157 -kanjifont {kanji16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
158 -relief {raised} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
159 -text {States:}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
160
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
161 # build widget .top0.frame1.button13
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
162 button .top0.frame1.button13 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
163 -activebackground {#eed5b7} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
164 -activeforeground {CornSilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
165 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
166 -command {# regexp {([0-9]+)x([0-9]+)} [wm geometry .] dm width height
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
167 # set height [expr $height-300]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
168 # lite map $height
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
169 lite map 300
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
170 } \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
171 -disabledforeground {#b0b0b0} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
172 -font {8x16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
173 -kanjifont {kanji16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
174 -text {Map}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
175
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
176 # build widget .top0.frame1.button0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
177 button .top0.frame1.button0 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
178 -activeforeground {CornSilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
179 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
180 -command {lite generate a} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
181 -font {8x16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
182 -kanjifont {*-fixed-*-normal--16-*-jisx0208.1983-*} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
183 -text {Generate}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
184
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
185 # pack widget .top0.frame1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
186 pack append .top0.frame1 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
187 .top0.frame1.label6 {left frame center expand fillx} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
188 .top0.frame1.button13 {left frame center} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
189 .top0.frame1.button0 {left frame center fillx}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
190
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
191 # build widget .top0.frame6
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
192 frame .top0.frame6 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
193 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
194 -borderwidth {2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
195 -relief {raised}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
196
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
197 # build widget .top0.frame6.button8
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
198 button .top0.frame6.button8 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
199 -activebackground {#eed5b7} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
200 -activeforeground {CornSilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
201 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
202 -command {lite counter a} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
203 -disabledforeground {#b0b0b0} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
204 -font {8x16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
205 -kanjifont {kanji16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
206 -text {Counter Example}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
207
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
208 # build widget .top0.frame6.button10
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
209 button .top0.frame6.button10 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
210 -activebackground {#eed5b7} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
211 -activeforeground {CornSilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
212 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
213 -command {lite execute a} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
214 -disabledforeground {#b0b0b0} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
215 -font {8x16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
216 -kanjifont {kanji16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
217 -text {Execute}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
218
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
219 # build widget .top0.frame6.button9
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
220 button .top0.frame6.button9 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
221 -activebackground {#eed5b7} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
222 -activeforeground {CornSilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
223 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
224 -command {canvaswh .top0.frame0.canvas2 1.6} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
225 -disabledforeground {#b0b0b0} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
226 -font {8x16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
227 -kanjifont {kanji16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
228 -text {Enlarge}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
229
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
230 # build widget .top0.frame6.button11
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
231 button .top0.frame6.button11 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
232 -activebackground {#eed5b7} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
233 -activeforeground {CornSilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
234 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
235 -command {canvaswh .top0.frame0.canvas2 0.625} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
236 -disabledforeground {#b0b0b0} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
237 -font {8x16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
238 -kanjifont {kanji16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
239 -text { Shrink}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
240
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
241 # pack widget .top0.frame6
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
242 pack append .top0.frame6 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
243 .top0.frame6.button8 {right frame center fillx} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
244 .top0.frame6.button10 {right frame center expand fillx} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
245 .top0.frame6.button9 {left frame center} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
246 .top0.frame6.button11 {left frame center}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
247
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
248 # pack widget .top0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
249 pack append .top0 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
250 .top0.frame0 {bottom frame center expand fill} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
251 .top0.frame1 {bottom frame center fill} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
252 .top0.frame6 {top frame center fillx}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
253
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
254 # build canvas items .top0.frame0.canvas2
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
255 set xfTmpTag [.top0.frame0.canvas2 create window -2480.03 -2615.93]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
256 .top0.frame0.canvas2 itemconfigure $xfTmpTag \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
257 -anchor {nw}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
258 set xfTmpTag [.top0.frame0.canvas2 create line 326 189 326 199]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
259 .top0.frame0.canvas2 itemconfigure $xfTmpTag \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
260 -tags {cursol}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
261 set xfTmpTag [.top0.frame0.canvas2 create line 321 194 331 194]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
262 .top0.frame0.canvas2 itemconfigure $xfTmpTag \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
263 -tags {cursol}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
264
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
265
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
266
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
267 if {"[info procs XFEdit]" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
268 catch "XFMiscBindWidgetTree .top0"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
269 after 2 "catch {XFEditSetShowWindows}"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
270 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
271 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
272
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
273 proc DestroyWindow.top0 {} {# xf ignore me 7
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
274 if {"[info procs XFEdit]" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
275 if {"[info commands .top0]" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
276 global xfShowWindow.top0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
277 set xfShowWindow.top0 0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
278 XFEditSetPath .
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
279 after 2 "XFSaveAsProc .top0; XFEditSetShowWindows"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
280 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
281 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
282 catch "destroy .top0"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
283 update
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
284 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
285 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
286
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
287
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
288 # procedure to show window .
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
289 proc ShowWindow. {args} {# xf ignore me 7
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
290
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
291 # Window manager configurations
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
292 global tkVersion
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
293 wm positionfrom . user
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
294 wm sizefrom . user
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
295 wm maxsize . 1280 1024
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
296 wm title . {Lite}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
297
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
298
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
299 # build widget .frame
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
300 frame .frame \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
301 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
302 -relief {raised}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
303
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
304 # build widget .frame.frame0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
305 frame .frame.frame0 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
306 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
307 -borderwidth {2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
308 -relief {raised}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
309
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
310 # build widget .frame.frame0.label4
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
311 label .frame.frame0.label4 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
312 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
313 -font {8x16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
314 -kanjifont {kanji16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
315 -padx {2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
316 -relief {raised} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
317 -text {ITL Formula:}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
318
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
319 # build widget .frame.frame0.button3
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
320 button .frame.frame0.button3 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
321 -activebackground {#eed5b7} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
322 -activeforeground {CornSilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
323 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
324 -command {text_clear .frame.frame4.text0} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
325 -disabledforeground {#b0b0b0} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
326 -font {8x16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
327 -kanjifont {*-fixed-*-normal--16-*-jisx0208.1983-*} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
328 -text {clear}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
329
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
330 # build widget .frame.frame0.menubutton0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
331 menubutton .frame.frame0.menubutton0 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
332 -activeforeground {CornSilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
333 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
334 -font {8x16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
335 -kanjifont {*-fixed-*-normal--16-*-jisx0208.1983-*} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
336 -menu {.frame.frame0.menubutton0.m} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
337 -text {file}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
338 # bindings
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
339 bind .frame.frame0.menubutton0 <Button-1> {MenuPopupPost .frame.frame0.menubutton0.m %X %Y}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
340 bind .frame.frame0.menubutton0 <ButtonRelease-1> {MenuPopupRelease .frame.frame0.menubutton0.m %W}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
341
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
342 # build widget .frame.frame0.menubutton0.m
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
343 menu .frame.frame0.menubutton0.m \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
344 -activeforeground {CornSilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
345 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
346 -font {8x16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
347 -kanjifont {*-fixed-*-normal--16-*-jisx0208.1983-*}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
348 .frame.frame0.menubutton0.m add command \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
349 -command {filehandling .frame.frame4.text0 load [FSBox "load"]} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
350 -label {load}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
351 .frame.frame0.menubutton0.m add command \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
352 -command {filehandling .frame.frame4.text0 save [FSBox "save"]} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
353 -label {save}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
354 .frame.frame0.menubutton0.m add command \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
355 -command {TokioCommand} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
356 -label {Tokio}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
357 .frame.frame0.menubutton0.m add command \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
358 -command {PrologCommand} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
359 -label {Prolog}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
360 # bindings
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
361 bind .frame.frame0.menubutton0.m <Any-ButtonRelease-1> {MenuPopupRelease .frame.frame0.menubutton0.m %W}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
362 bind .frame.frame0.menubutton0.m <Shift-Button-1> {MenuPopupPost .frame.frame0.menubutton0.m %X %Y}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
363
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
364 # pack widget .frame.frame0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
365 pack append .frame.frame0 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
366 .frame.frame0.label4 {left frame center expand fillx} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
367 .frame.frame0.button3 {right frame center} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
368 .frame.frame0.menubutton0 {left frame center fillx}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
369
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
370 # build widget .frame.frame4
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
371 frame .frame.frame4 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
372 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
373 -borderwidth {2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
374 -relief {raised}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
375
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
376 # build widget .frame.frame4.scrollbar1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
377 scrollbar .frame.frame4.scrollbar1 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
378 -activeforeground {CornSilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
379 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
380 -command {.frame.frame4.text0 yview} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
381 -foreground {#ffe4c4}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
382
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
383 # build widget .frame.frame4.text0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
384 text .frame.frame4.text0 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
385 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
386 -font {8x16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
387 -kanjifont {kanji16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
388 -height {10} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
389 -selectbackground {#b2dfee} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
390 -selectborderwidth {1} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
391 -selectforeground {CornSilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
392 -width {61} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
393 -yscrollcommand {.frame.frame4.scrollbar1 set}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
394 # bindings
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
395 bind .frame.frame4.text0 <Button-2> {%W mark set insert @%x,%y
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
396 %W insert insert [selection get]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
397 %W yview -pickplace insert}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
398 bind .frame.frame4.text0 <Button-3> {%W mark set anchor insert
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
399 %W tag add sel insert @%x,%y}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
400 bind .frame.frame4.text0 <Control-Key-a> {%W mark set insert {insert linestart}}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
401 bind .frame.frame4.text0 <Control-Key-b> {%W mark set insert {insert -1char}}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
402 bind .frame.frame4.text0 <Control-Key-d> {%W delete insert}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
403 bind .frame.frame4.text0 <Control-Key-e> {%W mark set insert {insert lineend}}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
404 bind .frame.frame4.text0 <Control-Key-f> {%W mark set insert {insert +1char}}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
405 bind .frame.frame4.text0 <Control-Key-k> {if ![string compare [%W get insert] "\n"] {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
406 %W delete insert} else {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
407 %W delete insert {insert lineend}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
408 }}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
409 bind .frame.frame4.text0 <Control-Key-n> {%W mark set insert {insert +1line}}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
410 bind .frame.frame4.text0 <Control-Key-p> {%W mark set insert {insert -1line}}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
411 bind .frame.frame4.text0 <Control-Key-w> {if [llength [%W tag ranges sel]] {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
412 %W delete sel.first sel.last
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
413 }}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
414
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
415 # pack widget .frame.frame4
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
416 pack append .frame.frame4 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
417 .frame.frame4.text0 {left frame center expand fill} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
418 .frame.frame4.scrollbar1 {right frame center filly}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
419
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
420 # pack widget .frame
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
421 pack append .frame \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
422 .frame.frame0 {top frame center fillx} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
423 .frame.frame4 {left frame center expand fill}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
424
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
425 # build widget .frame3
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
426 frame .frame3 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
427 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
428 -borderwidth {2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
429 -relief {raised}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
430
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
431 # build widget .frame3.button4
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
432 button .frame3.button4 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
433 -activebackground {#eed5b7} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
434 -activeforeground {CornSilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
435 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
436 -command {lite quit 0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
437 destroy .} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
438 -disabledforeground {#b0b0b0} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
439 -font {8x16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
440 -kanjifont {kanji16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
441 -text {Quit}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
442
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
443 # build widget .frame3.checkbutton5
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
444 checkbutton .frame3.checkbutton5 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
445 -activebackground {#eed5b7} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
446 -activeforeground {CornSilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
447 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
448 -command {lite verbose "$verbose"} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
449 -disabledforeground {#b0b0b0} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
450 -font {8x16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
451 -kanjifont {kanji16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
452 -selector {#b03060} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
453 -text {verbose} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
454 -variable {verbose}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
455
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
456 # build widget .frame3.button7
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
457 button .frame3.button7 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
458 -activebackground {#eed5b7} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
459 -activeforeground {CornSilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
460 -background {Cornsilk2} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
461 -command {lite verify "{[$symbolicName(entry) get 0.0 end]}"} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
462 -disabledforeground {#b0b0b0} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
463 -font {8x16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
464 -kanjifont {kanji16} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
465 -text {Verify}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
466
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
467 # pack widget .frame3
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
468 pack append .frame3 \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
469 .frame3.button4 {left frame center} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
470 .frame3.checkbutton5 {right frame center} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
471 .frame3.button7 {top frame n fillx}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
472
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
473 # pack widget .
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
474 pack append . \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
475 .frame {top frame center expand fill} \
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
476 .frame3 {top frame center fill}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
477
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
478 .frame.frame4.text0 insert end {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
479
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
480
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
481
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
482 if {"[info procs XFEdit]" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
483 catch "XFMiscBindWidgetTree ."
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
484 after 2 "catch {XFEditSetShowWindows}"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
485 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
486 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
487
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
488
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
489 # User defined procedures
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
490
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
491
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
492 # Procedure: FSBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
493 proc FSBox { {fsBoxMessage "Select file:"} {fsBoxFileName ""} {fsBoxActionOk ""} {fsBoxActionCancel ""}} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
494 # xf ignore me 5
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
495 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
496 # Procedure: FSBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
497 # Description: show file selector box
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
498 # Arguments: fsBoxMessage - the text to display
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
499 # fsBoxFileName - a file name that should be selected
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
500 # fsBoxActionOk - the action that should be performed on ok
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
501 # fsBoxActionCancel - the action that should be performed on cancel
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
502 # Returns: the filename that was selected, or nothing
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
503 # Sideeffects: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
504 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
505 #
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
506 # global fsBox(activeBackground) - active background color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
507 # global fsBox(activeForeground) - active foreground color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
508 # global fsBox(background) - background color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
509 # global fsBox(font) - text font
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
510 # global fsBox(foreground) - foreground color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
511 # global fsBox(extensions) - scan directory for extensions
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
512 # global fsBox(scrollActiveForeground) - scrollbar active background color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
513 # global fsBox(scrollBackground) - scrollbar background color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
514 # global fsBox(scrollForeground) - scrollbar foreground color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
515 # global fsBox(scrollSide) - side where scrollbar is located
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
516
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
517 global fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
518
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
519 set tmpButtonOpt ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
520 set tmpFrameOpt ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
521 set tmpMessageOpt ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
522 set tmpScaleOpt ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
523 set tmpScrollOpt ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
524 if {"$fsBox(activeBackground)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
525 append tmpButtonOpt "-activebackground \"$fsBox(activeBackground)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
526 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
527 if {"$fsBox(activeForeground)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
528 append tmpButtonOpt "-activeforeground \"$fsBox(activeForeground)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
529 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
530 if {"$fsBox(background)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
531 append tmpButtonOpt "-background \"$fsBox(background)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
532 append tmpFrameOpt "-background \"$fsBox(background)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
533 append tmpMessageOpt "-background \"$fsBox(background)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
534 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
535 if {"$fsBox(font)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
536 append tmpButtonOpt "-font \"$fsBox(font)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
537 append tmpMessageOpt "-font \"$fsBox(font)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
538 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
539 if {"$fsBox(foreground)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
540 append tmpButtonOpt "-foreground \"$fsBox(foreground)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
541 append tmpMessageOpt "-foreground \"$fsBox(foreground)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
542 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
543 if {"$fsBox(scrollActiveForeground)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
544 append tmpScrollOpt "-activeforeground \"$fsBox(scrollActiveForeground)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
545 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
546 if {"$fsBox(scrollBackground)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
547 append tmpScrollOpt "-background \"$fsBox(scrollBackground)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
548 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
549 if {"$fsBox(scrollForeground)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
550 append tmpScrollOpt "-foreground \"$fsBox(scrollForeground)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
551 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
552
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
553 if {[file exists [file tail $fsBoxFileName]] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
554 [IsAFile [file tail $fsBoxFileName]]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
555 set fsBox(name) [file tail $fsBoxFileName]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
556 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
557 set fsBox(name) ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
558 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
559 if {[file exists $fsBoxFileName] && [IsADir $fsBoxFileName]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
560 set fsBox(path) $fsBoxFileName
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
561 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
562 if {"[file rootname $fsBoxFileName]" != "."} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
563 set fsBox(path) [file rootname $fsBoxFileName]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
564 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
565 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
566 if {$fsBox(showPixmap)} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
567 set fsBox(path) [string trimleft $fsBox(path) @]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
568 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
569 if {"$fsBox(path)" != "" && [file exists $fsBox(path)] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
570 [IsADir $fsBox(path)]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
571 set fsBox(internalPath) $fsBox(path)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
572 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
573 if {"$fsBox(internalPath)" == "" ||
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
574 ![file exists $fsBox(internalPath)]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
575 set fsBox(internalPath) [pwd]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
576 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
577 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
578 # build widget structure
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
579
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
580 # start build of toplevel
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
581 if {"[info commands XFDestroy]" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
582 catch {XFDestroy .fsBox}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
583 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
584 catch {destroy .fsBox}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
585 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
586 toplevel .fsBox -borderwidth 0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
587 catch ".fsBox config $tmpFrameOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
588 wm geometry .fsBox 350x300
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
589 wm title .fsBox {File select box}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
590 wm maxsize .fsBox 1000 1000
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
591 wm minsize .fsBox 100 100
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
592 # end build of toplevel
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
593
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
594 label .fsBox.message1 -anchor c -relief raised -text "$fsBoxMessage"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
595 catch ".fsBox.message1 config $tmpMessageOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
596
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
597 frame .fsBox.frame1 -borderwidth 0 -relief raised
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
598 catch ".fsBox.frame1 config $tmpFrameOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
599
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
600 button .fsBox.frame1.ok -text "OK" -command "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
601 global fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
602 set fsBox(name) \[.fsBox.file.file get\]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
603 if {$fsBox(showPixmap)} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
604 set fsBox(path) @\[.fsBox.path.path get\]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
605 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
606 set fsBox(path) \[.fsBox.path.path get\]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
607 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
608 set fsBox(internalPath) \[.fsBox.path.path get\]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
609 $fsBoxActionOk
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
610 if {\"\[info commands XFDestroy\]\" != \"\"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
611 catch {XFDestroy .fsBox}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
612 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
613 catch {destroy .fsBox}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
614 }"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
615 catch ".fsBox.frame1.ok config $tmpButtonOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
616
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
617 button .fsBox.frame1.rescan -text "Rescan" -command {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
618 global fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
619 FSBoxFSShow [.fsBox.path.path get] [.fsBox.pattern.pattern get] $fsBox(all)}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
620 catch ".fsBox.frame1.rescan config $tmpButtonOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
621
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
622 button .fsBox.frame1.cancel -text "Cancel" -command "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
623 global fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
624 set fsBox(name) {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
625 set fsBox(path) {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
626 $fsBoxActionCancel
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
627 if {\"\[info commands XFDestroy\]\" != \"\"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
628 catch {XFDestroy .fsBox}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
629 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
630 catch {destroy .fsBox}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
631 }"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
632 catch ".fsBox.frame1.cancel config $tmpButtonOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
633
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
634 if {$fsBox(showPixmap)} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
635 frame .fsBox.frame2 -borderwidth 0 -relief raised
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
636 catch ".fsBox.frame2 config $tmpFrameOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
637
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
638 scrollbar .fsBox.frame2.scrollbar3 -command {.fsBox.frame2.canvas2 xview} -orient {horizontal} -relief {raised}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
639 catch ".fsBox.frame2.scrollbar3 config $tmpScrollOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
640
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
641 scrollbar .fsBox.frame2.scrollbar1 -command {.fsBox.frame2.canvas2 yview} -relief {raised}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
642 catch ".fsBox.frame2.scrollbar1 config $tmpScrollOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
643
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
644 canvas .fsBox.frame2.canvas2 -confine {true} -relief {raised} -scrollregion {0c 0c 20c 20c} -width {100} -xscrollcommand {.fsBox.frame2.scrollbar3 set} -yscrollcommand {.fsBox.frame2.scrollbar1 set}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
645 catch ".fsBox.frame2.canvas2 config $tmpFrameOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
646
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
647 .fsBox.frame2.canvas2 addtag currentBitmap withtag [.fsBox.frame2.canvas2 create bitmap 5 5 -anchor nw]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
648 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
649
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
650 frame .fsBox.path -borderwidth 0 -relief raised
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
651 catch ".fsBox.path config $tmpFrameOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
652
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
653 frame .fsBox.path.paths -borderwidth 2 -relief raised
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
654 catch ".fsBox.path.paths config $tmpFrameOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
655
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
656 menubutton .fsBox.path.paths.paths -borderwidth 0 -menu ".fsBox.path.paths.paths.menu" -relief flat -text "Pathname:"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
657 catch ".fsBox.path.paths.paths config $tmpButtonOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
658
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
659 menu .fsBox.path.paths.paths.menu
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
660 catch ".fsBox.path.paths.paths.menu config $tmpButtonOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
661
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
662 .fsBox.path.paths.paths.menu add command -label "[string trimright $fsBox(internalPath) {/@}]" -command "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
663 global fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
664 FSBoxFSShow \[.fsBox.path.path get\] \[.fsBox.pattern.pattern get\] \$fsBox(all)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
665 .fsBox.path.path delete 0 end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
666 .fsBox.path.path insert 0 [string trimright $fsBox(internalPath) {/@}]"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
667
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
668 entry .fsBox.path.path -relief raised
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
669 catch ".fsBox.path.path config $tmpMessageOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
670
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
671 if {![IsADir $fsBox(internalPath)]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
672 set $fsBox(internalPath) [pwd]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
673 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
674 .fsBox.path.path insert 0 $fsBox(internalPath)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
675
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
676 frame .fsBox.pattern -borderwidth 0 -relief raised
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
677 catch ".fsBox.pattern config $tmpFrameOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
678
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
679 frame .fsBox.pattern.patterns -borderwidth 2 -relief raised
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
680 catch ".fsBox.pattern.patterns config $tmpFrameOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
681
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
682 menubutton .fsBox.pattern.patterns.patterns -borderwidth 0 -menu ".fsBox.pattern.patterns.patterns.menu" -relief flat -text "Selection pattern:"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
683 catch ".fsBox.pattern.patterns.patterns config $tmpButtonOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
684
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
685 menu .fsBox.pattern.patterns.patterns.menu
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
686 catch ".fsBox.pattern.patterns.patterns.menu config $tmpButtonOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
687
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
688 .fsBox.pattern.patterns.patterns.menu add checkbutton -label "Scan extensions" -variable fsBox(extensions) -command {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
689 global fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
690 FSBoxFSShow [.fsBox.path.path get] [.fsBox.pattern.pattern get] $fsBox(all)}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
691
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
692 entry .fsBox.pattern.pattern -relief raised
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
693 catch ".fsBox.pattern.pattern config $tmpMessageOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
694
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
695 .fsBox.pattern.pattern insert 0 $fsBox(pattern)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
696
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
697 frame .fsBox.files -borderwidth 0 -relief raised
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
698 catch ".fsBox.files config $tmpFrameOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
699
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
700 scrollbar .fsBox.files.vscroll -relief raised -command ".fsBox.files.files yview"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
701 catch ".fsBox.files.vscroll config $tmpScrollOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
702
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
703 scrollbar .fsBox.files.hscroll -orient horiz -relief raised -command ".fsBox.files.files xview"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
704 catch ".fsBox.files.hscroll config $tmpScrollOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
705
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
706 listbox .fsBox.files.files -exportselection false -relief raised -xscrollcommand ".fsBox.files.hscroll set" -yscrollcommand ".fsBox.files.vscroll set"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
707 catch ".fsBox.files.files config $tmpMessageOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
708
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
709 frame .fsBox.file -borderwidth 0 -relief raised
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
710 catch ".fsBox.file config $tmpFrameOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
711
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
712 label .fsBox.file.labelfile -relief raised -text "Filename:"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
713 catch ".fsBox.file.labelfile config $tmpMessageOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
714
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
715 entry .fsBox.file.file -relief raised
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
716 catch ".fsBox.file.file config $tmpMessageOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
717
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
718 .fsBox.file.file delete 0 end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
719 .fsBox.file.file insert 0 $fsBox(name)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
720
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
721 checkbutton .fsBox.pattern.all -offvalue 0 -onvalue 1 -text "Show all files" -variable fsBox(all) -command {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
722 global fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
723 FSBoxFSShow [.fsBox.path.path get] [.fsBox.pattern.pattern get] $fsBox(all)}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
724 catch ".fsBox.pattern.all config $tmpButtonOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
725
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
726 FSBoxFSShow $fsBox(internalPath) $fsBox(pattern) $fsBox(all)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
727
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
728 # bindings
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
729 bind .fsBox.files.files <Double-Button-1> "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
730 FSBoxFSFileSelectDouble %W $fsBox(showPixmap) \{$fsBoxActionOk\} %y"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
731 bind .fsBox.files.files <ButtonPress-1> "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
732 FSBoxFSFileSelect %W $fsBox(showPixmap) %y"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
733 bind .fsBox.files.files <Button1-Motion> "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
734 FSBoxFSFileSelect %W $fsBox(showPixmap) %y"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
735 bind .fsBox.files.files <Shift-Button1-Motion> "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
736 FSBoxFSFileSelect %W $fsBox(showPixmap) %y"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
737 bind .fsBox.files.files <Shift-ButtonPress-1> "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
738 FSBoxFSFileSelect %W $fsBox(showPixmap) %y"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
739
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
740 bind .fsBox.path.path <Tab> {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
741 FSBoxFSNameComplete path}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
742 bind .fsBox.path.path <Return> {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
743 global tkVersion
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
744 global fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
745 FSBoxFSShow [.fsBox.path.path get] [.fsBox.pattern.pattern get] $fsBox(all)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
746 FSBoxFSInsertPath
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
747 if {$tkVersion >= 3.0} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
748 .fsBox.file.file icursor end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
749 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
750 .fsBox.file.file cursor end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
751 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
752 focus .fsBox.file.file}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
753 catch "bind .fsBox.path.path <Up> {}"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
754 bind .fsBox.path.path <Down> {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
755 global tkVersion
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
756 if {$tkVersion >= 3.0} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
757 .fsBox.file.file icursor end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
758 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
759 .fsBox.file.file cursor end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
760 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
761 focus .fsBox.file.file}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
762
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
763 bind .fsBox.file.file <Tab> {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
764 FSBoxFSNameComplete file}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
765 bind .fsBox.file.file <Return> "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
766 global fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
767 set fsBox(name) \[.fsBox.file.file get\]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
768 if {$fsBox(showPixmap)} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
769 set fsBox(path) @\[.fsBox.path.path get\]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
770 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
771 set fsBox(path) \[.fsBox.path.path get\]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
772 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
773 set fsBox(internalPath) \[.fsBox.path.path get\]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
774 $fsBoxActionOk
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
775 if {\"\[info commands XFDestroy\]\" != \"\"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
776 catch {XFDestroy .fsBox}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
777 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
778 catch {destroy .fsBox}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
779 }"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
780 bind .fsBox.file.file <Up> {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
781 global tkVersion
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
782 if {$tkVersion >= 3.0} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
783 .fsBox.path.path icursor end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
784 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
785 .fsBox.path.path cursor end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
786 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
787 focus .fsBox.path.path}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
788 bind .fsBox.file.file <Down> {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
789 global tkVersion
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
790 if {$tkVersion >= 3.0} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
791 .fsBox.pattern.pattern icursor end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
792 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
793 .fsBox.pattern.pattern cursor end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
794 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
795 focus .fsBox.pattern.pattern}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
796
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
797 bind .fsBox.pattern.pattern <Return> {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
798 global fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
799 FSBoxFSShow [.fsBox.path.path get] [.fsBox.pattern.pattern get] $fsBox(all)}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
800 bind .fsBox.pattern.pattern <Up> {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
801 global tkVersion
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
802 if {$tkVersion >= 3.0} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
803 .fsBox.file.file icursor end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
804 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
805 .fsBox.file.file cursor end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
806 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
807 focus .fsBox.file.file}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
808 catch "bind .fsBox.pattern.pattern <Down> {}"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
809
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
810 # packing
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
811 pack append .fsBox.files .fsBox.files.vscroll "$fsBox(scrollSide) filly" .fsBox.files.hscroll {bottom fillx} .fsBox.files.files {left fill expand}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
812 pack append .fsBox.file .fsBox.file.labelfile {left} .fsBox.file.file {left fill expand}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
813 pack append .fsBox.frame1 .fsBox.frame1.ok {left fill expand} .fsBox.frame1.rescan {left fill expand} .fsBox.frame1.cancel {left fill expand}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
814 pack append .fsBox.path.paths .fsBox.path.paths.paths {left}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
815 pack append .fsBox.pattern.patterns .fsBox.pattern.patterns.patterns {left}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
816 pack append .fsBox.path .fsBox.path.paths {left} .fsBox.path.path {left fill expand}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
817 pack append .fsBox.pattern .fsBox.pattern.patterns {left} .fsBox.pattern.all {right fill} .fsBox.pattern.pattern {left fill expand}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
818 if {$fsBox(showPixmap)} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
819 pack append .fsBox.frame2 .fsBox.frame2.scrollbar1 {left filly} .fsBox.frame2.canvas2 {top expand fill} .fsBox.frame2.scrollbar3 {top fillx}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
820
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
821 pack append .fsBox .fsBox.message1 {top fill} .fsBox.frame1 {bottom fill} .fsBox.pattern {bottom fill} .fsBox.file {bottom fill} .fsBox.path {bottom fill} .fsBox.frame2 {right fill} .fsBox.files {left fill expand}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
822 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
823 pack append .fsBox .fsBox.message1 {top fill} .fsBox.frame1 {bottom fill} .fsBox.pattern {bottom fill} .fsBox.file {bottom fill} .fsBox.path {bottom fill} .fsBox.files {left fill expand}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
824 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
825
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
826 if {"$fsBoxActionOk" == "" && "$fsBoxActionCancel" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
827 # wait for the box to be destroyed
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
828 update idletask
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
829 grab .fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
830 tkwait window .fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
831
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
832 if {"[string trim $fsBox(path)]" != "" ||
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
833 "[string trim $fsBox(name)]" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
834 if {"[string trimleft [string trim $fsBox(name)] /]" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
835 return [string trimright [string trim $fsBox(path)] /]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
836 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
837 return [string trimright [string trim $fsBox(path)] /]/[string trimleft [string trim $fsBox(name)] /]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
838 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
839 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
840 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
841 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
842
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
843
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
844 # Procedure: FSBoxBindSelectOne
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
845 proc FSBoxBindSelectOne { fsBoxW fsBoxY} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
846 # xf ignore me 6
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
847
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
848 set fsBoxNearest [$fsBoxW nearest $fsBoxY]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
849 if {$fsBoxNearest >= 0} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
850 $fsBoxW select from $fsBoxNearest
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
851 $fsBoxW select to $fsBoxNearest
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
852 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
853 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
854
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
855
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
856 # Procedure: FSBoxFSFileSelect
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
857 proc FSBoxFSFileSelect { fsBoxW fsBoxShowPixmap fsBoxY} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
858 # xf ignore me 6
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
859 global fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
860
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
861 FSBoxBindSelectOne $fsBoxW $fsBoxY
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
862 set fsBoxNearest [$fsBoxW nearest $fsBoxY]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
863 if {$fsBoxNearest >= 0} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
864 set fsBoxTmpEntry [$fsBoxW get $fsBoxNearest]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
865 if {"[string index $fsBoxTmpEntry [expr [string length $fsBoxTmpEntry]-1]]" == "/" ||
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
866 "[string index $fsBoxTmpEntry [expr [string length $fsBoxTmpEntry]-1]]" == "@"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
867 set fsBoxFileName [string range $fsBoxTmpEntry 0 [expr [string length $fsBoxTmpEntry]-2]]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
868 if {![IsADir [string trimright $fsBox(internalPath)/$fsBoxFileName @]] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
869 ![IsASymlink [string trimright $fsBox(internalPath)/$fsBoxFileName @]]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
870 set fsBoxFileName $fsBoxTmpEntry
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
871 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
872 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
873 if {"[string index $fsBoxTmpEntry [expr [string length $fsBoxTmpEntry]-1]]" == "*"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
874 set fsBoxFileName [string range $fsBoxTmpEntry 0 [expr [string length $fsBoxTmpEntry]-2]]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
875 if {![file executable $fsBox(internalPath)/$fsBoxFileName]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
876 set fsBoxFileName $fsBoxTmpEntry
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
877 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
878 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
879 set fsBoxFileName $fsBoxTmpEntry
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
880 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
881 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
882 if {![IsADir [string trimright $fsBox(internalPath)/$fsBoxFileName @]]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
883 set fsBox(name) $fsBoxFileName
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
884 .fsBox.file.file delete 0 end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
885 .fsBox.file.file insert 0 $fsBox(name)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
886 if {$fsBoxShowPixmap} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
887 catch ".fsBox.frame2.canvas2 itemconfigure currentBitmap -bitmap \"@$fsBox(internalPath)/$fsBox(name)\""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
888 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
889 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
890 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
891 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
892
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
893
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
894 # Procedure: FSBoxFSFileSelectDouble
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
895 proc FSBoxFSFileSelectDouble { fsBoxW fsBoxShowPixmap fsBoxAction fsBoxY} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
896 # xf ignore me 6
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
897 global fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
898
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
899 FSBoxBindSelectOne $fsBoxW $fsBoxY
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
900 set fsBoxNearest [$fsBoxW nearest $fsBoxY]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
901 if {$fsBoxNearest >= 0} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
902 set fsBoxTmpEntry [$fsBoxW get $fsBoxNearest]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
903 if {"$fsBoxTmpEntry" == "../"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
904 set fsBoxTmpEntry [string trimright [string trim $fsBox(internalPath)] "@/"]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
905 if {"$fsBoxTmpEntry" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
906 return
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
907 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
908 FSBoxFSShow [file dirname $fsBoxTmpEntry] [.fsBox.pattern.pattern get] $fsBox(all)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
909 .fsBox.path.path delete 0 end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
910 .fsBox.path.path insert 0 $fsBox(internalPath)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
911 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
912 if {"[string index $fsBoxTmpEntry [expr [string length $fsBoxTmpEntry]-1]]" == "/" ||
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
913 "[string index $fsBoxTmpEntry [expr [string length $fsBoxTmpEntry]-1]]" == "@"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
914 set fsBoxFileName [string range $fsBoxTmpEntry 0 [expr [string length $fsBoxTmpEntry]-2]]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
915 if {![IsADir [string trimright $fsBox(internalPath)/$fsBoxFileName @]] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
916 ![IsASymlink [string trimright $fsBox(internalPath)/$fsBoxFileName @]]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
917 set fsBoxFileName $fsBoxTmpEntry
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
918 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
919 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
920 if {"[string index $fsBoxTmpEntry [expr [string length $fsBoxTmpEntry]-1]]" == "*"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
921 set fsBoxFileName [string range $fsBoxTmpEntry 0 [expr [string length $fsBoxTmpEntry]-2]]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
922 if {![file executable $fsBox(internalPath)/$fsBoxFileName]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
923 set fsBoxFileName $fsBoxTmpEntry
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
924 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
925 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
926 set fsBoxFileName $fsBoxTmpEntry
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
927 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
928 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
929 if {[IsADir [string trimright $fsBox(internalPath)/$fsBoxFileName @]]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
930 set fsBox(internalPath) "[string trimright $fsBox(internalPath) {/@}]/$fsBoxFileName"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
931 FSBoxFSShow $fsBox(internalPath) [.fsBox.pattern.pattern get] $fsBox(all)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
932 .fsBox.path.path delete 0 end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
933 .fsBox.path.path insert 0 $fsBox(internalPath)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
934 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
935 set fsBox(name) $fsBoxFileName
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
936 if {$fsBoxShowPixmap} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
937 set fsBox(path) @$fsBox(internalPath)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
938 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
939 set fsBox(path) $fsBox(internalPath)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
940 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
941 if {"$fsBoxAction" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
942 eval "global fsBox; $fsBoxAction"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
943 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
944 if {"[info commands XFDestroy]" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
945 catch {XFDestroy .fsBox}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
946 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
947 catch {destroy .fsBox}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
948 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
949 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
950 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
951 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
952 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
953
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
954
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
955 # Procedure: FSBoxFSInsertPath
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
956 proc FSBoxFSInsertPath {} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
957 # xf ignore me 6
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
958 global fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
959
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
960 set fsBoxLast [.fsBox.path.paths.paths.menu index last]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
961 set fsBoxNewEntry [string trimright [.fsBox.path.path get] "/@"]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
962 for {set fsBoxCounter 0} {$fsBoxCounter <= $fsBoxLast} {incr fsBoxCounter 1} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
963 if {"$fsBoxNewEntry" == "[lindex [.fsBox.path.paths.paths.menu entryconfigure $fsBoxCounter -label] 4]"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
964 return
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
965 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
966 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
967 if {$fsBoxLast < 9} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
968 .fsBox.path.paths.paths.menu add command -label "$fsBoxNewEntry" -command "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
969 global fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
970 FSBoxFSShow $fsBoxNewEntry \[.fsBox.pattern.pattern get\] \$fsBox(all)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
971 .fsBox.path.path delete 0 end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
972 .fsBox.path.path insert 0 $fsBoxNewEntry"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
973 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
974 for {set fsBoxCounter 0} {$fsBoxCounter < $fsBoxLast} {incr fsBoxCounter 1} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
975 .fsBox.path.paths.paths.menu entryconfigure $fsBoxCounter -label [lindex [.fsBox.path.paths.paths.menu entryconfigure [expr $fsBoxCounter+1] -label] 4]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
976 .fsBox.path.paths.paths.menu entryconfigure $fsBoxCounter -command "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
977 global fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
978 FSBoxFSShow [lindex [.fsBox.path.paths.paths.menu entryconfigure [expr $fsBoxCounter+1] -label] 4] \[.fsBox.pattern.pattern get\] \$fsBox(all)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
979 .fsBox.path.path delete 0 end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
980 .fsBox.path.path insert 0 [lindex [.fsBox.path.paths.paths.menu entryconfigure [expr $fsBoxCounter+1] -label] 4]"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
981 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
982 .fsBox.path.paths.paths.menu entryconfigure $fsBoxLast -label "$fsBoxNewEntry"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
983 .fsBox.path.paths.paths.menu entryconfigure $fsBoxCounter -command "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
984 global fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
985 FSBoxFSShow \[.fsBox.path.path get\] \[.fsBox.pattern.pattern get\] \$fsBox(all)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
986 .fsBox.path.path delete 0 end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
987 .fsBox.path.path insert 0 $fsBoxNewEntry"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
988 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
989 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
990
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
991
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
992 # Procedure: FSBoxFSNameComplete
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
993 proc FSBoxFSNameComplete { fsBoxType} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
994 # xf ignore me 6
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
995 global tkVersion
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
996 global fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
997
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
998 set fsBoxNewFile ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
999 if {"$fsBoxType" == "path"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1000 set fsBoxDirName [file dirname [.fsBox.path.path get]]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1001 set fsBoxFileName [file tail [.fsBox.path.path get]]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1002 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1003 set fsBoxDirName [file dirname [.fsBox.path.path get]/]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1004 set fsBoxFileName [file tail [.fsBox.file.file get]]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1005 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1006
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1007 set fsBoxNewFile ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1008 if {[IsADir [string trimright $fsBoxDirName @]]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1009 catch "glob -nocomplain $fsBoxDirName/${fsBoxFileName}*" fsBoxResult
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1010 foreach fsBoxCounter $fsBoxResult {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1011 if {"$fsBoxNewFile" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1012 set fsBoxNewFile [file tail $fsBoxCounter]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1013 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1014 if {"[string index [file tail $fsBoxCounter] 0]" !=
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1015 "[string index $fsBoxNewFile 0]"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1016 set fsBoxNewFile ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1017 break
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1018 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1019 set fsBoxCounter1 0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1020 set fsBoxTmpFile1 $fsBoxNewFile
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1021 set fsBoxTmpFile2 [file tail $fsBoxCounter]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1022 set fsBoxLength1 [string length $fsBoxTmpFile1]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1023 set fsBoxLength2 [string length $fsBoxTmpFile2]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1024 set fsBoxNewFile ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1025 if {$fsBoxLength1 > $fsBoxLength2} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1026 set fsBoxLength1 $fsBoxLength2
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1027 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1028 while {$fsBoxCounter1 < $fsBoxLength1} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1029 if {"[string index $fsBoxTmpFile1 $fsBoxCounter1]" == "[string index $fsBoxTmpFile2 $fsBoxCounter1]"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1030 append fsBoxNewFile [string index $fsBoxTmpFile1 $fsBoxCounter1]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1031 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1032 break
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1033 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1034 incr fsBoxCounter1 1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1035 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1036 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1037 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1038 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1039 if {"$fsBoxNewFile" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1040 if {[IsADir [string trimright $fsBoxDirName/$fsBoxNewFile @]] ||
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1041 ![IsAFile [string trimright $fsBoxDirName/$fsBoxNewFile @]]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1042 if {[IsADir [string trimright $fsBoxDirName/$fsBoxNewFile @]]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1043 if {"$fsBoxDirName" == "/"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1044 .fsBox.path.path delete 0 end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1045 .fsBox.path.path insert 0 "/[string trimright [string trim $fsBoxNewFile /] @]/"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1046 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1047 .fsBox.path.path delete 0 end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1048 .fsBox.path.path insert 0 "[string trimright $fsBoxDirName /]/[string trimright [string trim $fsBoxNewFile /] @]/"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1049 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1050 FSBoxFSShow [.fsBox.path.path get] [.fsBox.pattern.pattern get] $fsBox(all)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1051 FSBoxFSInsertPath
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1052 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1053 .fsBox.path.path delete 0 end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1054 .fsBox.path.path insert 0 "[string trimright $fsBoxDirName /]/[string trimright [string trim $fsBoxNewFile /] @]"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1055 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1056 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1057 .fsBox.path.path delete 0 end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1058 .fsBox.path.path insert 0 "[string trimright $fsBoxDirName {@/}]/"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1059 .fsBox.file.file delete 0 end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1060 .fsBox.file.file insert 0 $fsBoxNewFile
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1061 if {$tkVersion >= 3.0} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1062 .fsBox.file.file icursor end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1063 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1064 .fsBox.file.file cursor end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1065 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1066 focus .fsBox.file.file
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1067 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1068 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1069 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1070
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1071
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1072 # Procedure: FSBoxFSShow
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1073 proc FSBoxFSShow { fsBoxPath fsBoxPattern fsBoxAll} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1074 # xf ignore me 6
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1075 global fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1076
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1077 set tmpButtonOpt ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1078 if {"$fsBox(activeBackground)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1079 append tmpButtonOpt "-activebackground \"$fsBox(activeBackground)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1080 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1081 if {"$fsBox(activeForeground)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1082 append tmpButtonOpt "-activeforeground \"$fsBox(activeForeground)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1083 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1084 if {"$fsBox(background)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1085 append tmpButtonOpt "-background \"$fsBox(background)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1086 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1087 if {"$fsBox(font)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1088 append tmpButtonOpt "-font \"$fsBox(font)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1089 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1090 if {"$fsBox(foreground)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1091 append tmpButtonOpt "-foreground \"$fsBox(foreground)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1092 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1093
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1094 set fsBox(pattern) $fsBoxPattern
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1095 if {[file exists $fsBoxPath] && [file readable $fsBoxPath] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1096 [IsADir $fsBoxPath]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1097 set fsBox(internalPath) $fsBoxPath
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1098 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1099 if {[file exists $fsBoxPath] && [file readable $fsBoxPath] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1100 [IsAFile $fsBoxPath]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1101 set fsBox(internalPath) [file dirname $fsBoxPath]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1102 .fsBox.file.file delete 0 end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1103 .fsBox.file.file insert 0 [file tail $fsBoxPath]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1104 set fsBoxPath $fsBox(internalPath)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1105 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1106 while {"$fsBoxPath" != "" && "$fsBoxPath" != "/" &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1107 ![file isdirectory $fsBoxPath]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1108 set fsBox(internalPath) [file dirname $fsBoxPath]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1109 set fsBoxPath $fsBox(internalPath)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1110 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1111 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1112 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1113 if {"$fsBoxPath" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1114 set fsBoxPath "/"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1115 set fsBox(internalPath) "/"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1116 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1117 .fsBox.path.path delete 0 end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1118 .fsBox.path.path insert 0 $fsBox(internalPath)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1119
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1120 if {[.fsBox.files.files size] > 0} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1121 .fsBox.files.files delete 0 end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1122 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1123 if {$fsBoxAll} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1124 if {[catch "exec ls -F -a $fsBoxPath" fsBoxResult]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1125 puts stderr "$fsBoxResult"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1126 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1127 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1128 if {[catch "exec ls -F $fsBoxPath" fsBoxResult]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1129 puts stderr "$fsBoxResult"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1130 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1131 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1132 set fsBoxElementList [lsort $fsBoxResult]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1133
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1134 foreach fsBoxCounter [winfo children .fsBox.pattern.patterns.patterns] {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1135 if {[string length [info commands XFDestroy]] > 0} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1136 catch {XFDestroy $fsBoxCounter}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1137 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1138 catch {destroy $fsBoxCounter}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1139 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1140 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1141 menu .fsBox.pattern.patterns.patterns.menu
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1142 catch ".fsBox.pattern.patterns.patterns.menu config $tmpButtonOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1143
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1144 if {$fsBox(extensions)} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1145 .fsBox.pattern.patterns.patterns.menu add command -label "*" -command {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1146 global fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1147 set fsBox(pattern) "*"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1148 .fsBox.pattern.pattern delete 0 end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1149 .fsBox.pattern.pattern insert 0 $fsBox(pattern)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1150 FSBoxFSShow [.fsBox.path.path get] $fsBox(pattern) $fsBox(all)}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1151 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1152
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1153 if {"$fsBoxPath" != "/"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1154 .fsBox.files.files insert end "../"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1155 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1156 foreach fsBoxCounter $fsBoxElementList {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1157 if {[string match $fsBoxPattern $fsBoxCounter] ||
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1158 [IsADir [string trimright $fsBoxPath/$fsBoxCounter "/@"]]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1159 if {"$fsBoxCounter" != "../" &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1160 "$fsBoxCounter" != "./"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1161 .fsBox.files.files insert end $fsBoxCounter
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1162 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1163 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1164
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1165 if {$fsBox(extensions)} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1166 catch "file rootname $fsBoxCounter" fsBoxRootName
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1167 catch "file extension $fsBoxCounter" fsBoxExtension
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1168 set fsBoxExtension [string trimright $fsBoxExtension "/*@"]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1169 if {"$fsBoxExtension" != "" && "$fsBoxRootName" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1170 set fsBoxInsert 1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1171 set fsBoxLast [.fsBox.pattern.patterns.patterns.menu index last]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1172 for {set fsBoxCounter1 0} {$fsBoxCounter1 <= $fsBoxLast} {incr fsBoxCounter1 1} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1173 if {"*$fsBoxExtension" == "[lindex [.fsBox.pattern.patterns.patterns.menu entryconfigure $fsBoxCounter1 -label] 4]"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1174 set fsBoxInsert 0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1175 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1176 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1177 if {$fsBoxInsert} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1178 .fsBox.pattern.patterns.patterns.menu add command -label "*$fsBoxExtension" -command "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1179 global fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1180 set fsBox(pattern) \"*$fsBoxExtension\"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1181 .fsBox.pattern.pattern delete 0 end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1182 .fsBox.pattern.pattern insert 0 \$fsBox(pattern)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1183 FSBoxFSShow \[.fsBox.path.path get\] \$fsBox(pattern) \$fsBox(all)"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1184 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1185 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1186 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1187 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1188 if {$fsBox(extensions)} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1189 .fsBox.pattern.patterns.patterns.menu add separator
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1190 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1191 if {$fsBox(extensions) ||
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1192 "[.fsBox.pattern.patterns.patterns.menu index last]" == "none"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1193 .fsBox.pattern.patterns.patterns.menu add checkbutton -label "Scan extensions" -variable "fsBox(extensions)" -command {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1194 global fsBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1195 FSBoxFSShow [.fsBox.path.path get] [.fsBox.pattern.pattern get] $fsBox(all)}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1196 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1197 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1198
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1199
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1200 # Procedure: InputBoxInternal
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1201 proc InputBoxInternal { inputBoxMessage inputBoxCommandOk inputBoxCommandCancel inputBoxGeometry inputBoxTitle lineNum} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1202 # xf ignore me 6
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1203 global inputBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1204
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1205 set tmpButtonOpt ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1206 set tmpFrameOpt ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1207 set tmpMessageOpt ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1208 set tmpScaleOpt ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1209 set tmpScrollOpt ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1210 if {"$inputBox(activeBackground)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1211 append tmpButtonOpt "-activebackground \"$inputBox(activeBackground)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1212 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1213 if {"$inputBox(activeForeground)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1214 append tmpButtonOpt "-activeforeground \"$inputBox(activeForeground)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1215 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1216 if {"$inputBox(background)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1217 append tmpButtonOpt "-background \"$inputBox(background)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1218 append tmpFrameOpt "-background \"$inputBox(background)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1219 append tmpMessageOpt "-background \"$inputBox(background)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1220 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1221 if {"$inputBox(font)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1222 append tmpButtonOpt "-font \"$inputBox(font)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1223 append tmpMessageOpt "-font \"$inputBox(font)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1224 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1225 if {"$inputBox(foreground)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1226 append tmpButtonOpt "-foreground \"$inputBox(foreground)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1227 append tmpMessageOpt "-foreground \"$inputBox(foreground)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1228 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1229 if {"$inputBox(scrollActiveForeground)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1230 append tmpScrollOpt "-activeforeground \"$inputBox(scrollActiveForeground)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1231 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1232 if {"$inputBox(scrollBackground)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1233 append tmpScrollOpt "-background \"$inputBox(scrollBackground)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1234 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1235 if {"$inputBox(scrollForeground)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1236 append tmpScrollOpt "-foreground \"$inputBox(scrollForeground)\" "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1237 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1238
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1239 # start build of toplevel
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1240 if {"[info commands XFDestroy]" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1241 catch {XFDestroy $inputBox(toplevelName)}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1242 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1243 catch {destroy $inputBox(toplevelName)}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1244 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1245 toplevel $inputBox(toplevelName) -borderwidth 0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1246 catch "$inputBox(toplevelName) config $tmpFrameOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1247 if {[catch "wm geometry $inputBox(toplevelName) $inputBoxGeometry"]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1248 wm geometry $inputBox(toplevelName) 350x150
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1249 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1250 wm title $inputBox(toplevelName) $inputBoxTitle
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1251 wm maxsize $inputBox(toplevelName) 1000 1000
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1252 wm minsize $inputBox(toplevelName) 100 100
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1253 # end build of toplevel
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1254
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1255 message $inputBox(toplevelName).message1 -anchor "$inputBox(anchor)" -justify "$inputBox(justify)" -relief raised -text "$inputBoxMessage"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1256 catch "$inputBox(toplevelName).message1 config $tmpMessageOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1257
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1258 set xfTmpWidth [string range $inputBoxGeometry 0 [expr [string first x $inputBoxGeometry]-1]]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1259 if {"$xfTmpWidth" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1260 # set message size
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1261 catch "$inputBox(toplevelName).message1 configure -width [expr $xfTmpWidth-10]"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1262 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1263 $inputBox(toplevelName).message1 configure -aspect 1500
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1264 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1265
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1266 frame $inputBox(toplevelName).frame0 -borderwidth 0 -relief raised
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1267 catch "$inputBox(toplevelName).frame0 config $tmpFrameOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1268
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1269 frame $inputBox(toplevelName).frame1 -borderwidth 0 -relief raised
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1270 catch "$inputBox(toplevelName).frame1 config $tmpFrameOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1271
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1272 if {$lineNum == 1} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1273 scrollbar $inputBox(toplevelName).frame1.hscroll -orient "horizontal" -relief raised -command "$inputBox(toplevelName).frame1.input view"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1274 catch "$inputBox(toplevelName).frame1.hscroll config $tmpScrollOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1275
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1276 entry $inputBox(toplevelName).frame1.input -relief raised -scrollcommand "$inputBox(toplevelName).frame1.hscroll set"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1277 catch "$inputBox(toplevelName).frame1.input config $tmpMessageOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1278
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1279 $inputBox(toplevelName).frame1.input insert 0 $inputBox($inputBox(toplevelName),inputOne)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1280
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1281 # bindings
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1282 bind $inputBox(toplevelName).frame1.input <Return> "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1283 global inputBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1284 set inputBox($inputBox(toplevelName),inputOne) \[$inputBox(toplevelName).frame1.input get\]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1285 if {\"\[info commands XFDestroy\]\" != \"\"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1286 catch {XFDestroy $inputBox(toplevelName)}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1287 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1288 catch {destroy $inputBox(toplevelName)}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1289 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1290 $inputBoxCommandOk"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1291
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1292 # packing
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1293 pack append $inputBox(toplevelName).frame1 $inputBox(toplevelName).frame1.hscroll {bottom fill} $inputBox(toplevelName).frame1.input {top fill expand}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1294 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1295 text $inputBox(toplevelName).frame1.input -relief raised -wrap none -borderwidth 2 -yscrollcommand "$inputBox(toplevelName).frame1.vscroll set"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1296 catch "$inputBox(toplevelName).frame1.input config $tmpMessageOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1297
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1298 scrollbar $inputBox(toplevelName).frame1.vscroll -relief raised -command "$inputBox(toplevelName).frame1.input yview"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1299 catch "$inputBox(toplevelName).frame1.vscroll config $tmpScrollOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1300
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1301 $inputBox(toplevelName).frame1.input insert 1.0 $inputBox($inputBox(toplevelName),inputMulti)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1302
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1303 # bindings
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1304 bind $inputBox(toplevelName).frame1.input <Control-Return> "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1305 global inputBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1306 set inputBox($inputBox(toplevelName),inputMulti) \[$inputBox(toplevelName).frame1.input get 1.0 end\]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1307 if {\"\[info commands XFDestroy\]\" != \"\"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1308 catch {XFDestroy $inputBox(toplevelName)}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1309 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1310 catch {destroy $inputBox(toplevelName)}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1311 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1312 $inputBoxCommandOk"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1313 bind $inputBox(toplevelName).frame1.input <Meta-Return> "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1314 global inputBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1315 set inputBox($inputBox(toplevelName),inputMulti) \[$inputBox(toplevelName).frame1.input get 1.0 end\]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1316 if {\"\[info commands XFDestroy\]\" != \"\"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1317 catch {XFDestroy $inputBox(toplevelName)}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1318 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1319 catch {destroy $inputBox(toplevelName)}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1320 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1321 $inputBoxCommandOk"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1322
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1323 # packing
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1324 pack append $inputBox(toplevelName).frame1 $inputBox(toplevelName).frame1.vscroll "$inputBox(scrollSide) filly" $inputBox(toplevelName).frame1.input {left fill expand}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1325 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1326
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1327 button $inputBox(toplevelName).frame0.button0 -text "OK" -command "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1328 global inputBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1329 if {$lineNum == 1} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1330 set inputBox($inputBox(toplevelName),inputOne) \[$inputBox(toplevelName).frame1.input get\]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1331 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1332 set inputBox($inputBox(toplevelName),inputMulti) \[$inputBox(toplevelName).frame1.input get 1.0 end\]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1333 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1334 if {\"\[info commands XFDestroy\]\" != \"\"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1335 catch {XFDestroy $inputBox(toplevelName)}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1336 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1337 catch {destroy $inputBox(toplevelName)}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1338 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1339 $inputBoxCommandOk"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1340 catch "$inputBox(toplevelName).frame0.button0 config $tmpButtonOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1341
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1342 button $inputBox(toplevelName).frame0.button1 -text "Cancel" -command "
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1343 global inputBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1344 if {$lineNum == 1} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1345 set inputBox($inputBox(toplevelName),inputOne) \"\"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1346 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1347 set inputBox($inputBox(toplevelName),inputMulti) \"\"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1348 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1349 if {\"\[info commands XFDestroy\]\" != \"\"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1350 catch {XFDestroy $inputBox(toplevelName)}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1351 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1352 catch {destroy $inputBox(toplevelName)}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1353 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1354 $inputBoxCommandCancel"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1355 catch "$inputBox(toplevelName).frame0.button1 config $tmpButtonOpt"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1356
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1357 pack append $inputBox(toplevelName).frame0 $inputBox(toplevelName).frame0.button0 {left fill expand} $inputBox(toplevelName).frame0.button1 {left fill expand}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1358
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1359 pack append $inputBox(toplevelName) $inputBox(toplevelName).frame0 {bottom fill} $inputBox(toplevelName).frame1 {bottom fill expand} $inputBox(toplevelName).message1 {top fill}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1360 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1361
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1362
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1363 # Procedure: InputBoxMulti
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1364 proc InputBoxMulti { {inputBoxMessage "Input box:"} {inputBoxCommandOk ""} {inputBoxCommandCancel ""} {inputBoxGeometry "350x150"} {inputBoxTitle "Input box"}} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1365 # xf ignore me 5
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1366 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1367 # Procedure: InputBoxMulti
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1368 # Description: show input box with one text line
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1369 # Arguments: {inputBoxMessage} - message to display
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1370 # {inputBoxCommandOk} - the command to call after ok
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1371 # {inputBoxCommandCancel} - the command to call after cancel
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1372 # {inputBoxGeometry} - the geometry for the window
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1373 # {inputBoxTitle} - the title for the window
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1374 # Returns: The entered text
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1375 # Sideeffects: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1376 # Notes: there exist also a function called:
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1377 # InputBoxOne - to enter one line text
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1378 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1379 #
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1380 # global inputBox(activeBackground) - active background color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1381 # global inputBox(activeForeground) - active foreground color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1382 # global inputBox(anchor) - anchor for message box
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1383 # global inputBox(background) - background color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1384 # global inputBox(erase) - erase previous text
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1385 # global inputBox(font) - message font
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1386 # global inputBox(foreground) - foreground color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1387 # global inputBox(justify) - justify for message box
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1388 # global inputBox(scrollActiveForeground) - scrollbar active background color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1389 # global inputBox(scrollBackground) - scrollbar background color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1390 # global inputBox(scrollForeground) - scrollbar foreground color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1391 # global inputBox(scrollSide) - side where scrollbar is located
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1392 # global inputBox(toplevelName) - the toplevel name
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1393 # global inputBox(toplevelName,inputMulti) - the text in the text widget
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1394
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1395 global inputBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1396
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1397 if {"$inputBoxGeometry" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1398 set inputBoxGeometry 350x150
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1399 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1400 if {$inputBox(erase)} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1401 set inputBox($inputBox(toplevelName),inputMulti) ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1402 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1403 if {![info exists inputBox($inputBox(toplevelName),inputMulti)]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1404 set inputBox($inputBox(toplevelName),inputMulti) ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1405 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1406 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1407 InputBoxInternal $inputBoxMessage $inputBoxCommandOk $inputBoxCommandCancel $inputBoxGeometry $inputBoxTitle 2
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1408
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1409 # wait for the box to be destroyed
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1410 update idletask
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1411 grab $inputBox(toplevelName)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1412 tkwait window $inputBox(toplevelName)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1413
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1414 return $inputBox($inputBox(toplevelName),inputMulti)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1415 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1416
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1417
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1418 # Procedure: InputBoxOne
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1419 proc InputBoxOne { {inputBoxMessage "Input box:"} {inputBoxCommandOk ""} {inputBoxCommandCancel ""} {inputBoxGeometry "350x150"} {inputBoxTitle "Input box"}} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1420 # xf ignore me 5
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1421 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1422 # Procedure: InputBoxOne
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1423 # Description: show input box with one text line
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1424 # Arguments: {inputBoxMessage} - message to display
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1425 # {inputBoxCommandOk} - the command to call after ok
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1426 # {inputBoxCommandCancel} - the command to call after cancel
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1427 # {inputBoxGeometry} - the geometry for the window
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1428 # {inputBoxTitle} - the title for the window
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1429 # Returns: The entered text
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1430 # Sideeffects: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1431 # Notes: there exist also a function called:
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1432 # InputBoxMulti - to enter multiline text
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1433 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1434 #
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1435 # global inputBox(activeBackground) - active background color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1436 # global inputBox(activeForeground) - active foreground color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1437 # global inputBox(anchor) - anchor for message box
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1438 # global inputBox(background) - background color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1439 # global inputBox(erase) - erase previous text
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1440 # global inputBox(font) - message font
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1441 # global inputBox(foreground) - foreground color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1442 # global inputBox(justify) - justify for message box
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1443 # global inputBox(scrollActiveForeground) - scrollbar active background color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1444 # global inputBox(scrollBackground) - scrollbar background color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1445 # global inputBox(scrollForeground) - scrollbar foreground color
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1446 # global inputBox(scrollSide) - side where scrollbar is located
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1447 # global inputBox(toplevelName) - the toplevel name
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1448 # global inputBox(toplevelName,inputOne) - the text in the entry widget
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1449
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1450 global inputBox
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1451
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1452 if {$inputBox(erase)} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1453 set inputBox($inputBox(toplevelName),inputOne) ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1454 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1455 if {![info exists inputBox($inputBox(toplevelName),inputOne)]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1456 set inputBox($inputBox(toplevelName),inputOne) ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1457 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1458 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1459 InputBoxInternal $inputBoxMessage $inputBoxCommandOk $inputBoxCommandCancel $inputBoxGeometry $inputBoxTitle 1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1460
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1461 # wait for the box to be destroyed
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1462 update idletask
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1463 grab $inputBox(toplevelName)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1464 tkwait window $inputBox(toplevelName)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1465
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1466 return $inputBox($inputBox(toplevelName),inputOne)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1467 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1468
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1469
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1470 # Procedure: IsADir
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1471 proc IsADir { pathName} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1472 # xf ignore me 5
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1473 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1474 # Procedure: IsADir
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1475 # Description: check if name is a directory (including symbolic links)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1476 # Arguments: pathName - the path to check
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1477 # Returns: 1 if its a directory, otherwise 0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1478 # Sideeffects: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1479 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1480
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1481 if {[file isdirectory $pathName]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1482 return 1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1483 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1484 catch "file type $pathName" fileType
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1485 if {"$fileType" == "link"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1486 if {[catch "file readlink $pathName" linkName]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1487 return 0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1488 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1489 catch "file type $linkName" fileType
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1490 while {"$fileType" == "link"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1491 if {[catch "file readlink $linkName" linkName]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1492 return 0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1493 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1494 catch "file type $linkName" fileType
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1495 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1496 return [file isdirectory $linkName]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1497 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1498 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1499 return 0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1500 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1501
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1502
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1503 # Procedure: IsAFile
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1504 proc IsAFile { fileName} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1505 # xf ignore me 5
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1506 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1507 # Procedure: IsAFile
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1508 # Description: check if filename is a file (including symbolic links)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1509 # Arguments: fileName - the filename to check
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1510 # Returns: 1 if its a file, otherwise 0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1511 # Sideeffects: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1512 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1513
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1514 if {[file isfile $fileName]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1515 return 1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1516 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1517 catch "file type $fileName" fileType
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1518 if {"$fileType" == "link"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1519 if {[catch "file readlink $fileName" linkName]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1520 return 0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1521 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1522 catch "file type $linkName" fileType
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1523 while {"$fileType" == "link"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1524 if {[catch "file readlink $linkName" linkName]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1525 return 0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1526 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1527 catch "file type $linkName" fileType
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1528 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1529 return [file isfile $linkName]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1530 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1531 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1532 return 0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1533 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1534
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1535
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1536 # Procedure: IsASymlink
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1537 proc IsASymlink { fileName} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1538 # xf ignore me 5
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1539 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1540 # Procedure: IsASymlink
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1541 # Description: check if filename is a symbolic link
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1542 # Arguments: fileName - the path/filename to check
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1543 # Returns: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1544 # Sideeffects: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1545 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1546
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1547 catch "file type $fileName" fileType
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1548 if {"$fileType" == "link"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1549 return 1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1550 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1551 return 0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1552 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1553
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1554
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1555 # Procedure: PrologCommand
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1556 proc PrologCommand {} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1557 prolog {prolog_call [InputBoxOne "Prolog Command:"]} lite
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1558 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1559
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1560
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1561 # Procedure: TokioCommand
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1562 proc TokioCommand {} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1563 prolog {tokio_call [InputBoxOne "Tokio Command:"]} lite
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1564 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1565
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1566
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1567 # Procedure: canvaswh
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1568 proc canvaswh { c scale} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1569 global scalex scaley
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1570 if {! $scalex && ! $scaley } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1571 regexp {([0-9]+)x([0-9]+)} [wm geometry .] dm w h
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1572 set h [$c canvasy [expr $h/2]]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1573 set w [$c canvasx [expr $w/2]]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1574 } else {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1575 set h $scaley
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1576 set w $scalex
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1577 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1578 $c scale all $w $h $scale $scale
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1579 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1580
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1581
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1582 # Procedure: crosshair
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1583 proc crosshair { c x y} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1584 global scalex scaley
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1585 if {[$c find withtag cursol] != {}} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1586 $c delete cursol
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1587 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1588 set cs 5
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1589 set x [$c canvasx $x]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1590 set y [$c canvasy $y]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1591 $c create line $x [expr $y - $cs] $x [expr $y + $cs] -tags cursol
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1592 $c create line [expr $x - $cs] $y [expr $x + $cs] $y -tags cursol
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1593 set scalex $x
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1594 set scaley $y
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1595 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1596
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1597
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1598 # Procedure: event
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1599 proc event { args now} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1600 prolog "tokio_event $args $now" tokio
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1601 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1602
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1603
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1604 # Procedure: filehandling
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1605 proc filehandling { t mode file} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1606 if {[string compare $mode "load"] == 0} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1607 if [file isfile $file] {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1608 $t delete 0.0 end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1609 set F [open $file r]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1610 while {[gets $F string] != -1} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1611 $t insert end "$string\n"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1612 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1613 close $F
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1614 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1615 } else {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1616 set line [$t get 0.0 end]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1617 # if [file writable $dir] {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1618 if [expr [llength $line] > 0] {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1619 set F [open $file w]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1620 puts $F $line
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1621 close $F
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1622 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1623 # }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1624 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1625 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1626
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1627
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1628 # Procedure: lite
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1629 proc lite { a b} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1630 prolog "event $a $b" lite
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1631 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1632
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1633
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1634 # Procedure: text_clear
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1635 proc text_clear { t} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1636 $t delete 0.0 end
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1637 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1638
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1639
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1640 # Internal procedures
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1641
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1642
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1643 # Procedure: Alias
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1644 if {"[info procs Alias]" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1645 proc Alias { args} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1646 # xf ignore me 7
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1647 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1648 # Procedure: Alias
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1649 # Description: establish an alias for a procedure
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1650 # Arguments: args - no argument means that a list of all aliases
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1651 # is returned. Otherwise the first parameter is
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1652 # the alias name, and the second parameter is
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1653 # the procedure that is aliased.
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1654 # Returns: nothing, the command that is bound to the alias or a
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1655 # list of all aliases - command pairs.
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1656 # Sideeffects: internalAliasList is updated, and the alias
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1657 # proc is inserted
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1658 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1659 global internalAliasList
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1660
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1661 if {[llength $args] == 0} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1662 return $internalAliasList
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1663 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1664 if {[llength $args] == 1} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1665 set xfTmpIndex [lsearch $internalAliasList "[lindex $args 0] *"]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1666 if {$xfTmpIndex != -1} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1667 return [lindex [lindex $internalAliasList $xfTmpIndex] 1]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1668 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1669 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1670 if {[llength $args] == 2} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1671 eval "proc [lindex $args 0] {args} {#xf ignore me 4
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1672 return \[eval \"[lindex $args 1] \$args\"\]}"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1673 set xfTmpIndex [lsearch $internalAliasList "[lindex $args 0] *"]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1674 if {$xfTmpIndex != -1} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1675 set internalAliasList [lreplace $internalAliasList $xfTmpIndex $xfTmpIndex "[lindex $args 0] [lindex $args 1]"]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1676 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1677 lappend internalAliasList "[lindex $args 0] [lindex $args 1]"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1678 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1679 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1680 error "Alias: wrong number or args: $args"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1681 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1682 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1683 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1684 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1685 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1686
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1687
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1688 # Procedure: GetSelection
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1689 if {"[info procs GetSelection]" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1690 proc GetSelection {} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1691 # xf ignore me 7
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1692 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1693 # Procedure: GetSelection
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1694 # Description: get current selection
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1695 # Arguments: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1696 # Returns: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1697 # Sideeffects: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1698 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1699
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1700 # the save way
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1701 set xfSelection ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1702 catch "selection get" xfSelection
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1703 if {"$xfSelection" == "selection doesn't exist or form \"STRING\" not defined"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1704 return ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1705 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1706 return $xfSelection
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1707 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1708 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1709 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1710
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1711
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1712 # Procedure: MenuPopupAdd
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1713 if {"[info procs MenuPopupAdd]" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1714 proc MenuPopupAdd { xfW xfButton xfMenu {xfModifier ""} {xfCanvasTag ""}} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1715 # xf ignore me 7
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1716 # the popup menu handling is from (I already gave up with popup handling :-):
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1717 #
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1718 # Copyright 1991,1992 by James Noble.
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1719 # Everyone is granted permission to copy, modify and redistribute.
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1720 # This notice must be preserved on all copies or derivates.
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1721 #
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1722 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1723 # Procedure: MenuPopupAdd
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1724 # Description: attach a popup menu to widget
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1725 # Arguments: xfW - the widget
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1726 # xfButton - the button we use
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1727 # xfMenu - the menu to attach
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1728 # {xfModifier} - a optional modifier
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1729 # {xfCanvasTag} - a canvas tagOrId
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1730 # Returns: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1731 # Sideeffects: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1732 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1733 global tk_popupPriv
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1734
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1735 set tk_popupPriv($xfMenu,focus) ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1736 set tk_popupPriv($xfMenu,grab) ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1737 if {"$xfModifier" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1738 set press "$xfModifier-"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1739 set motion "$xfModifier-"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1740 set release "Any-"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1741 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1742 set press ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1743 set motion ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1744 set release ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1745 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1746
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1747 bind $xfMenu "<${motion}B${xfButton}-Motion>" "MenuPopupMotion $xfMenu %W %X %Y"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1748 bind $xfMenu "<${release}ButtonRelease-${xfButton}>" "MenuPopupRelease $xfMenu %W"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1749 if {"$xfCanvasTag" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1750 bind $xfW "<${press}ButtonPress-${xfButton}>" "MenuPopupPost $xfMenu %X %Y"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1751 bind $xfW "<${release}ButtonRelease-${xfButton}>" "MenuPopupRelease $xfMenu %W"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1752 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1753 $xfW bind $xfCanvasTag "<${press}ButtonPress-${xfButton}>" "MenuPopupPost $xfMenu %X %Y"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1754 $xfW bind $xfCanvasTag "<${release}ButtonRelease-${xfButton}>" "MenuPopupRelease $xfMenu %W"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1755 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1756 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1757 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1758
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1759
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1760 # Procedure: MenuPopupMotion
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1761 if {"[info procs MenuPopupMotion]" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1762 proc MenuPopupMotion { xfMenu xfW xfX xfY} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1763 # xf ignore me 7
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1764 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1765 # Procedure: MenuPopupMotion
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1766 # Description: handle the popup menu motion
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1767 # Arguments: xfMenu - the topmost menu
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1768 # xfW - the menu
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1769 # xfX - the root x coordinate
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1770 # xfY - the root x coordinate
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1771 # Returns: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1772 # Sideeffects: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1773 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1774 global tk_popupPriv
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1775
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1776 if {"[info commands $xfW]" != "" && [winfo ismapped $xfW] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1777 "[winfo class $xfW]" == "Menu" &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1778 [info exists tk_popupPriv($xfMenu,focus)] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1779 "$tk_popupPriv($xfMenu,focus)" != "" &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1780 [info exists tk_popupPriv($xfMenu,grab)] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1781 "$tk_popupPriv($xfMenu,grab)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1782 set xfPopMinX [winfo rootx $xfW]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1783 set xfPopMaxX [expr $xfPopMinX+[winfo width $xfW]]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1784 if {$xfX >= $xfPopMinX && $xfX <= $xfPopMaxX} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1785 $xfW activate @[expr $xfY-[winfo rooty $xfW]]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1786 if {![catch "$xfW entryconfig @[expr $xfY-[winfo rooty $xfW]] -menu" result]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1787 if {"[lindex $result 4]" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1788 foreach binding [bind $xfMenu] {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1789 bind [lindex $result 4] $binding [bind $xfMenu $binding]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1790 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1791 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1792 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1793 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1794 $xfW activate none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1795 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1796 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1797 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1798 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1799
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1800
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1801 # Procedure: MenuPopupPost
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1802 if {"[info procs MenuPopupPost]" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1803 proc MenuPopupPost { xfMenu xfX xfY} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1804 # xf ignore me 7
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1805 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1806 # Procedure: MenuPopupPost
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1807 # Description: post the popup menu
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1808 # Arguments: xfMenu - the menu
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1809 # xfX - the root x coordinate
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1810 # xfY - the root x coordinate
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1811 # Returns: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1812 # Sideeffects: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1813 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1814 global tk_popupPriv
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1815
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1816 if {"[info commands $xfMenu]" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1817 if {![info exists tk_popupPriv($xfMenu,focus)]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1818 set tk_popupPriv($xfMenu,focus) [focus]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1819 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1820 if {"$tk_popupPriv($xfMenu,focus)" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1821 set tk_popupPriv($xfMenu,focus) [focus]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1822 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1823 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1824 set tk_popupPriv($xfMenu,grab) $xfMenu
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1825
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1826 catch "$xfMenu activate none"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1827 catch "$xfMenu post $xfX $xfY"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1828 catch "focus $xfMenu"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1829 catch "grab -global $xfMenu"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1830 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1831 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1832 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1833
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1834
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1835 # Procedure: MenuPopupRelease
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1836 if {"[info procs MenuPopupRelease]" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1837 proc MenuPopupRelease { xfMenu xfW} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1838 # xf ignore me 7
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1839 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1840 # Procedure: MenuPopupRelease
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1841 # Description: remove the popup menu
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1842 # Arguments: xfMenu - the topmost menu widget
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1843 # xfW - the menu widget
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1844 # Returns: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1845 # Sideeffects: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1846 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1847 global tk_popupPriv
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1848 global tkVersion
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1849
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1850 if {"[info commands $xfW]" != "" && [winfo ismapped $xfW] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1851 "[winfo class $xfW]" == "Menu" &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1852 [info exists tk_popupPriv($xfMenu,focus)] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1853 "$tk_popupPriv($xfMenu,focus)" != "" &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1854 [info exists tk_popupPriv($xfMenu,grab)] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1855 "$tk_popupPriv($xfMenu,grab)" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1856 if {$tkVersion >= 3.0} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1857 catch "grab release $tk_popupPriv($xfMenu,grab)"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1858 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1859 catch "grab none"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1860 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1861 catch "focus $tk_popupPriv($xfMenu,focus)"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1862 set tk_popupPriv($xfMenu,focus) ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1863 set tk_popupPriv($xfMenu,grab) ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1864 if {"[$xfW index active]" != "none"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1865 $xfW invoke active; catch "$xfMenu unpost"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1866 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1867 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1868 catch "$xfMenu unpost"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1869 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1870 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1871
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1872
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1873 # Procedure: NoFunction
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1874 if {"[info procs NoFunction]" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1875 proc NoFunction { args} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1876 # xf ignore me 7
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1877 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1878 # Procedure: NoFunction
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1879 # Description: do nothing (especially with scales and scrollbars)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1880 # Arguments: args - a number of ignored parameters
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1881 # Returns: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1882 # Sideeffects: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1883 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1884 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1885 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1886
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1887
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1888 # Procedure: SN
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1889 if {"[info procs SN]" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1890 proc SN { {xfName ""}} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1891 # xf ignore me 7
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1892 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1893 # Procedure: SN
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1894 # Description: map a symbolic name to the widget path
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1895 # Arguments: xfName
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1896 # Returns: the symbolic name
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1897 # Sideeffects: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1898 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1899
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1900 SymbolicName $xfName
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1901 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1902 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1903
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1904
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1905 # Procedure: SymbolicName
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1906 if {"[info procs SymbolicName]" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1907 proc SymbolicName { {xfName ""}} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1908 # xf ignore me 7
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1909 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1910 # Procedure: SymbolicName
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1911 # Description: map a symbolic name to the widget path
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1912 # Arguments: xfName
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1913 # Returns: the symbolic name
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1914 # Sideeffects: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1915 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1916
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1917 global symbolicName
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1918
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1919 if {"$xfName" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1920 set xfArrayName ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1921 append xfArrayName symbolicName ( $xfName )
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1922 if {![catch "set \"$xfArrayName\"" xfValue]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1923 return $xfValue
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1924 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1925 if {"[info commands XFProcError]" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1926 XFProcError "Unknown symbolic name:\n$xfName"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1927 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1928 puts stderr "XF error: unknown symbolic name:\n$xfName"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1929 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1930 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1931 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1932 return ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1933 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1934 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1935
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1936
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1937 # Procedure: Unalias
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1938 if {"[info procs Unalias]" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1939 proc Unalias { aliasName} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1940 # xf ignore me 7
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1941 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1942 # Procedure: Unalias
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1943 # Description: remove an alias for a procedure
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1944 # Arguments: aliasName - the alias name to remove
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1945 # Returns: none
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1946 # Sideeffects: internalAliasList is updated, and the alias
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1947 # proc is removed
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1948 ##########
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1949 global internalAliasList
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1950
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1951 set xfIndex [lsearch $internalAliasList "$aliasName *"]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1952 if {$xfIndex != -1} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1953 rename $aliasName ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1954 set internalAliasList [lreplace $internalAliasList $xfIndex $xfIndex]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1955 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1956 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1957 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1958
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1959
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1960
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1961 # application parsing procedure
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1962 proc XFLocalParseAppDefs {xfAppDefFile} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1963 global xfAppDefaults
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1964
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1965 # basically from: Michael Moore
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1966 if {[file exists $xfAppDefFile] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1967 [file readable $xfAppDefFile] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1968 "[file type $xfAppDefFile]" == "link"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1969 catch "file type $xfAppDefFile" xfType
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1970 while {"$xfType" == "link"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1971 if {[catch "file readlink $xfAppDefFile" xfAppDefFile]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1972 return
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1973 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1974 catch "file type $xfAppDefFile" xfType
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1975 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1976 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1977 if {!("$xfAppDefFile" != "" &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1978 [file exists $xfAppDefFile] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1979 [file readable $xfAppDefFile] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1980 "[file type $xfAppDefFile]" == "file")} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1981 return
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1982 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1983 if {![catch "open $xfAppDefFile r" xfResult]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1984 set xfAppFileContents [read $xfResult]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1985 close $xfResult
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1986 foreach line [split $xfAppFileContents "\n"] {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1987 # backup indicates how far to backup. It applies to the
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1988 # situation where a resource name ends in . and when it
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1989 # ends in *. In the second case you want to keep the *
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1990 # in the widget name for pattern matching, but you want
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1991 # to get rid of the . if it is the end of the name.
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1992 set backup -2
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1993 set line [string trim $line]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1994 if {[string index $line 0] == "#" || "$line" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1995 # skip comments and empty lines
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1996 continue
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1997 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1998 set list [split $line ":"]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1999 set resource [string trim [lindex $list 0]]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2000 set i [string last "." $resource]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2001 set j [string last "*" $resource]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2002 if {$j > $i} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2003 set i $j
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2004 set backup -1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2005 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2006 incr i
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2007 set name [string range $resource $i end]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2008 incr i $backup
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2009 set widname [string range $resource 0 $i]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2010 set value [string trim [lindex $list 1]]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2011 if {"$widname" != "" && "$widname" != "*"} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2012 # insert the widget and resourcename to the application
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2013 # defaults list.
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2014 if {![info exists xfAppDefaults]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2015 set xfAppDefaults ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2016 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2017 lappend xfAppDefaults [list $widname [string tolower $name] $value]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2018 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2019 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2020 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2021 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2022
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2023 # application loading procedure
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2024 proc XFLocalLoadAppDefs {{xfClasses ""} {xfPriority "startupFile"} {xfAppDefFile ""}} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2025 global env
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2026
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2027 if {"$xfAppDefFile" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2028 set xfFileList ""
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2029 if {[info exists env(XUSERFILESEARCHPATH)]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2030 append xfFileList [split $env(XUSERFILESEARCHPATH) :]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2031 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2032 if {[info exists env(XAPPLRESDIR)]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2033 append xfFileList [split $env(XAPPLRESDIR) :]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2034 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2035 if {[info exists env(XFILESEARCHPATH)]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2036 append xfFileList [split $env(XFILESEARCHPATH) :]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2037 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2038 append xfFileList " /usr/lib/X11/app-defaults"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2039 append xfFileList " /usr/X11/lib/X11/app-defaults"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2040
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2041 foreach xfCounter1 $xfClasses {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2042 foreach xfCounter2 $xfFileList {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2043 set xfPathName $xfCounter2
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2044 if {[regsub -all "%N" "$xfPathName" "$xfCounter1" xfResult]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2045 set xfPathName $xfResult
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2046 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2047 if {[regsub -all "%T" "$xfPathName" "app-defaults" xfResult]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2048 set xfPathName $xfResult
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2049 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2050 if {[regsub -all "%S" "$xfPathName" "" xfResult]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2051 set xfPathName $xfResult
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2052 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2053 if {[regsub -all "%C" "$xfPathName" "" xfResult]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2054 set xfPathName $xfResult
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2055 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2056 if {[file exists $xfPathName] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2057 [file readable $xfPathName] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2058 ("[file type $xfPathName]" == "file" ||
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2059 "[file type $xfPathName]" == "link")} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2060 catch "option readfile $xfPathName $xfPriority"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2061 if {"[info commands XFParseAppDefs]" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2062 XFParseAppDefs $xfPathName
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2063 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2064 if {"[info commands XFLocalParseAppDefs]" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2065 XFLocalParseAppDefs $xfPathName
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2066 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2067 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2068 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2069 if {[file exists $xfCounter2/$xfCounter1] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2070 [file readable $xfCounter2/$xfCounter1] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2071 ("[file type $xfCounter2/$xfCounter1]" == "file" ||
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2072 "[file type $xfCounter2/$xfCounter1]" == "link")} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2073 catch "option readfile $xfCounter2/$xfCounter1 $xfPriority"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2074 if {"[info commands XFParseAppDefs]" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2075 XFParseAppDefs $xfCounter2/$xfCounter1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2076 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2077 if {"[info commands XFLocalParseAppDefs]" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2078 XFLocalParseAppDefs $xfCounter2/$xfCounter1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2079 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2080 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2081 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2082 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2083 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2084 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2085 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2086 # load a specific application defaults file
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2087 if {[file exists $xfAppDefFile] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2088 [file readable $xfAppDefFile] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2089 ("[file type $xfAppDefFile]" == "file" ||
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2090 "[file type $xfAppDefFile]" == "link")} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2091 catch "option readfile $xfAppDefFile $xfPriority"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2092 if {"[info commands XFParseAppDefs]" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2093 XFParseAppDefs $xfAppDefFile
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2094 } {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2095 if {"[info commands XFLocalParseAppDefs]" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2096 XFLocalParseAppDefs $xfAppDefFile
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2097 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2098 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2099 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2100 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2101 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2102
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2103 # application setting procedure
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2104 proc XFLocalSetAppDefs {{xfWidgetPath "."}} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2105 global xfAppDefaults
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2106
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2107 if {![info exists xfAppDefaults]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2108 return
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2109 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2110 foreach xfCounter $xfAppDefaults {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2111 if {"$xfCounter" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2112 break
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2113 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2114 set widname [lindex $xfCounter 0]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2115 if {[string match $widname ${xfWidgetPath}] ||
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2116 [string match "${xfWidgetPath}*" $widname]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2117 set name [string tolower [lindex $xfCounter 1]]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2118 set value [lindex $xfCounter 2]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2119 # Now lets see how many tcl commands match the name
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2120 # pattern specified.
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2121 set widlist [info command $widname]
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2122 if {"$widlist" != ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2123 foreach widget $widlist {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2124 # make sure this command is a widget.
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2125 if {![catch "winfo id $widget"] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2126 [string match "${xfWidgetPath}*" $widget]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2127 catch "$widget configure -$name $value"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2128 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2129 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2130 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2131 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2132 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2133 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2134
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2135
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2136 # prepare auto loading
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2137 global auto_path
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2138 global tk_library
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2139 global xfLoadPath
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2140 foreach xfElement [eval list [split $xfLoadPath :] $auto_path] {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2141 if {[file exists $xfElement/tclIndex]} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2142 lappend auto_path $xfElement
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2143 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2144 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2145 catch "unset auto_index"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2146
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2147 catch "unset auto_oldpath"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2148
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2149 catch "unset auto_execs"
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2150
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2151
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2152 # initialize global variables
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2153 proc InitGlobals {} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2154 global {checkbutton5}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2155 set {checkbutton5} {0}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2156 global {fsBox}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2157 set {fsBox(activeBackground)} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2158 set {fsBox(activeForeground)} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2159 set {fsBox(all)} {0}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2160 set {fsBox(background)} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2161 set {fsBox(button)} {0}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2162 set {fsBox(extensions)} {0}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2163 set {fsBox(font)} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2164 set {fsBox(foreground)} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2165 set {fsBox(internalPath)} {/user/kono/ITL/demo}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2166 set {fsBox(name)} {ahoaho}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2167 set {fsBox(path)} {/user/kono/ITL/demo}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2168 set {fsBox(pattern)} {*}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2169 set {fsBox(scrollActiveForeground)} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2170 set {fsBox(scrollBackground)} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2171 set {fsBox(scrollForeground)} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2172 set {fsBox(scrollSide)} {left}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2173 set {fsBox(showPixmap)} {0}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2174 global {inputBox}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2175 set {inputBox(activeBackground)} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2176 set {inputBox(activeForeground)} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2177 set {inputBox(anchor)} {n}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2178 set {inputBox(background)} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2179 set {inputBox(erase)} {1}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2180 set {inputBox(font)} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2181 set {inputBox(foreground)} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2182 set {inputBox(justify)} {center}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2183 set {inputBox(scrollActiveForeground)} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2184 set {inputBox(scrollBackground)} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2185 set {inputBox(scrollForeground)} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2186 set {inputBox(scrollSide)} {left}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2187 set {inputBox(toplevelName)} {.inputBox}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2188 global {scalex}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2189 set {scalex} {326}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2190 global {scaley}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2191 set {scaley} {194}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2192 global {verbose}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2193 set {verbose} {0}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2194
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2195 # please don't modify the following
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2196 # variables. They are needed by xf.
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2197 global {autoLoadList}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2198 set {autoLoadList(xf-disp)} {0}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2199 global {internalAliasList}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2200 set {internalAliasList} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2201 global {moduleList}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2202 set {moduleList(xf-disp)} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2203 global {preloadList}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2204 set {preloadList(xfInternal)} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2205 global {symbolicName}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2206 set {symbolicName(canvas)} {.top0.frame0.canvas2}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2207 set {symbolicName(diag)} {.top0.frame6.button8}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2208 set {symbolicName(entry)} {.frame.frame4.text0}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2209 set {symbolicName(execute)} {.top0.frame6.button10}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2210 set {symbolicName(generate)} {.top0.frame1.button0}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2211 set {symbolicName(map)} {.top0.frame1.button13}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2212 set {symbolicName(root)} {.}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2213 set {symbolicName(states)} {.top0.frame1.label6}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2214 set {symbolicName(verbose)} {.frame3.checkbutton5}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2215 set {symbolicName(verify)} {.frame3.button7}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2216 global {xfWmSetPosition}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2217 set {xfWmSetPosition} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2218 global {xfWmSetSize}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2219 set {xfWmSetSize} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2220 global {xfAppDefToplevels}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2221 set {xfAppDefToplevels} {}
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2222 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2223
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2224 # initialize global variables
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2225 InitGlobals
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2226
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2227 # display/remove toplevel windows.
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2228 ShowWindow.
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2229
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2230 global xfShowWindow.top0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2231 set xfShowWindow.top0 1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2232 ShowWindow.top0
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2233
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2234 # load default bindings.
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2235 if {[info exists env(XF_BIND_FILE)] &&
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2236 "[info procs XFShowHelp]" == ""} {
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2237 source $env(XF_BIND_FILE)
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2238 }
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2239
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2240 # parse and apply application defaults.
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2241 XFLocalLoadAppDefs Xf-disp
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2242 XFLocalSetAppDefs
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2243
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2244 # eof
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2245 #
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2246