MenuEditor.st
author Stefan Vogel <sv@exept.de>
Thu, 05 Feb 1998 13:43:45 +0100
changeset 587 dd545d089d95
parent 578 1db32e082cd6
child 603 fc00fc231df2
permissions -rw-r--r--
Fix typos. Ensure that specClass is a string.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
     1
"
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
     2
 COPYRIGHT (c) 1997 by eXept Software AG / Claus Gittinger
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
     3
              All Rights Reserved
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
     4
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
     5
 This software is furnished under a license and may be used
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    10
 hereby transferred.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    11
"
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    12
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    13
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    14
398
155310ec83aa revised version
tz
parents: 382
diff changeset
    15
ToolApplicationModel subclass:#MenuEditor
356
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
    16
	instanceVariableNames:'isModified specClass specCanvas helpCanvas tabSelection aspects
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
    17
		slices didInstall'
220
ca
parents: 218
diff changeset
    18
	classVariableNames:''
ca
parents: 218
diff changeset
    19
	poolDictionaries:''
ca
parents: 218
diff changeset
    20
	category:'Interface-UIPainter'
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    21
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    22
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    23
Object subclass:#Item
220
ca
parents: 218
diff changeset
    24
	instanceVariableNames:'activeHelpKey enabled label value nameKey indication shortcutKey
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
    25
		accessCharacterPos retriever icon iconAndLabel submenuChannel
539
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
    26
		startGroup argument translateLabel isButton isVisible'
220
ca
parents: 218
diff changeset
    27
	classVariableNames:''
ca
parents: 218
diff changeset
    28
	poolDictionaries:''
ca
parents: 218
diff changeset
    29
	privateIn:MenuEditor
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    30
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    31
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
    32
SelectionInTreeView subclass:#TreeView
275
cdecb5b5d356 set fontHeight dependent on max. image height
ca
parents: 270
diff changeset
    33
	instanceVariableNames:'images'
cdecb5b5d356 set fontHeight dependent on max. image height
ca
parents: 270
diff changeset
    34
	classVariableNames:'CopyBuffer Images'
220
ca
parents: 218
diff changeset
    35
	poolDictionaries:''
ca
parents: 218
diff changeset
    36
	privateIn:MenuEditor
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    37
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    38
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    39
!MenuEditor class methodsFor:'documentation'!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    40
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    41
copyright
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    42
"
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    43
 COPYRIGHT (c) 1997 by eXept Software AG / Claus Gittinger
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    44
              All Rights Reserved
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    45
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    46
 This software is furnished under a license and may be used
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    47
 only in accordance with the terms of that license and with the
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    48
 inclusion of the above copyright notice.   This software may not
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    49
 be provided or otherwise made available to, or used by, any
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    50
 other person.  No title to or ownership of the software is
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    51
 hereby transferred.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    52
"
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    53
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    54
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    55
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    56
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    57
documentation
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    58
"
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    59
    create and modify or inspect popup and pullDown menus of the
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    60
    new style( derives from Menu).
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    61
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    62
    [start with:]
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    63
        MenuEditor open
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    64
        MenuEditor new openOnClass:MenuEditor andSelector:#menuPullDown
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    65
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    66
    [see also:]
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    67
        UIPainter
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    68
        UIHelpTool
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    69
        UISpecificationTool
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    70
        SelectionInTreeView
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    71
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    72
    [author:]
541
5dc124df04e2 author line in doc.
Claus Gittinger <cg@exept.de>
parents: 539
diff changeset
    73
        Claus Atzkern, eXept Software AG
5dc124df04e2 author line in doc.
Claus Gittinger <cg@exept.de>
parents: 539
diff changeset
    74
        Thomas Zwick, eXept Software AG
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    75
"
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    76
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    77
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    78
406
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
    79
!MenuEditor class methodsFor:'initialization'!
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
    80
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
    81
initialize
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
    82
432
d35dccaa804c commit buttons replaced by subSpec in ToolApplicationModel
tz
parents: 422
diff changeset
    83
    super initialize.
d35dccaa804c commit buttons replaced by subSpec in ToolApplicationModel
tz
parents: 422
diff changeset
    84
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
    85
    TreeView initialize
406
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
    86
! !
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
    87
508
968c6aa88ef0 updates channels after adding menu items
tz
parents: 507
diff changeset
    88
!MenuEditor class methodsFor:'instance creation'!
968c6aa88ef0 updates channels after adding menu items
tz
parents: 507
diff changeset
    89
968c6aa88ef0 updates channels after adding menu items
tz
parents: 507
diff changeset
    90
openModalOnClass:aClass andSelector:aSelector
968c6aa88ef0 updates channels after adding menu items
tz
parents: 507
diff changeset
    91
    ^ self new openModalOnClass:aClass andSelector:aSelector
968c6aa88ef0 updates channels after adding menu items
tz
parents: 507
diff changeset
    92
968c6aa88ef0 updates channels after adding menu items
tz
parents: 507
diff changeset
    93
968c6aa88ef0 updates channels after adding menu items
tz
parents: 507
diff changeset
    94
!
968c6aa88ef0 updates channels after adding menu items
tz
parents: 507
diff changeset
    95
968c6aa88ef0 updates channels after adding menu items
tz
parents: 507
diff changeset
    96
openOnClass:aClass andSelector:aSelector
968c6aa88ef0 updates channels after adding menu items
tz
parents: 507
diff changeset
    97
    ^ self new openOnClass:aClass andSelector:aSelector
968c6aa88ef0 updates channels after adding menu items
tz
parents: 507
diff changeset
    98
968c6aa88ef0 updates channels after adding menu items
tz
parents: 507
diff changeset
    99
968c6aa88ef0 updates channels after adding menu items
tz
parents: 507
diff changeset
   100
! !
968c6aa88ef0 updates channels after adding menu items
tz
parents: 507
diff changeset
   101
318
31a94b71ae1b reuse of generate code for instance method #menu
ca
parents: 304
diff changeset
   102
!MenuEditor class methodsFor:'code generation'!
31a94b71ae1b reuse of generate code for instance method #menu
ca
parents: 304
diff changeset
   103
31a94b71ae1b reuse of generate code for instance method #menu
ca
parents: 304
diff changeset
   104
sourceCategory
432
d35dccaa804c commit buttons replaced by subSpec in ToolApplicationModel
tz
parents: 422
diff changeset
   105
    "returns the category where to install the menu
318
31a94b71ae1b reuse of generate code for instance method #menu
ca
parents: 304
diff changeset
   106
    "
31a94b71ae1b reuse of generate code for instance method #menu
ca
parents: 304
diff changeset
   107
    ^ 'accessing menu'
31a94b71ae1b reuse of generate code for instance method #menu
ca
parents: 304
diff changeset
   108
! !
31a94b71ae1b reuse of generate code for instance method #menu
ca
parents: 304
diff changeset
   109
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   110
!MenuEditor class methodsFor:'help specs'!
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   111
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   112
helpSpec
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   113
    "return a dictionary filled with helpKey -> helptext associations.
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   114
     These are used by the activeHelp tool."
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   115
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   116
    "
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   117
    UIHelpTool openOnClass:MenuEditor    
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   118
    "
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   119
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   120
  ^ super helpSpec addPairsFrom:#(
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   121
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
   122
#addMenuItem
93fea26562c8 help texts added
tz
parents: 546
diff changeset
   123
'Adds a new menu item.'
93fea26562c8 help texts added
tz
parents: 546
diff changeset
   124
93fea26562c8 help texts added
tz
parents: 546
diff changeset
   125
#addMenuSeparator
93fea26562c8 help texts added
tz
parents: 546
diff changeset
   126
'Adds a new menu separator.'
93fea26562c8 help texts added
tz
parents: 546
diff changeset
   127
93fea26562c8 help texts added
tz
parents: 546
diff changeset
   128
#addSubMenu
93fea26562c8 help texts added
tz
parents: 546
diff changeset
   129
'Adds a new submenu.'
93fea26562c8 help texts added
tz
parents: 546
diff changeset
   130
93fea26562c8 help texts added
tz
parents: 546
diff changeset
   131
#addSubMenuLink
93fea26562c8 help texts added
tz
parents: 546
diff changeset
   132
'Adds a new linked submenu.'
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   133
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   134
#basicsAction
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   135
'A block or a selector with 0, 1 (the argument field), or 2 (the selected item) arguments.'
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   136
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   137
#basicsArgument
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   138
'An argument passed to above selector, if it is a 1- or a 2-argument selector.'
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   139
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   140
#basicsIndication
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   141
'A boolean value holder, a boolean evaluating block, or a boolean returning selector for specifying indication state.'
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   142
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   143
#basicsIsButton
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   144
'Toggles on/off a button behavior.'
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   145
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   146
#basicsLabel
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   147
'Label of the item.'
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   148
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   149
#basicsMenu
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   150
'A value holder providing the submenu to be opened if item is selected.'
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   151
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   152
#basicsMenuArgument
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   153
'An argument passes with menu selector.'
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   154
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   155
#basicsNameKey
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   156
'Unique identifier of the item (optional).'
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   157
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   158
#basicsSelector
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   159
'Selector for the generated menu should be installed.'
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   160
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   161
#basicsSeparatorType
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   162
'List of valid separators.'
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   163
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   164
#basicsTranslateLabel
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   165
'Toggles on/off translation behavior of the label via class resource file.'
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   166
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   167
#detailsAccelerator
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   168
'Key to be pressed to select the menu item from the keyboard (accelerator key).'
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   169
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   170
#detailsAccessCharaterPosition
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   171
'Index of the access character position of the textual label (optional).'
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   172
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   173
#detailsEnabled
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   174
'A boolean value holder providing en- or disabling of the menu item..'
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   175
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   176
#detailsVisibility
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   177
'A boolean value holder providing visibility of the menu item.'
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   178
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
   179
#fileLoad
93fea26562c8 help texts added
tz
parents: 546
diff changeset
   180
'Opens a dialog for selecting a menu spec.'
93fea26562c8 help texts added
tz
parents: 546
diff changeset
   181
93fea26562c8 help texts added
tz
parents: 546
diff changeset
   182
#fileNew
93fea26562c8 help texts added
tz
parents: 546
diff changeset
   183
'Creates a new menu spec.'
93fea26562c8 help texts added
tz
parents: 546
diff changeset
   184
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   185
#filePickAMenu
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   186
'Changes the cursor for moving it over another menu view to load its menu spec.'
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   187
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
   188
#fileSave
93fea26562c8 help texts added
tz
parents: 546
diff changeset
   189
'Saves current menu spec and if modified the help spec.'
455
117dcae8b5e0 no separate save of help keys
tz
parents: 441
diff changeset
   190
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   191
#imageImageAndLabel
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   192
'Toggles on/off displaying both image and textual label.'
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   193
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   194
#imageImageEditor
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   195
'Opens an Image Editor on retriever and selector.'
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   196
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   197
#imageRetriever
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   198
'Class implementing the image resource method. If no class is given, the current application class will be taken.'
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   199
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   200
#imageSelector
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   201
'Selector which returns an image.'
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   202
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   203
)
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   204
! !
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   205
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   206
!MenuEditor class methodsFor:'interface specs'!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   207
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   208
basicsItemSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   209
    "this window spec was automatically generated by the ST/X UIPainter"
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   210
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   211
    "do not manually edit this - the painter/builder may not be able to
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   212
     handle the specification if its corrupted."
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   213
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   214
    "
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   215
     UIPainter new openOnClass:MenuEditor andSelector:#basicsItemSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   216
     MenuEditor new openInterface:#basicsItemSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   217
    "
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   218
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   219
    <resource: #canvas>
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   220
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   221
    ^
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   222
     
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   223
       #(#FullSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   224
          #'window:' 
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   225
           #(#WindowSpec
290
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
   226
              #'name:' 'unnamed canvas'
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   227
              #'layout:' #(#LayoutFrame 73 0 152 0 339 0 470 0)
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   228
              #'label:' 'unnamed canvas'
290
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
   229
              #'min:' #(#Point 10 10)
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
   230
              #'max:' #(#Point 1160 870)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   231
              #'bounds:' #(#Rectangle 73 152 340 471)
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   232
              #'usePreferredExtent:' false
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   233
          )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   234
          #'component:' 
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   235
           #(#SpecCollection
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   236
              #'collection:' 
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   237
               #(
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   238
                 #(#LabelSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   239
                    #'name:' 'nameKeyLabel'
406
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
   240
                    #'layout:' #(#AlignmentOrigin 107 0 26 0 1 0.5)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   241
                    #'label:' 'Name Key:'
263
25f080e1217f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 258
diff changeset
   242
                    #'adjust:' #right
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   243
                    #'resizeForLabel:' true
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   244
                )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   245
                 #(#InputFieldSpec
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   246
                    #'name:' 'nameKeyField'
411
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   247
                    #'layout:' #(#LayoutFrame 110 0 15 0 -5 1.0 37 0)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   248
                    #'activeHelpKey:' #basicsNameKey
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   249
                    #'tabable:' true
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   250
                    #'model:' #nameKey
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   251
                    #'type:' #symbolOrNil
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   252
                    #'acceptOnReturn:' false
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   253
                    #'acceptOnTab:' false
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   254
                )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   255
                 #(#LabelSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   256
                    #'name:' 'labelLabel'
406
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
   257
                    #'layout:' #(#AlignmentOrigin 107 0 51 0 1 0.5)
398
155310ec83aa revised version
tz
parents: 382
diff changeset
   258
                    #'label:' 'Label:'
263
25f080e1217f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 258
diff changeset
   259
                    #'adjust:' #right
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   260
                    #'resizeForLabel:' true
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   261
                )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   262
                 #(#InputFieldSpec
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   263
                    #'name:' 'labelField'
411
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   264
                    #'layout:' #(#LayoutFrame 110 0 40 0 -5 1.0 62 0)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   265
                    #'activeHelpKey:' #basicsLabel
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   266
                    #'tabable:' true
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   267
                    #'model:' #label
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   268
                    #'acceptOnReturn:' false
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   269
                    #'acceptOnTab:' false
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   270
                )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   271
                 #(#LabelSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   272
                    #'name:' 'valueLabel'
406
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
   273
                    #'layout:' #(#AlignmentOrigin 107 0 90 0 1 0.5)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   274
                    #'label:' 'Action:'
263
25f080e1217f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 258
diff changeset
   275
                    #'adjust:' #right
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   276
                    #'resizeForLabel:' true
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   277
                )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   278
                 #(#InputFieldSpec
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   279
                    #'name:' 'valueField'
411
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   280
                    #'layout:' #(#LayoutFrame 110 0 79 0 -5 1.0 101 0)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   281
                    #'activeHelpKey:' #basicsAction
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   282
                    #'tabable:' true
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   283
                    #'model:' #value
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   284
                    #'type:' #symbolOrNil
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   285
                    #'acceptOnReturn:' false
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   286
                    #'acceptOnTab:' false
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   287
                )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   288
                 #(#LabelSpec
290
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
   289
                    #'name:' 'argumentLabel'
406
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
   290
                    #'layout:' #(#AlignmentOrigin 107 0 115 0 1 0.5)
290
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
   291
                    #'label:' 'Argument:'
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
   292
                    #'adjust:' #right
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
   293
                    #'resizeForLabel:' true
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
   294
                )
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
   295
                 #(#InputFieldSpec
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   296
                    #'name:' 'argumentField'
411
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   297
                    #'layout:' #(#LayoutFrame 110 0 104 0 -5 1.0 126 0)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   298
                    #'activeHelpKey:' #basicsArgument
290
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
   299
                    #'tabable:' true
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
   300
                    #'model:' #argument
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
   301
                    #'type:' #string
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   302
                    #'acceptOnReturn:' false
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   303
                    #'acceptOnTab:' false
290
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
   304
                )
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   305
                 #(#LabelSpec
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   306
                    #'name:' 'indicationLabel'
406
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
   307
                    #'layout:' #(#AlignmentOrigin 107 0 155 0 1 0.5)
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   308
                    #'label:' 'Indication:'
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   309
                    #'adjust:' #right
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   310
                    #'resizeForLabel:' true
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   311
                )
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   312
                 #(#InputFieldSpec
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   313
                    #'name:' 'indicationField'
411
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   314
                    #'layout:' #(#LayoutFrame 110 0 144 0 -5 1.0 166 0)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   315
                    #'activeHelpKey:' #basicsIndication
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   316
                    #'tabable:' true
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   317
                    #'model:' #indication
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   318
                    #'type:' #symbolOrNil
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   319
                    #'acceptOnReturn:' false
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   320
                    #'acceptOnTab:' false
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   321
                )
398
155310ec83aa revised version
tz
parents: 382
diff changeset
   322
                 #(#CheckBoxSpec
155310ec83aa revised version
tz
parents: 382
diff changeset
   323
                    #'name:' 'translateLabelCheckBox'
