author | Claus Gittinger <cg@exept.de> |
Thu, 09 Aug 2018 17:43:34 +0200 | |
changeset 3589 | e76569140275 |
parent 3587 | 438cc8200c87 |
child 3636 | 197a2fbb8c5d |
permissions | -rw-r--r-- |
3582 | 1 |
"{ Encoding: utf8 }" |
2 |
||
199 | 3 |
" |
738 | 4 |
COPYRIGHT (c) 1997 by eXept Software AG |
1606 | 5 |
All Rights Reserved |
199 | 6 |
|
7 |
This software is furnished under a license and may be used |
|
8 |
only in accordance with the terms of that license and with the |
|
738 | 9 |
inclusion of the above copyright notice. This software may not |
199 | 10 |
be provided or otherwise made available to, or used by, any |
11 |
other person. No title to or ownership of the software is |
|
12 |
hereby transferred. |
|
13 |
" |
|
1372 | 14 |
"{ Package: 'stx:libtool2' }" |
15 |
||
3178 | 16 |
"{ NameSpace: Smalltalk }" |
17 |
||
738 | 18 |
ResourceSpecEditor subclass:#MenuEditor |
1606 | 19 |
instanceVariableNames:'selectionHolder tabHolder listOfItems listOfTabs |
1618
9c9b649ce251
support drag & drop inside my widget (highlight the drop target)
ca
parents:
1617
diff
changeset
|
20 |
selectedSuperItems notifyDisabledCounter wizards listOfItemsView |
2569
b55aeaecefda
preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents:
2448
diff
changeset
|
21 |
dropOverLine savedSpec' |
1462
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
22 |
classVariableNames:'ImageRetrieverClasses' |
220 | 23 |
poolDictionaries:'' |
24 |
category:'Interface-UIPainter' |
|
199 | 25 |
! |
26 |
||
1606 | 27 |
HierarchicalItem subclass:#Item |
28 |
instanceVariableNames:'menuItem' |
|
29 |
classVariableNames:'' |
|
30 |
poolDictionaries:'' |
|
31 |
privateIn:MenuEditor |
|
32 |
! |
|
33 |
||
2850
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
34 |
ApplicationModel subclass:#ImageResourceEditor |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
35 |
instanceVariableNames:'selectorHolder iconAndLabelHolder retrieverHolder imageHolder |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
36 |
imageList selectorFilterHolder imageListView' |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
37 |
classVariableNames:'' |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
38 |
poolDictionaries:'' |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
39 |
privateIn:MenuEditor |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
40 |
! |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
41 |
|
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
42 |
HierarchicalItem subclass:#ImageResourceEditorItem |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
43 |
instanceVariableNames:'selector icon' |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
44 |
classVariableNames:'' |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
45 |
poolDictionaries:'' |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
46 |
privateIn:MenuEditor::ImageResourceEditor |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
47 |
! |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
48 |
|
1631 | 49 |
MenuEditor::Item subclass:#ActionItem |
1606 | 50 |
instanceVariableNames:'' |
1407 | 51 |
classVariableNames:'' |
52 |
poolDictionaries:'' |
|
53 |
privateIn:MenuEditor |
|
54 |
! |
|
55 |
||
1631 | 56 |
MenuEditor::Item subclass:#LinkedMenuItem |
1606 | 57 |
instanceVariableNames:'' |
58 |
classVariableNames:'' |
|
59 |
poolDictionaries:'' |
|
60 |
privateIn:MenuEditor |
|
61 |
! |
|
62 |
||
1844 | 63 |
MenuEditor::Item subclass:#MenuSliceItem |
64 |
instanceVariableNames:'' |
|
65 |
classVariableNames:'' |
|
66 |
poolDictionaries:'' |
|
67 |
privateIn:MenuEditor |
|
68 |
! |
|
69 |
||
1633 | 70 |
MenuEditor::Item subclass:#RegularMenuItem |
1454 | 71 |
instanceVariableNames:'' |
72 |
classVariableNames:'' |
|
73 |
poolDictionaries:'' |
|
74 |
privateIn:MenuEditor |
|
75 |
! |
|
76 |
||
1633 | 77 |
MenuEditor::RegularMenuItem subclass:#RootItem |
1631 | 78 |
instanceVariableNames:'' |
79 |
classVariableNames:'' |
|
80 |
poolDictionaries:'' |
|
81 |
privateIn:MenuEditor |
|
82 |
! |
|
83 |
||
84 |
MenuEditor::Item subclass:#SeparatorItem |
|
85 |
instanceVariableNames:'' |
|
86 |
classVariableNames:'' |
|
87 |
poolDictionaries:'' |
|
88 |
privateIn:MenuEditor |
|
89 |
! |
|
90 |
||
199 | 91 |
!MenuEditor class methodsFor:'documentation'! |
92 |
||
93 |
copyright |
|
94 |
" |
|
738 | 95 |
COPYRIGHT (c) 1997 by eXept Software AG |
1606 | 96 |
All Rights Reserved |
199 | 97 |
|
98 |
This software is furnished under a license and may be used |
|
99 |
only in accordance with the terms of that license and with the |
|
738 | 100 |
inclusion of the above copyright notice. This software may not |
199 | 101 |
be provided or otherwise made available to, or used by, any |
102 |
other person. No title to or ownership of the software is |
|
103 |
hereby transferred. |
|
104 |
" |
|
105 |
! |
|
106 |
||
107 |
documentation |
|
108 |
" |
|
728 | 109 |
The MenuEditor allows you to create, modify or just inspect |
2936
914fbb4edbae
comment/format in: #documentation
Claus Gittinger <cg@exept.de>
parents:
2869
diff
changeset
|
110 |
menu specifications. Such specifications are returned by menu-spec methods |
914fbb4edbae
comment/format in: #documentation
Claus Gittinger <cg@exept.de>
parents:
2869
diff
changeset
|
111 |
of the application class. These methods are typically tagged with a menu-resource. |
914fbb4edbae
comment/format in: #documentation
Claus Gittinger <cg@exept.de>
parents:
2869
diff
changeset
|
112 |
The menu editor is able to retrieve such specifications and generate new menu-spec |
914fbb4edbae
comment/format in: #documentation
Claus Gittinger <cg@exept.de>
parents:
2869
diff
changeset
|
113 |
methods. |
914fbb4edbae
comment/format in: #documentation
Claus Gittinger <cg@exept.de>
parents:
2869
diff
changeset
|
114 |
|
914fbb4edbae
comment/format in: #documentation
Claus Gittinger <cg@exept.de>
parents:
2869
diff
changeset
|
115 |
The editor is typically opened by double-clicking on a menu-spec method in the browser. |
1606 | 116 |
|
117 |
[Instance variables:] |
|
118 |
||
3013 | 119 |
listOfItemsView <HierarcicalListView> the view which shows the list of items |
120 |
listOfItems <HierarchicalList> hierarchical list of menu items |
|
121 |
listOfTabs <List> list of current shown tab-labels |
|
122 |
||
123 |
selectionHolder <ValueHolder> collection of current selected items |
|
124 |
selectedSuperItems <Collection> collection of superItems derived from selection |
|
125 |
||
126 |
tabHolder <ValueHolder> selected tab label holder |
|
127 |
notifyDisabledCounter <SmallInteger> ~~ 0 than change notifications are discard |
|
128 |
wizards <IdentityDictionary> keeps all created wizard dialogs |
|
129 |
||
130 |
dropOverLine <nil or SmallInteger> nil: drop context not dropabel. |
|
131 |
= 0: drop context dropable but no item specified |
|
132 |
~ 0: drop context dropable for item at lineNumber |
|
133 |
used t6o restore drop indication drawings |
|
2188 | 134 |
|
1606 | 135 |
[Class variables:] |
3013 | 136 |
ImageRetrieverClasses <Collection> sorted collection of image receivers |
199 | 137 |
|
138 |
[start with:] |
|
3013 | 139 |
MenuEditor open |
140 |
MenuEditor openOnClass:MenuEditor andSelector:#menu |
|
199 | 141 |
|
142 |
[author:] |
|
3013 | 143 |
Claus Atzkern, eXept Software AG |
144 |
Thomas Zwick, eXept Software AG |
|
199 | 145 |
" |
146 |
! ! |
|
147 |
||
1462
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
148 |
!MenuEditor class methodsFor:'initialization'! |
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
149 |
|
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
150 |
initialize |
2188 | 151 |
ImageRetrieverClasses := #( |
1606 | 152 |
Icon |
2188 | 153 |
SystemBrowser |
1606 | 154 |
ToolbarIconLibrary |
2188 | 155 |
). |
1546
4485d0c37aae
another default image retriever
Claus Gittinger <cg@exept.de>
parents:
1545
diff
changeset
|
156 |
|
4485d0c37aae
another default image retriever
Claus Gittinger <cg@exept.de>
parents:
1545
diff
changeset
|
157 |
" |
4485d0c37aae
another default image retriever
Claus Gittinger <cg@exept.de>
parents:
1545
diff
changeset
|
158 |
self initialize |
4485d0c37aae
another default image retriever
Claus Gittinger <cg@exept.de>
parents:
1545
diff
changeset
|
159 |
" |
1462
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
160 |
! ! |
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
161 |
|
508 | 162 |
!MenuEditor class methodsFor:'instance creation'! |
163 |
||
728 | 164 |
openModalOnMenu: aMenu |
1606 | 165 |
"Open a MenuEditor modal on aMenu |
166 |
self openModalOnMenu: (self perform: #menu) decodeAsLiteralArray |
|
734 | 167 |
" |
1606 | 168 |
^self new openModalOnMenu:aMenu |
633
11bbf4599843
uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents:
627
diff
changeset
|
169 |
! ! |
11bbf4599843
uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents:
627
diff
changeset
|
170 |
|
1462
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
171 |
!MenuEditor class methodsFor:'accessing image retriever'! |
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
172 |
|
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
173 |
addNewImageRetriever:aSymbolOrClass |
1546
4485d0c37aae
another default image retriever
Claus Gittinger <cg@exept.de>
parents:
1545
diff
changeset
|
174 |
"add a class to the imageRetriever list" |
4485d0c37aae
another default image retriever
Claus Gittinger <cg@exept.de>
parents:
1545
diff
changeset
|
175 |
|
1462
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
176 |
|key| |
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
177 |
|
1546
4485d0c37aae
another default image retriever
Claus Gittinger <cg@exept.de>
parents:
1545
diff
changeset
|
178 |
aSymbolOrClass isBehavior ifTrue:[ |
1606 | 179 |
key := aSymbolOrClass nameWithNameSpacePrefix |
1546
4485d0c37aae
another default image retriever
Claus Gittinger <cg@exept.de>
parents:
1545
diff
changeset
|
180 |
] ifFalse:[ |
1606 | 181 |
key := aSymbolOrClass |
1462
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
182 |
]. |
1463 | 183 |
|
1462
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
184 |
key size ~~ 0 ifTrue:[ |
1606 | 185 |
key := key asSymbol. |
186 |
||
187 |
(ImageRetrieverClasses includes:key) ifFalse:[ |
|
188 |
ImageRetrieverClasses := ImageRetrieverClasses asOrderedCollection. |
|
189 |
ImageRetrieverClasses add:key. |
|
190 |
ImageRetrieverClasses sort. |
|
191 |
] |
|
1462
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
192 |
]. |
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
193 |
! |
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
194 |
|
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
195 |
imageRetrieverClasses |
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
196 |
"returns a collection of image retrievers |
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
197 |
" |
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
198 |
^ ImageRetrieverClasses |
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
199 |
! ! |
02fe22d76582
change layout of image viewer, support of adding new image retriever
ca
parents:
1454
diff
changeset
|
200 |
|
633
11bbf4599843
uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents:
627
diff
changeset
|
201 |
!MenuEditor class methodsFor:'aspects'! |
11bbf4599843
uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents:
627
diff
changeset
|
202 |
|
11bbf4599843
uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents:
627
diff
changeset
|
203 |
aspects |
728 | 204 |
"get the aspects for the attributes of the menu components" |
205 |
||
206 |
^#( |
|
3587 | 207 |
rawLabel |
208 |
accessCharacterPosition |
|
209 |
showBusyCursorWhilePerforming |
|
210 |
horizontalLayout |
|
211 |
triggerOnDown |
|
212 |
font |
|
213 |
argument |
|
214 |
submenuChannel |
|
215 |
keepLinkedMenu |
|
216 |
enabled |
|
217 |
itemValue |
|
218 |
nameKey |
|
219 |
indication |
|
220 |
choice |
|
221 |
choiceValue |
|
222 |
translateLabel |
|
223 |
isButton |
|
224 |
shortcutKeyCharacter |
|
225 |
startGroup |
|
226 |
isVisible |
|
227 |
hideMenuOnActivated |
|
228 |
auxValue |
|
229 |
activeHelpKey |
|
230 |
resourceRetriever |
|
231 |
sendToOriginator |
|
232 |
ignoreMnemonicKeys |
|
233 |
ignoreShortcutKeys |
|
234 |
isMenuSlice |
|
235 |
hasMenuIndicator |
|
633
11bbf4599843
uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents:
627
diff
changeset
|
236 |
) |
3587 | 237 |
|
238 |
"Modified: / 09-08-2018 / 17:03:56 / Claus Gittinger" |
|
1606 | 239 |
! ! |
240 |
||
241 |
!MenuEditor class methodsFor:'defaults'! |
|
242 |
||
243 |
resourceType |
|
244 |
"get the type of the resource of the method generated by the MenuEditor |
|
245 |
" |
|
246 |
^ #menu |
|
633
11bbf4599843
uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents:
627
diff
changeset
|
247 |
! ! |
11bbf4599843
uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents:
627
diff
changeset
|
248 |
|
371 | 249 |
!MenuEditor class methodsFor:'help specs'! |
250 |
||
251 |
helpSpec |
|
3587 | 252 |
^super helpSpec addPairsFrom: #( |
2850
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
253 |
|
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
254 |
#editCut |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
255 |
'Cut Item' |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
256 |
|
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
257 |
#editCopy |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
258 |
'Copy Item' |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
259 |
|
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
260 |
#editPaste |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
261 |
'Paste Item' |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
262 |
|
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
263 |
#fileSaveSpec |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
264 |
'Save Menuspec' |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
265 |
|
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
266 |
#addMenuSlice |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
267 |
'Add Menuslice' |
1690 | 268 |
|
269 |
#addDelayedMenu |
|
270 |
'Add a new delayed menu to item.' |
|
271 |
||
272 |
#addDelayedSubMenuLink |
|
273 |
'Add a new linked delayed menu to item.' |
|
274 |
||
275 |
#addMenuItem |
|
276 |
'Add a new menu item.' |
|
277 |
||
278 |
#addMenuSeparator |
|
279 |
'Add a new menu separator.' |
|
280 |
||
1844 | 281 |
#addMenuSliceItem |
282 |
'Add a new menu slice.' |
|
283 |
||
1690 | 284 |
#addSubMenu |
285 |
'Add a new sub menu.' |
|
286 |
||
287 |
#addSubMenuLink |
|
288 |
'Add a new linked sub menu.' |
|
289 |
||
290 |
#basicsAction |
|
291 |
'An action selector with 0, 1 (the argument field), or 2 (the selected item) arguments.' |
|
292 |
||
2810 | 293 |
#browseMethod |
294 |
'Open a browser on this method in the application. Create the method, if it does not exist.' |
|
295 |
||
1690 | 296 |
#basicsArgument |
297 |
'An optional arg passed with above selector, if it is a 1 or 2 arg selector (enter a Smalltalk literal).' |
|
298 |
||
299 |
#basicsChoice |
|
300 |
'Aspect for a boolean holder, block or method, specifying the choices state (RadioButton behavior).' |
|
301 |
||
302 |
#basicsChoiceValue |
|
303 |
'That choices value (typically number or symbol).' |
|
304 |
||
305 |
#basicsIndication |
|
306 |
'Aspect for boolean holder, block, or method, specifying the indication state (CheckToggle behavior).' |
|
307 |
||
308 |
#basicsIsButton |
|
309 |
'Button-like look and behavior.' |
|
310 |
||
311 |
#basicsKey |
|
312 |
'Internal key of the item (optional, for programmed accesses).' |
|
313 |
||
314 |
#basicsLabel |
|
315 |
'Label of the item.' |
|
316 |
||
317 |
#basicsMenu |
|
318 |
'Aspect providing the sub menu to be opened if item is selected (provide spec or valueHolder).' |
|
319 |
||
320 |
#basicsMenuArgument |
|
321 |
'An argument passed with the menu selector.' |
|
322 |
||
323 |
#basicsNameKey |
|
324 |
'Unique identifier of the item (optional).' |
|
325 |
||
326 |
#basicsSelector |
|
327 |
'Selector under which the generated menu spec is saved.' |
|
328 |
||
329 |
#basicsSeparatorType |
|
330 |
'List of valid separators.' |
|
331 |
||
332 |
#basicsTranslateLabel |
|
333 |
'Translate the label via the classes resource file (internationalization).' |
|
334 |
||
335 |
#browseResource |
|
336 |
'Search for methods with image resource.' |
|
337 |
||
338 |
#detailsAccelerator |
|
339 |
'Accelerator key to select the menu item from the keyboard (Cmdx or Ctrlx).' |
|
340 |
||
341 |
#detailsAccessCharaterPosition |
|
342 |
'Index of the access character position of the textual label (obsolete, VW compatibility).' |
|
343 |
||
344 |
#detailsAuxValue |
|
345 |
'Some additional value - for arbitrary use by the program.' |
|
346 |
||
347 |
#detailsEnabled |
|
1702 | 348 |
'Aspect or binding providing a boolean value holder to enable/disable the menu item.' |
1690 | 349 |
|
1844 | 350 |
#detailsIgnoreAcceleratorKeys |
351 |
'Ignore accelerator keys in submenu(s).' |
|
352 |
||
353 |
#detailsIgnoreMnemonicKeys |
|
354 |
'Ignore mnemonic keys (access characters) in submenu(s).' |
|
355 |
||
1690 | 356 |
#detailsStartGroup |
2123
7a78e0088013
help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents:
2122
diff
changeset
|
357 |
'Specify start of a specially aligned group.' |
1690 | 358 |
|
359 |
#detailsVisibility |
|
360 |
'Boolean, or aspect or binding for a boolean holder controlling the visibility of the menu item.' |
|
361 |
||
362 |
#fileLoad |
|
363 |
'Load a menu spec from a class.' |
|
364 |
||
365 |
#fileNew |
|
366 |
'Create a new menu spec.' |
|
367 |
||
368 |
#filePickAMenu |
|
369 |
'Select a menu from an open view and read its specification' |
|
370 |
||
2331
938a31972544
choose from screen menu function
Claus Gittinger <cg@exept.de>
parents:
2297
diff
changeset
|
371 |
#fileChooseAMenu |
938a31972544
choose from screen menu function
Claus Gittinger <cg@exept.de>
parents:
2297
diff
changeset
|
372 |
'Select a menu from an open view and edit its spec-method' |
938a31972544
choose from screen menu function
Claus Gittinger <cg@exept.de>
parents:
2297
diff
changeset
|
373 |
|
1690 | 374 |
#fileSave |
375 |
'Save the menu spec (and the help spec, if modified).' |
|
376 |
||
377 |
#fileSaveAs |
|
378 |
'Open a dialog to save the menu spec (and the help spec, if modified).' |
|
379 |
||
380 |
#fileShowMenuSpec |
|
381 |
'Opens a Workspace showing the current menu spec.' |
|
382 |
||
3587 | 383 |
#forceMenuIndicator |
384 |
'Always show a menu indicator in horizontal menu (little down-arrow).' |
|
385 |
||
1690 | 386 |
#generateAspectMethods |
387 |
'Generates aspect methods for defined aspect selectors of the menu.' |
|
388 |
||
389 |
#hideMenuOnActivated |
|
1702 | 390 |
'If on, the menu hides itself after the item was activated (PopUp/PullDown-Menus only).' |
1690 | 391 |
|
392 |
#horizontalLayout |
|
3013 | 393 |
'If on, the submenu organizes its items horizontal instead of vertical (default).' |
1690 | 394 |
|
395 |
#imageImageAndLabel |
|
396 |
'Toggle display of both image and textual label.' |
|
397 |
||
398 |
#imageImageEditor |
|
399 |
'Open an Image Editor on the resource method defined by retriever and selector.' |
|
400 |
||
2797 | 401 |
#imageBrowseImageClass |
402 |
'Open a Browser on the resource retriever class.' |
|
403 |
||
1690 | 404 |
#imageImageList |
405 |
'Currently existing image resources.' |
|
406 |
||
407 |
#imageRetriever |
|
3071 | 408 |
'Class implementing the image resource method. If unspecified, the application instance / class are asked.' |
1690 | 409 |
|
410 |
#imageSelector |
|
411 |
'Selector returning an image (sent to above or the application).' |
|
412 |
||
413 |
#keepLinkedMenu |
|
2055 | 414 |
'Keep the linked menu after activation (do not destroy; if off, menu is rebuild for every activation).' |
1690 | 415 |
|
416 |
#sendToOriginator |
|
1702 | 417 |
'Send action-Message to widget (instead of application); only valid for PopUpMenus.' |
1690 | 418 |
|
419 |
#settingsRedefineAspectMethods |
|
420 |
'Toggles the permission to overwrite existing aspect methods.' |
|
421 |
||
422 |
#showBusyCursorWhilePerforming |
|
423 |
'If on, a busy cursor is shown while the items action is performing.' |
|
424 |
||
425 |
#triggerOnDown |
|
1702 | 426 |
'If on, the items action is performed on mouse-button press (default is: on button-release).' |
1690 | 427 |
|
2850
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
428 |
#selectorFilter |
3a5c3b8eedff
added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents:
2843
diff
changeset
|
429 |
'In the list below, only matching selectors are shown' |
1690 | 430 |
) |
2055 | 431 |
|
3587 | 432 |
"Modified: / 09-08-2018 / 17:09:02 / Claus Gittinger" |
371 | 433 |
! ! |
434 |
||
734 | 435 |
!MenuEditor class methodsFor:'image specs'! |
436 |
||
2297 | 437 |
browseActionImage |
438 |
<resource: #programImage> |
|
439 |
||
440 |
^ UIPainter browseActionImage |
|
441 |
! |
|
442 |
||
2156 | 443 |
defaultIcon |
444 |
<resource: #programImage> |
|
445 |
||
446 |
^ ToolbarIconLibrary startMenuEditorIcon |
|
447 |
! |
|
448 |
||
1606 | 449 |
iconUnknown |
450 |
"returns an image used for picked items containing an image |
|
734 | 451 |
" |
2271 | 452 |
<resource: #programImage> |
1606 | 453 |
|
454 |
^ MenuPanelSpec icon |
|
1425 | 455 |
! ! |
734 | 456 |
|
199 | 457 |
!MenuEditor class methodsFor:'interface specs'! |
458 |
||
525 | 459 |
windowSpec |
738 | 460 |
"This resource specification was automatically generated |
461 |
by the UIPainter of ST/X." |
|
462 |
||
463 |
"Do not manually edit this!! If it is corrupted, |
|
464 |
the UIPainter may not be able to read the specification." |
|
525 | 465 |
|
466 |
" |
|
467 |
UIPainter new openOnClass:MenuEditor andSelector:#windowSpec |
|
468 |
MenuEditor new openInterface:#windowSpec |
|
738 | 469 |
MenuEditor open |
525 | 470 |
" |
471 |
||
472 |
<resource: #canvas> |
|
473 |
||
3545 | 474 |
^ |
475 |
#(FullSpec |
|
476 |
name: windowSpec |
|
477 |
uuid: '7d4bc1c6-2067-11b2-b33d-3065ec8abe8a' |
|
478 |
window: |
|
479 |
(WindowSpec |
|
480 |
label: 'Menu Editor' |
|
481 |
name: 'Menu Editor' |
|
482 |
uuid: '7d4bc6f8-2067-11b2-b33d-3065ec8abe8a' |
|
483 |
min: (Point 550 385) |
|
484 |
bounds: (Rectangle 0 0 574 473) |
|
485 |
menu: menu |
|
486 |
icon: defaultIcon |
|
487 |
returnIsOKInDialog: false |
|
488 |
escapeIsCancelInDialog: false |
|
489 |
) |
|
490 |
component: |
|
491 |
(SpecCollection |
|
492 |
collection: ( |
|
493 |
(MenuPanelSpec |
|
494 |
name: 'toolbar' |
|
495 |
layout: (LayoutFrame 0 0.0 0 0 0 1.0 32 0) |
|
496 |
uuid: '7d4bcc98-2067-11b2-b33d-3065ec8abe8a' |
|
497 |
tabable: true |
|
498 |
menu: toolbar |
|
499 |
showSeparatingLines: true |
|
500 |
) |
|
501 |
(VariableHorizontalPanelSpec |
|
502 |
name: 'mainPanel' |
|
503 |
layout: (LayoutFrame 0 0.0 34 0.0 0 1.0 -26 1.0) |
|
504 |
uuid: '7d4bd2ba-2067-11b2-b33d-3065ec8abe8a' |
|
505 |
component: |
|
506 |
(SpecCollection |
|
507 |
collection: ( |
|
508 |
(HierarchicalListViewSpec |
|
509 |
name: 'ListOfItemsView' |
|
510 |
uuid: '7d4bd7ba-2067-11b2-b33d-3065ec8abe8a' |
|
511 |
model: selectionHolder |
|
512 |
menu: editMenu |
|
513 |
hasHorizontalScrollBar: true |
|
514 |
hasVerticalScrollBar: true |
|
515 |
miniScrollerHorizontal: true |
|
516 |
miniScrollerVertical: true |
|
517 |
listModel: listOfItems |
|
518 |
multipleSelectOk: true |
|
519 |
useIndex: false |
|
520 |
highlightMode: label |
|
521 |
doubleClickSelector: indicatorClickedAt: |
|
522 |
selectConditionSelector: canSelect: |
|
523 |
showLeftIndicators: false |
|
524 |
indicatorSelector: indicatorClickedAt: |
|
525 |
postBuildCallback: postBuildListOfItemsView: |
|
526 |
properties: |
|
527 |
(PropertyListDictionary |
|
528 |
dropSelector: doDrop: |
|
529 |
dragArgument: nil |
|
530 |
overSelector: dropOver: |
|
531 |
canDropSelector: canDrop: |
|
532 |
dropObjectSelector: dropObjects |
|
533 |
enterSelector: dropEnter: |
|
534 |
dropArgument: nil |
|
535 |
leaveSelector: dropLeave: |
|
536 |
) |
|
537 |
) |
|
538 |
(ViewSpec |
|
539 |
name: 'Box' |
|
540 |
uuid: '7d4be156-2067-11b2-b33d-3065ec8abe8a' |
|
541 |
level: -1 |
|
542 |
component: |
|
543 |
(SpecCollection |
|
544 |
collection: ( |
|
545 |
(NoteBookViewSpec |
|
546 |
name: 'NoteBook' |
|
547 |
layout: (LayoutFrame 1 0.0 0 0.0 1 1.0 -39 1.0) |
|
548 |
uuid: '7d4be430-2067-11b2-b33d-3065ec8abe8a' |
|
549 |
enableChannel: hasSingleSelectionChannel |
|
550 |
tabable: true |
|
551 |
model: tabHolder |
|
552 |
menu: listOfTabs |
|
553 |
fitLastRow: false |
|
554 |
translateLabel: true |
|
555 |
canvas: wizardHolder |
|
556 |
keepCanvasAlive: true |
|
557 |
postBuildCallback: postBuildNoteBook: |
|
558 |
) |
|
559 |
(UISubSpecification |
|
560 |
name: 'SubSpecification' |
|
561 |
layout: (LayoutFrame 2 0.0 -35 1.0 -2 1.0 -2 1.0) |
|
562 |
uuid: '7d4beab6-2067-11b2-b33d-3065ec8abe8a' |
|
563 |
majorKey: ToolApplicationModel |
|
564 |
minorKey: windowSpecForCommit |
|
565 |
) |
|
566 |
) |
|
567 |
||
568 |
) |
|
569 |
) |
|
570 |
) |
|
571 |
||
572 |
) |
|
573 |
handles: (Any 0.29999999999999999 1.0) |
|
574 |
) |
|
575 |
(UISubSpecification |
|
576 |
name: 'infoBarSubSpec' |
|
577 |
layout: (LayoutFrame 0 0.0 -24 1 0 1.0 0 1.0) |
|
578 |
uuid: '7d4bee30-2067-11b2-b33d-3065ec8abe8a' |
|
579 |
majorKey: ToolApplicationModel |
|
580 |
minorKey: windowSpecForInfoBar |
|
581 |
) |
|
582 |
) |
|
583 |
||
584 |
) |
|
585 |
) |
|
525 | 586 |
! ! |
587 |
||
588 |
!MenuEditor class methodsFor:'menu specs'! |
|
589 |
||
1606 | 590 |
addMenu |
591 |
"This resource specification was automatically generated |
|
592 |
by the MenuEditor of ST/X." |
|
593 |
||
594 |
"Do not manually edit this!! If it is corrupted, |
|
595 |
the MenuEditor may not be able to read the specification." |
|
596 |
||
597 |
" |
|
598 |
MenuEditor new openOnClass:MenuEditor andSelector:#addMenu |
|
599 |
(Menu new fromLiteralArrayEncoding:(MenuEditor addMenu)) startUp |
|
600 |
" |
|
601 |
||
602 |
<resource: #menu> |
|
603 |
||
2188 | 604 |
^ |
1844 | 605 |
#(Menu |
3013 | 606 |
( |
607 |
(MenuItem |
|
608 |
activeHelpKey: addMenuSeparator |
|
609 |
label: 'Separator' |
|
610 |
itemValue: doCreateSep |
|
611 |
translateLabel: true |
|
612 |
labelImage: (ResourceRetriever #'MenuEditor::Item' iconSeparator '') |
|
613 |
) |
|
614 |
(MenuItem |
|
615 |
activeHelpKey: addMenuItem |
|
616 |
label: 'Item' |
|
617 |
itemValue: doCreateItem |
|
618 |
translateLabel: true |
|
619 |
labelImage: (ResourceRetriever #'MenuEditor::Item' iconItem '') |
|
620 |
) |
|
621 |
(MenuItem |
|
622 |
activeHelpKey: addMenuSliceItem |
|
623 |
label: 'Menu Slice' |
|
624 |
itemValue: doCreateMenuSliceItem |
|
625 |
translateLabel: true |
|
626 |
labelImage: (ResourceRetriever #'MenuEditor::Item' iconSliceMenu '') |
|
627 |
) |
|
628 |
(MenuItem |
|
629 |
activeHelpKey: addMenuItem |
|
630 |
label: 'Menu' |
|
631 |
itemValue: doCreateMenu |
|
632 |
translateLabel: true |
|
633 |
labelImage: (ResourceRetriever #'MenuEditor::Item' iconMenu '') |
|
634 |
) |
|
635 |
(MenuItem |
|
636 |
activeHelpKey: addSubMenuLink |
|
637 |
label: 'Linked Menu' |
|
638 |
itemValue: doCreateLinkedMenu |
|
639 |
translateLabel: true |
|
640 |
labelImage: (ResourceRetriever #'MenuEditor::Item' iconLinkedMenu '') |
|
641 |
) |
|
642 |
(MenuItem |
|
643 |
label: '-' |
|
644 |
) |
|
645 |
(MenuItem |
|
646 |
activeHelpKey: addDelayedMenu |
|
647 |
enabled: canCreateDelayedMenuChannel |
|
648 |
label: 'Delayed Menu' |
|
649 |
itemValue: doCreateDelayedMenu: |
|
650 |
translateLabel: true |
|
651 |
labelImage: (ResourceRetriever #'MenuEditor::Item' iconDelayedMenu '') |
|
652 |
argument: menu |
|
653 |
) |
|
654 |
(MenuItem |
|
655 |
activeHelpKey: addDelayedSubMenuLink |
|
656 |
enabled: canCreateDelayedMenuChannel |
|
657 |
label: 'Delayed Linked Menu' |
|
658 |
itemValue: doCreateDelayedMenu: |
|
659 |
translateLabel: true |
|
660 |
labelImage: (ResourceRetriever #'MenuEditor::Item' iconDelayedLinkedMenu '') |
|
661 |
argument: linkedMenu |
|
662 |
) |
|
663 |
(MenuItem |
|
664 |
label: '-' |
|
665 |
) |
|
666 |
(MenuItem |
|
667 |
label: 'Standard Menus' |
|
668 |
translateLabel: true |
|
669 |
submenuChannel: standardMenus |
|
670 |
keepLinkedMenu: true |
|
671 |
) |
|
672 |
) |
|
2275
b0f6890e73cf
code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents:
2271
diff
changeset
|
673 |
"/ nil |
b0f6890e73cf
code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents:
2271
diff
changeset
|
674 |
"/ nil |
1606 | 675 |
) |
676 |
! |
|
677 |
||
678 |
editMenu |
|
679 |
"This resource specification was automatically generated |
|
680 |
by the MenuEditor of ST/X." |
|
681 |
||
682 |
"Do not manually edit this!! If it is corrupted, |
|
683 |
the MenuEditor may not be able to read the specification." |
|
684 |
||
685 |
" |
|
686 |
MenuEditor new openOnClass:MenuEditor andSelector:#editMenu |
|
687 |
(Menu new fromLiteralArrayEncoding:(MenuEditor editMenu)) startUp |
|
688 |
" |
|
689 |
||
690 |
<resource: #menu> |
|
691 |
||
3013 | 692 |
^ |
2186 | 693 |
#(Menu |
3135 | 694 |
( |
695 |
(MenuItem |
|
696 |
activeHelpKey: editCut |
|
697 |
enabled: hasSelectionChannel |
|
698 |
label: 'Cut' |
|
699 |
itemValue: doCut |
|
700 |
translateLabel: true |
|
701 |
shortcutKey: Cut |
|
702 |
) |
|
703 |
(MenuItem |
|
704 |
activeHelpKey: editCopy |
|
705 |
enabled: hasSelectionChannel |
|
706 |
label: 'Copy' |
|
707 |
itemValue: doCopy |
|
708 |
translateLabel: true |
|
709 |
shortcutKey: Copy |
|
710 |
) |
|
711 |
(MenuItem |
|
712 |
activeHelpKey: editPaste |
|
713 |
enabled: canPasteHolder |
|
714 |
label: 'Paste' |
|
715 |
itemValue: doPaste |
|
716 |
translateLabel: true |
|
717 |
shortcutKey: Paste |
|
718 |
) |
|
719 |
(MenuItem |
|
720 |
activeHelpKey: editDelete |
|
721 |
enabled: hasSelectionChannel |
|
722 |
label: 'Delete' |
|
723 |
itemValue: doDelete |
|
724 |
translateLabel: true |
|
725 |
isVisible: false |
|
726 |
) |
|
727 |
(MenuItem |
|
728 |
label: '-' |
|
729 |
) |
|
730 |
(MenuItem |
|
731 |
activeHelpKey: makeLinkedMenu |
|
732 |
enabled: hasNonLinkedMenuSelectedHolder |
|
733 |
label: 'Make Linked Menu...' |
|
734 |
itemValue: doMakeLinkedMenu |
|
735 |
translateLabel: true |
|
736 |
) |
|
737 |
(MenuItem |
|
738 |
label: '-' |
|
739 |
) |
|
740 |
(MenuItem |
|
741 |
activeHelpKey: editMoveUp |
|
742 |
enabled: enableMovingUpOrDownHolder |
|
743 |
label: 'Move Up' |
|
744 |
itemValue: doMoveUpOrDown: |
|
745 |
translateLabel: true |
|
746 |
startGroup: right |
|
747 |
shortcutKey: CtrlCursorUp |
|
748 |
labelImage: (ResourceRetriever Icon upIcon 'Move Up') |
|
749 |
argument: up |
|
750 |
) |
|
751 |
(MenuItem |
|
752 |
activeHelpKey: editMoveDown |
|
753 |
enabled: enableMovingUpOrDownHolder |
|
754 |
label: 'Move Down' |
|
755 |
itemValue: doMoveUpOrDown: |
|
756 |
translateLabel: true |
|
757 |
shortcutKey: CtrlCursorDown |
|
758 |
labelImage: (ResourceRetriever Icon downIcon 'Move Down') |
|
759 |
argument: down |
|
760 |
) |
|
761 |
(MenuItem |
|
762 |
activeHelpKey: editMoveIn |
|
763 |
enabled: enableMovingInHolder |
|
764 |
label: 'Move Into Next' |
|
765 |
itemValue: doMoveIn: |
|
766 |
translateLabel: true |
|
767 |
shortcutKey: CtrlCursorRight |
|
768 |
labelImage: (ResourceRetriever Icon downRightIcon 'Move Into Next') |
|
769 |
argument: inNext |
|
770 |
) |
|
771 |
(MenuItem |
|
772 |
activeHelpKey: editMoveInAbove |
|
773 |
enabled: enableMovingInAboveHolder |
|
774 |
label: 'Move Into Previous' |
|
775 |
itemValue: doMoveIn: |
|
776 |
translateLabel: true |
|
777 |
labelImage: (ResourceRetriever Icon upRightIcon 'Move Into Previous' ) |
|
778 |
argument: inPrev |
|
779 |
) |
|
780 |
(MenuItem |
|
781 |
activeHelpKey: editMoveOut |
|
782 |
enabled: enableMovingOutHolder |
|
783 |
label: 'Move Out' |
|
784 |
itemValue: doMoveOut |
|
785 |
translateLabel: true |
|
786 |
shortcutKey: CtrlCursorLeft |
|
787 |
labelImage: (ResourceRetriever Icon leftDownIcon 'Move Out' ) |
|
788 |
) |
|
789 |
) |
|
790 |
nil |
|
791 |
nil |
|
1606 | 792 |
) |
793 |
! |
|
794 |
||
2187 | 795 |
editMenuForMainMenuWithoutAccelerators |
796 |
"This resource specification was automatically generated |
|
797 |
by the MenuEditor of ST/X." |
|
798 |
||
799 |
"Do not manually edit this!! If it is corrupted, |
|
800 |
the MenuEditor may not be able to read the specification." |
|
801 |
||
802 |
" |
|
803 |
MenuEditor new openOnClass:MenuEditor andSelector:#editMenuForMainMenuWithoutAccelerators |
|
804 |
(Menu new fromLiteralArrayEncoding:(MenuEditor editMenuForMainMenuWithoutAccelerators)) startUp |
|
805 |
" |
|
806 |
||
807 |
<resource: #menu> |
|
808 |
||
2188 | 809 |
^ |
2187 | 810 |
#(Menu |
2188 | 811 |
( |
812 |
(MenuItem |
|
813 |
activeHelpKey: editCut |
|
814 |
enabled: hasSelectionChannel |
|
815 |
label: 'Cut' |
|
816 |
itemValue: doCut |
|
817 |
translateLabel: true |
|
818 |
) |
|
819 |
(MenuItem |
|
820 |
activeHelpKey: editCopy |
|
821 |
enabled: hasSelectionChannel |
|
822 |
label: 'Copy' |
|
823 |
itemValue: doCopy |
|
824 |
translateLabel: true |
|
825 |
) |
|
826 |
(MenuItem |
|
827 |
activeHelpKey: editPaste |
|
828 |
enabled: canPasteHolder |
|
829 |
label: 'Paste' |
|
830 |
itemValue: doPaste |
|
831 |
translateLabel: true |
|
832 |
) |
|
833 |
(MenuItem |
|
834 |
activeHelpKey: editDelete |
|
835 |
enabled: hasSelectionChannel |
|
836 |
label: 'Delete' |
|
837 |
itemValue: doDelete |
|
838 |
translateLabel: true |
|
839 |
isVisible: false |
|
840 |
) |
|
841 |
(MenuItem |
|
842 |
label: '-' |
|
843 |
) |
|
844 |
(MenuItem |
|
845 |
activeHelpKey: editMoveUp |
|
846 |
enabled: enableMovingUpOrDownHolder |
|
847 |
label: 'Move Up' |
|
848 |
itemValue: doMoveUpOrDown: |
|
849 |
translateLabel: true |
|
850 |
startGroup: right |
|
851 |
labelImage: (ResourceRetriever Icon upIcon 'Move Up') |
|
852 |
argument: up |
|
853 |
) |
|
854 |
(MenuItem |
|
855 |
activeHelpKey: editMoveDown |
|
856 |
enabled: enableMovingUpOrDownHolder |
|
857 |
label: 'Move Down' |
|
858 |
itemValue: doMoveUpOrDown: |
|
859 |
translateLabel: true |
|
860 |
labelImage: (ResourceRetriever Icon downIcon 'Move Down') |
|
861 |
argument: down |
|
862 |
) |
|
863 |
(MenuItem |
|
864 |
activeHelpKey: editMoveIn |
|
865 |
enabled: enableMovingInHolder |
|
866 |
label: 'Move Into Next' |
|
867 |
itemValue: doMoveIn: |
|
868 |
translateLabel: true |
|
869 |
labelImage: (ResourceRetriever Icon downRightIcon 'Move Into Next') |
|
870 |
argument: inNext |
|
871 |
) |
|
872 |
(MenuItem |
|
873 |
activeHelpKey: editMoveInAbove |
|
874 |
enabled: enableMovingInAboveHolder |
|
875 |
label: 'Move Into Previous' |
|
876 |
itemValue: doMoveIn: |
|
877 |
translateLabel: true |
|
878 |
labelImage: (ResourceRetriever Icon upRightIcon 'Move Into Previous') |
|
879 |
argument: inPrev |
|
880 |
) |
|
881 |
(MenuItem |
|
882 |
activeHelpKey: editMoveOut |
|
883 |
enabled: enableMovingOutHolder |
|
884 |
label: 'Move Out' |
|
885 |
itemValue: doMoveOut |
|
886 |
translateLabel: true |
|
887 |
labelImage: (ResourceRetriever Icon leftDownIcon 'Move Out') |
|
888 |
) |
|
889 |
) |
|
890 |
nil |
|
891 |
nil |
|
2187 | 892 |
) |
893 |
! |
|
894 |
||
1606 | 895 |
fileMenu |
896 |
"This resource specification was automatically generated |
|
897 |
by the MenuEditor of ST/X." |
|
898 |
||
899 |
"Do not manually edit this!! If it is corrupted, |
|
900 |
the MenuEditor may not be able to read the specification." |
|
901 |
||
902 |
" |
|
903 |
MenuEditor new openOnClass:MenuEditor andSelector:#fileMenu |
|
904 |
(Menu new fromLiteralArrayEncoding:(MenuEditor fileMenu)) startUp |
|
905 |
" |
|
906 |
||
907 |
<resource: #menu> |
|
908 |
||
3013 | 909 |
^ |
1971 | 910 |
#(Menu |
3013 | 911 |
( |
912 |
(MenuItem |
|
913 |
isVisible: isNotEditingSpecOnlyAndNotEmbeddedInBrowser |
|
914 |
activeHelpKey: fileNew |
|
915 |
label: 'New' |
|
916 |
itemValue: doNew |
|
917 |
translateLabel: true |
|
918 |
) |
|
919 |
(MenuItem |
|
920 |
isVisible: isNotEditingSpecOnlyAndNotEmbeddedInBrowser |
|
921 |
label: '-' |
|
922 |
) |
|
923 |
(MenuItem |
|
924 |
isVisible: isNotEditingSpecOnlyAndNotEmbeddedInBrowser |
|
925 |
activeHelpKey: fileLoad |
|
926 |
label: 'Load...' |
|
927 |
itemValue: doLoad |
|
928 |
translateLabel: true |
|
929 |
) |
|
930 |
(MenuItem |
|
931 |
isVisible: isNotEditingSpecOnlyAndNotEmbeddedInBrowser |
|
932 |
label: '-' |
|
933 |
) |
|
934 |
(MenuItem |
|
935 |
isVisible: isEditingSpecOnly |
|
936 |
activeHelpKey: fileSaveSpec |
|
937 |
label: 'Save' |
|
938 |
itemValue: doSave |
|
939 |
translateLabel: true |
|
940 |
) |
|
941 |
(MenuItem |
|
942 |
isVisible: isNotEditingSpecOnly |
|
943 |
activeHelpKey: fileSave |
|
944 |
label: 'Save' |
|
945 |
itemValue: doSave |
|
946 |
translateLabel: true |
|
947 |
) |
|
948 |
(MenuItem |
|
949 |
isVisible: isNotEditingSpecOnlyAndNotEmbeddedInBrowser |
|
950 |
activeHelpKey: fileSaveAs |
|
951 |
label: 'Save As...' |
|
952 |
itemValue: doSaveAs |
|
953 |
translateLabel: true |
|
954 |
) |
|
955 |
(MenuItem |
|
956 |
label: '-' |
|
957 |
) |
|
958 |
(MenuItem |
|
959 |
activeHelpKey: filePickAMenu |
|
960 |
label: 'Pick a Menu...' |
|
961 |
itemValue: doPickAMenu |
|
962 |
translateLabel: true |
|
963 |
) |
|
964 |
(MenuItem |
|
965 |
activeHelpKey: fileChooseAMenu |
|
966 |
label: 'Choose a Menu...' |
|
967 |
itemValue: doChooseAMenu |
|
968 |
translateLabel: true |
|
969 |
) |
|
970 |
(MenuItem |
|
971 |
label: '-' |
|
972 |
isVisible: isStandAlone |
|
973 |
) |
|
974 |
(MenuItem |
|
975 |
activeHelpKey: fileBrowseClass |
|
976 |
enabled: hasValidSpecClass |
|
977 |
label: 'Browse Class' |
|
978 |
itemValue: doBrowseClass |
|
979 |
translateLabel: true |
|
980 |
isVisible: isStandAlone |
|
981 |
) |
|
982 |
(MenuItem |
|
983 |
activeHelpKey: fileShowMenuSpec |
|
984 |
label: 'Show Menu Spec' |
|
985 |
itemValue: doShowMenuSpec |
|
986 |
translateLabel: true |
|
987 |
isVisible: isStandAlone |
|
988 |
) |
|
989 |
(MenuItem |
|
990 |
label: '-' |
|
991 |
isVisible: isStandAlone |
|
992 |
) |
|
993 |
(MenuItem |
|
994 |
activeHelpKey: fileExit |
|
995 |
label: 'Exit' |
|
996 |
itemValue: closeRequest |
|
997 |
translateLabel: true |
|
998 |
isVisible: isStandAlone |
|
999 |
) |
|
1000 |
) |
|
1001 |
nil |
|
1002 |
nil |
|
1606 | 1003 |
) |
1004 |
! |
|
1005 |
||
1614 | 1006 |
generateMenu |
1007 |
"This resource specification was automatically generated |
|
1008 |
by the MenuEditor of ST/X." |
|
1009 |
||
1010 |
"Do not manually edit this!! If it is corrupted, |
|
1011 |
the MenuEditor may not be able to read the specification." |
|
1012 |
||
1013 |
" |
|
1014 |
MenuEditor new openOnClass:MenuEditor andSelector:#generateMenu |
|
1015 |
(Menu new fromLiteralArrayEncoding:(MenuEditor generateMenu)) startUp |
|
1016 |
" |
|
1017 |
||
1018 |
<resource: #menu> |
|
1019 |
||
2188 | 1020 |
^ |
1614 | 1021 |
#(#Menu |
2188 | 1022 |
#( |
1023 |
#(#MenuItem |
|
1024 |
#activeHelpKey: #generateAspectMethods |
|
1025 |
#enabled: #hasValidSpecClass |
|
1026 |
#label: 'Aspect Methods' |
|
1027 |
#itemValue: #doGenerateAspectMethods |
|
1028 |
#translateLabel: true |
|
1029 |
) |
|
1030 |
) |
|
1031 |
nil |
|
1032 |
nil |
|
1614 | 1033 |
) |
1034 |
! |
|
1035 |
||
1606 | 1036 |
helpMenu |
1037 |
"This resource specification was automatically generated |
|
1038 |
by the MenuEditor of ST/X." |
|
1039 |
||
1040 |
"Do not manually edit this!! If it is corrupted, |
|
1041 |
the MenuEditor may not be able to read the specification." |
|
1042 |
||
1043 |
" |
|
1044 |
MenuEditor new openOnClass:MenuEditor andSelector:#helpMenu |
|
1045 |
(Menu new fromLiteralArrayEncoding:(MenuEditor helpMenu)) startUp |
|
1046 |
" |
|
1047 |
||
1048 |
<resource: #menu> |
|
1049 |
||
2188 | 1050 |
^ |
1606 | 1051 |
#(#Menu |
2188 | 1052 |
#( |
1053 |
#(#MenuItem |
|
1054 |
#activeHelpKey: #helpTutorial |
|
1055 |
#label: 'Documentation' |
|
1056 |
#itemValue: #openHTMLDocument: |
|
1057 |
#translateLabel: true |
|
1058 |
#argument: 'tools/uipainter/MenuEditor.html' |
|
1059 |
) |
|
1060 |
#(#MenuItem |
|
1061 |
#label: '-' |
|
1062 |
) |
|
1063 |
#(#MenuItem |
|
1064 |
#activeHelpKey: #helpHelpTool |
|
1065 |
#label: 'Help Tool' |
|
1066 |
#itemValue: #openHTMLDocument: |
|
1067 |
#translateLabel: true |
|
1068 |
#argument: 'tools/uipainter/HelpTool.html' |
|
1069 |
) |
|
1070 |
#(#MenuItem |
|
1071 |
#label: '-' |
|
1072 |
) |
|
1073 |
#(#MenuItem |
|
1074 |
#activeHelpKey: #helpShowHelp |
|
1075 |
#label: 'Show Help Texts' |
|
1076 |
#translateLabel: true |
|
1077 |
#indication: #showingHelp: |
|
1078 |
) |
|
1079 |
#(#MenuItem |
|
1080 |
#label: '-' |
|
1081 |
) |
|
1082 |
#(#MenuItem |
|
1083 |
#activeHelpKey: #aboutThisAppliaction |
|
1084 |
#label: 'About MenuEditor...' |
|
1085 |
#itemValue: #openAboutThisApplication |
|
1086 |
#translateLabel: true |
|
1087 |
) |
|
1088 |
) |
|
1089 |
nil |
|
1090 |
nil |
|
1606 | 1091 |
) |
1092 |
! |
|
1093 |
||
525 | 1094 |
menu |
738 | 1095 |
"This resource specification was automatically generated |
1096 |
by the MenuEditor of ST/X." |
|
1097 |
||
1098 |
"Do not manually edit this!! If it is corrupted, |
|
1099 |
the MenuEditor may not be able to read the specification." |
|
525 | 1100 |
|
1101 |
" |
|
1102 |
MenuEditor new openOnClass:MenuEditor andSelector:#menu |
|
1103 |
(Menu new fromLiteralArrayEncoding:(MenuEditor menu)) startUp |
|
1104 |
" |
|
1105 |
||
1106 |
<resource: #menu> |
|
1107 |
||
3013 | 1108 |
^ |
1775 | 1109 |
#(Menu |
3013 | 1110 |
( |
1111 |
(MenuItem |
|
1112 |
label: '&File' |
|
1113 |
translateLabel: true |
|
1114 |
submenuChannel: fileMenu |
|
1115 |
keepLinkedMenu: true |
|
1116 |
ignoreMnemonicKeys: true |
|
1117 |
ignoreShortcutKeys: true |
|
1118 |
) |
|
1119 |
(MenuItem |
|
1120 |
label: '&Edit' |
|
1121 |
translateLabel: true |
|
1122 |
submenuChannel: editMenuForMainMenuWithoutAccelerators |
|
1123 |
keepLinkedMenu: true |
|
1124 |
) |
|
1125 |
(MenuItem |
|
1126 |
enabled: hasSingleSelectionChannel |
|
1127 |
label: 'Item' |
|
1128 |
translateLabel: true |
|
1129 |
submenuChannel: addMenu |
|
1130 |
keepLinkedMenu: true |
|
1131 |
ignoreMnemonicKeys: true |
|
1132 |
ignoreShortcutKeys: true |
|
1133 |
) |
|
1134 |
(MenuItem |
|
1135 |
isVisible: isNotEditingSpecOnly |
|
1136 |
label: 'Generate' |
|
1137 |
translateLabel: true |
|
1138 |
submenuChannel: generateMenu |
|
1139 |
keepLinkedMenu: true |
|
1140 |
ignoreMnemonicKeys: true |
|
1141 |
ignoreShortcutKeys: true |
|
1142 |
) |
|
1143 |
(MenuItem |
|
1144 |
label: 'Test' |
|
1145 |
translateLabel: true |
|
1146 |
submenuChannel: submenuTest |
|
1147 |
ignoreMnemonicKeys: true |
|
1148 |
ignoreShortcutKeys: true |
|
1149 |
) |
|
1150 |
(MenuItem |
|
1151 |
label: 'Settings' |
|
1152 |
translateLabel: true |
|
1153 |
submenuChannel: settingsMenu |
|
1154 |
keepLinkedMenu: true |
|
1155 |
ignoreMnemonicKeys: true |
|
1156 |
ignoreShortcutKeys: true |
|
1157 |
) |
|
1158 |
(MenuItem |
|
1159 |
label: 'History' |
|
1160 |
translateLabel: true |
|
1161 |
isVisible: isStandAlone |
|
1162 |
submenuChannel: menuHistory |
|
1163 |
ignoreMnemonicKeys: true |
|
1164 |
ignoreShortcutKeys: true |
|
1165 |
) |
|
1166 |
(MenuItem |
|
1167 |
label: 'MENU_Help' |
|
1168 |
translateLabel: true |
|
1169 |
startGroup: conditionalRight |
|
1170 |
submenuChannel: helpMenu |
|
1171 |
keepLinkedMenu: true |
|
1172 |
ignoreMnemonicKeys: true |
|
1173 |
ignoreShortcutKeys: true |
|
1174 |
) |
|
1175 |
) |
|
1176 |
nil |
|
1177 |
nil |
|
525 | 1178 |
) |
1179 |
! |
|
1180 |
||
1631 | 1181 |
settingsMenu |
1182 |
"This resource specification was automatically generated |
|
1183 |
by the MenuEditor of ST/X." |
|
1184 |
||
1185 |
"Do not manually edit this!! If it is corrupted, |
|
1186 |
the MenuEditor may not be able to read the specification." |
|
1187 |
||
1188 |
" |
|
1632 | 1189 |
MenuEditor new openOnClass:MenuEditor andSelector:#settingsMenu |
1190 |
(Menu new fromLiteralArrayEncoding:(MenuEditor settingsMenu)) startUp |
|
1631 | 1191 |
" |
1192 |
||
1193 |
<resource: #menu> |
|
1194 |
||
2188 | 1195 |
^ |
1631 | 1196 |
#(#Menu |
3013 | 1197 |
#( |
1198 |
#(#MenuItem |
|
1199 |
isVisible: isNotEditingSpecOnly |
|
1200 |
#activeHelpKey: #settingsRedefineAspectMethods |
|
1201 |
#enabled: #hasValidSpecClass |
|
1202 |
#label: 'Redefine Aspect Methods' |
|
1203 |
#translateLabel: true |
|
1204 |
#hideMenuOnActivated: false |
|
1205 |
#indication: #redefineAspectMethodsChannel |
|
1206 |
) |
|
1207 |
#(#MenuItem |
|
1208 |
#activeHelpKey: #settingsRedefineAspectMethods |
|
1209 |
#label: 'AutoAccept on Selection-Change' |
|
1210 |
#translateLabel: true |
|
1211 |
#hideMenuOnActivated: false |
|
1212 |
#indication: #autoAcceptOnSelectionChange |
|
1213 |
) |
|
1214 |
) |
|
1215 |
nil |
|
1216 |
nil |
|
1631 | 1217 |
) |
1218 |
! |
|
1219 |
||
1606 | 1220 |
standardMenus |
738 | 1221 |
"This resource specification was automatically generated |
1222 |
by the MenuEditor of ST/X." |
|
1223 |
||
1224 |
"Do not manually edit this!! If it is corrupted, |
|
1225 |
the MenuEditor may not be able to read the specification." |
|
525 | 1226 |
|
1227 |
" |
|
1606 | 1228 |
MenuEditor new openOnClass:MenuEditor andSelector:#standardMenus |
1229 |
(Menu new fromLiteralArrayEncoding:(MenuEditor standardMenus)) startUp |
|
525 | 1230 |
" |
1231 |
||
1232 |
<resource: #menu> |
|
1233 |
||
2188 | 1234 |
^ |
1606 | 1235 |
#(#Menu |
2188 | 1236 |
#( |
1237 |
#(#MenuItem |
|
1238 |
#label: 'Standard Menu: File' |
|
1239 |
#itemValue: #doCreateStandardFileMenu |
|
1240 |
#translateLabel: true |
|
1241 |
) |
|
1242 |
#(#MenuItem |
|
1243 |
#label: 'Standard Menu: Edit' |
|
1244 |
#itemValue: #doCreateStandardEditMenu |
|
1245 |
#translateLabel: true |
|
1246 |
) |
|
1247 |
#(#MenuItem |
|
1248 |
#label: 'Standard Menu: Help' |
|
1249 |
#itemValue: #doCreateStandardHelpMenu |
|
1250 |
#translateLabel: true |
|
1251 |
) |
|
1252 |
) |
|
1253 |
nil |
|
1254 |
nil |
|
525 | 1255 |
) |
1256 |
! |
|
1257 |
||
1606 | 1258 |
toolbar |
738 | 1259 |
"This resource specification was automatically generated |
1260 |
by the MenuEditor of ST/X." |
|
1261 |
||
1262 |
"Do not manually edit this!! If it is corrupted, |
|
1263 |
the MenuEditor may not be able to read the specification." |
|
525 | 1264 |
|
1265 |
" |
|
1606 | 1266 |
MenuEditor new openOnClass:MenuEditor andSelector:#toolbar |
1267 |
(Menu new fromLiteralArrayEncoding:(MenuEditor toolbar)) startUp |
|
525 | 1268 |
" |
1269 |
||
1270 |
<resource: #menu> |
|
1271 |
||
3013 | 1272 |
^ |
1749 | 1273 |
#(Menu |
3013 | 1274 |
( |
1275 |
(MenuItem |
|
1276 |
activeHelpKey: fileNew |
|
1277 |
label: 'New' |
|
1278 |
itemValue: doNew |
|
1279 |
translateLabel: true |
|
1280 |
isButton: true |
|
1281 |
labelImage: (ResourceRetriever ToolbarIconLibrary newMenuIcon) |
|
1282 |
) |
|
1283 |
(MenuItem |
|
1284 |
label: '-' |
|
1285 |
) |
|
1286 |
(MenuItem |
|
1287 |
activeHelpKey: fileLoad |
|
1288 |
label: 'Load' |
|
1289 |
itemValue: doLoad |
|
1290 |
translateLabel: true |
|
1291 |
isButton: true |
|
1292 |
isVisible: isNotEditingSpecOnly |
|
1293 |
submenuChannel: menuHistory |
|
1294 |
labelImage: (ResourceRetriever ToolbarIconLibrary loadFromMethodIcon) |
|
1295 |
keepLinkedMenu: true |
|
1296 |
) |
|
1297 |
(MenuItem |
|
1298 |
activeHelpKey: fileSave |
|
1299 |
label: 'Save' |
|
1300 |
itemValue: doSave |
|