author | tz |
Thu, 22 Jan 1998 21:43:44 +0100 | |
changeset 459 | fb5b5ecf7e86 |
parent 443 | 92f5e393873a |
child 469 | 28bcb1982ef9 |
permissions | -rw-r--r-- |
300 | 1 |
" |
2 |
COPYRIGHT (c) 1997 by eXept Software AG / Claus Gittinger |
|
3 |
All Rights Reserved |
|
4 |
||
5 |
This software is furnished under a license and may be used |
|
6 |
only in accordance with the terms of that license and with the |
|
7 |
inclusion of the above copyright notice. This software may not |
|
8 |
be provided or otherwise made available to, or used by, any |
|
9 |
other person. No title to or ownership of the software is |
|
10 |
hereby transferred. |
|
11 |
" |
|
12 |
||
13 |
||
14 |
||
15 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
16 |
ToolApplicationModel subclass:#HierarchicalListEditor |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
17 |
instanceVariableNames:'isModified didInstall treeView specClass specSelector' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
18 |
classVariableNames:'CopyBuffer' |
300 | 19 |
poolDictionaries:'' |
20 |
category:'Interface-UIPainter' |
|
21 |
! |
|
22 |
||
23 |
!HierarchicalListEditor class methodsFor:'documentation'! |
|
24 |
||
25 |
copyright |
|
26 |
" |
|
27 |
COPYRIGHT (c) 1997 by eXept Software AG / Claus Gittinger |
|
28 |
All Rights Reserved |
|
29 |
||
30 |
This software is furnished under a license and may be used |
|
31 |
only in accordance with the terms of that license and with the |
|
32 |
inclusion of the above copyright notice. This software may not |
|
33 |
be provided or otherwise made available to, or used by, any |
|
34 |
other person. No title to or ownership of the software is |
|
35 |
hereby transferred. |
|
36 |
" |
|
37 |
||
38 |
||
39 |
||
40 |
! |
|
41 |
||
42 |
documentation |
|
43 |
" |
|
44 |
HierarchicalListEditor is used by the UIPainter to |
|
45 |
create or maintain a hierarchical list. |
|
46 |
||
47 |
[start with:] |
|
48 |
HierarchicalListEditor open |
|
49 |
||
50 |
[see also:] |
|
51 |
UIPainter |
|
52 |
||
53 |
[author:] |
|
54 |
Claus Atzkern |
|
55 |
" |
|
56 |
||
57 |
||
58 |
||
59 |
! ! |
|
60 |
||
61 |
!HierarchicalListEditor class methodsFor:'interface specs'! |
|
62 |
||
63 |
classAndMethodSpec |
|
64 |
"this window spec was automatically generated by the ST/X UIPainter" |
|
65 |
||
66 |
"do not manually edit this - the painter/builder may not be able to |
|
67 |
handle the specification if its corrupted." |
|
68 |
||
69 |
" |
|
70 |
UIPainter new openOnClass:HierarchicalListEditor andSelector:#classAndMethodSpec |
|
71 |
HierarchicalListEditor new openInterface:#classAndMethodSpec |
|
72 |
" |
|
73 |
||
74 |
<resource: #canvas> |
|
75 |
||
76 |
^ |
|
77 |
||
78 |
#(#FullSpec |
|
79 |
#'window:' |
|
80 |
#(#WindowSpec |
|
81 |
#'name:' 'Painter' |
|
430
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
82 |
#'layout:' #(#LayoutFrame 233 0 430 0 533 0 558 0) |
300 | 83 |
#'label:' 'Painter' |
84 |
#'min:' #(#Point 10 10) |
|
85 |
#'max:' #(#Point 1160 870) |
|
430
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
86 |
#'bounds:' #(#Rectangle 233 430 534 559) |
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
87 |
#'usePreferredExtent:' false |
300 | 88 |
) |
89 |
#'component:' |
|
90 |
#(#SpecCollection |
|
91 |
#'collection:' |
|
92 |
#( |
|
93 |
#(#LabelSpec |
|
94 |
#'name:' 'boxLabel' |
|
95 |
#'layout:' #(#Point 5 10) |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
96 |
#'label:' 'Class and selector for code:' |
300 | 97 |
#'adjust:' #left |
98 |
#'resizeForLabel:' true |
|
99 |
) |
|
100 |
#(#LabelSpec |
|
101 |
#'name:' 'classLabel' |
|
102 |
#'layout:' #(#AlignmentOrigin 45 0.11 51 0 1 0.5) |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
103 |
#'label:' 'Class:' |
300 | 104 |
#'adjust:' #right |
105 |
#'resizeForLabel:' true |
|
106 |
) |
|
107 |
#(#InputFieldSpec |
|
108 |
#'name:' 'classField' |
|
109 |
#'layout:' #(#LayoutFrame 47 0.11 39 0 -2 1.0 61 0) |
|
110 |
#'tabable:' true |
|
111 |
#'model:' #specClassChannel |
|
112 |
) |
|
113 |
#(#LabelSpec |
|
114 |
#'name:' 'methodLabel' |
|
115 |
#'layout:' #(#AlignmentOrigin 45 0.11 74 0 1 0.5) |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
116 |
#'label:' 'Selector:' |
300 | 117 |
#'adjust:' #right |
118 |
#'resizeForLabel:' true |
|
119 |
) |
|
120 |
#(#InputFieldSpec |
|
121 |
#'name:' 'methodField' |
|
122 |
#'layout:' #(#LayoutFrame 47 0.11 64 0 -2 1.0 86 0) |
|
123 |
#'tabable:' true |
|
124 |
#'model:' #specSelectorChannel |
|
125 |
#'type:' #string |
|
126 |
) |
|
430
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
127 |
#(#UISubSpecification |
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
128 |
#'name:' 'SubSpecification' |
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
129 |
#'layout:' #(#LayoutFrame 0 0.0 -29 1 0 1.0 -5 1.0) |
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
130 |
#'majorKey:' #ToolApplicationModel |
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
131 |
#'minorKey:' #windowSpecForCommitWithoutChannels |
300 | 132 |
) |
133 |
) |
|
134 |
) |
|
135 |
) |
|
136 |
! |
|
137 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
138 |
menu |
300 | 139 |
"this window spec was automatically generated by the ST/X MenuEditor" |
140 |
||
141 |
"do not manually edit this - the builder may not be able to |
|
142 |
handle the specification if its corrupted." |
|
143 |
||
144 |
" |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
145 |
MenuEditor new openOnClass:HierarchicalListEditor andSelector:#menu |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
146 |
(Menu new fromLiteralArrayEncoding:(HierarchicalListEditor menu)) startUp |
300 | 147 |
" |
148 |
||
149 |
<resource: #menu> |
|
150 |
||
151 |
^ |
|
152 |
||
153 |
#(#Menu |
|
154 |
||
155 |
#( |
|
156 |
#(#MenuItem |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
157 |
#'label:' 'About' |
443 | 158 |
#'labelImage:' #(#ResourceRetriever nil #icon) |
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
159 |
#'submenuChannel:' #menuAbout |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
160 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
161 |
#(#MenuItem |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
162 |
#'label:' 'File' |
300 | 163 |
#'submenu:' |
164 |
#(#Menu |
|
165 |
||
166 |
#( |
|
167 |
#(#MenuItem |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
168 |
#'label:' 'New' |
300 | 169 |
#'value:' #doNew |
170 |
) |
|
171 |
#(#MenuItem |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
172 |
#'label:' 'Reload' |
300 | 173 |
#'value:' #doReload |
174 |
) |
|
175 |
#(#MenuItem |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
176 |
#'label:' '-' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
177 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
178 |
#(#MenuItem |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
179 |
#'label:' 'Save' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
180 |
#'value:' #doInstall |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
181 |
#'enabled:' #hasValidClass |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
182 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
183 |
#(#MenuItem |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
184 |
#'label:' '-' |
300 | 185 |
) |
186 |
#(#MenuItem |
|
433 | 187 |
#'label:' 'Define Selector...' |
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
188 |
#'value:' #doDefineSelector |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
189 |
#'enabled:' #hasValidClass |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
190 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
191 |
#(#MenuItem |
433 | 192 |
#'label:' 'Define Class...' |
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
193 |
#'value:' #doDefineClass |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
194 |
#'enabled:' #canChangeClassName |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
195 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
196 |
#(#MenuItem |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
197 |
#'label:' '-' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
198 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
199 |
#(#MenuItem |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
200 |
#'label:' 'Exit' |
300 | 201 |
#'value:' #closeRequest |
202 |
) |
|
203 |
) nil |
|
204 |
nil |
|
205 |
) |
|
206 |
) |
|
207 |
#(#MenuItem |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
208 |
#'label:' 'Edit' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
209 |
#'submenuChannel:' #menuEdit |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
210 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
211 |
#(#MenuItem |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
212 |
#'label:' 'Browse' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
213 |
#'enabled:' #hasValidClass |
300 | 214 |
#'submenu:' |
215 |
#(#Menu |
|
216 |
||
217 |
#( |
|
218 |
#(#MenuItem |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
219 |
#'label:' 'Class' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
220 |
#'value:' #'doBrowse:' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
221 |
#'argument:' #class |
300 | 222 |
) |
223 |
#(#MenuItem |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
224 |
#'label:' 'Method' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
225 |
#'value:' #'doBrowse:' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
226 |
#'enabled:' #hasValidMethodSelector |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
227 |
#'argument:' #method |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
228 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
229 |
#(#MenuItem |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
230 |
#'label:' 'Specification' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
231 |
#'value:' #'doBrowse:' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
232 |
#'enabled:' #hasValidSpecSelector |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
233 |
#'argument:' #spec |
300 | 234 |
) |
235 |
) nil |
|
236 |
nil |
|
237 |
) |
|
238 |
) |
|
239 |
) nil |
|
240 |
nil |
|
241 |
) |
|
242 |
! |
|
243 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
244 |
menuEdit |
300 | 245 |
"this window spec was automatically generated by the ST/X MenuEditor" |
246 |
||
247 |
"do not manually edit this - the builder may not be able to |
|
248 |
handle the specification if its corrupted." |
|
249 |
||
250 |
" |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
251 |
MenuEditor new openOnClass:HierarchicalListEditor andSelector:#menuEdit |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
252 |
(Menu new fromLiteralArrayEncoding:(HierarchicalListEditor menuEdit)) startUp |
300 | 253 |
" |
254 |
||
255 |
<resource: #menu> |
|
256 |
||
257 |
^ |
|
258 |
||
259 |
#(#Menu |
|
260 |
||
261 |
#( |
|
262 |
#(#MenuItem |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
263 |
#'label:' 'Cut' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
264 |
#'value:' #doCut |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
265 |
#'enabled:' #canCut |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
266 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
267 |
#(#MenuItem |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
268 |
#'label:' 'Copy' |
300 | 269 |
#'value:' #doCopy |
270 |
#'enabled:' #canCopy |
|
271 |
) |
|
272 |
#(#MenuItem |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
273 |
#'label:' 'Paste' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
274 |
#'value:' #doPaste |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
275 |
#'enabled:' #canPaste |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
276 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
277 |
#(#MenuItem |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
278 |
#'label:' '-' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
279 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
280 |
#(#MenuItem |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
281 |
#'label:' 'Create Child' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
282 |
#'value:' #doCreateChild |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
283 |
#'enabled:' #canCreateChildChannel |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
284 |
#'labelImage:' #(#ResourceRetriever #HierarchicalListEditor #iconCreateChild) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
285 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
286 |
#(#MenuItem |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
287 |
#'label:' 'Create Sister' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
288 |
#'value:' #doCreateSister |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
289 |
#'enabled:' #canCreateSisterChannel |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
290 |
#'labelImage:' #(#ResourceRetriever #HierarchicalListEditor #iconCreateSister) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
291 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
292 |
) nil |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
293 |
nil |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
294 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
295 |
! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
296 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
297 |
menuToolbar |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
298 |
"this window spec was automatically generated by the ST/X MenuEditor" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
299 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
300 |
"do not manually edit this - the builder may not be able to |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
301 |
handle the specification if its corrupted." |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
302 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
303 |
" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
304 |
MenuEditor new openOnClass:HierarchicalListEditor andSelector:#menuToolbar |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
305 |
(Menu new fromLiteralArrayEncoding:(HierarchicalListEditor menuToolbar)) startUp |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
306 |
" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
307 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
308 |
<resource: #menu> |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
309 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
310 |
^ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
311 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
312 |
#(#Menu |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
313 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
314 |
#( |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
315 |
#(#MenuItem |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
316 |
#'label:' 'New' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
317 |
#'isButton:' true |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
318 |
#'value:' #doNew |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
319 |
#'enabled:' #canCreateChildChannel |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
320 |
#'labelImage:' #(#ResourceRetriever nil #newIcon) |
300 | 321 |
) |
322 |
#(#MenuItem |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
323 |
#'label:' 'Save' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
324 |
#'isButton:' true |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
325 |
#'value:' #doInstall |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
326 |
#'enabled:' #canCreateChildChannel |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
327 |
#'labelImage:' #(#ResourceRetriever nil #saveIcon) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
328 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
329 |
#(#MenuItem |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
330 |
#'label:' '' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
331 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
332 |
#(#MenuItem |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
333 |
#'label:' 'Create Child' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
334 |
#'isButton:' true |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
335 |
#'value:' #doCreateChild |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
336 |
#'enabled:' #canCreateChildChannel |
430
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
337 |
#'labelImage:' #(#ResourceRetriever nil #createChildIcon) |
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
338 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
339 |
#(#MenuItem |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
340 |
#'label:' 'Create Sister' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
341 |
#'isButton:' true |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
342 |
#'value:' #doCreateSister |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
343 |
#'enabled:' #canCreateSisterChannel |
430
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
344 |
#'labelImage:' #(#ResourceRetriever nil #createSisterIcon) |
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
345 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
346 |
#(#MenuItem |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
347 |
#'label:' '' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
348 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
349 |
#(#MenuItem |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
350 |
#'label:' 'Step Up' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
351 |
#'isButton:' true |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
352 |
#'value:' #doStepUp |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
353 |
#'enabled:' #canStepOverChannel |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
354 |
#'labelImage:' #(#ResourceRetriever nil #upIcon) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
355 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
356 |
#(#MenuItem |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
357 |
#'label:' 'Step Down' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
358 |
#'isButton:' true |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
359 |
#'value:' #doStepDown |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
360 |
#'enabled:' #canStepOverChannel |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
361 |
#'labelImage:' #(#ResourceRetriever nil #downIcon) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
362 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
363 |
#(#MenuItem |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
364 |
#'label:' 'Step In' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
365 |
#'isButton:' true |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
366 |
#'value:' #doStepIn |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
367 |
#'enabled:' #canStepInChannel |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
368 |
#'labelImage:' #(#ResourceRetriever nil #downRightIcon) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
369 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
370 |
#(#MenuItem |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
371 |
#'label:' 'Step Out' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
372 |
#'isButton:' true |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
373 |
#'value:' #doStepOut |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
374 |
#'enabled:' #canStepOutChannel |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
375 |
#'labelImage:' #(#ResourceRetriever nil #leftDownIcon) |
300 | 376 |
) |
377 |
) nil |
|
378 |
nil |
|
379 |
) |
|
380 |
! |
|
381 |
||
382 |
methodSpec |
|
383 |
"this window spec was automatically generated by the ST/X UIPainter" |
|
384 |
||
385 |
"do not manually edit this - the painter/builder may not be able to |
|
386 |
handle the specification if its corrupted." |
|
387 |
||
388 |
" |
|
389 |
UIPainter new openOnClass:HierarchicalListEditor andSelector:#methodSpec |
|
390 |
HierarchicalListEditor new openInterface:#methodSpec |
|
391 |
" |
|
392 |
||
393 |
<resource: #canvas> |
|
394 |
||
395 |
^ |
|
396 |
||
397 |
#(#FullSpec |
|
398 |
#'window:' |
|
399 |
#(#WindowSpec |
|
400 |
#'name:' 'Painter' |
|
430
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
401 |
#'layout:' #(#LayoutFrame 151 0 377 0 431 0 455 0) |
300 | 402 |
#'label:' 'Painter' |
403 |
#'min:' #(#Point 10 10) |
|
404 |
#'max:' #(#Point 1160 870) |
|
430
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
405 |
#'bounds:' #(#Rectangle 151 377 432 456) |
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
406 |
#'usePreferredExtent:' false |
300 | 407 |
) |
408 |
#'component:' |
|
409 |
#(#SpecCollection |
|
410 |
#'collection:' |
|
411 |
#( |
|
412 |
#(#LabelSpec |
|
413 |
#'name:' 'boxLabel' |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
414 |
#'layout:' #(#LayoutFrame 0 0.0 3 0 0 1.0 20 0) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
415 |
#'label:' 'Selector for code:' |
300 | 416 |
#'adjust:' #left |
417 |
#'resizeForLabel:' true |
|
418 |
) |
|
419 |
#(#InputFieldSpec |
|
420 |
#'name:' 'methodField' |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
421 |
#'layout:' #(#LayoutFrame 0 0.0 22 0 0 1.0 44 0) |
300 | 422 |
#'tabable:' true |
423 |
#'model:' #specSelectorChannel |
|
424 |
#'type:' #string |
|
425 |
) |
|
430
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
426 |
#(#UISubSpecification |
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
427 |
#'name:' 'SubSpecification' |
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
428 |
#'layout:' #(#LayoutFrame 0 0.0 -29 1 0 1.0 -5 1.0) |
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
429 |
#'majorKey:' #ToolApplicationModel |
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
430 |
#'minorKey:' #windowSpecForCommitWithoutChannels |
300 | 431 |
) |
432 |
) |
|
433 |
) |
|
434 |
) |
|
435 |
! |
|
436 |
||
437 |
windowSpec |
|
438 |
"this window spec was automatically generated by the ST/X UIPainter" |
|
439 |
||
440 |
"do not manually edit this - the painter/builder may not be able to |
|
441 |
handle the specification if its corrupted." |
|
442 |
||
443 |
" |
|
444 |
UIPainter new openOnClass:HierarchicalListEditor andSelector:#windowSpec |
|
445 |
HierarchicalListEditor new openInterface:#windowSpec |
|
446 |
" |
|
447 |
"HierarchicalListEditor open" |
|
448 |
||
449 |
<resource: #canvas> |
|
450 |
||
451 |
^ |
|
452 |
||
453 |
#(#FullSpec |
|
454 |
#'window:' |
|
455 |
#(#WindowSpec |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
456 |
#'name:' 'Hierarchical List Editor' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
457 |
#'layout:' #(#LayoutFrame 67 0 325 0 541 0 637 0) |
300 | 458 |
#'label:' 'Hierarchical List Editor' |
459 |
#'min:' #(#Point 10 10) |
|
460 |
#'max:' #(#Point 1160 870) |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
461 |
#'bounds:' #(#Rectangle 67 325 542 638) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
462 |
#'menu:' #menu |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
463 |
#'usePreferredExtent:' false |
300 | 464 |
) |
465 |
#'component:' |
|
466 |
#(#SpecCollection |
|
467 |
#'collection:' |
|
468 |
#( |
|
469 |
#(#MenuPanelSpec |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
470 |
#'name:' 'menuToolbarView' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
471 |
#'layout:' #(#LayoutFrame 0 0.0 0 0.0 0 1.0 32 0) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
472 |
#'menu:' #menuToolbar |
300 | 473 |
) |
474 |
#(#VariableHorizontalPanelSpec |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
475 |
#'name:' 'variableHorizontalPanel' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
476 |
#'layout:' #(#LayoutFrame 0 0.0 34 0.0 0 1.0 -22 1.0) |
300 | 477 |
#'component:' |
478 |
#(#SpecCollection |
|
479 |
#'collection:' |
|
480 |
#( |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
481 |
#(#ArbitraryComponentSpec |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
482 |
#'name:' 'treeView' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
483 |
#'menu:' #menuEdit |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
484 |
#'hasHorizontalScrollBar:' true |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
485 |
#'hasVerticalScrollBar:' true |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
486 |
#'miniScrollerHorizontal:' true |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
487 |
#'miniScrollerVertical:' true |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
488 |
#'component:' #treeView |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
489 |
#'hasBorder:' false |
300 | 490 |
) |
491 |
#(#ViewSpec |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
492 |
#'name:' 'specView' |
300 | 493 |
#'component:' |
494 |
#(#SpecCollection |
|
495 |
#'collection:' |
|
496 |
#( |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
497 |
#(#LabelSpec |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
498 |
#'name:' 'nameLabel' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
499 |
#'layout:' #(#AlignmentOrigin 107 0 25 0 1 0.5) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
500 |
#'label:' 'Name:' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
501 |
#'resizeForLabel:' true |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
502 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
503 |
#(#InputFieldSpec |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
504 |
#'name:' 'nameInputField' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
505 |
#'layout:' #(#LayoutFrame 110 0 15 0 -5 1.0 37 0) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
506 |
#'model:' #itemName |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
507 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
508 |
#(#LabelSpec |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
509 |
#'name:' 'valueLabel' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
510 |
#'layout:' #(#AlignmentOrigin 107 0 51 0 1 0.5) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
511 |
#'label:' 'Value:' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
512 |
#'resizeForLabel:' true |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
513 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
514 |
#(#InputFieldSpec |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
515 |
#'name:' 'valueInputField' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
516 |
#'layout:' #(#LayoutFrame 110 0 41 0 -5 1.0 63 0) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
517 |
#'model:' #itemValue |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
518 |
#'type:' #symbolOrNil |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
519 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
520 |
#(#UISubSpecification |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
521 |
#'name:' 'SubSpecification' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
522 |
#'layout:' #(#LayoutFrame 2 0.0 -26 1.0 -2 1.0 -2 1.0) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
523 |
#'majorKey:' #ToolApplicationModel |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
524 |
#'minorKey:' #windowSpecForCommit |
300 | 525 |
) |
526 |
) |
|
527 |
) |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
528 |
#'level:' -1 |
300 | 529 |
) |
530 |
) |
|
531 |
) |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
532 |
#'handles:' #(#Any 0.368421 1.0) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
533 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
534 |
#(#LabelSpec |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
535 |
#'name:' 'infoLabel' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
536 |
#'layout:' #(#LayoutFrame 0 0.0 -22 1 -80 1.0 0 1.0) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
537 |
#'labelChannel:' #valueOfInfoLabel |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
538 |
#'level:' 1 |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
539 |
#'adjust:' #left |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
540 |
) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
541 |
#(#LabelSpec |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
542 |
#'name:' 'timeLabel' |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
543 |
#'layout:' #(#LayoutFrame -80 1 -22 1 0 1.0 0 1.0) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
544 |
#'labelChannel:' #valueOfTimeLabel |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
545 |
#'level:' 1 |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
546 |
#'adjust:' #right |
300 | 547 |
) |
548 |
) |
|
549 |
) |
|
550 |
) |
|
551 |
! ! |
|
552 |
||
553 |
!HierarchicalListEditor class methodsFor:'printing'! |
|
554 |
||
555 |
prettyPrintArray:anArray on:aStream indent:anIndent |
|
556 |
"print a literal array in a nice format |
|
557 |
" |
|
558 |
|arg sol| |
|
559 |
||
560 |
sol := aStream position. |
|
561 |
aStream spaces:anIndent. |
|
562 |
aStream nextPutAll:'#('. |
|
563 |
||
564 |
anArray first isSymbol ifTrue:[ |
|
565 |
arg := anArray first. |
|
566 |
aStream nextPut:$#. |
|
567 |
aStream nextPutAll:anArray first. |
|
568 |
aStream cr. |
|
569 |
anArray size == 2 ifTrue:[ |
|
570 |
self prettyPrintArray:(anArray last) |
|
571 |
on:aStream |
|
572 |
indent:(anIndent + 4). |
|
573 |
]. |
|
574 |
aStream spaces:anIndent. |
|
575 |
aStream nextPut:$). |
|
576 |
^ self |
|
577 |
]. |
|
578 |
||
579 |
aStream nextPut:$'. |
|
580 |
aStream nextPutAll:(anArray at:1). |
|
581 |
aStream nextPut:$'. |
|
582 |
arg := anArray at:2 ifAbsent:nil. |
|
583 |
||
584 |
arg isString ifTrue:[ |
|
585 |
aStream spaces:((50 - (aStream position - sol)) max:4). |
|
586 |
||
587 |
arg isSymbol ifTrue:[ |
|
588 |
aStream nextPut:$#. |
|
589 |
]. |
|
590 |
aStream nextPut:$'. |
|
591 |
aStream nextPutAll:arg. |
|
592 |
aStream nextPut:$'. |
|
593 |
arg := anArray at:3 ifAbsent:nil. |
|
594 |
]. |
|
595 |
arg isArray ifTrue:[ |
|
596 |
aStream nextPutAll:' #('. |
|
597 |
aStream cr. |
|
598 |
arg do:[:e|self prettyPrintArray:e on:aStream indent:(anIndent + 4)]. |
|
599 |
aStream spaces:anIndent. |
|
600 |
aStream nextPut:$). |
|
601 |
]. |
|
602 |
aStream nextPut:$). |
|
603 |
aStream cr. |
|
604 |
! ! |
|
605 |
||
430
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
606 |
!HierarchicalListEditor class methodsFor:'resources'! |
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
607 |
|
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
608 |
createChildIcon |
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
609 |
"ImageEditor openOnClass:self andSelector:#createChildIcon" |
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
610 |
|
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
611 |
<resource: #image> |
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
612 |
^(Depth2Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#(2 )); samplesPerPixel:(1); bits:(#[0 0 0 0 0 0 5 85 85 85 0 0 7 255 255 255 32 0 7 255 255 255 40 0 7 255 255 255 0 0 7 255 255 255 254 0 7 255 255 255 254 0 7 255 255 255 254 0 7 255 255 255 254 0 7 255 255 255 254 0 7 255 255 255 254 0 7 255 255 255 254 0 7 255 255 255 254 0 7 255 255 255 254 0 7 204 204 207 14 0 7 60 204 207 50 0 7 60 12 207 50 0 7 60 204 207 50 0 7 204 204 195 14 0 7 255 255 255 254 0 14 170 170 170 170 0 0 0 0 0 0 0]) ; colorMap:(((Array new:4) at:1 put:((Color black)); at:2 put:((Color white)); at:3 put:((Color grey:49.9962)); at:4 put:((Color grey:66.9978)); yourself)); mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(#[127 255 128 127 255 192 127 255 224 127 255 240 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248]) ; yourself); yourself! |
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
613 |
|
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
614 |
createSisterIcon |
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
615 |
"ImageEditor openOnClass:self andSelector:#createSisterIcon" |
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
616 |
|
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
617 |
<resource: #image> |
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
618 |
^(Depth2Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#(2 )); samplesPerPixel:(1); bits:(#[0 0 0 0 0 0 5 85 85 85 0 0 7 255 255 255 32 0 7 255 255 255 40 0 7 255 255 255 0 0 7 255 255 255 254 0 7 255 255 255 254 0 7 255 255 255 254 0 7 195 60 63 254 0 7 63 51 255 254 0 7 207 60 240 62 0 7 243 63 63 254 0 7 15 48 255 254 0 7 255 255 255 254 0 7 3 3 15 254 0 7 207 63 51 254 0 7 207 3 15 254 0 7 207 63 51 254 0 7 207 3 51 254 0 7 255 255 255 254 0 14 170 170 170 170 0 0 0 0 0 0 0]) ; colorMap:(((Array new:4) at:1 put:((Color black)); at:2 put:((Color white)); at:3 put:((Color grey:49.9962)); at:4 put:((Color grey:66.9978)); yourself)); mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(#[127 255 128 127 255 192 127 255 224 127 255 240 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248 127 255 248]) ; yourself); yourself! ! |
fa18d386b936
commit buttons replaced by subSpec in ToolApplicationModel + new button icons
tz
parents:
423
diff
changeset
|
619 |
|
300 | 620 |
!HierarchicalListEditor methodsFor:'accessing'! |
621 |
||
622 |
didInstall |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
623 |
"returns true if spec was installed by operator" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
624 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
625 |
^didInstall ? false |
300 | 626 |
! |
627 |
||
628 |
selectorName |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
629 |
"returns current spec. selector" |
300 | 630 |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
631 |
^specSelector |
300 | 632 |
! ! |
633 |
||
634 |
!HierarchicalListEditor methodsFor:'aspects'! |
|
635 |
||
636 |
canCreateChildChannel |
|
637 |
"automatically generated by UIPainter ..." |
|
638 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
639 |
^builder booleanValueAspectFor:#canCreateChildChannel |
300 | 640 |
|
641 |
! |
|
642 |
||
643 |
canCreateSisterChannel |
|
644 |
"automatically generated by UIPainter ..." |
|
645 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
646 |
^builder booleanValueAspectFor:#canCreateSisterChannel |
300 | 647 |
|
648 |
! |
|
649 |
||
650 |
canStepInChannel |
|
651 |
"automatically generated by UIPainter ..." |
|
652 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
653 |
^builder booleanValueAspectFor:#canStepInChannel |
300 | 654 |
|
655 |
! |
|
656 |
||
657 |
canStepOutChannel |
|
658 |
"automatically generated by UIPainter ..." |
|
659 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
660 |
^builder booleanValueAspectFor:#canStepOutChannel |
300 | 661 |
|
662 |
! |
|
663 |
||
664 |
canStepOverChannel |
|
665 |
"automatically generated by UIPainter ..." |
|
666 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
667 |
^builder booleanValueAspectFor:#canStepOverChannel |
300 | 668 |
|
669 |
! |
|
670 |
||
671 |
itemName |
|
672 |
"automatically generated by UIPainter ..." |
|
673 |
||
674 |
|holder| |
|
675 |
||
676 |
(holder := builder bindingAt:#itemName) isNil ifTrue:[ |
|
677 |
builder aspectAt:#itemName put:(holder := ValueHolder new). |
|
678 |
holder addDependent:self. |
|
679 |
]. |
|
680 |
^ holder |
|
681 |
! |
|
682 |
||
683 |
itemValue |
|
684 |
"automatically generated by UIPainter ..." |
|
685 |
||
686 |
|holder| |
|
687 |
||
688 |
(holder := builder bindingAt:#itemValue) isNil ifTrue:[ |
|
689 |
builder aspectAt:#itemValue put:(holder := ValueHolder new). |
|
690 |
holder addDependent:self. |
|
691 |
]. |
|
692 |
^ holder |
|
693 |
! |
|
694 |
||
695 |
treeView |
|
696 |
"automatically generated by UIPainter ..." |
|
697 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
698 |
^treeView |
300 | 699 |
! ! |
700 |
||
701 |
!HierarchicalListEditor methodsFor:'change & update'! |
|
702 |
||
703 |
update:something with:aParameter from:someObject |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
704 |
"one of my models changed" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
705 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
706 |
self valueOfEnablingCommitButtons value: true |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
707 |
! ! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
708 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
709 |
!HierarchicalListEditor methodsFor:'private'! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
710 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
711 |
checkMenuItemModified |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
712 |
"check item modification" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
713 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
714 |
self valueOfEnablingCommitButtons value |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
715 |
ifTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
716 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
717 |
((YesNoBox title:'Item was modified!!\Save it?\' withCRs) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
718 |
noText:'No'; |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
719 |
yesText:'Yes'; |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
720 |
showAtPointer; |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
721 |
accepted) ifFalse: [self valueOfEnablingCommitButtons value: false. ^true]. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
722 |
self accept |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
723 |
]. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
724 |
^true |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
725 |
! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
726 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
727 |
newItem |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
728 |
"creates and returns a new default item" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
729 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
730 |
^TreeItem name: 'Undefined' contents: nil |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
731 |
! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
732 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
733 |
updateChannels |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
734 |
"update channels" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
735 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
736 |
|node parent chnStepIn chnStepOut chnStepOvr chnChild chnSister| |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
737 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
738 |
chnStepIn := chnStepOut := chnStepOvr := chnChild := chnSister := false. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
739 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
740 |
(node := treeView selectedNode) notNil |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
741 |
ifTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
742 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
743 |
(builder componentAt: #specView) beVisible. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
744 |
chnChild := true. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
745 |
(parent := node parent) notNil |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
746 |
ifTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
747 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
748 |
chnSister := true. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
749 |
chnStepOvr := parent numberOfChildren > 1. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
750 |
chnStepOut := parent parent notNil. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
751 |
chnStepIn := node ~~ parent lastChild |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
752 |
] |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
753 |
] |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
754 |
ifFalse: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
755 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
756 |
(builder componentAt: #specView) beInvisible |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
757 |
]. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
758 |
self canCreateChildChannel value:chnChild. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
759 |
self canCreateSisterChannel value:chnSister. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
760 |
self canStepOverChannel value:chnStepOvr. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
761 |
self canStepOutChannel value:chnStepOut. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
762 |
self canStepInChannel value:chnStepIn |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
763 |
! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
764 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
765 |
updateInputFields |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
766 |
"reload item value into input fields" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
767 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
768 |
|node| |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
769 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
770 |
(node := treeView selectedNode) notNil |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
771 |
ifTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
772 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
773 |
self itemName value:node name. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
774 |
self itemValue value:node contents |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
775 |
] |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
776 |
ifFalse: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
777 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
778 |
self itemName value:''. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
779 |
self itemValue value:nil |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
780 |
]. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
781 |
self valueOfEnablingCommitButtons value: false |
300 | 782 |
! ! |
783 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
784 |
!HierarchicalListEditor methodsFor:'queries'! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
785 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
786 |
canChangeClassName |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
787 |
"returns true if current class could be changed which is dependent on |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
788 |
the mode: standalone or started by UIPainter" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
789 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
790 |
^masterApplication isNil |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
791 |
! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
792 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
793 |
canCopy |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
794 |
"returns true if any selection exists" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
795 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
796 |
^treeView selection notNil |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
797 |
! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
798 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
799 |
canCut |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
800 |
"returns true if any selection exists and not includes |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
801 |
the anchor (first element into list)." |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
802 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
803 |
treeView selection notNil ifTrue:[^(treeView isInSelection:1) not]. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
804 |
^false |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
805 |
! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
806 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
807 |
canPaste |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
808 |
"returns true if something to be paste exists and a |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
809 |
single selection exists" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
810 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
811 |
^CopyBuffer notNil and:[treeView selectedNode notNil] |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
812 |
! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
813 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
814 |
hasValidClass |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
815 |
"returns true if the class defined allready exists" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
816 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
817 |
^specClass isBehavior |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
818 |
! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
819 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
820 |
hasValidMethodSelector |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
821 |
"returns true if the class and the instance selector defined |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
822 |
allready exists." |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
823 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
824 |
(specSelector notNil and:[self hasValidClass]) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
825 |
ifTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
826 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
827 |
^(specClass compiledMethodAt:specSelector) notNil |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
828 |
]. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
829 |
^false |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
830 |
! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
831 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
832 |
hasValidSpecSelector |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
833 |
"returns true if the class and the class selector defined |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
834 |
allready exists." |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
835 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
836 |
(specSelector notNil and:[self hasValidClass]) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
837 |
ifTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
838 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
839 |
^(specClass class compiledMethodAt:specSelector) notNil |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
840 |
]. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
841 |
^false |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
842 |
! ! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
843 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
844 |
!HierarchicalListEditor methodsFor:'startup / release'! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
845 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
846 |
buildFrom:aClass andSelector:aSelector |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
847 |
"rebuild window from a class and selector" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
848 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
849 |
|sel anchor| |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
850 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
851 |
specClass := self resolveName:aClass. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
852 |
specSelector := nil. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
853 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
854 |
aSelector size ~~ 0 |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
855 |
ifTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
856 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
857 |
sel := aSelector asString withoutSeparators. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
858 |
sel size ~~ 0 ifTrue:[specSelector := sel asSymbol] |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
859 |
]. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
860 |
treeView selection:nil. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
861 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
862 |
(specSelector notNil and:[specClass notNil]) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
863 |
ifTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
864 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
865 |
(specClass respondsTo:specSelector) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
866 |
ifTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
867 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
868 |
anchor := specClass perform:specSelector. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
869 |
anchor isArray ifTrue:[anchor := anchor decodeAsLiteralArray] |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
870 |
] |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
871 |
]. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
872 |
anchor notNil |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
873 |
ifTrue: [anchor expand. treeView root:anchor] |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
874 |
ifFalse:[self doNew] |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
875 |
! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
876 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
877 |
initialize |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
878 |
"setup default values" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
879 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
880 |
super initialize. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
881 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
882 |
treeView := SelectionInTreeView new. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
883 |
treeView multipleSelectOk: true. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
884 |
treeView showDirectoryIndicator: true. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
885 |
treeView showDirectoryIndicatorForRoot: false. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
886 |
treeView action:[:aNr| self updateChannels. self updateInputFields]. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
887 |
treeView selectConditionBlock: [:i|self checkMenuItemModified]. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
888 |
treeView validateDoubleClickBlock: [:node| node ~~ treeView model list first]. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
889 |
self doNew. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
890 |
! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
891 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
892 |
openModalOnClass:aClass andSelector:aSelector |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
893 |
"open modal on class and selector" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
894 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
895 |
specClass := Association key:aClass value:aSelector. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
896 |
super openInterfaceModal. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
897 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
898 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
899 |
! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
900 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
901 |
openOnClass:aClass andSelector:aSelector |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
902 |
"open on class and selector" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
903 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
904 |
specClass := Association key:aClass value:aSelector. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
905 |
super openInterface. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
906 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
907 |
! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
908 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
909 |
postBuildWith:builder |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
910 |
"setup view" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
911 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
912 |
|cls sel| |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
913 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
914 |
specClass isAssociation ifTrue:[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
915 |
cls := specClass key. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
916 |
sel := specClass value. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
917 |
]. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
918 |
self buildFrom:cls andSelector:sel. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
919 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
920 |
! ! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
921 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
922 |
!HierarchicalListEditor methodsFor:'user actions'! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
923 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
924 |
accept |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
925 |
"invoked by button 'OK'" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
926 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
927 |
|node index| |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
928 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
929 |
(index := treeView selectedIndex) ~~ 0 |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
930 |
ifTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
931 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
932 |
node := treeView nodeAtIndex:index. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
933 |
node name: self itemName value. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
934 |
node contents: self itemValue value. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
935 |
treeView redrawLine:index. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
936 |
]. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
937 |
self valueOfEnablingCommitButtons value: false |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
938 |
! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
939 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
940 |
cancel |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
941 |
"invoked by button 'Cancel'" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
942 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
943 |
self updateInputFields. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
944 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
945 |
self valueOfEnablingCommitButtons value: false |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
946 |
! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
947 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
948 |
doBrowse:what |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
949 |
"open a system browser" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
950 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
951 |
|cls sel| |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
952 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
953 |
(cls := specClass) notNil |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
954 |
ifTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
955 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
956 |
what == #class |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
957 |
ifFalse: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
958 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
959 |
(sel := specSelector) isNil ifTrue:[^self]. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
960 |
what == #spec ifTrue:[cls := cls class] |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
961 |
]. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
962 |
SystemBrowser openInClass:cls selector:sel |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
963 |
] |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
964 |
! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
965 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
966 |
doCopy |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
967 |
"copy current selected nodes into copy buffer" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
968 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
969 |
CopyBuffer := OrderedCollection new. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
970 |
treeView selectedNodesDo:[:aNode| CopyBuffer add: aNode copy] |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
971 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
972 |
! |
300 | 973 |
|
974 |
doCreateChild |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
975 |
"create a child within selected parent" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
976 |
|
300 | 977 |
|node| |
978 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
979 |
(node := treeView selectedNode) notNil |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
980 |
ifTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
981 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
982 |
treeView model add: self newItem beforeIndex:1 below:node. |
300 | 983 |
treeView selectedNodeExpand:true. |
984 |
self updateChannels. |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
985 |
] |
300 | 986 |
! |
987 |
||
988 |
doCreateSister |
|
989 |
"create a sister next to selected item |
|
990 |
" |
|
991 |
|node| |
|
992 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
993 |
(node := treeView selectedNode) notNil |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
994 |
ifTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
995 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
996 |
node parent notNil |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
997 |
ifTrue: [treeView model add: self newItem after:node] |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
998 |
ifFalse:[treeView model add: self newItem beforeIndex:1 below:node]. |
300 | 999 |
self updateChannels |
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1000 |
] |
300 | 1001 |
! |
1002 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1003 |
doCut |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1004 |
"cut current selected nodes" |
300 | 1005 |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1006 |
|selection| |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1007 |
treeView hasSelection |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1008 |
ifTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1009 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1010 |
self doCopy. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1011 |
selection := treeView selection asSortedCollection. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1012 |
treeView selectedNodesRemove. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1013 |
treeView selection: selection first - 1. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1014 |
self updateChannels |
300 | 1015 |
] |
1016 |
! |
|
1017 |
||
1018 |
doDefineClass |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1019 |
"define class and selector" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1020 |
|
300 | 1021 |
|sel cls bindings accepted| |
1022 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1023 |
masterApplication notNil ifTrue:[^self information:'Only selector can be changed.']. |
300 | 1024 |
accepted := true. |
1025 |
bindings := IdentityDictionary new. |
|
1026 |
||
1027 |
specClass notNil ifTrue:[cls := specClass name asString] |
|
1028 |
ifFalse:[cls := '']. |
|
1029 |
||
1030 |
specSelector notNil ifTrue:[sel := specSelector asString] |
|
1031 |
ifFalse:[sel := '']. |
|
1032 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1033 |
bindings at:#specSelectorChannel put: sel asValue. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1034 |
bindings at:#specClassChannel put: cls asValue. |
300 | 1035 |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1036 |
[accepted] |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1037 |
whileTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1038 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1039 |
(accepted := self openDialogInterface:#classAndMethodSpec withBindings:bindings) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1040 |
ifTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1041 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1042 |
(cls := self resolveName:(bindings at:#specClassChannel) value) notNil |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1043 |
ifTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1044 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1045 |
(sel := (bindings at:#specSelectorChannel) value withoutSeparators) size ~~ 0 |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1046 |
ifTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1047 |
[ |
300 | 1048 |
specClass := cls. |
1049 |
specSelector := sel asSymbol. |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1050 |
^self |
300 | 1051 |
] |
1052 |
] |
|
1053 |
] |
|
1054 |
] |
|
1055 |
||
1056 |
! |
|
1057 |
||
1058 |
doDefineSelector |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1059 |
"define selector only" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1060 |
|
327
0040d47658c6
check - warnings eliminated. Fix in InspectorList.st
Claus Gittinger <cg@exept.de>
parents:
306
diff
changeset
|
1061 |
|sel bindings accepted| |
300 | 1062 |
|
1063 |
accepted := true. |
|
1064 |
bindings := IdentityDictionary new. |
|
1065 |
||
1066 |
specSelector notNil ifTrue:[sel := specSelector asString] |
|
1067 |
ifFalse:[sel := '']. |
|
1068 |
||
1069 |
bindings at:#specSelectorChannel put:(sel asValue). |
|
1070 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1071 |
[accepted] |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1072 |
whileTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1073 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1074 |
(accepted := self openDialogInterface:#methodSpec withBindings:bindings) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1075 |
ifTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1076 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1077 |
(sel := (bindings at:#specSelectorChannel) value withoutSeparators) size ~~ 0 |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1078 |
ifTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1079 |
[ |
300 | 1080 |
specSelector := sel asSymbol. |
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1081 |
^self |
300 | 1082 |
] |
1083 |
] |
|
1084 |
] |
|
1085 |
||
1086 |
! |
|
1087 |
||
1088 |
doInstall |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1089 |
"install code" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1090 |
|
300 | 1091 |
|code spec category mthd stream| |
1092 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1093 |
(specClass notNil and:[specSelector notNil]) |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1094 |
ifFalse: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1095 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1096 |
^self information:'No valid class and method defined!!' |
300 | 1097 |
]. |
1098 |
||
1099 |
spec := (treeView nodeAtIndex:1) literalArrayEncoding. |
|
1100 |
stream := WriteStream on:String new. |
|
1101 |
self class prettyPrintArray:spec on:stream indent:4. |
|
1102 |
spec := stream contents. |
|
1103 |
category := 'interface specs'. |
|
1104 |
didInstall := true. |
|
1105 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1106 |
(mthd := specClass class compiledMethodAt:specSelector) notNil |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1107 |
ifTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1108 |
[ |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1109 |
category := mthd category |
300 | 1110 |
]. |
1111 |
||
1112 |
code := Character excla asString |
|
1113 |
, specClass name , ' class methodsFor:' , category storeString |
|
1114 |
, Character excla asString , '\\' |
|
1115 |
||
1116 |
, specSelector , '\' |
|
1117 |
, ' "this window spec was automatically generated by the ST/X HierarchicalListEditor"\\' |
|
1118 |
, ' "do not manually edit this - the builder may not be able to\' |
|
1119 |
, ' handle the specification if its corrupted."\\' |
|
1120 |
, ' "\' |
|
1121 |
, ' HierarchicalListEditor new openOnClass:' , specClass name , ' andSelector:#' , specSelector , '\' |
|
1122 |
, ' "\'. |
|
1123 |
||
1124 |
code := code |
|
1125 |
, '\' |
|
1126 |
, ' <resource: #hierarchicalList>\\' |
|
1127 |
, ' ^\' |
|
1128 |
, spec |
|
1129 |
, ' decodeAsLiteralArray\' |
|
1130 |
, Character excla asString |
|
1131 |
, ' ' |
|
1132 |
, Character excla asString |
|
1133 |
, '\\'. |
|
1134 |
||
1135 |
code := code withCRs. |
|
1136 |
(ReadStream on:code) fileIn. |
|
1137 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1138 |
(specClass compiledMethodAt:specSelector) isNil |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1139 |
ifTrue: |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1140 |
[ |
300 | 1141 |
category := 'aspects'. |
1142 |
||
1143 |
code := Character excla asString |
|
1144 |
, specClass name , ' methodsFor:' , category storeString |
|
1145 |
, Character excla asString , '\\' |
|
1146 |
||
1147 |
, specSelector , '\' |
|
1148 |
, ' "this window spec was automatically generated by the ST/X HierarchicalListEditor"\\' |
|
306 | 1149 |
, ' ^ self class ', specSelector |
300 | 1150 |
, '\' |
1151 |
, Character excla asString |
|
1152 |
, ' ' |
|
1153 |
, Character excla asString |
|
1154 |
, '\\'. |
|
1155 |
||
1156 |
code := code withCRs. |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1157 |
(ReadStream on:code) fileIn |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1158 |
] |
300 | 1159 |
|
1160 |
||
1161 |
! |
|
1162 |
||
1163 |
doNew |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1164 |
"remove all items; restart" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1165 |
|
306 | 1166 |
treeView root:(TreeItem name:'Anchor' contents:#anchor). |
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1167 |
treeView selection:0 |
300 | 1168 |
|
1169 |
! |
|
1170 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1171 |
doPaste |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1172 |
"paste after current selected item" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1173 |
|
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1174 |
treeView selectedNodeAdd:CopyBuffer. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1175 |
self updateChannels |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1176 |
! |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1177 |
|
300 | 1178 |
doReload |
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1179 |
"reload spec from current class and selector" |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1180 |
|
300 | 1181 |
self buildFrom:specClass andSelector:specSelector |
1182 |
||
1183 |
! |
|
1184 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1185 |
doStepDown |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1186 |
"move selected item after next item" |
300 | 1187 |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1188 |
treeView selectedNodeChangeSequenceOrder:1. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1189 |
self updateChannels |
300 | 1190 |
! |
1191 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1192 |
doStepIn |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1193 |
"lets become the selected item a child of its next sister" |
300 | 1194 |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1195 |
treeView selectedNodeBecomeChildOfNext. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1196 |
self updateChannels |
300 | 1197 |
! |
1198 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1199 |
doStepOut |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1200 |
"let selected node become a sister of its current parent" |
300 | 1201 |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1202 |
treeView selectedNodeBecomeSisterOfParent. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1203 |
self updateChannels |
300 | 1204 |
! |
1205 |
||
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1206 |
doStepUp |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1207 |
"move selected item before previous item" |
300 | 1208 |
|
423
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1209 |
treeView selectedNodeChangeSequenceOrder:-1. |
ea6880a0e024
totally revised version; create icons will be changed next days
tz
parents:
372
diff
changeset
|
1210 |
self updateChannels |
300 | 1211 |
! ! |
1212 |
||
1213 |
!HierarchicalListEditor class methodsFor:'documentation'! |
|
1214 |
||
1215 |
version |
|
1216 |
^ '$Header$' |
|
1217 |
! ! |