155310ec83aa revised version
tz
parents: 382
diff changeset
   324
                    #'layout:' #(#Point 20 192)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   325
                    #'activeHelpKey:' #basicsTranslateLabel
469
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   326
                    #'tabable:' true
398
155310ec83aa revised version
tz
parents: 382
diff changeset
   327
                    #'model:' #translateLabel
155310ec83aa revised version
tz
parents: 382
diff changeset
   328
                    #'label:' 'Translate Label'
155310ec83aa revised version
tz
parents: 382
diff changeset
   329
                )
155310ec83aa revised version
tz
parents: 382
diff changeset
   330
                 #(#CheckBoxSpec
155310ec83aa revised version
tz
parents: 382
diff changeset
   331
                    #'name:' 'isButtonCheckBox'
155310ec83aa revised version
tz
parents: 382
diff changeset
   332
                    #'layout:' #(#Point 20 221)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   333
                    #'activeHelpKey:' #basicsIsButton
469
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   334
                    #'tabable:' true
398
155310ec83aa revised version
tz
parents: 382
diff changeset
   335
                    #'model:' #isButton
155310ec83aa revised version
tz
parents: 382
diff changeset
   336
                    #'label:' 'Is Button'
155310ec83aa revised version
tz
parents: 382
diff changeset
   337
                )
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   338
              )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   339
          )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   340
      )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   341
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   342
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   343
basicsLinkSpec
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   344
    "this window spec was automatically generated by the ST/X UIPainter"
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   345
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   346
    "do not manually edit this - the painter/builder may not be able to
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   347
     handle the specification if its corrupted."
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   348
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   349
    "
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   350
     UIPainter new openOnClass:MenuEditor andSelector:#basicsLinkSpec
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   351
     MenuEditor new openInterface:#basicsLinkSpec
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   352
    "
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   353
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   354
    <resource: #canvas>
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   355
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   356
    ^
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   357
     
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   358
       #(#FullSpec
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   359
          #'window:' 
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   360
           #(#WindowSpec
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   361
              #'name:' 'unnamed canvas'
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   362
              #'layout:' #(#LayoutFrame 73 0 152 0 339 0 470 0)
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   363
              #'label:' 'unnamed canvas'
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   364
              #'min:' #(#Point 10 10)
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   365
              #'max:' #(#Point 1280 1024)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   366
              #'bounds:' #(#Rectangle 73 152 340 471)
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   367
              #'usePreferredExtent:' false
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   368
          )
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   369
          #'component:' 
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   370
           #(#SpecCollection
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   371
              #'collection:' 
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   372
               #(
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   373
                 #(#LabelSpec
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   374
                    #'name:' 'nameKeyLabel'
406
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
   375
                    #'layout:' #(#AlignmentOrigin 107 0 26 0 1 0.5)
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   376
                    #'activeHelpKey:' #nameKey
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   377
                    #'label:' 'Name Key:'
263
25f080e1217f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 258
diff changeset
   378
                    #'adjust:' #right
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   379
                    #'resizeForLabel:' true
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   380
                )
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   381
                 #(#InputFieldSpec
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   382
                    #'name:' 'nameKeyField'
411
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   383
                    #'layout:' #(#LayoutFrame 110 0 15 0 -5 1.0 37 0)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   384
                    #'activeHelpKey:' #basicsNameKey
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   385
                    #'tabable:' true
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   386
                    #'model:' #nameKey
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   387
                    #'type:' #symbolOrNil
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   388
                    #'acceptOnReturn:' false
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   389
                    #'acceptOnTab:' false
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   390
                )
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   391
                 #(#LabelSpec
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   392
                    #'name:' 'labelLabel'
406
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
   393
                    #'layout:' #(#AlignmentOrigin 107 0 51 0 1 0.5)
398
155310ec83aa revised version
tz
parents: 382
diff changeset
   394
                    #'label:' 'Label:'
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   395
                    #'resizeForLabel:' true
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   396
                )
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   397
                 #(#InputFieldSpec
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   398
                    #'name:' 'labelField'
411
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   399
                    #'layout:' #(#LayoutFrame 110 0 40 0 -5 1.0 62 0)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   400
                    #'activeHelpKey:' #basicsLabel
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   401
                    #'tabable:' true
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   402
                    #'model:' #label
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   403
                    #'acceptOnReturn:' false
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   404
                    #'acceptOnTab:' false
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   405
                )
469
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   406
                 #(#LabelSpec
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   407
                    #'name:' 'menuLabel'
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   408
                    #'layout:' #(#AlignmentOrigin 107 0 76 0 1 0.5)
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   409
                    #'label:' 'Menu:'
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   410
                    #'resizeForLabel:' true
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   411
                )
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   412
                 #(#InputFieldSpec
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   413
                    #'name:' 'menuField'
411
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   414
                    #'layout:' #(#LayoutFrame 110 0 65 0 -5 1.0 87 0)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   415
                    #'activeHelpKey:' #basicsMenu
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   416
                    #'tabable:' true
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   417
                    #'model:' #submenuChannel
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   418
                    #'type:' #symbolOrNil
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   419
                    #'acceptOnReturn:' false
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   420
                    #'acceptOnTab:' false
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   421
                )
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   422
                 #(#LabelSpec
469
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   423
                    #'name:' 'ArgumentLabel'
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   424
                    #'layout:' #(#AlignmentOrigin 107 0 100 0 1 0.5)
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   425
                    #'label:' 'Argument:'
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   426
                    #'resizeForLabel:' true
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   427
                )
411
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   428
                 #(#InputFieldSpec
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   429
                    #'name:' 'argumentField'
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   430
                    #'layout:' #(#LayoutFrame 110 0 90 0 -5 1.0 112 0)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   431
                    #'activeHelpKey:' #basicsMenuArgument
411
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   432
                    #'tabable:' true
537
c39e2ceeaaea support argument for linked menus
tz
parents: 535
diff changeset
   433
                    #'model:' #argument
411
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   434
                    #'acceptOnReturn:' false
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   435
                    #'acceptOnTab:' false
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   436
                )
469
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   437
                 #(#CheckBoxSpec
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   438
                    #'name:' 'translateLabelCheckBox'
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   439
                    #'layout:' #(#Point 20 128)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   440
                    #'activeHelpKey:' #basicsTranslateLabel
469
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   441
                    #'tabable:' true
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   442
                    #'model:' #translateLabel
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   443
                    #'label:' 'Translate Label'
411
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   444
                )
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   445
              )
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   446
          )
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   447
      )
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   448
!
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   449
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   450
basicsMenuSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   451
    "this window spec was automatically generated by the ST/X UIPainter"
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   452
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   453
    "do not manually edit this - the painter/builder may not be able to
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   454
     handle the specification if its corrupted."
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   455
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   456
    "
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   457
     UIPainter new openOnClass:MenuEditor andSelector:#basicsMenuSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   458
     MenuEditor new openInterface:#basicsMenuSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   459
    "
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   460
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   461
    <resource: #canvas>
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   462
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   463
    ^
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   464
     
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   465
       #(#FullSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   466
          #'window:' 
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   467
           #(#WindowSpec
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   468
              #'name:' 'unnamed canvas'
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   469
              #'layout:' #(#LayoutFrame 73 0 152 0 339 0 470 0)
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   470
              #'label:' 'unnamed canvas'
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   471
              #'min:' #(#Point 10 10)
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   472
              #'max:' #(#Point 1280 1024)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   473
              #'bounds:' #(#Rectangle 73 152 340 471)
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   474
              #'usePreferredExtent:' false
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   475
          )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   476
          #'component:' 
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   477
           #(#SpecCollection
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   478
              #'collection:' 
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   479
               #(
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   480
                 #(#LabelSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   481
                    #'name:' 'nameKeyLabel'
406
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
   482
                    #'layout:' #(#AlignmentOrigin 107 0 26 0 1 0.5)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   483
                    #'label:' 'Name Key:'
263
25f080e1217f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 258
diff changeset
   484
                    #'adjust:' #right
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   485
                    #'resizeForLabel:' true
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   486
                )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   487
                 #(#InputFieldSpec
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   488
                    #'name:' 'nameKeyField'
411
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   489
                    #'layout:' #(#LayoutFrame 110 0 15 0 -5 1.0 37 0)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   490
                    #'activeHelpKey:' #basicsNameKey
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   491
                    #'tabable:' true
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   492
                    #'model:' #nameKey
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   493
                    #'type:' #symbolOrNil
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   494
                    #'acceptOnReturn:' false
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   495
                    #'acceptOnTab:' false
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   496
                )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   497
                 #(#LabelSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   498
                    #'name:' 'labelLabel'
406
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
   499
                    #'layout:' #(#AlignmentOrigin 107 0 51 0 1 0.5)
398
155310ec83aa revised version
tz
parents: 382
diff changeset
   500
                    #'label:' 'Label:'
263
25f080e1217f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 258
diff changeset
   501
                    #'adjust:' #right
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   502
                    #'resizeForLabel:' true
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   503
                )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   504
                 #(#InputFieldSpec
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   505
                    #'name:' 'labelField'
411
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   506
                    #'layout:' #(#LayoutFrame 110 0 40 0 -5 1.0 62 0)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   507
                    #'activeHelpKey:' #basicsLabel
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   508
                    #'tabable:' true
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   509
                    #'model:' #label
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   510
                    #'acceptOnReturn:' false
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   511
                    #'acceptOnTab:' false
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   512
                )
398
155310ec83aa revised version
tz
parents: 382
diff changeset
   513
                 #(#CheckBoxSpec
155310ec83aa revised version
tz
parents: 382
diff changeset
   514
                    #'name:' 'translateLabelCheckBox'
155310ec83aa revised version
tz
parents: 382
diff changeset
   515
                    #'layout:' #(#Point 20 100)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   516
                    #'activeHelpKey:' #basicsTranslateLabel
469
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   517
                    #'tabable:' true
398
155310ec83aa revised version
tz
parents: 382
diff changeset
   518
                    #'model:' #translateLabel
155310ec83aa revised version
tz
parents: 382
diff changeset
   519
                    #'label:' 'Translate Label'
155310ec83aa revised version
tz
parents: 382
diff changeset
   520
                )
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   521
              )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   522
          )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   523
      )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   524
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   525
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   526
basicsRootSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   527
    "this window spec was automatically generated by the ST/X UIPainter"
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   528
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   529
    "do not manually edit this - the painter/builder may not be able to
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   530
     handle the specification if its corrupted."
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   531
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   532
    "
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   533
     UIPainter new openOnClass:MenuEditor andSelector:#basicsRootSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   534
     MenuEditor new openInterface:#basicsRootSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   535
    "
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   536
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   537
    <resource: #canvas>
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   538
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   539
    ^
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   540
     
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   541
       #(#FullSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   542
          #'window:' 
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   543
           #(#WindowSpec
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   544
              #'name:' 'unnamed canvas'
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   545
              #'layout:' #(#LayoutFrame 73 0 152 0 339 0 470 0)
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   546
              #'label:' 'unnamed canvas'
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   547
              #'min:' #(#Point 10 10)
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   548
              #'max:' #(#Point 1280 1024)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   549
              #'bounds:' #(#Rectangle 73 152 340 471)
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   550
              #'usePreferredExtent:' false
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   551
          )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   552
          #'component:' 
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   553
           #(#SpecCollection
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   554
              #'collection:' 
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   555
               #(
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   556
                 #(#LabelSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   557
                    #'name:' 'selectorLabel'
406
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
   558
                    #'layout:' #(#AlignmentOrigin 107 0 26 0 1 0.5)
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   559
                    #'label:' 'Selector:'
263
25f080e1217f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 258
diff changeset
   560
                    #'adjust:' #right
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   561
                    #'resizeForLabel:' true
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   562
                )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   563
                 #(#InputFieldSpec
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   564
                    #'name:' 'selectorField'
411
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   565
                    #'layout:' #(#LayoutFrame 110 0 15 0 -5 1.0 37 0)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   566
                    #'activeHelpKey:' #basicsSelector
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   567
                    #'tabable:' true
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   568
                    #'model:' #label
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   569
                    #'acceptOnReturn:' false
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   570
                    #'acceptOnTab:' false
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   571
                )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   572
              )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   573
          )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   574
      )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   575
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   576
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   577
basicsSeparatorSpec
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   578
    "this window spec was automatically generated by the ST/X UIPainter"
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   579
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   580
    "do not manually edit this - the painter/builder may not be able to
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   581
     handle the specification if its corrupted."
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   582
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   583
    "
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   584
     UIPainter new openOnClass:MenuEditor andSelector:#basicsSeparatorSpec
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   585
     MenuEditor new openInterface:#basicsSeparatorSpec
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   586
    "
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   587
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   588
    <resource: #canvas>
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   589
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   590
    ^
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   591
     
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   592
       #(#FullSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   593
          #'window:' 
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   594
           #(#WindowSpec
290
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
   595
              #'name:' 'unnamed canvas'
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   596
              #'layout:' #(#LayoutFrame 73 0 152 0 339 0 470 0)
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   597
              #'label:' 'unnamed canvas'
290
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
   598
              #'min:' #(#Point 10 10)
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
   599
              #'max:' #(#Point 1160 870)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   600
              #'bounds:' #(#Rectangle 73 152 340 471)
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   601
              #'usePreferredExtent:' false
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   602
          )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   603
          #'component:' 
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   604
           #(#SpecCollection
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   605
              #'collection:' 
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   606
               #(
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   607
                 #(#LabelSpec
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   608
                    #'name:' 'separatorLabel'
398
155310ec83aa revised version
tz
parents: 382
diff changeset
   609
                    #'layout:' #(#AlignmentOrigin 127 0 26 0 1 0.5)
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   610
                    #'label:' 'Separator Type:'
263
25f080e1217f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 258
diff changeset
   611
                    #'adjust:' #right
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   612
                    #'resizeForLabel:' true
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   613
                )
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   614
                 #(#ComboListSpec
290
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
   615
                    #'name:' 'seperatorList'
411
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   616
                    #'layout:' #(#LayoutFrame 132 0 15 0 -5 1.0 37 0)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   617
                    #'activeHelpKey:' #basicsSeparatorType
469
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   618
                    #'tabable:' true
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
   619
                    #'model:' #seperatorSelection
290
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
   620
                    #'useIndex:' true
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   621
                )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   622
              )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   623
          )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   624
      )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   625
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   626
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   627
classDefineSpec
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   628
    "this window spec was automatically generated by the ST/X UIPainter"
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   629
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   630
    "do not manually edit this - the painter/builder may not be able to
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   631
     handle the specification if its corrupted."
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   632
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   633
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   634
     UIPainter new openOnClass:MenuEditor andSelector:#classDefineSpec
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   635
     MenuEditor new openInterface:#classDefineSpec
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   636
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   637
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   638
    <resource: #canvas>
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   639
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   640
    ^
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   641
     
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   642
       #(#FullSpec
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   643
          #'window:' 
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   644
           #(#WindowSpec
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   645
              #'name:' 'Menu Editor'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   646
              #'layout:' #(#LayoutFrame 262 0 426 0 508 0 519 0)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   647
              #'label:' 'Menu Editor'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   648
              #'min:' #(#Point 10 10)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   649
              #'max:' #(#Point 1152 900)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   650
              #'bounds:' #(#Rectangle 262 426 509 520)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   651
              #'usePreferredExtent:' false
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   652
          )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   653
          #'component:' 
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   654
           #(#SpecCollection
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   655
              #'collection:' 
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   656
               #(
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   657
                 #(#LabelSpec
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   658
                    #'name:' 'boxLabel'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   659
                    #'layout:' #(#LayoutFrame 2 0.0 4 0 -2 1.0 24 0)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   660
                    #'label:' 'Class for code:'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   661
                    #'adjust:' #left
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   662
                    #'resizeForLabel:' true
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   663
                )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   664
                 #(#InputFieldSpec
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   665
                    #'name:' 'classNameField'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   666
                    #'layout:' #(#LayoutFrame 2 0.0 27 0 -2 1.0 49 0)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   667
                    #'tabable:' true
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   668
                    #'model:' #classNameChannel
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   669
                    #'acceptOnReturn:' false
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   670
                    #'acceptOnTab:' false
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   671
                )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   672
                 #(#UISubSpecification
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   673
                    #'name:' 'SubSpecification'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   674
                    #'layout:' #(#LayoutFrame 0 0 -29 1 0 1 -5 1)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   675
                    #'majorKey:' #ToolApplicationModel
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   676
                    #'minorKey:' #windowSpecForCommitWithoutChannels
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   677
                )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   678
              )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   679
          )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   680
      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   681
