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