!
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   682
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   683
detailsEditSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   684
    "this window spec was automatically generated by the ST/X UIPainter"
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   685
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   686
    "do not manually edit this - the painter/builder may not be able to
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   687
     handle the specification if its corrupted."
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   688
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   689
    "
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   690
     UIPainter new openOnClass:MenuEditor andSelector:#detailsEditSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   691
     MenuEditor new openInterface:#detailsEditSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   692
    "
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   693
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   694
    <resource: #canvas>
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   695
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   696
    ^
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   697
     
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   698
       #(#FullSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   699
          #'window:' 
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   700
           #(#WindowSpec
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   701
              #'name:' 'unnamed canvas'
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   702
              #'layout:' #(#LayoutFrame 73 0 152 0 331 0 439 0)
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   703
              #'label:' 'unnamed canvas'
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   704
              #'min:' #(#Point 10 10)
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   705
              #'max:' #(#Point 1280 1024)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   706
              #'bounds:' #(#Rectangle 73 152 332 440)
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   707
              #'usePreferredExtent:' false
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   708
          )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   709
          #'component:' 
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   710
           #(#SpecCollection
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   711
              #'collection:' 
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   712
               #(
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   713
                 #(#LabelSpec
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   714
                    #'name:' 'shortcutKeyLabel'
406
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
   715
                    #'layout:' #(#AlignmentOrigin 107 0 26 0 1 0.5)
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   716
                    #'label:' 'Accelerator:'
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   717
                    #'adjust:' #right
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   718
                    #'resizeForLabel:' true
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   719
                )
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   720
                 #(#InputFieldSpec
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   721
                    #'name:' 'shortcutKeyField'
411
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   722
                    #'layout:' #(#LayoutFrame 110 0 15 0 -5 1.0 37 0)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   723
                    #'activeHelpKey:' #detailsAccelerator
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   724
                    #'tabable:' true
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   725
                    #'model:' #shortcutKey
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   726
                    #'type:' #symbolOrNil
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   727
                    #'acceptOnReturn:' false
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   728
                    #'acceptOnTab:' false
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   729
                )
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   730
                 #(#LabelSpec
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   731
                    #'name:' 'enabledLabel'
406
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
   732
                    #'layout:' #(#AlignmentOrigin 107 0 51 0 1 0.5)
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   733
                    #'label:' 'Enabled:'
263
25f080e1217f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 258
diff changeset
   734
                    #'adjust:' #right
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   735
                    #'resizeForLabel:' true
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   736
                )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   737
                 #(#InputFieldSpec
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   738
                    #'name:' 'enabledField'
411
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   739
                    #'layout:' #(#LayoutFrame 110 0 40 0 -5 1.0 62 0)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   740
                    #'activeHelpKey:' #detailsEnabled
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   741
                    #'tabable:' true
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   742
                    #'model:' #enabled
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   743
                    #'type:' #symbolOrNil
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   744
                    #'acceptOnReturn:' false
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   745
                    #'acceptOnTab:' false
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   746
                )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   747
                 #(#LabelSpec
539
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   748
                    #'name:' 'visibilityLabel'
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   749
                    #'layout:' #(#AlignmentOrigin 107 0 76 0 1 0.5)
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   750
                    #'label:' 'Visibility:'
263
25f080e1217f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 258
diff changeset
   751
                    #'adjust:' #right
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   752
                    #'resizeForLabel:' true
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   753
                )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   754
                 #(#InputFieldSpec
539
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   755
                    #'name:' 'isVisibleInputField'
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   756
                    #'layout:' #(#LayoutFrame 110 0 65 0 -5 1.0 87 0)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   757
                    #'activeHelpKey:' #detailsVisibility
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   758
                    #'tabable:' true
539
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   759
                    #'model:' #isVisible
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   760
                    #'type:' #symbolOrNil
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   761
                    #'acceptOnReturn:' false
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   762
                    #'acceptOnTab:' false
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   763
                )
532
de091386bbae add new feature:
ca
parents: 525
diff changeset
   764
                 #(#LabelSpec
de091386bbae add new feature:
ca
parents: 525
diff changeset
   765
                    #'name:' 'StartGroupLabel'
539
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   766
                    #'layout:' #(#AlignmentOrigin 107 0 111 0 1 0.5)
532
de091386bbae add new feature:
ca
parents: 525
diff changeset
   767
                    #'label:' 'Start Group:'
de091386bbae add new feature:
ca
parents: 525
diff changeset
   768
                    #'adjust:' #right
de091386bbae add new feature:
ca
parents: 525
diff changeset
   769
                    #'resizeForLabel:' true
de091386bbae add new feature:
ca
parents: 525
diff changeset
   770
                )
de091386bbae add new feature:
ca
parents: 525
diff changeset
   771
                 #(#PopUpListSpec
de091386bbae add new feature:
ca
parents: 525
diff changeset
   772
                    #'name:' 'StartGroupPopUp'
539
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   773
                    #'layout:' #(#LayoutFrame 110 0 100 0 -5 1.0 122 0)
532
de091386bbae add new feature:
ca
parents: 525
diff changeset
   774
                    #'label:' 'PopUpList'
de091386bbae add new feature:
ca
parents: 525
diff changeset
   775
                    #'model:' #startGroup
de091386bbae add new feature:
ca
parents: 525
diff changeset
   776
                    #'menu:' 
de091386bbae add new feature:
ca
parents: 525
diff changeset
   777
                     #(nil
de091386bbae add new feature:
ca
parents: 525
diff changeset
   778
                        #right
de091386bbae add new feature:
ca
parents: 525
diff changeset
   779
                    )
de091386bbae add new feature:
ca
parents: 525
diff changeset
   780
                    #'useIndex:' false
de091386bbae add new feature:
ca
parents: 525
diff changeset
   781
                )
539
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   782
                 #(#LabelSpec
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   783
                    #'name:' 'accessCharLabel'
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   784
                    #'layout:' #(#AlignmentOrigin 217 0 142 0 1 0.5)
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   785
                    #'label:' 'Access Character Position:'
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   786
                    #'adjust:' #right
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   787
                    #'resizeForLabel:' true
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   788
                )
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   789
                 #(#InputFieldSpec
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   790
                    #'name:' 'accessCharField'
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   791
                    #'layout:' #(#LayoutFrame 220 0 131 0 -5 1.0 153 0)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   792
                    #'activeHelpKey:' #detailsAccessCharaterPosition
539
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   793
                    #'tabable:' true
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   794
                    #'model:' #accessCharacterPos
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   795
                    #'type:' #numberOrNil
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   796
                    #'acceptOnReturn:' false
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   797
                    #'acceptOnTab:' false
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
   798
                )
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   799
              )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   800
          )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   801
      )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   802
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   803
398
155310ec83aa revised version
tz
parents: 382
diff changeset
   804
imageEditSpec
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   805
    "this window spec was automatically generated by the ST/X UIPainter"
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   806
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   807
    "do not manually edit this - the painter/builder may not be able to
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   808
     handle the specification if its corrupted."
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   809
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   810
    "
398
155310ec83aa revised version
tz
parents: 382
diff changeset
   811
     UIPainter new openOnClass:MenuEditor andSelector:#imageEditSpec
155310ec83aa revised version
tz
parents: 382
diff changeset
   812
     MenuEditor new openInterface:#imageEditSpec
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   813
    "
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   814
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   815
    <resource: #canvas>
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   816
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   817
    ^
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   818
     
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   819
       #(#FullSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   820
          #'window:' 
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   821
           #(#WindowSpec
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   822
              #'name:' 'unnamed canvas'
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   823
              #'layout:' #(#LayoutFrame 238 0 321 0 482 0 462 0)
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   824
              #'label:' 'unnamed canvas'
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   825
              #'min:' #(#Point 10 10)
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   826
              #'max:' #(#Point 1280 1024)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   827
              #'bounds:' #(#Rectangle 238 321 483 463)
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   828
              #'usePreferredExtent:' false
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   829
          )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   830
          #'component:' 
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   831
           #(#SpecCollection
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   832
              #'collection:' 
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   833
               #(
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   834
                 #(#LabelSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   835
                    #'name:' 'retrieverLabel'
406
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
   836
                    #'layout:' #(#AlignmentOrigin 107 0 26 0 1 0.5)
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   837
                    #'label:' 'Retriever:'
263
25f080e1217f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 258
diff changeset
   838
                    #'adjust:' #right
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   839
                    #'resizeForLabel:' true
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   840
                )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   841
                 #(#InputFieldSpec
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   842
                    #'name:' 'retrieverField'
411
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   843
                    #'layout:' #(#LayoutFrame 110 0 15 0 -5 1.0 37 0)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   844
                    #'activeHelpKey:' #imageRetriever
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   845
                    #'tabable:' true
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   846
                    #'model:' #retriever
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   847
                    #'type:' #symbolOrNil
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   848
                    #'acceptOnReturn:' false
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   849
                    #'acceptOnTab:' false
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   850
                )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   851
                 #(#LabelSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   852
                    #'name:' 'iconLabel'
406
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
   853
                    #'layout:' #(#AlignmentOrigin 107 0 51 0 1 0.5)
398
155310ec83aa revised version
tz
parents: 382
diff changeset
   854
                    #'label:' 'Selector:'
263
25f080e1217f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 258
diff changeset
   855
                    #'adjust:' #right
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   856
                    #'resizeForLabel:' true
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   857
                )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   858
                 #(#InputFieldSpec
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   859
                    #'name:' 'iconField'
411
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
   860
                    #'layout:' #(#LayoutFrame 110 0 40 0 -5 1.0 62 0)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   861
                    #'activeHelpKey:' #imageSelector
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   862
                    #'tabable:' true
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   863
                    #'model:' #icon
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   864
                    #'type:' #symbolOrNil
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   865
                    #'acceptOnReturn:' false
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
   866
                    #'acceptOnTab:' false
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   867
                )
469
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   868
                 #(#ActionButtonSpec
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   869
                    #'name:' 'imageEditorButton'
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   870
                    #'layout:' #(#LayoutFrame 110 0 66 0 -5 1 90 0)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   871
                    #'activeHelpKey:' #imageImageEditor
469
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   872
                    #'label:' 'Image Editor'
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   873
                    #'tabable:' true
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   874
                    #'model:' #doEditImage
28bcb1982ef9 tabs added
tz
parents: 455
diff changeset
   875
                )
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   876
                 #(#CheckBoxSpec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   877
                    #'name:' 'iconAndLabel'
398
155310ec83aa revised version
tz
parents: 382
diff changeset
   878
                    #'layout:' #(#LayoutOrigin 20 0 104 0)
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
   879
                    #'activeHelpKey:' #imageImageAndLabel
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   880
                    #'tabable:' true
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   881
                    #'model:' #iconAndLabel
398
155310ec83aa revised version
tz
parents: 382
diff changeset
   882
                    #'label:' 'Image & Label'
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   883
                )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   884
              )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   885
          )
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   886
      )
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   887
!
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   888
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   889
windowSpec
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   890
    "this window spec was automatically generated by the ST/X UIPainter"
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   891
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   892
    "do not manually edit this - the painter/builder may not be able to
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   893
     handle the specification if its corrupted."
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   894
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   895
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   896
     UIPainter new openOnClass:MenuEditor andSelector:#windowSpec
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   897
     MenuEditor new openInterface:#windowSpec
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   898
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   899
    "MenuEditor open"
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   900
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   901
    <resource: #canvas>
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   902
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   903
    ^
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   904
     
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   905
       #(#FullSpec
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   906
          #'window:' 
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   907
           #(#WindowSpec
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   908
              #'name:' 'Menu Builder'
571
1e362121fe32 open tutorial added
tz
parents: 557
diff changeset
   909
              #'layout:' #(#LayoutFrame 324 0 233 0 903 0 616 0)
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   910
              #'label:' 'Menu Builder'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   911
              #'min:' #(#Point 10 10)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   912
              #'max:' #(#Point 1152 900)
571
1e362121fe32 open tutorial added
tz
parents: 557
diff changeset
   913
              #'bounds:' #(#Rectangle 324 233 904 617)
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   914
              #'menu:' #menu
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   915
              #'usePreferredExtent:' false
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   916
          )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   917
          #'component:' 
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   918
           #(#SpecCollection
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   919
              #'collection:' 
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   920
               #(
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   921
                 #(#MenuPanelSpec
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   922
                    #'name:' 'menuToolbarView'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   923
                    #'layout:' #(#LayoutFrame 0 0.0 0 0 0 1.0 32 0)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   924
                    #'menu:' #menuToolbar
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   925
                    #'showSeparatingLines:' true
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   926
                )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   927
                 #(#VariableHorizontalPanelSpec
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   928
                    #'name:' 'variableHorizontalPanel1'
571
1e362121fe32 open tutorial added
tz
parents: 557
diff changeset
   929
                    #'layout:' #(#LayoutFrame 0 0.0 34 0.0 0 1.0 -26 1.0)
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   930
                    #'component:' 
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   931
                     #(#SpecCollection
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   932
                        #'collection:' 
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   933
                         #(
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   934
                           #(#ArbitraryComponentSpec
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   935
                              #'name:' 'painterView'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   936
                              #'menu:' #menuEdit
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   937
                              #'hasHorizontalScrollBar:' true
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   938
                              #'hasVerticalScrollBar:' true
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   939
                              #'component:' #treeView
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   940
                              #'hasBorder:' false
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   941
                          )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   942
                           #(#ViewSpec
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   943
                              #'name:' 'view1'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   944
                              #'component:' 
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   945
                               #(#SpecCollection
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   946
                                  #'collection:' 
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   947
                                   #(
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   948
                                     #(#NoteBookViewSpec
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   949
                                        #'name:' 'specificationView'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   950
                                        #'layout:' #(#LayoutFrame 1 0.0 0 0.0 1 1.0 -26 1.0)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   951
                                        #'tabable:' true
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   952
                                        #'model:' #tabModel
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   953
                                        #'menu:' #tabList
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   954
                                        #'useIndex:' true
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   955
                                        #'canvas:' #noteBookView
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   956
                                    )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   957
                                     #(#UISubSpecification
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   958
                                        #'name:' 'SubSpecification'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   959
                                        #'layout:' #(#LayoutFrame 2 0.0 -26 1 -2 1.0 -2 1.0)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   960
                                        #'majorKey:' #ToolApplicationModel
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   961
                                        #'minorKey:' #windowSpecForCommit
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   962
                                    )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   963
                                  )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   964
                              )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   965
                              #'level:' -1
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   966
                          )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   967
                        )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   968
                    )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   969
                    #'handles:' #(#Any 0.384483 1.0)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   970
                )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   971
                 #(#UISubSpecification
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   972
                    #'name:' 'infoBarSubSpec'
571
1e362121fe32 open tutorial added
tz
parents: 557
diff changeset
   973
                    #'layout:' #(#LayoutFrame 0 0.0 -24 1 0 1.0 0 1.0)
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   974
                    #'majorKey:' #ToolApplicationModel
535
1caf545614c5 info bar subspec changed
tz
parents: 532
diff changeset
   975
                    #'minorKey:' #windowSpecForInfoBarWithClock
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   976
                )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   977
              )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   978
          )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   979
      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   980
! !
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   981
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   982
!MenuEditor class methodsFor:'menu specs'!
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   983
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   984
menu
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   985
    "this window spec was automatically generated by the ST/X MenuEditor"
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   986
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   987
    "do not manually edit this - the builder may not be able to
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   988
     handle the specification if its corrupted."
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   989
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   990
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   991
     MenuEditor new openOnClass:MenuEditor andSelector:#menu
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   992
     (Menu new fromLiteralArrayEncoding:(MenuEditor menu)) startUp
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   993
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   994
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   995
    <resource: #menu>
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   996
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   997
    ^
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   998
     
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   999
       #(#Menu
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1000
          
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1001
           #(
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1002
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1003
                #'label:' 'About'
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
  1004
                #'activeHelpKey:' #about
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1005
                #'accessCharacterPosition:' 1
546
aac3f3c9383f help menu item aligned to the right
tz
parents: 541
diff changeset
  1006
                #'labelImage:' #(#ResourceRetriever nil #menuIcon)
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1007
                #'submenuChannel:' #menuAbout
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1008
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1009
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1010
                #'label:' 'File'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1011
                #'translateLabel:' true
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1012
                #'value:' #file
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
  1013
                #'activeHelpKey:' #file
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1014
                #'submenu:' 
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1015
                 #(#Menu
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1016
                    
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1017
                     #(
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1018
                       #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1019
                          #'label:' 'New'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1020
                          #'value:' #doNew
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1021
                          #'activeHelpKey:' #fileNew
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1022
                      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1023
                       #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1024
                          #'label:' '-'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1025
                      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1026
                       #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1027
                          #'label:' 'Load...'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1028
                          #'translateLabel:' true
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1029
                          #'value:' #doFromClass
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1030
                          #'activeHelpKey:' #fileLoad
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1031
                          #'enabled:' #isStandAlone
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1032
                      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1033
                       #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1034
                          #'label:' '-'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1035
                      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1036
                       #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1037
                          #'label:' 'Save'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1038
                          #'value:' #doInstallSpec
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1039
                          #'activeHelpKey:' #fileSave
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1040
                      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1041
                       #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1042
                          #'label:' '-'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1043
                      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1044
                       #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1045
                          #'label:' 'Pick A Menu'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1046
                          #'value:' #doPickAMenu
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
  1047
                          #'activeHelpKey:' #filePickAMenu
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1048
                          #'enabled:' #isStandAlone
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1049
                      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1050
                       #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1051
                          #'label:' 'Define Menu Class...'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1052
                          #'value:' #doDefineClass
578
1db32e082cd6 2 help texts removed
tz
parents: 577
diff changeset
  1053
                          #'activeHelpKey:' #fileDefineClass
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1054
                          #'enabled:' #isStandAlone
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1055
                      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1056
                       #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1057
                          #'label:' 'Browse Menu Class'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1058
                          #'value:' #doBrowseAppClass
578
1db32e082cd6 2 help texts removed
tz
parents: 577
diff changeset
  1059
                          #'activeHelpKey:' #fileBrowseClass
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1060
                      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1061
                       #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1062
                          #'label:' '-'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1063
                      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1064
                       #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1065
                          #'label:' 'Exit'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1066
                          #'translateLabel:' true
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1067
                          #'value:' #closeRequest
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1068
                          #'activeHelpKey:' #fileExit
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1069
                      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1070
                    ) nil
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1071
                    nil
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1072
                )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1073
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1074
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1075
                #'label:' 'Edit'
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
  1076
                #'activeHelpKey:' #edit
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1077
                #'submenuChannel:' #menuEdit
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1078
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1079
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1080
                #'label:' 'Add'
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
  1081
                #'activeHelpKey:' #add
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1082
                #'submenuChannel:' #menuAdd
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1083
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1084
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1085
                #'label:' 'Test'
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
  1086
                #'activeHelpKey:' #test
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1087
                #'submenuChannel:' #submenuTest
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1088
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1089
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1090
                #'label:' 'History'
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
  1091
                #'activeHelpKey:' #history
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1092
                #'submenuChannel:' #menuHistory
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1093
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1094
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1095
                #'label:' 'Help'
546
aac3f3c9383f help menu item aligned to the right
tz
parents: 541
diff changeset
  1096
                #'startGroup:' #right
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
  1097
                #'activeHelpKey:' #help
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1098
                #'submenuChannel:' #menuHelp
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1099
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1100
          ) nil
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1101
          nil
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1102
      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1103
!
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1104
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1105
menuAdd
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1106
    "this window spec was automatically generated by the ST/X MenuEditor"
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1107
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1108
    "do not manually edit this - the builder may not be able to
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1109
     handle the specification if its corrupted."
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1110
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1111
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1112
     MenuEditor new openOnClass:MenuEditor andSelector:#menuAdd
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1113
     (Menu new fromLiteralArrayEncoding:(MenuEditor menuAdd)) startUp
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1114
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1115
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1116
    <resource: #menu>
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1117
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1118
    ^
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1119
     
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1120
       #(#Menu
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1121
          
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1122
           #(
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1123
             #(#MenuItem
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1124
                #'label:' 'Menu Item'
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1125
                #'value:' #doCreateItem
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1126
                #'activeHelpKey:' #addMenuItem
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1127
                #'labelImage:' #(#ResourceRetriever #MenuEditor #menuItemImage 'Menu Item')
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1128
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1129
             #(#MenuItem
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1130
                #'label:' 'Menu Separator'
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1131
                #'value:' #doCreateSep
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1132
                #'activeHelpKey:' #addMenuSeparator
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1133
                #'labelImage:' #(#ResourceRetriever #MenuEditor #menuSeparatorImage 'Menu Separator')
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1134
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1135
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1136
                #'label:' '-'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1137
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1138
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1139
                #'label:' 'Submenu'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1140
                #'value:' #doCreateMenu
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
  1141
                #'activeHelpKey:' #addSubMenu
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1142
                #'labelImage:' #(#ResourceRetriever #MenuEditor #submenuImage 'Submenu')
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1143
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1144
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1145
                #'label:' 'Submenu Link'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1146
                #'value:' #doCreateLink
577
d9f9745572b2 help texts revised
tz
parents: 576
diff changeset
  1147
                #'activeHelpKey:' #addSubMenuLink
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1148
                #'labelImage:' #(#ResourceRetriever #MenuEditor #linkSubmenuImage 'Submenu Link')
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1149
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1150
          ) nil
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1151
          nil
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1152
      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1153
!
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1154
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1155
menuDefaultLink
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1156
    "this window spec was automatically generated by the ST/X MenuEditor"
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1157
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1158
    "do not manually edit this - the builder may not be able to
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1159
     handle the specification if its corrupted."
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1160
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1161
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1162
     MenuEditor new openOnClass:MenuEditor andSelector:#menuDefaultLink
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1163
     (Menu new fromLiteralArrayEncoding:(MenuEditor menuDefaultLink)) startUp
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1164
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1165
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1166
    <resource: #menu>
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1167
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1168
    ^
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1169
     
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1170
       #(#Menu
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1171
          
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1172
           #(
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1173
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1174
                #'label:' '!! derives from application !!'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1175
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1176
          ) nil
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1177
          nil
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1178
      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1179
!
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1180
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1181
menuEdit
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1182
    "this window spec was automatically generated by the ST/X MenuEditor"
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1183
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1184
    "do not manually edit this - the builder may not be able to
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1185
     handle the specification if its corrupted."
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1186
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1187
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1188
     MenuEditor new openOnClass:MenuEditor andSelector:#menuEdit
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1189
     (Menu new fromLiteralArrayEncoding:(MenuEditor menuEdit)) startUp
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1190
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1191
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1192
    <resource: #menu>
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1193
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1194
    ^
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1195
     
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1196
       #(#Menu
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1197
          
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1198
           #(
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1199
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1200
                #'label:' 'Cut'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1201
                #'value:' #doCut
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1202
                #'activeHelpKey:' #editCut
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1203
                #'enabled:' #hasValidSelection
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1204
                #'shortcutKeyCharacter:' #Cut
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1205
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1206
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1207
                #'label:' 'Copy'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1208
                #'value:' #doCopy
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1209
                #'activeHelpKey:' #editCopy
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1210
                #'enabled:' #hasValidSelection
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1211
                #'shortcutKeyCharacter:' #Copy
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1212
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1213
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1214
                #'label:' 'Paste'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1215
                #'value:' #doPaste
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1216
                #'activeHelpKey:' #editPaste
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1217
                #'enabled:' #hasAnySingleSelection
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1218
                #'shortcutKeyCharacter:' #Paste
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1219
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1220
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1221
                #'label:' '-'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1222
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1223
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1224
                #'label:' 'Move Up'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1225
                #'value:' #doStepUp
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1226
                #'activeHelpKey:' #editMoveUp
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1227
                #'enabled:' #enabledStepOver
557
de8d8782486c some revisions
tz
parents: 548
diff changeset
  1228
                #'labelImage:' #(#ResourceRetriever #ToolApplicationModel #upIcon 'Move Up')
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1229
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1230
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1231
                #'label:' 'Move Down'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1232
                #'value:' #doStepDown
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1233
                #'activeHelpKey:' #editMoveDown
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1234
                #'enabled:' #enabledStepOver
557
de8d8782486c some revisions
tz
parents: 548
diff changeset
  1235
                #'labelImage:' #(#ResourceRetriever #ToolApplicationModel #downIcon 'Move Down')
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1236
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1237
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1238
                #'label:' 'Move In'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1239
                #'value:' #doStepIn
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1240
                #'activeHelpKey:' #editMoveIn
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1241
                #'enabled:' #enabledStepIn
557
de8d8782486c some revisions
tz
parents: 548
diff changeset
  1242
                #'labelImage:' #(#ResourceRetriever #ToolApplicationModel #downRightIcon 'Move In')
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1243
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1244
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1245
                #'label:' 'Move Out'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1246
                #'value:' #doStepOut
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1247
                #'activeHelpKey:' #editMoveOut
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1248
                #'enabled:' #enabledStepOut
557
de8d8782486c some revisions
tz
parents: 548
diff changeset
  1249
                #'labelImage:' #(#ResourceRetriever #ToolApplicationModel #leftDownIcon 'Move Out')
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1250
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1251
          ) nil
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1252
          nil
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1253
      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1254
!
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1255
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1256
menuToolbar
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1257
    "this window spec was automatically generated by the ST/X MenuEditor"
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1258
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1259
    "do not manually edit this - the builder may not be able to
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1260
     handle the specification if its corrupted."
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1261
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1262
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1263
     MenuEditor new openOnClass:MenuEditor andSelector:#menuToolbar
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1264
     (Menu new fromLiteralArrayEncoding:(MenuEditor menuToolbar)) startUp
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1265
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1266
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1267
    <resource: #menu>
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1268
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1269
    ^
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1270
     
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1271
       #(#Menu
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1272
          
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1273
           #(
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1274
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1275
                #'label:' 'New'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1276
                #'isButton:' true
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1277
                #'value:' #doNew
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1278
                #'activeHelpKey:' #fileNew
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1279
                #'labelImage:' #(#ResourceRetriever nil #newIcon)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1280
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1281
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1282
                #'label:' 'Load'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1283
                #'isButton:' true
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1284
                #'value:' #doFromClass
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1285
                #'activeHelpKey:' #fileLoad
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1286
                #'labelImage:' #(#ResourceRetriever nil #loadIcon)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1287
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1288
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1289
                #'label:' 'Save'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1290
                #'isButton:' true
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1291
                #'value:' #doInstallSpec
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1292
                #'activeHelpKey:' #fileSave
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1293
                #'labelImage:' #(#ResourceRetriever nil #saveIcon)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1294
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1295
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1296
                #'label:' ''
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1297
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1298
             #(#MenuItem
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1299
                #'label:' 'Add Item'
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1300
                #'isButton:' true
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1301
                #'value:' #doCreateItem
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1302
                #'activeHelpKey:' #addMenuItem
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1303
                #'enabled:' #hasAnySingleSelection
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1304
                #'labelImage:' #(#ResourceRetriever nil #menuItemImage)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1305
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1306
             #(#MenuItem
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1307
                #'label:' 'Add Separator'
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1308
                #'isButton:' true
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1309
                #'value:' #doCreateSep
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1310
                #'activeHelpKey:' #addMenuSeparator
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1311
                #'enabled:' #hasAnySingleSelection
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1312
                #'labelImage:' #(#ResourceRetriever nil #menuSeparatorImage)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1313
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1314
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1315
                #'label:' ''
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1316
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1317
             #(#MenuItem
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1318
                #'label:' 'Add Submenu'
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1319
                #'isButton:' true
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1320
                #'value:' #doCreateMenu
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1321
                #'activeHelpKey:' #addSubMenu
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1322
                #'enabled:' #hasAnySingleSelection
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1323
                #'labelImage:' #(#ResourceRetriever nil #submenuImage)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1324
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1325
             #(#MenuItem
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1326
                #'label:' 'Add Linked Submenu'
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1327
                #'isButton:' true
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1328
                #'value:' #doCreateLink
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1329
                #'activeHelpKey:' #addSubMenuLink
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1330
                #'enabled:' #hasAnySingleSelection
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1331
                #'labelImage:' #(#ResourceRetriever nil #linkSubmenuImage)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1332
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1333
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1334
                #'label:' ''
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1335
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1336
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1337
                #'label:' 'Move Up'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1338
                #'isButton:' true
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1339
                #'value:' #doStepUp
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1340
                #'activeHelpKey:' #editMoveUp
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1341
                #'enabled:' #enabledStepOver
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1342
                #'labelImage:' #(#ResourceRetriever nil #upIcon)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1343
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1344
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1345
                #'label:' 'Move Down'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1346
                #'isButton:' true
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1347
                #'value:' #doStepDown
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1348
                #'activeHelpKey:' #editMoveDown
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1349
                #'enabled:' #enabledStepOver
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1350
                #'labelImage:' #(#ResourceRetriever nil #downIcon)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1351
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1352
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1353
                #'label:' 'Move In'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1354
                #'isButton:' true
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1355
                #'value:' #doStepIn
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1356
                #'activeHelpKey:' #editMoveIn
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1357
                #'enabled:' #enabledStepIn
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1358
                #'labelImage:' #(#ResourceRetriever nil #downRightIcon)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1359
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1360
             #(#MenuItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1361
                #'label:' 'Move Out'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1362
                #'isButton:' true
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1363
                #'value:' #doStepOut
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  1364
                #'activeHelpKey:' #editMoveOut
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1365
                #'enabled:' #enabledStepOut
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1366
                #'labelImage:' #(#ResourceRetriever nil #leftDownIcon)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1367
            )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1368
          ) nil
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1369
          nil
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1370
      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1371
! !
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1372
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1373
!MenuEditor class methodsFor:'resources'!
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1374
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1375
linkSubmenuImage
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1376
    "Generated by the Image Editor"
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1377
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1378
    ImageEditor openOnClass:self andSelector:#linkSubmenuImage
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1379
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1380
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1381
    <resource: #image>
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1382
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1383
    ^Icon
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1384
        constantNamed:#'MenuEditor linkSubmenuImage'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1385
        ifAbsentPut:[(Depth4Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#(4 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@@@@@@@ADQDQDQDQDQDQH@D"H"H"H"H"H"K0@RH"H"H"H"H"H/@A????????????<@D@@@@@@@@@@@C0@PL3L0DQDQDQD_@A@3L3LBH"H"H"<@DCL3L3@"H"H"K0@PL3L3L0??????@A@@@@L3L@@@@@<@DQDQDCL3@PLAG0@RH"H"@3L0@3@/@AH"H"H L3L3L0<@G?????<CL3L3L@@P@@@@@@@3L3LO@ADQDQDQDP@CLA<@D"H"H"H"H LBK0@RH"H"H"H"@BH/@B????????????<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b'); colorMap:((OrderedCollection new add:(Color black); add:(Color white); add:(Color grey:66.9978); add:(Color red:100.0 green:0.0 blue:0.0); add:(Color red:0.0 green:100.0 blue:0.0); add:(Color red:0.0 green:0.0 blue:100.0); add:(Color red:0.0 green:100.0 blue:100.0); add:(Color red:100.0 green:100.0 blue:0.0); add:(Color red:100.0 green:0.0 blue:100.0); add:(Color red:49.9962 green:0.0 blue:0.0); add:(Color red:0.0 green:49.9962 blue:0.0); add:(Color red:0.0 green:0.0 blue:49.9962); add:(Color red:0.0 green:49.9962 blue:49.9962); add:(Color red:49.9962 green:49.9962 blue:0.0); add:(Color red:49.9962 green:0.0 blue:49.9962); add:(Color grey:49.9962); yourself)); mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'???<???<???<???<???<???<???<???<???<???<???<???<???<???<???<???<???<???<???<???<???<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a'); yourself); yourself]!
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1386
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1387
menuItemImage
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1388
    "Generated by the Image Editor"
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1389
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1390
    ImageEditor openOnClass:self andSelector:#menuItemImage
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1391
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1392
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1393
    <resource: #image>
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1394
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1395
    ^Icon
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1396
        constantNamed:#'MenuEditor menuItemImage'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1397
        ifAbsentPut:[(Depth2Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#(2 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'UUUUUUUQUUUUUUUPUUUUUUU_UUUUUUUPUUUUUUUP@@@@@@@@EUUUUUVAF*****+HF:?+::;@F:.+*?;@F:.+::;@F:.+*:;@F:.+::;@F*****+DK??????A@@@@@@@@UUUUUUUPUUUUUUUXUUUUUUUPUUUUUUUPUUUUUUUPUUUUUUUX'); colorMap:(((Array new:4) at:1 put:((Color black)); at:2 put:((Color white)); at:3 put:((Color grey:66.9978)); at:4 put:((Color grey:49.9962)); yourself)); mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@@@@@@@@@@@@???<???<???<???<???<???<???<???<???<???<???<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a'); yourself); yourself]!
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1398
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1399
menuSeparatorImage
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1400
    "Generated by the Image Editor"
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1401
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1402
    ImageEditor openOnClass:self andSelector:#menuSeparatorImage
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1403
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1404
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1405
    <resource: #image>
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1406
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1407
    ^Icon
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1408
        constantNamed:#'MenuEditor menuSeparatorImage'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1409
        ifAbsentPut:[(Depth2Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#(2 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'UUUUUUURUUUUUUUPUUUUUUUPUUUUUUUPUUUUUUUP@@@@@@@@EUUUUUV@F*****+DF*****+CF?????+@F0@@@@[@F%UUUU[HF*****+@F*****+@K??????N@@@@@@@HUUUUUUUPUUUUUUUPUUUUUUUWUUUUUUUXUUUUUUUPUUUUUUUP'); colorMap:(((Array new:4) at:1 put:((Color black)); at:2 put:((Color white)); at:3 put:((Color grey:66.9978)); at:4 put:((Color grey:49.9962)); yourself)); mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@@@@@@@@@@@@???<???<???<???<???<???<???<???<???<???<???<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a'); yourself); yourself]!
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1410
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1411
submenuImage
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1412
    "Generated by the Image Editor"
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1413
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1414
    ImageEditor openOnClass:self andSelector:#submenuImage
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1415
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1416
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1417
    <resource: #image>
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1418
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1419
    ^Icon
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1420
        constantNamed:#'MenuEditor submenuImage'
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1421
        ifAbsentPut:[(Depth2Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#(2 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@EUUUUUV@F*****+@F*****+@G??????GD@@@@@C@EUUUUUWLF*****+@F*****+@G??????HD@@@@@C@EUUUUUW@F*****+@F*****+OG??????@D@@@@@C@EUUUUUW@F*****+@F*****+@K??????@@@@@@@@@@@@@@@@@'); colorMap:(((Array new:4) at:1 put:((Color black)); at:2 put:((Color white)); at:3 put:((Color grey:66.9978)); at:4 put:((Color grey:49.9962)); yourself)); mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'???<???<???<???<???<???<???<???<???<???<???<???<???<???<???<???<???<???<???<???<???<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a'); yourself); yourself]! !
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1422
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1423
!MenuEditor class methodsFor:'slices'!
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1424
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1425
slicesItem
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1426
    ^#(
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1427
            (Basics     basicsItemSpec)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1428
            (Details    detailsEditSpec)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1429
            (Image      imageEditSpec)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1430
      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1431
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1432
!
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1433
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1434
slicesLink
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1435
    ^#(
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1436
            (Basics     basicsLinkSpec)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1437
            (Details    detailsEditSpec)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1438
            (Image      imageEditSpec)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1439
      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1440
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1441
!
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1442
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1443
slicesMenu
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1444
    ^#(
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1445
            (Basics     basicsMenuSpec)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1446
            (Details    detailsEditSpec)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1447
            (Image      imageEditSpec)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1448
      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1449
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1450
!
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1451
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1452
slicesRootMenu
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1453
    ^#(
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1454
            (Basics   basicsRootSpec)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1455
      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1456
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1457
!
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1458
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1459
slicesSeparatorMenu
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1460
    ^#(
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1461
            (Basics   basicsSeparatorSpec)
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1462
      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1463
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1464
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1465
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1466
!MenuEditor methodsFor:'accessing'!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1467
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  1468
isModified: aBoolean         
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1469
    "sets menu tree modifications; invoked by the painter."
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  1470
155310ec83aa revised version
tz
parents: 382
diff changeset
  1471
    isModified := aBoolean
155310ec83aa revised version
tz
parents: 382
diff changeset
  1472
!
155310ec83aa revised version
tz
parents: 382
diff changeset
  1473
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1474
specClass
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1475
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1476
    ^specClass
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1477
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1478
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1479
specClass:aClass
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1480
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1481
    aClass isBehavior ifTrue:[specClass := aClass name]
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1482
                     ifFalse:[specClass := aClass]
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1483
!
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1484
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1485
submenuTest
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1486
    "returns submenu assigned to item test"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1487
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1488
    |menu|
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1489
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1490
    (menu := self treeView asMenu) allItemsDo:
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1491
    [:anItem|
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1492
        anItem value:nil.
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1493
        anItem enabled:true.
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1494
    ].
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1495
    ^menu
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1496
!
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1497
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1498
useHelpDictionary:aDictionary
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1499
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1500
    self noteBookView.
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1501
    self helpTool dictionary:aDictionary
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1502
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1503
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1504
!MenuEditor methodsFor:'aspects'!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1505
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1506
aspectFor:aKey
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1507
    "returns aspect for a key or nil"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1508
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1509
    ^aspects at: aKey ifAbsent: [super aspectFor:aKey]
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1510
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1511
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1512
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1513
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1514
enabledStepIn
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1515
    "returns whether user can put selected item in next submenu"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1516
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1517
    ^builder booleanValueAspectFor: #enabledStepIn
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1518
!
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1519
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1520
enabledStepOut
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1521
    "returns whether user can put selected item out of current parent submenu"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1522
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1523
    ^builder booleanValueAspectFor: #enabledStepOut
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1524
                         
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1525
!
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1526
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1527
enabledStepOver
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1528
    "returns whether user can shift selected item up or down"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1529
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1530
    ^builder booleanValueAspectFor:#enabledStepOver
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1531
!
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1532
220
ca
parents: 218
diff changeset
  1533
hasAnySingleSelection
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1534
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1535
    ^builder booleanValueAspectFor: #hasAnySingleSelection
220
ca
parents: 218
diff changeset
  1536
!
ca
parents: 218
diff changeset
  1537
ca
parents: 218
diff changeset
  1538
hasValidSelection
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1539
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1540
    ^builder booleanValueAspectFor: #hasValidSelection
220
ca
parents: 218
diff changeset
  1541
!
ca
parents: 218
diff changeset
  1542
ca
parents: 218
diff changeset
  1543
hasValidSingleSelection
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1544
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1545
    ^builder booleanValueAspectFor: #hasValidSingleSelection
220
ca
parents: 218
diff changeset
  1546
!
ca
parents: 218
diff changeset
  1547
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1548
noteBookView
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1549
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1550
    |noteBook helpTool|
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1551
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1552
    (noteBook := builder bindingAt:#noteBookView) isNil ifTrue:[
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1553
        noteBook := View new.
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1554
        helpTool := UIHelpTool new.
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1555
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1556
        helpTool masterApplication:self.
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1557
        helpCanvas := SubCanvas origin:0.0@0.0 corner:1.0@1.0 in:noteBook.
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1558
        specCanvas := SubCanvas origin:0.0@0.0 corner:1.0@1.0 in:noteBook.
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1559
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1560
        helpCanvas client:helpTool.
432
d35dccaa804c commit buttons replaced by subSpec in ToolApplicationModel
tz
parents: 422
diff changeset
  1561
        helpTool masterApplication:self.      
422
f85de4fc2a2c commit buttons moved as subSpec to ToolApplicationModel
tz
parents: 418
diff changeset
  1562
        helpTool modifiedHolder: self valueOfEnablingCommitButtons.
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1563
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1564
        builder aspectAt:#noteBookView put:noteBook.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1565
    ].
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1566
    ^ noteBook
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1567
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1568
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1569
tabList
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1570
298
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  1571
    |holder|
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  1572
    (holder := builder bindingAt:#tabList) isNil ifTrue:[
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  1573
        builder aspectAt:#tabList put:(holder := #('Properties') asValue).
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  1574
    ].
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  1575
    ^ holder
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  1576
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  1577
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1578
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1579
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1580
tabModel
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1581
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1582
    |holder|
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1583
    (holder := builder bindingAt:#tabModel) isNil ifTrue:[
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1584
        holder := AspectAdaptor new subject:self; forAspect:#tabSelection.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1585
        builder aspectAt:#tabModel put:holder.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1586
    ].
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1587
    ^ holder
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1588
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1589
!
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1590
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1591
treeView
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1592
    "returns the tree view representing hierarchically all the menu items"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1593
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1594
    |treeView|
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1595
    (treeView := builder bindingAt:#treeView) isNil ifTrue:[
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1596
        treeView := TreeView new.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1597
        treeView action:[:dummy|self menuChanged].
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1598
        builder aspectAt: #treeView put: treeView
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1599
    ].
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1600
    ^treeView
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1601
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1602
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1603
!MenuEditor methodsFor:'change & update'!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1604
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1605
update:something with:aParameter from:changedObject
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1606
    "one of my value holders has changed its value, so let me set the editing menu as modified"            
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1607
422
f85de4fc2a2c commit buttons moved as subSpec to ToolApplicationModel
tz
parents: 418
diff changeset
  1608
    self valueOfEnablingCommitButtons value: true
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1609
!
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1610
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1611
updateEnabledChannels
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1612
    "update enabled channels"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1613
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1614
    |node parent next state|
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1615
412
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  1616
    state := false.   
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1617
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1618
    (node  := self treeView selectedNode) notNil
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1619
    ifTrue:
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1620
    [
220
ca
parents: 218
diff changeset
  1621
        self hasAnySingleSelection value:true.
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1622
        (parent := node parent) notNil
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1623
        ifTrue:
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1624
        [
220
ca
parents: 218
diff changeset
  1625
            next := parent childAt:((parent indexOfChild:node) + 1).
ca
parents: 218
diff changeset
  1626
            self enabledStepIn           value:(next notNil and:[next hasChildren]).
ca
parents: 218
diff changeset
  1627
            self enabledStepOver         value:(parent children size > 1).
ca
parents: 218
diff changeset
  1628
            self enabledStepOut          value:(parent parent notNil).
ca
parents: 218
diff changeset
  1629
            self hasValidSingleSelection value:true.
ca
parents: 218
diff changeset
  1630
            self hasValidSelection       value:true.
ca
parents: 218
diff changeset
  1631
          ^ self
ca
parents: 218
diff changeset
  1632
        ]
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1633
    ]
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1634
    ifFalse:
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1635
    [
220
ca
parents: 218
diff changeset
  1636
        self hasAnySingleSelection value:false.
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1637
        self treeView numberOfSelections ~~ 0 ifTrue:[
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1638
            state := (self treeView isInSelection:1) not
220
ca
parents: 218
diff changeset
  1639
        ]
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1640
    ].          
220
ca
parents: 218
diff changeset
  1641
    self enabledStepOver         value:false.
ca
parents: 218
diff changeset
  1642
    self enabledStepIn           value:false.
ca
parents: 218
diff changeset
  1643
    self enabledStepOut          value:false.
ca
parents: 218
diff changeset
  1644
    self hasValidSingleSelection value:false.
ca
parents: 218
diff changeset
  1645
    self hasValidSelection       value:state.
ca
parents: 218
diff changeset
  1646
! !
ca
parents: 218
diff changeset
  1647
ca
parents: 218
diff changeset
  1648
!MenuEditor methodsFor:'event handling'!
ca
parents: 218
diff changeset
  1649
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1650
doesNotUnderstand: aMessage
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1651
    "detour incoming messages to the tree view"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1652
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1653
    (self treeView respondsTo: aMessage selector)
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1654
    ifTrue:
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1655
    [
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1656
        ^aMessage sendTo: self treeView
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1657
    ].
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1658
    super doesNotUnderstand:aMessage
220
ca
parents: 218
diff changeset
  1659
ca
parents: 218
diff changeset
  1660
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1661
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1662
571
1e362121fe32 open tutorial added
tz
parents: 557
diff changeset
  1663
!MenuEditor methodsFor:'help'!
1e362121fe32 open tutorial added
tz
parents: 557
diff changeset
  1664
1e362121fe32 open tutorial added
tz
parents: 557
diff changeset
  1665
defaultInfoLabel
1e362121fe32 open tutorial added
tz
parents: 557
diff changeset
  1666
1e362121fe32 open tutorial added
tz
parents: 557
diff changeset
  1667
    specClass isNil ifTrue: [^'No menu class defined'].
1e362121fe32 open tutorial added
tz
parents: 557
diff changeset
  1668
    ^specClass printString, ' >> ', self treeView selectorName
1e362121fe32 open tutorial added
tz
parents: 557
diff changeset
  1669
  
1e362121fe32 open tutorial added
tz
parents: 557
diff changeset
  1670
!
1e362121fe32 open tutorial added
tz
parents: 557
diff changeset
  1671
1e362121fe32 open tutorial added
tz
parents: 557
diff changeset
  1672
openTutorial
1e362121fe32 open tutorial added
tz
parents: 557
diff changeset
  1673
1e362121fe32 open tutorial added
tz
parents: 557
diff changeset
  1674
    self openTutorial: 'tools/uipainter/TOP.html#ADDINGMENUBAR'.
1e362121fe32 open tutorial added
tz
parents: 557
diff changeset
  1675
1e362121fe32 open tutorial added
tz
parents: 557
diff changeset
  1676
! !
1e362121fe32 open tutorial added
tz
parents: 557
diff changeset
  1677
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1678
!MenuEditor methodsFor:'private'!
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1679
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1680
checkMenuItemModified
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1681
    "check menu item modification"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1682
422
f85de4fc2a2c commit buttons moved as subSpec to ToolApplicationModel
tz
parents: 418
diff changeset
  1683
    self valueOfEnablingCommitButtons value
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1684
    ifTrue:
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1685
    [
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1686
        ((YesNoBox title:'Menu item was modified!!\Save it?\' withCRs)        
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1687
            noText:'No';
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1688
            yesText:'Yes';
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1689
            showAtPointer;
414
116cf2acebe3 before loading of a new menu do fire correct sequence of save requests
tz
parents: 412
diff changeset
  1690
            accepted) 
116cf2acebe3 before loading of a new menu do fire correct sequence of save requests
tz
parents: 412
diff changeset
  1691
        ifFalse: 
116cf2acebe3 before loading of a new menu do fire correct sequence of save requests
tz
parents: 412
diff changeset
  1692
        [
422
f85de4fc2a2c commit buttons moved as subSpec to ToolApplicationModel
tz
parents: 418
diff changeset
  1693
            self valueOfEnablingCommitButtons value: false. 
414
116cf2acebe3 before loading of a new menu do fire correct sequence of save requests
tz
parents: 412
diff changeset
  1694
            isModified := false.
116cf2acebe3 before loading of a new menu do fire correct sequence of save requests
tz
parents: 412
diff changeset
  1695
            ^true
116cf2acebe3 before loading of a new menu do fire correct sequence of save requests
tz
parents: 412
diff changeset
  1696
        ].
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1697
        self accept
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1698
    ].
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1699
    ^true
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1700
!
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1701
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1702
helpKey
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1703
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1704
    |node|
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1705
    (node := self treeView selectedNode) notNil ifTrue:[
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1706
        ^ node contents activeHelpKey
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1707
    ].
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1708
    ^ nil
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1709
!
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1710
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1711
helpTool
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1712
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1713
    ^helpCanvas application
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1714
! !
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1715
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1716
!MenuEditor methodsFor:'queries'!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1717
270
1a68f7479932 provide access to the menus selector;
Claus Gittinger <cg@exept.de>
parents: 266
diff changeset
  1718
didInstall
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1719
    "returns true if the menu was installed"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1720
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1721
    ^didInstall
270
1a68f7479932 provide access to the menus selector;
Claus Gittinger <cg@exept.de>
parents: 266
diff changeset
  1722
!
1a68f7479932 provide access to the menus selector;
Claus Gittinger <cg@exept.de>
parents: 266
diff changeset
  1723
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1724
isHelpToolSelected
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1725
    "returns true if current selection is help tool"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1726
290
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
  1727
    (tabSelection ~~ 0 and:[slices notNil]) ifTrue:[
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1728
        ^(slices at:tabSelection) first = UIHelpTool label
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1729
    ].
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1730
    ^false
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1731
!
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1732
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1733
isStandAlone
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1734
    "returns true in case of owner of the helptool"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1735
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1736
    ^self masterApplication isNil
535
1caf545614c5 info bar subspec changed
tz
parents: 532
diff changeset
  1737
!
1caf545614c5 info bar subspec changed
tz
parents: 532
diff changeset
  1738
1caf545614c5 info bar subspec changed
tz
parents: 532
diff changeset
  1739
preferredExtent
1caf545614c5 info bar subspec changed
tz
parents: 532
diff changeset
  1740
1caf545614c5 info bar subspec changed
tz
parents: 532
diff changeset
  1741
    ^super preferredExtent max: (Screen current width//3)@(Screen current height//2.5)
1caf545614c5 info bar subspec changed
tz
parents: 532
diff changeset
  1742
1caf545614c5 info bar subspec changed
tz
parents: 532
diff changeset
  1743
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1744
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1745
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1746
!MenuEditor methodsFor:'selection'!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1747
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1748
menuChanged
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1749
432
d35dccaa804c commit buttons replaced by subSpec in ToolApplicationModel
tz
parents: 422
diff changeset
  1750
    |node item slc sel old dep|
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1751
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1752
    aspects do: [:holder| holder removeDependent:self].
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1753
    (node := self treeView selectedNode) notNil ifTrue:[
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1754
        aspects do:[:anAspect| anAspect value:nil ].
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1755
        item := node contents.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1756
        item toAspects:aspects.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1757
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1758
        item isSeparator ifFalse:[
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1759
            node parent isNil ifFalse:[
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1760
                node hasChildren ifTrue:[
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1761
                    slc := #slicesMenu
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1762
                ] ifFalse:[
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1763
                    item submenuChannel isNil ifTrue:[slc := #slicesItem]
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1764
                                             ifFalse:[slc := #slicesLink]
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1765
                ].
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1766
                slc := (self class perform:slc) copyWith:#( 'Help' #dummy ).
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1767
            ] ifTrue:[
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1768
                slc := self class perform:#slicesRootMenu
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1769
            ].
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1770
        ] ifTrue:[
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1771
            slc := self class perform:#slicesSeparatorMenu.
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1772
        ]
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1773
    ].
432
d35dccaa804c commit buttons replaced by subSpec in ToolApplicationModel
tz
parents: 422
diff changeset
  1774
d35dccaa804c commit buttons replaced by subSpec in ToolApplicationModel
tz
parents: 422
diff changeset
  1775
    self helpTool helpKey: self helpKey.
d35dccaa804c commit buttons replaced by subSpec in ToolApplicationModel
tz
parents: 422
diff changeset
  1776
    "Next line helps me to preserve myself against unnecessary settings of
d35dccaa804c commit buttons replaced by subSpec in ToolApplicationModel
tz
parents: 422
diff changeset
  1777
     valueOfEnablingCommitButtons to true in the help tool."
d35dccaa804c commit buttons replaced by subSpec in ToolApplicationModel
tz
parents: 422
diff changeset
  1778
    self valueOfEnablingCommitButtons value: false.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1779
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1780
    slc ~= slices  ifTrue:[
290
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
  1781
        tabSelection ~~ 0 ifTrue:[
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1782
            old := (slices at:tabSelection) first
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1783
        ].
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1784
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1785
        (slices := slc) notNil ifTrue:[
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1786
            sel := slices collect:[:s| s first].
290
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
  1787
            tabSelection := 0.
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1788
            self tabList value:sel.
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1789
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1790
            (old notNil and:[(sel := sel findFirst:[:n|n = old]) ~~ 0]) ifFalse:[
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1791
                sel := 1
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1792
            ].
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1793
            self tabModel value:sel
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1794
        ] ifFalse:[
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1795
            self tabList value:nil.
290
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
  1796
            self tabSelection:0.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1797
        ]
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1798
    ].
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1799
    self updateEnabledChannels.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1800
    aspects do: [:holder| holder addDependent:self].
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1801
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1802
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1803
tabSelection
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1804
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1805
    ^tabSelection ? 0
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1806
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1807
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1808
tabSelection: aSelection
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1809
412
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  1810
    |sel|                 
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1811
    tabSelection = aSelection ifTrue:[
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1812
        ^ self
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1813
    ].
298
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  1814
    (aSelection ~~ 0 and:[slices isNil]) ifTrue:[
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  1815
        ^ self
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  1816
    ].
290
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
  1817
    (tabSelection := aSelection) == 0 ifTrue:[
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1818
        slices isNil ifTrue:[
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1819
            specCanvas client:nil.
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1820
            ^ specCanvas raise.
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1821
        ].
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1822
        tabSelection == 1 ifTrue:[^ self].
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1823
        tabSelection := 1
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1824
    ].
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1825
432
d35dccaa804c commit buttons replaced by subSpec in ToolApplicationModel
tz
parents: 422
diff changeset
  1826
    self isHelpToolSelected ifTrue:[  
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1827
        self helpTool helpKey:(self helpKey).
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1828
        helpCanvas raise.
412
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  1829
    ] ifFalse:[                       
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  1830
        sel := (slices at:tabSelection) last.   
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1831
        aspects do: [:holder| holder release].
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1832
        specCanvas client:self spec:(self class perform:sel) builder:builder.
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1833
        aspects do: [:holder| holder addDependent:self].
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1834
        specCanvas raise.  
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1835
    ]    
298
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  1836
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1837
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1838
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1839
!MenuEditor methodsFor:'startup / release'!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1840
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1841
buildFrom:aClass andSelector:aSelector
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1842
249
bfa28b62528c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
  1843
    |oldClass newClass|
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1844
422
f85de4fc2a2c commit buttons moved as subSpec to ToolApplicationModel
tz
parents: 418
diff changeset
  1845
    self valueOfEnablingCommitButtons value: false.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1846
    oldClass := self specClass.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1847
    self specClass:aClass.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1848
    newClass := self specClass.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1849
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1850
    (self isStandAlone and:[oldClass ~= newClass]) ifTrue:[
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1851
        self helpTool helpSpecFrom:newClass
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1852
    ].
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1853
    self treeView buildFrom: newClass andSelector: aSelector.
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  1854
155310ec83aa revised version
tz
parents: 382
diff changeset
  1855
    aClass notNil & aSelector notNil
155310ec83aa revised version
tz
parents: 382
diff changeset
  1856
    ifTrue:
155310ec83aa revised version
tz
parents: 382
diff changeset
  1857
    [
155310ec83aa revised version
tz
parents: 382
diff changeset
  1858
        |className message|
155310ec83aa revised version
tz
parents: 382
diff changeset
  1859
        aClass isClass ifTrue: [className := aClass name].
155310ec83aa revised version
tz
parents: 382
diff changeset
  1860
        aClass isString ifTrue: [className := aClass].
155310ec83aa revised version
tz
parents: 382
diff changeset
  1861
        message := className, ' ', aSelector.
507
1586e7da66bc updates default info label after making new
tz
parents: 499
diff changeset
  1862
        self addToHistory: message -> #loadFromMessage:
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  1863
    ].
155310ec83aa revised version
tz
parents: 382
diff changeset
  1864
571
1e362121fe32 open tutorial added
tz
parents: 557
diff changeset
  1865
    self updateInfoLabel.
412
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  1866
    self treeView selection: 2.
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  1867
    self menuChanged
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  1868
155310ec83aa revised version
tz
parents: 382
diff changeset
  1869
!
155310ec83aa revised version
tz
parents: 382
diff changeset
  1870
155310ec83aa revised version
tz
parents: 382
diff changeset
  1871
checkModified
155310ec83aa revised version
tz
parents: 382
diff changeset
  1872
    "check menu modification
155310ec83aa revised version
tz
parents: 382
diff changeset
  1873
    "
155310ec83aa revised version
tz
parents: 382
diff changeset
  1874
    isModified
155310ec83aa revised version
tz
parents: 382
diff changeset
  1875
    ifTrue:
155310ec83aa revised version
tz
parents: 382
diff changeset
  1876
    [
155310ec83aa revised version
tz
parents: 382
diff changeset
  1877
        ((YesNoBox title:'Menu was modified!!')        
155310ec83aa revised version
tz
parents: 382
diff changeset
  1878
            noText:'Cancel';
155310ec83aa revised version
tz
parents: 382
diff changeset
  1879
            yesText:'Waste it and proceed';
155310ec83aa revised version
tz
parents: 382
diff changeset
  1880
            showAtPointer;
155310ec83aa revised version
tz
parents: 382
diff changeset
  1881
            accepted) ifFalse: [^false].
155310ec83aa revised version
tz
parents: 382
diff changeset
  1882
        isModified := false
155310ec83aa revised version
tz
parents: 382
diff changeset
  1883
    ].
155310ec83aa revised version
tz
parents: 382
diff changeset
  1884
    ^true
155310ec83aa revised version
tz
parents: 382
diff changeset
  1885
155310ec83aa revised version
tz
parents: 382
diff changeset
  1886
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1887
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1888
356
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  1889
closeRequest
412
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  1890
    "close request"
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  1891
418
f47e99ae91bc double save requests after close request added
tz
parents: 416
diff changeset
  1892
    (self checkMenuItemModified and: [self checkModified]) ifTrue: [super closeRequest]
356
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  1893
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  1894
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  1895
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  1896
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  1897
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  1898
!
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  1899
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1900
initialize
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1901
    "initialize value holders for the menu item properties"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1902
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1903
    |holder|
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1904
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1905
    super initialize.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1906
    aspects := IdentityDictionary new.
290
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
  1907
    tabSelection := 0.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1908
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1909
    #(
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1910
        label
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1911
        accessCharacterPos
290
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
  1912
        argument
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1913
        submenuChannel
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1914
        enabled
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1915
        value
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1916
        nameKey
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1917
        indication
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  1918
        translateLabel
155310ec83aa revised version
tz
parents: 382
diff changeset
  1919
        isButton
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1920
        shortcutKey
532
de091386bbae add new feature:
ca
parents: 525
diff changeset
  1921
        startGroup
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1922
        retriever
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1923
        iconAndLabel
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1924
        icon
539
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
  1925
        isVisible
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1926
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1927
     ) do:[:aKey|
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1928
        aspects at:aKey put:(holder := ValueHolder new).
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1929
        holder addDependent: self
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1930
    ].
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1931
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1932
    aspects at:#seperatorSelection put:(holder := SelectionInList new).
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  1933
    holder list: Item separatorList.
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1934
    holder addDependent:self.
571
1e362121fe32 open tutorial added
tz
parents: 557
diff changeset
  1935
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1936
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1937
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  1938
loadFromMessage: aMessage
155310ec83aa revised version
tz
parents: 382
diff changeset
  1939
414
116cf2acebe3 before loading of a new menu do fire correct sequence of save requests
tz
parents: 412
diff changeset
  1940
    (((aMessage size > 0) and: [self checkMenuItemModified]) and: [self checkModified])
406
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
  1941
    ifTrue:
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  1942
    [
155310ec83aa revised version
tz
parents: 382
diff changeset
  1943
        |readStream aClass aSelector|
155310ec83aa revised version
tz
parents: 382
diff changeset
  1944
        readStream := aMessage readStream.
155310ec83aa revised version
tz
parents: 382
diff changeset
  1945
        aClass := Smalltalk at: (readStream upTo: $ ) asSymbol.
155310ec83aa revised version
tz
parents: 382
diff changeset
  1946
        aSelector :=  readStream upToEnd asSymbol.
412
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  1947
        self buildFrom: aClass andSelector: aSelector
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  1948
    ]
155310ec83aa revised version
tz
parents: 382
diff changeset
  1949
!
155310ec83aa revised version
tz
parents: 382
diff changeset
  1950
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  1951
openModalOnClass:aClass andSelector:aSelector
416
d28e8c5f25f3 image editor startup revised
tz
parents: 414
diff changeset
  1952
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  1953
    specClass := Association key:aClass value:aSelector.
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  1954
    super openInterfaceModal.
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  1955
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  1956
!
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  1957
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1958
openOnClass:aClass andSelector:aSelector
416
d28e8c5f25f3 image editor startup revised
tz
parents: 414
diff changeset
  1959
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  1960
    specClass := Association key:aClass value:aSelector.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1961
    super openInterface.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1962
    self buildFrom:aClass andSelector:aSelector.
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  1963
209
b2fa6f8d4808 postBuildWith:builder
ca
parents: 199
diff changeset
  1964
!
b2fa6f8d4808 postBuildWith:builder
ca
parents: 199
diff changeset
  1965
b2fa6f8d4808 postBuildWith:builder
ca
parents: 199
diff changeset
  1966
postBuildWith:builder
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  1967
    |cls sel|
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  1968
537
c39e2ceeaaea support argument for linked menus
tz
parents: 535
diff changeset
  1969
    super postBuildWith:builder.
c39e2ceeaaea support argument for linked menus
tz
parents: 535
diff changeset
  1970
356
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  1971
    didInstall := false.
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  1972
    isModified := false.
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  1973
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  1974
    specClass isAssociation ifTrue:[
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  1975
        cls := specClass key.
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  1976
        sel := specClass value.
228
ae3028e45467 can read PullDownMenus
ca
parents: 227
diff changeset
  1977
ae3028e45467 can read PullDownMenus
ca
parents: 227
diff changeset
  1978
        specClass := nil.
ae3028e45467 can read PullDownMenus
ca
parents: 227
diff changeset
  1979
ae3028e45467 can read PullDownMenus
ca
parents: 227
diff changeset
  1980
        (sel isKindOf:Menu) ifTrue:[
ae3028e45467 can read PullDownMenus
ca
parents: 227
diff changeset
  1981
            self buildFrom:cls andSelector:nil.
412
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  1982
            ^self treeView buildFromMenu:sel.
228
ae3028e45467 can read PullDownMenus
ca
parents: 227
diff changeset
  1983
        ]
ae3028e45467 can read PullDownMenus
ca
parents: 227
diff changeset
  1984
        
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  1985
    ].
412
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  1986
    self buildFrom:cls andSelector:sel
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  1987
!
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  1988
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  1989
postOpenWith:aBuilder
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  1990
537
c39e2ceeaaea support argument for linked menus
tz
parents: 535
diff changeset
  1991
    super postOpenWith:aBuilder.
c39e2ceeaaea support argument for linked menus
tz
parents: 535
diff changeset
  1992
412
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  1993
    self isHelpToolSelected 
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  1994
        ifTrue:  [helpCanvas raise] 
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  1995
        ifFalse: [specCanvas raise]    
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1996
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1997
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1998
!MenuEditor methodsFor:'user interactions'!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1999
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2000
accept
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2001
    "invoked by button 'OK' and by save requests of menu item changes"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2002
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2003
    |node|
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2004
    node := self treeView selectedNode.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2005
    node notNil
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2006
    ifTrue:
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2007
    [
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2008
        self isHelpToolSelected
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2009
        ifTrue:
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2010
        [
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2011
            self helpTool accept.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2012
            node contents activeHelpKey: self helpTool helpKey
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2013
        ]
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2014
        ifFalse:
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2015
        [
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2016
            self treeView updateNode: (node contents buildFromAspects: aspects)
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2017
        ]
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2018
    ].
422
f85de4fc2a2c commit buttons moved as subSpec to ToolApplicationModel
tz
parents: 418
diff changeset
  2019
    self valueOfEnablingCommitButtons value:false.
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2020
    isModified := true
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2021
!
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2022
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2023
cancel
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2024
    "invoked by button 'Cancel'"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2025
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2026
    |node|
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2027
    (node := self treeView selectedNode) notNil
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2028
    ifTrue:
432
d35dccaa804c commit buttons replaced by subSpec in ToolApplicationModel
tz
parents: 422
diff changeset
  2029
    [          
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2030
        self helpTool helpKey:(self helpKey).
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2031
        aspects do:[:anAspect| anAspect value:nil].
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2032
        node contents toAspects:aspects
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2033
    ].
422
f85de4fc2a2c commit buttons moved as subSpec to ToolApplicationModel
tz
parents: 418
diff changeset
  2034
    self valueOfEnablingCommitButtons value: false.
414
116cf2acebe3 before loading of a new menu do fire correct sequence of save requests
tz
parents: 412
diff changeset
  2035
    isModified := false
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2036
!
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2037
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2038
doBrowseAppClass
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2039
    "open a browser on the class"
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2040
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2041
    |cls|
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2042
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2043
    (cls := self resolveName: self specClass) notNil
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2044
    ifTrue:
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2045
    [
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2046
        SystemBrowser openInClass:cls class selector: self treeView selectorName
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2047
    ]
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2048
    ifFalse:
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2049
    [
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2050
        self information:'No valid class defined!!'.
331
ca
parents: 326
diff changeset
  2051
    ]
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2052
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2053
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2054
doDefineClass
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2055
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2056
    aspects at:#classNameChannel  put:(self specClass asValue).
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2057
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2058
    (self openDialogInterface:#classDefineSpec) ifTrue:[
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2059
        self specClass:((aspects at:#classNameChannel) value)
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2060
    ].
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2061
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2062
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2063
381
1d1b1483270c now with image editor support
tz
parents: 371
diff changeset
  2064
doEditImage
1d1b1483270c now with image editor support
tz
parents: 371
diff changeset
  2065
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2066
    |cls resourceClass resourceSelector imageResourceMessage readStream|
155310ec83aa revised version
tz
parents: 382
diff changeset
  2067
416
d28e8c5f25f3 image editor startup revised
tz
parents: 414
diff changeset
  2068
    cls := self resolveName: self specClass.
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2069
    cls isNil ifTrue:[
155310ec83aa revised version
tz
parents: 382
diff changeset
  2070
        ^ self information:'No valid class defined!!'.
155310ec83aa revised version
tz
parents: 382
diff changeset
  2071
    ].
155310ec83aa revised version
tz
parents: 382
diff changeset
  2072
    (aspects at:#icon) value size > 0
155310ec83aa revised version
tz
parents: 382
diff changeset
  2073
        ifTrue:  [resourceSelector := (aspects at:#icon) value]
155310ec83aa revised version
tz
parents: 382
diff changeset
  2074
        ifFalse: [resourceSelector := #stxIcon].
416
d28e8c5f25f3 image editor startup revised
tz
parents: 414
diff changeset
  2075
    (aspects at:#retriever) value size > 0
d28e8c5f25f3 image editor startup revised
tz
parents: 414
diff changeset
  2076
        ifTrue:  [resourceClass := (aspects at:#retriever) value]
d28e8c5f25f3 image editor startup revised
tz
parents: 414
diff changeset
  2077
        ifFalse: [resourceClass := cls withAllSuperclasses detect: [:cls| cls class implements: resourceSelector] ifNone: [cls]].
d28e8c5f25f3 image editor startup revised
tz
parents: 414
diff changeset
  2078
d28e8c5f25f3 image editor startup revised
tz
parents: 414
diff changeset
  2079
    (imageResourceMessage := ImageEditor openModalOnClass: resourceClass andSelector: resourceSelector) notNil
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2080
    ifTrue:
155310ec83aa revised version
tz
parents: 382
diff changeset
  2081
    [
416
d28e8c5f25f3 image editor startup revised
tz
parents: 414
diff changeset
  2082
        readStream := imageResourceMessage readStream.
d28e8c5f25f3 image editor startup revised
tz
parents: 414
diff changeset
  2083
        resourceClass := (readStream upTo: $ ) asSymbol.
d28e8c5f25f3 image editor startup revised
tz
parents: 414
diff changeset
  2084
        resourceSelector := readStream upToEnd asSymbol.
d28e8c5f25f3 image editor startup revised
tz
parents: 414
diff changeset
  2085
        resourceClass size > 0 ifTrue: [(aspects at:#retriever) value: resourceClass].
422
f85de4fc2a2c commit buttons moved as subSpec to ToolApplicationModel
tz
parents: 418
diff changeset
  2086
        resourceSelector size > 0 ifTrue: [(aspects at:#icon) value: resourceSelector. self valueOfEnablingCommitButtons value: true]
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2087
    ]
381
1d1b1483270c now with image editor support
tz
parents: 371
diff changeset
  2088
!
1d1b1483270c now with image editor support
tz
parents: 371
diff changeset
  2089
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2090
doFromClass
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2091
548
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  2092
    self loadFromMessage: 
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  2093
        (ResourceSelectionBrowser
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  2094
            request: 'Load Menu From Class'
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  2095
            onSuperclass: nil
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  2096
            andClass: specClass
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  2097
            andSelector: self treeView selectorName
93fea26562c8 help texts added
tz
parents: 546
diff changeset
  2098
            withResourceTypes: #(menu))
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2099
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2100
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2101
doInstallSpec
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2102
    |cls selector treeView menu spec mthd category code|
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2103
331
ca
parents: 326
diff changeset
  2104
    cls := self resolveName:(self specClass).
ca
parents: 326
diff changeset
  2105
ca
parents: 326
diff changeset
  2106
    cls isNil ifTrue:[
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2107
        ^ self information:'No valid class defined!!'.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2108
    ].
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2109
    treeView  := self treeView.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2110
    selector := treeView selectorName.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2111
    menu     := treeView asMenu.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2112
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2113
    menu isNil ifTrue:[
576
c357919e636f do install menu specs in separate method category
tz
parents: 571
diff changeset
  2114
        ^ self information:'No menu defined!!'
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2115
    ].
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2116
    menu := menu literalArrayEncoding.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2117
    spec := WriteStream on:String new.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2118
    UISpecification prettyPrintSpecArray:menu on:spec indent:5.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2119
    spec := spec contents.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2120
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2121
    "/ if that method already exists, do not overwrite the category
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2122
576
c357919e636f do install menu specs in separate method category
tz
parents: 571
diff changeset
  2123
    category := 'menu specs'.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2124
    (mthd := cls class compiledMethodAt:selector) notNil ifTrue:[
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2125
        category := mthd category.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2126
    ].
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2127
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2128
    code := Character excla asString 
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2129
            , cls name , ' class methodsFor:' , category storeString
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2130
            , Character excla asString , '\\'
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2131
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2132
            , selector , '\'
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2133
            , '    "this window spec was automatically generated by the ST/X MenuEditor"\\'
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2134
            , '    "do not manually edit this - the builder may not be able to\'
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2135
            , '     handle the specification if its corrupted."\\'
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2136
            , '    "\'
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2137
            , '     MenuEditor new openOnClass:' , cls name , ' andSelector:#' , selector , '\'
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2138
            , '     (Menu new fromLiteralArrayEncoding:(' , cls name , ' ' , selector , ')) startUp\'
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2139
            , '    "\'.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2140
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2141
    code := code 
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2142
            , '\'
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2143
            , '    <resource: #menu>\\'
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2144
            , '    ^\' 
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2145
            , '     ', spec
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2146
            , '\'
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2147
            , Character excla asString
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2148
            , ' '
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2149
            , Character excla asString
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2150
            , '\\'.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2151
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2152
    code := code withCRs.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2153
    (ReadStream on:code) fileIn.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2154
455
117dcae8b5e0 no separate save of help keys
tz
parents: 441
diff changeset
  2155
    self isStandAlone ifTrue:[
117dcae8b5e0 no separate save of help keys
tz
parents: 441
diff changeset
  2156
        self helpTool installHelpSpecInto:(self specClass)
117dcae8b5e0 no separate save of help keys
tz
parents: 441
diff changeset
  2157
    ].
356
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  2158
    didInstall := true.
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  2159
    isModified := false.
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2160
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2161
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2162
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2163
doNew
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2164
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2165
    self buildFrom:nil andSelector: self treeView selectorName
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2166
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2167
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2168
doPickAMenu
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2169
228
ae3028e45467 can read PullDownMenus
ca
parents: 227
diff changeset
  2170
    |view|
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2171
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2172
    view := Screen current viewFromUser.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2173
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2174
    (view isNil or:[view == Screen current rootView]) ifTrue:[
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2175
        ^ self
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2176
    ].
228
ae3028e45467 can read PullDownMenus
ca
parents: 227
diff changeset
  2177
    view specClass == MenuPanelSpec ifTrue:[
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2178
        ^ self treeView buildFromMenu: view asMenu
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2179
    ].
228
ae3028e45467 can read PullDownMenus
ca
parents: 227
diff changeset
  2180
    ^ nil
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2181
!
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2182
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2183
doStepDown
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2184
    "shift selected menu item one step down"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2185
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2186
    self treeView selectedNodeChangeSequenceOrder:1.
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2187
    isModified := true.
155310ec83aa revised version
tz
parents: 382
diff changeset
  2188
155310ec83aa revised version
tz
parents: 382
diff changeset
  2189
155310ec83aa revised version
tz
parents: 382
diff changeset
  2190
155310ec83aa revised version
tz
parents: 382
diff changeset
  2191
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2192
!
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2193
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2194
doStepIn
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2195
    "move selected menu item into next submenu"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2196
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2197
    self treeView selectedNodeBecomeChildOfNext.
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2198
    isModified := true.
155310ec83aa revised version
tz
parents: 382
diff changeset
  2199
155310ec83aa revised version
tz
parents: 382
diff changeset
  2200
155310ec83aa revised version
tz
parents: 382
diff changeset
  2201
155310ec83aa revised version
tz
parents: 382
diff changeset
  2202
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2203
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2204
!
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2205
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2206
doStepOut
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2207
    "move selected menu item out from parent submenu"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2208
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2209
    self treeView selectedNodeBecomeSisterOfParent.
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2210
    isModified := true.
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2211
!
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2212
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2213
doStepUp
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2214
    "shift selected menu item one step up"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2215
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2216
    self treeView selectedNodeChangeSequenceOrder:-1.
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2217
    isModified := true.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2218
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2219
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2220
!MenuEditor::Item class methodsFor:'constants'!
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2221
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2222
separatorList
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2223
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2224
    ^#('blank' 'single line' 'double line')
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2225
!
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2226
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2227
separatorSlices
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2228
   ^ #(
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2229
        ( #blank        ''  )
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2230
        ( #single       '-' )
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2231
        ( #double       '=' )
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2232
      )
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2233
! !
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2234
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2235
!MenuEditor::Item class methodsFor:'documentation'!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2236
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2237
documentation
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2238
"
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2239
    implements the contents assigned to a TreeItem. An instance
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2240
    is associated with one item and keeps all its information
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2241
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2242
    [see also:]
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2243
        TreeItem
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2244
        MenuEditor
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2245
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2246
    [author:]
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2247
        Claus Atzkern
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2248
"
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2249
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2250
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2251
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2252
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2253
!MenuEditor::Item methodsFor:'accessing'!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2254
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  2255
activeHelpKey
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2256
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2257
    ^activeHelpKey
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  2258
!
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  2259
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  2260
activeHelpKey:aKey
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2261
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  2262
    activeHelpKey := aKey
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  2263
!
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  2264
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2265
label
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2266
    "return the value of the instance variable 'label' (automatically generated)"
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2267
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2268
    ^label
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2269
!
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2270
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2271
label:something
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2272
    "set the value of the instance variable 'label' (automatically generated)"
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2273
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2274
    label := something ? '-'
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2275
!
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2276
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2277
separatorType
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2278
    "returns separator type assigned to item or nil"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2279
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2280
    label size > 1 
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2281
    ifFalse:
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2282
    [
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2283
        label size  == 0  ifTrue:[^#blank].
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2284
        label first == $- ifTrue:[^#single].
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2285
        label first == $= ifTrue:[^#double].
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2286
    ].    
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2287
    ^nil
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2288
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2289
!
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2290
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2291
submenuChannel
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2292
    "return the value of the instance variable 'submenuChannel' (automatically generated)"
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2293
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2294
    ^submenuChannel
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2295
!
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2296
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2297
submenuChannel:aChannel
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2298
    "return the value of the instance variable 'submenuChannel' (automatically generated)"
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2299
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2300
    submenuChannel := aChannel
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2301
! !
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2302
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2303
!MenuEditor::Item methodsFor:'conversion'!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2304
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2305
asMenuItem
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2306
    "converts self to a menu item"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2307
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2308
    |item rcv|
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2309
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2310
    item := MenuItem labeled:label.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2311
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2312
    self isSeparator ifFalse:[    
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2313
        item activeHelpKey:activeHelpKey.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2314
        item enabled:enabled.
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2315
        item accessCharacterPosition:accessCharacterPos.
290
1428bab2aa68 an empty selection is now specified by 0
ca
parents: 287
diff changeset
  2316
        item argument:argument.
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2317
        item submenuChannel:submenuChannel.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2318
        item nameKey:nameKey.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2319
        item shortcutKeyCharacter:shortcutKey.
532
de091386bbae add new feature:
ca
parents: 525
diff changeset
  2320
        item startGroup:startGroup.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2321
        item value:value.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2322
        item indication:indication.
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2323
        item translateLabel: translateLabel.
155310ec83aa revised version
tz
parents: 382
diff changeset
  2324
        item isButton: isButton.
539
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
  2325
        item isVisible: isVisible.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2326
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2327
        icon notNil ifTrue:[
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2328
            rcv := ResourceRetriever new.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2329
            rcv className:retriever.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2330
            rcv selector:icon.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2331
            iconAndLabel == true ifTrue:[
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2332
                rcv labelText:label
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2333
            ].
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2334
            item labelImage:rcv
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2335
        ]
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2336
    ].
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2337
    ^item
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2338
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2339
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2340
buildFromAspects:aspects
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2341
249
bfa28b62528c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
  2342
    |name|
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2343
    self isSeparator 
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2344
    ifFalse:
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2345
    [
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2346
        name  := label.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2347
        label := (aspects at:#label) value.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2348
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2349
        (label isNil or:[self isSeparator]) ifTrue:[
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2350
            (aspects at:#label) value:(label := name)
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2351
        ].
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2352
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2353
        enabled            := (aspects at:#enabled) value.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2354
        value              := (aspects at:#value) value.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2355
        nameKey            := (aspects at:#nameKey) value.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2356
        indication         := (aspects at:#indication) value.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2357
        shortcutKey        := (aspects at:#shortcutKey) value.
532
de091386bbae add new feature:
ca
parents: 525
diff changeset
  2358
        startGroup         := (aspects at:#startGroup) value.
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2359
        accessCharacterPos := (aspects at:#accessCharacterPos) value.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2360
        argument           := (aspects at:#argument) value.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2361
        translateLabel     := (aspects at:#translateLabel) value.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2362
        isButton           := (aspects at:#isButton) value.
539
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
  2363
        isVisible          := (aspects at:#isVisible) value.
298
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  2364
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  2365
        argument isString ifTrue:[
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  2366
            argument size > 1 ifTrue:[
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  2367
                (argument at:1) == $# ifTrue:[
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  2368
                    argument := (argument copyFrom:2) asSymbol
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  2369
                ]
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  2370
            ]
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  2371
        ].
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2372
        submenuChannel    := (aspects at:#submenuChannel) value.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2373
        retriever         := (aspects at:#retriever) value.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2374
        icon              := (aspects at:#icon) value.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2375
        iconAndLabel      := (aspects at:#iconAndLabel) value.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2376
    ]
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2377
    ifTrue:
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2378
    [
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2379
        name  := (aspects at:#seperatorSelection) selectionIndex.
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2380
        label := (self class separatorSlices at:name) last.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2381
    ]
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2382
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2383
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2384
buildFromMenuItem:anItem
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2385
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2386
    |rtv|
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2387
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2388
    self label:(anItem label).
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2389
    activeHelpKey := anItem activeHelpKey.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2390
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2391
    (enabled := anItem enabled) isSymbol ifFalse:[
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2392
        enabled := nil
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2393
    ].
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2394
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2395
    (value := anItem value) isSymbol ifFalse:[
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2396
        value := nil.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2397
    ].
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2398
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2399
    (indication := anItem indication) isSymbol ifFalse:[
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2400
        indication := nil
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2401
    ].
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2402
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2403
    nameKey            := anItem nameKey.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2404
    shortcutKey        := anItem shortcutKeyCharacter.
532
de091386bbae add new feature:
ca
parents: 525
diff changeset
  2405
    startGroup         := anItem startGroup.
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2406
    accessCharacterPos := anItem accessCharacterPosition.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2407
    argument           := anItem argument.
537
c39e2ceeaaea support argument for linked menus
tz
parents: 535
diff changeset
  2408
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2409
    submenuChannel     := anItem submenuChannel.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2410
    translateLabel     := anItem translateLabel.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2411
    isButton           := anItem isButton.
539
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
  2412
    isVisible          := anItem isVisible.
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2413
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2414
    (((rtv := anItem adornment) notNil)
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2415
    and:[(rtv := rtv labelImage) isKindOf:ResourceRetriever])
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2416
    ifTrue:
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2417
    [
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2418
        retriever := rtv className.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2419
        icon      := rtv selector.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2420
        (iconAndLabel := rtv labelText notNil) ifTrue:[
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2421
            label := rtv labelText.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2422
        ]
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2423
    ]
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2424
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2425
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2426
toAspects:aspects
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2427
249
bfa28b62528c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
  2428
    |type|
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2429
    (type := self separatorType) notNil
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2430
    ifTrue:
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2431
    [
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2432
        type := self class separatorSlices findFirst:[:el| el first == type ].
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2433
        (aspects at:#seperatorSelection) selectionIndex:type.
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2434
    ] 
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2435
    ifFalse:
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2436
    [
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2437
        (aspects at:#label)                value:label.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2438
        (aspects at:#enabled)              value:enabled.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2439
        (aspects at:#value)                value:value.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2440
        (aspects at:#nameKey)              value:nameKey.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2441
        (aspects at:#indication)           value:indication.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2442
        (aspects at:#shortcutKey)          value:shortcutKey.
532
de091386bbae add new feature:
ca
parents: 525
diff changeset
  2443
        (aspects at:#startGroup)           value:startGroup.
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2444
        (aspects at:#accessCharacterPos)   value:accessCharacterPos.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2445
        (aspects at:#translateLabel)       value:translateLabel.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2446
        (aspects at:#submenuChannel)       value:submenuChannel.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2447
        (aspects at:#retriever)            value:retriever.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2448
        (aspects at:#icon)                 value:icon.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2449
        (aspects at:#iconAndLabel)         value:iconAndLabel.
539
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
  2450
        (aspects at:#isButton)             value:isButton.
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
  2451
        (aspects at:#isVisible)            value:isVisible.
1116829f5525 support of visible/unvisible items
ca
parents: 537
diff changeset
  2452
537
c39e2ceeaaea support argument for linked menus
tz
parents: 535
diff changeset
  2453
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2454
        argument isSymbol
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2455
            ifTrue: [(aspects at:#argument)value:'#', argument] 
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2456
            ifFalse:[(aspects at:#argument)value:argument].
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2457
    ]
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2458
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2459
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2460
!MenuEditor::Item methodsFor:'queries'!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2461
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2462
isSeparator
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2463
    "returns true if item is a seperator"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2464
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2465
    ^self separatorType notNil
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2466
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2467
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2468
!MenuEditor::TreeView class methodsFor:'defaults'!
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2469
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2470
defaultMenuMessage   
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2471
    "this message is the default yo be sent to the menuHolder to get a menu"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2472
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2473
    ^#menu
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2474
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2475
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2476
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2477
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2478
!MenuEditor::TreeView class methodsFor:'documentation'!
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2479
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2480
documentation
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2481
"
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2482
    menu selection list
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2483
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2484
    [see also:]
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2485
        SelectionInTreeView
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2486
        SelectionInTree
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2487
        TreeItem
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2488
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2489
    [author:]
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2490
        Claus Atzkern
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2491
"
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2492
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2493
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2494
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2495
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2496
!MenuEditor::TreeView class methodsFor:'initialization'!
406
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
  2497
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
  2498
initialize
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
  2499
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
  2500
    super initialize.
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
  2501
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
  2502
    Images := nil
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
  2503
! !
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
  2504
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2505
!MenuEditor::TreeView class methodsFor:'resources'!
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2506
155310ec83aa revised version
tz
parents: 382
diff changeset
  2507
images
155310ec83aa revised version
tz
parents: 382
diff changeset
  2508
    "returns an IdentityDictionary containing a list of images and keys used
155310ec83aa revised version
tz
parents: 382
diff changeset
  2509
    "
155310ec83aa revised version
tz
parents: 382
diff changeset
  2510
    ^ Images ?
155310ec83aa revised version
tz
parents: 382
diff changeset
  2511
        (Images := IdentityDictionary new
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2512
            at: #menuItemImage      put: MenuEditor menuItemImage;
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2513
            at: #menuSeparatorImage put: MenuEditor menuSeparatorImage;
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2514
            at: #submenuImage       put: MenuEditor submenuImage;
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2515
            at: #linkSubmenuImage   put: MenuEditor linkSubmenuImage;
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2516
            yourself)
155310ec83aa revised version
tz
parents: 382
diff changeset
  2517
155310ec83aa revised version
tz
parents: 382
diff changeset
  2518
155310ec83aa revised version
tz
parents: 382
diff changeset
  2519
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2520
! !
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2521
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2522
!MenuEditor::TreeView methodsFor:'accessing'!
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2523
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2524
selectorName
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2525
    ^ (listOfNodes first contents label) asSymbol
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2526
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2527
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2528
!MenuEditor::TreeView methodsFor:'building'!
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2529
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2530
buildFrom:aClass andSelector:aSelector
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2531
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2532
    |spec cls menu node|
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2533
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2534
    (aClass notNil and:[aSelector notNil]) ifTrue:[
340
1de048872d5e resolveName:
ca
parents: 331
diff changeset
  2535
        cls := self application resolveName:aClass.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2536
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2537
        (cls respondsTo:aSelector) ifTrue:[
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2538
            spec := cls perform:aSelector
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2539
        ]
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2540
    ].
331
ca
parents: 326
diff changeset
  2541
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2542
    spec isNil ifFalse:[
298
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  2543
        (spec isMemberOf:Menu) ifFalse:[
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  2544
            menu := Menu new fromLiteralArrayEncoding:spec.
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  2545
        ] ifTrue:[
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  2546
            menu := spec.
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  2547
        ].
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2548
        node := self nodeLabel:(aSelector asString).
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2549
        self subMenu:menu parent:node.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2550
    ] ifTrue:[
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2551
        aSelector notNil ifTrue:[cls := aSelector asString]
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2552
                        ifFalse:[cls := 'menu'].
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2553
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2554
        node := self nodeLabel:cls.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2555
    ].
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2556
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2557
    node hasChildren ifFalse:[
557
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2558
        node add:(self nodeLabel:'Item 1')
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2559
    ].
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2560
    node expand.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2561
    model root:node.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2562
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2563
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2564
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2565
buildFromMenu:aMenu
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2566
249
bfa28b62528c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
  2567
    |node|
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2568
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2569
    node := self nodeLabel:'menu'.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2570
    self subMenu:aMenu parent:node.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2571
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2572
    node hasChildren ifFalse:[
557
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2573
        node add:(self nodeLabel:'Item')
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2574
    ].
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2575
    node expand.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2576
    model root:node.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2577
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2578
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2579
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2580
menuItem:anItem
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2581
249
bfa28b62528c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
  2582
    |node|
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2583
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2584
    node := self nodeLabel: anItem label.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2585
    node contents buildFromMenuItem:anItem.
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2586
    node name: node contents label.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2587
    self subMenu: anItem submenu parent:node.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2588
    ^node.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2589
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2590
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2591
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2592
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2593
subMenu:aMenu parent:aParent
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2594
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2595
    |idx grp|
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2596
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2597
    aMenu isNil ifFalse:[
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2598
        grp := aMenu groupSizes.
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2599
        aMenu itemsDo:[:i| aParent add:(self menuItem:i)].
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2600
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2601
        grp notNil ifTrue:[
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2602
            idx := 0.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2603
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2604
            grp do:[:i|
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2605
                idx := idx + i + 1.
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2606
                aParent add:(self nodeLabel:nil) beforeIndex:idx.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2607
            ]
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2608
        ]
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2609
    ]
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2610
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2611
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2612
!MenuEditor::TreeView methodsFor:'conversion'!
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2613
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2614
asMenu
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2615
    |menu root|
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2616
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2617
    root := self root.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2618
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2619
    root hasChildren ifTrue:[
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2620
        menu := Menu new.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2621
        root children do:[:aChild| menu addItem:(self asMenuItem:aChild)].
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2622
    ].
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2623
  ^ menu
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2624
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2625
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2626
asMenuItem:aNode
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2627
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2628
    |menu item|
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2629
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2630
    item := aNode contents asMenuItem.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2631
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2632
    aNode hasChildren ifTrue:[
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2633
        menu := Menu new.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2634
        aNode children do:[:aChild| menu addItem:(self asMenuItem:aChild)].
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2635
        item submenu:menu
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2636
    ].
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2637
  ^ item
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2638
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2639
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2640
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2641
!MenuEditor::TreeView methodsFor:'drawing basics'!
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2642
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2643
drawLabelIndex:anIndex atX:x y:yCenter
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2644
    "draw text label assigned to a node at x y( center)"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2645
258
c6f8c3e2f463 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 257
diff changeset
  2646
    |y x2 type item|
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2647
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2648
    item := (listOfNodes at:anIndex) contents.
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2649
    type := item separatorType.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2650
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2651
    type isNil ifTrue:[
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2652
        super drawLabelIndex:anIndex atX:x y:yCenter
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2653
    ] ifFalse:[
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2654
        type == #blank ifFalse:[
258
c6f8c3e2f463 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 257
diff changeset
  2655
            x2 := x + 80.
c6f8c3e2f463 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 257
diff changeset
  2656
c6f8c3e2f463 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 257
diff changeset
  2657
            self displayLineFromX:x y:yCenter toX:x2 y:yCenter.
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2658
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2659
            type == #double ifTrue:[
258
c6f8c3e2f463 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 257
diff changeset
  2660
                y := yCenter + 2.
c6f8c3e2f463 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 257
diff changeset
  2661
                self displayLineFromX:x y:y toX:x2 y:y.
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2662
            ]    
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2663
        ]
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2664
    ]
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2665
!
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2666
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2667
figureFor:aNode
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2668
    "access figure for a node"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2669
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2670
    aNode hasChildren
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2671
    ifFalse:
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2672
    [
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2673
        |item|
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2674
        (item := aNode contents) submenuChannel notNil ifTrue:[^images at: #linkSubmenuImage].
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2675
        item isSeparator ifTrue:[^images at: #menuSeparatorImage].
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2676
        ^images at: #menuItemImage
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2677
    ].
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2678
    ^images at: #submenuImage
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2679
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2680
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2681
!MenuEditor::TreeView methodsFor:'event handling'!
356
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  2682
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  2683
keyPress:key x:x y:y
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2684
    "invoked if any key was pressed"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2685
412
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  2686
    <resource: #keyboard (#Delete #BackSpace #Cut #Copy #Paste)>
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  2687
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  2688
    (key == #Cut or:[key == #Delete or:[key == #BackSpace]]) ifTrue: [^self doCut].
356
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  2689
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2690
    key == #Copy  ifTrue:[^self doCopy].
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2691
    key == #Paste ifTrue:[^self doPaste].
356
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  2692
412
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  2693
    super keyPress:key x:x y:y
356
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  2694
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  2695
! !
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  2696
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2697
!MenuEditor::TreeView methodsFor:'initialization'!
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2698
275
cdecb5b5d356 set fontHeight dependent on max. image height
ca
parents: 270
diff changeset
  2699
fetchImageResources
cdecb5b5d356 set fontHeight dependent on max. image height
ca
parents: 270
diff changeset
  2700
    "initialize heavily used device resources - to avoid rendering
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2701
     images again and again later; returns maximum extent of the images used."
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2702
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2703
    |defaultExtent imageWidth imageHeight maxWidth maxHeight|
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2704
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2705
    defaultExtent := super fetchImageResources.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2706
    maxHeight := defaultExtent y.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2707
    maxWidth := defaultExtent x.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2708
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2709
    images do:
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2710
    [:anIcon|
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2711
        (imageWidth  := anIcon widthOn:self)  > maxWidth  ifTrue:[maxWidth  := imageWidth].
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2712
        (imageHeight := anIcon heightOn:self) > maxHeight ifTrue:[maxHeight := imageHeight].
275
cdecb5b5d356 set fontHeight dependent on max. image height
ca
parents: 270
diff changeset
  2713
    ].
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2714
    ^maxWidth@maxHeight
275
cdecb5b5d356 set fontHeight dependent on max. image height
ca
parents: 270
diff changeset
  2715
cdecb5b5d356 set fontHeight dependent on max. image height
ca
parents: 270
diff changeset
  2716
!
cdecb5b5d356 set fontHeight dependent on max. image height
ca
parents: 270
diff changeset
  2717
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2718
initialize
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2719
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2720
    super initialize.
275
cdecb5b5d356 set fontHeight dependent on max. image height
ca
parents: 270
diff changeset
  2721
cdecb5b5d356 set fontHeight dependent on max. image height
ca
parents: 270
diff changeset
  2722
    images := IdentityDictionary new.
cdecb5b5d356 set fontHeight dependent on max. image height
ca
parents: 270
diff changeset
  2723
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2724
    self class images associationsDo:[:imageAsso|images at: imageAsso key put:(imageAsso value onDevice:device)].
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2725
    self multipleSelectOk:true.
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2726
    self showDirectoryIndicator: true.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2727
    self showDirectoryIndicatorForRoot: false.
411
7f21bc19cd51 supports calling submenus with arguments
tz
parents: 410
diff changeset
  2728
    self selectConditionBlock: [:i|self application checkMenuItemModified].
412
330bf61c53b5 select first menu child item after opening
tz
parents: 411
diff changeset
  2729
    self validateDoubleClickBlock: [:node| node ~~ listOfNodes first].
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2730
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2731
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2732
!MenuEditor::TreeView methodsFor:'menus'!
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2733
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2734
doCopy
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2735
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2736
    self hasSelection ifTrue:[
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2737
        CopyBuffer := OrderedCollection new.
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2738
        self selectionDo:[:i| CopyBuffer add:((listOfNodes at:i) copy)]
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2739
    ]
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2740
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2741
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2742
doCreateItem
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2743
557
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2744
    self addElement: (self nodeLabel:'Item')
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2745
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2746
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2747
doCreateLink
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2748
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2749
    |node item|
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2750
557
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2751
    node := self nodeLabel:'Submenu Link'.
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2752
    item := node contents.
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2753
    item submenuChannel:#menuDefaultLink.
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2754
    self addElement:node.
155310ec83aa revised version
tz
parents: 382
diff changeset
  2755
    self setModified.
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2756
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2757
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2758
!
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  2759
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2760
doCreateMenu
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2761
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2762
    |node|
557
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2763
    node := self nodeLabel:'Submenu'.
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2764
    node add:(self nodeLabel:'Item 1').
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2765
    self addElement:node
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2766
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2767
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2768
doCreateSep
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2769
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2770
    self addElement:(self nodeLabel:nil)
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2771
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2772
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2773
doCut
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2774
557
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2775
    |selectedNodes|
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2776
    self doCopy.
557
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2777
    selectedNodes := self selection asSortedCollection.
298
cec1f174397e use more functionality provided by base class
ca
parents: 290
diff changeset
  2778
    self selectedNodesRemove.
557
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2779
    self selection: selectedNodes first - 1.
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2780
    self setModified.
155310ec83aa revised version
tz
parents: 382
diff changeset
  2781
155310ec83aa revised version
tz
parents: 382
diff changeset
  2782
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2783
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2784
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2785
doPaste
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2786
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2787
    (CopyBuffer notNil and:[self selectedNode notNil]) ifTrue:[
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2788
        self addElement:(CopyBuffer collect:[:el| el copy])
220
ca
parents: 218
diff changeset
  2789
    ].
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2790
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2791
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2792
!MenuEditor::TreeView methodsFor:'private'!
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2793
557
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2794
addElement: aNode
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2795
    "add something after selection"
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2796
557
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2797
    (aNode isCollection not and: [aNode name = 'Item']) 
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2798
    ifTrue: 
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2799
    [
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2800
        |label|
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2801
        label := aNode name, ' ',
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2802
        (self selectedNode parent notNil ifTrue:
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2803
        [(((self selectedNode children size = 0 ifTrue: [self selectedNode parent children] ifFalse: [self selectedNode children]) select: [:node| 
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2804
                |lab| lab := node contents label. ((node children size = 0) & node contents submenuChannel isNil & (lab ~= '-') & (lab ~= '=') & (lab ~= ''))]) size + 1) printString] ifFalse: ['1']).
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2805
        aNode name: label.
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2806
        aNode contents label: label.
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2807
    ].
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2808
    self selectedNodeAdd: aNode.
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2809
    aNode isCollection ifFalse: [self selectNode: aNode] ifTrue: [self selection: (aNode collect: [:node| self indexOfNode: node])].
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2810
    self setModified.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2811
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2812
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  2813
nodeLabel:aLabel
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2814
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2815
    ^TreeItem name:aLabel contents: (MenuEditor::Item new label:aLabel)
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2816
!
155310ec83aa revised version
tz
parents: 382
diff changeset
  2817
557
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2818
selectedNodeAdd:something
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2819
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2820
    |node|
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2821
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2822
    something notNil ifTrue:[
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2823
        (node := self selectedNode) notNil ifTrue:[
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2824
            node parent notNil ifTrue:[
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2825
                node isCollapsable ifTrue:[
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2826
                    model add:something afterIndex:node children size below:node
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2827
                ] ifFalse:[
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2828
                    model add:something after:node
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2829
                ]
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2830
            ] ifFalse:[
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2831
                model add:something afterIndex:node children size below:(self root)
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2832
            ]
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2833
        ]
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2834
    ]
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2835
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2836
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2837
!
de8d8782486c some revisions
tz
parents: 548
diff changeset
  2838
398
155310ec83aa revised version
tz
parents: 382
diff changeset
  2839
setModified 
155310ec83aa revised version
tz
parents: 382
diff changeset
  2840
508
968c6aa88ef0 updates channels after adding menu items
tz
parents: 507
diff changeset
  2841
    self topView application isModified: true.
968c6aa88ef0 updates channels after adding menu items
tz
parents: 507
diff changeset
  2842
968c6aa88ef0 updates channels after adding menu items
tz
parents: 507
diff changeset
  2843
    self topView application updateEnabledChannels
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2844
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2845
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2846
!MenuEditor::TreeView methodsFor:'selection'!
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2847
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2848
updateNode: aNode
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2849
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2850
    |name treeItem index|
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2851
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2852
    name := aNode label.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2853
    treeItem := listOfNodes detect: [:n| n contents = aNode] ifNone: [1].
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2854
    index := self indexOfNode: treeItem.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2855
    treeItem name: name.
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2856
    self redrawLine: index.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2857
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2858
441
b16598618359 release images after closing
tz
parents: 432
diff changeset
  2859
!MenuEditor::TreeView methodsFor:'startup / release'!
b16598618359 release images after closing
tz
parents: 432
diff changeset
  2860
b16598618359 release images after closing
tz
parents: 432
diff changeset
  2861
destroy
b16598618359 release images after closing
tz
parents: 432
diff changeset
  2862
    "destroy images"
b16598618359 release images after closing
tz
parents: 432
diff changeset
  2863
b16598618359 release images after closing
tz
parents: 432
diff changeset
  2864
    super destroy.
b16598618359 release images after closing
tz
parents: 432
diff changeset
  2865
b16598618359 release images after closing
tz
parents: 432
diff changeset
  2866
    Images := nil
b16598618359 release images after closing
tz
parents: 432
diff changeset
  2867
b16598618359 release images after closing
tz
parents: 432
diff changeset
  2868
b16598618359 release images after closing
tz
parents: 432
diff changeset
  2869
! !
b16598618359 release images after closing
tz
parents: 432
diff changeset
  2870
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2871
!MenuEditor class methodsFor:'documentation'!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2872
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2873
version
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2874
    ^ '$Header$'
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2875
! !
406
a519e0d547f6 widgets rearranged for different fonts + comfortable menu load support
tz
parents: 398
diff changeset
  2876
MenuEditor initialize!