MenuEditor.st
author Claus Gittinger <cg@exept.de>
Sun, 01 Feb 2015 14:16:33 +0100
changeset 3178 58100b56595d
parent 3165 c4e94501002c
child 3211 534bd836ae08
permissions -rw-r--r--
class: MenuEditor fixed the following redraw bug in ModelListView (which is already fixed in SelectionInListView): if a colored item is shown with selection, the color attribute should be removed (or relaxed), to avoid drawing the label invisible. I.e. if the text color is blue or grey, and the selection bg is blue. we should draw white-on-blue, instead of blue/grey on blue. For this to work, the info whether drawing a selection must be passed down through the renderer to the item's draw routine.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
     1
"
738
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
     2
 COPYRIGHT (c) 1997 by eXept Software AG
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
     3
	      All Rights Reserved
199
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
738
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
     7
 inclusion of the above copyright notice. This software may not
199
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
"
1372
421b2a1f4b31 use #selectorsAndMethodsDo:
Claus Gittinger <cg@exept.de>
parents: 1365
diff changeset
    12
"{ Package: 'stx:libtool2' }"
421b2a1f4b31 use #selectorsAndMethodsDo:
Claus Gittinger <cg@exept.de>
parents: 1365
diff changeset
    13
3178
58100b56595d class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3165
diff changeset
    14
"{ NameSpace: Smalltalk }"
58100b56595d class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3165
diff changeset
    15
738
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
    16
ResourceSpecEditor subclass:#MenuEditor
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
    17
	instanceVariableNames:'selectionHolder tabHolder listOfItems listOfTabs
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
    18
		selectedSuperItems notifyDisabledCounter wizards listOfItemsView
2569
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
    19
		dropOverLine savedSpec'
1462
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
    20
	classVariableNames:'ImageRetrieverClasses'
220
ca
parents: 218
diff changeset
    21
	poolDictionaries:''
ca
parents: 218
diff changeset
    22
	category:'Interface-UIPainter'
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    23
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    24
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
    25
HierarchicalItem subclass:#Item
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
    26
	instanceVariableNames:'menuItem'
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
    27
	classVariableNames:''
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
    28
	poolDictionaries:''
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
    29
	privateIn:MenuEditor
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
    30
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
    31
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
    32
ApplicationModel subclass:#ImageResourceEditor
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
    33
	instanceVariableNames:'selectorHolder iconAndLabelHolder retrieverHolder imageHolder
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
    34
		imageList selectorFilterHolder imageListView'
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
    35
	classVariableNames:''
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
    36
	poolDictionaries:''
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
    37
	privateIn:MenuEditor
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
    38
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
    39
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
    40
HierarchicalItem subclass:#ImageResourceEditorItem
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
    41
	instanceVariableNames:'selector icon'
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
    42
	classVariableNames:''
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
    43
	poolDictionaries:''
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
    44
	privateIn:MenuEditor::ImageResourceEditor
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
    45
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
    46
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
    47
MenuEditor::Item subclass:#ActionItem
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
    48
	instanceVariableNames:''
1407
5b6ce9f1988e use #withAllSuperclassesDo:
Claus Gittinger <cg@exept.de>
parents: 1400
diff changeset
    49
	classVariableNames:''
5b6ce9f1988e use #withAllSuperclassesDo:
Claus Gittinger <cg@exept.de>
parents: 1400
diff changeset
    50
	poolDictionaries:''
5b6ce9f1988e use #withAllSuperclassesDo:
Claus Gittinger <cg@exept.de>
parents: 1400
diff changeset
    51
	privateIn:MenuEditor
5b6ce9f1988e use #withAllSuperclassesDo:
Claus Gittinger <cg@exept.de>
parents: 1400
diff changeset
    52
!
5b6ce9f1988e use #withAllSuperclassesDo:
Claus Gittinger <cg@exept.de>
parents: 1400
diff changeset
    53
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
    54
MenuEditor::Item subclass:#LinkedMenuItem
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
    55
	instanceVariableNames:''
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
    56
	classVariableNames:''
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
    57
	poolDictionaries:''
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
    58
	privateIn:MenuEditor
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
    59
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
    60
1844
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
    61
MenuEditor::Item subclass:#MenuSliceItem
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
    62
	instanceVariableNames:''
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
    63
	classVariableNames:''
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
    64
	poolDictionaries:''
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
    65
	privateIn:MenuEditor
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
    66
!
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
    67
1633
24748704c741 checkin from browser
ca
parents: 1632
diff changeset
    68
MenuEditor::Item subclass:#RegularMenuItem
1454
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
    69
	instanceVariableNames:''
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
    70
	classVariableNames:''
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
    71
	poolDictionaries:''
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
    72
	privateIn:MenuEditor
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
    73
!
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
    74
1633
24748704c741 checkin from browser
ca
parents: 1632
diff changeset
    75
MenuEditor::RegularMenuItem subclass:#RootItem
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
    76
	instanceVariableNames:''
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
    77
	classVariableNames:''
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
    78
	poolDictionaries:''
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
    79
	privateIn:MenuEditor
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
    80
!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
    81
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
    82
MenuEditor::Item subclass:#SeparatorItem
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
    83
	instanceVariableNames:''
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
    84
	classVariableNames:''
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
    85
	poolDictionaries:''
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
    86
	privateIn:MenuEditor
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
    87
!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
    88
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    89
!MenuEditor class methodsFor:'documentation'!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    90
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    91
copyright
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    92
"
738
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
    93
 COPYRIGHT (c) 1997 by eXept Software AG
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
    94
	      All Rights Reserved
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    95
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    96
 This software is furnished under a license and may be used
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    97
 only in accordance with the terms of that license and with the
738
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
    98
 inclusion of the above copyright notice. This software may not
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
    99
 be provided or otherwise made available to, or used by, any
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   100
 other person.  No title to or ownership of the software is
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   101
 hereby transferred.
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   102
"
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   103
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   104
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   105
documentation
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   106
"
728
638ae95885e1 method comments added
tz
parents: 725
diff changeset
   107
    The MenuEditor allows you to create, modify or just inspect
2936
914fbb4edbae comment/format in: #documentation
Claus Gittinger <cg@exept.de>
parents: 2869
diff changeset
   108
    menu specifications. Such specifications are returned by menu-spec methods
914fbb4edbae comment/format in: #documentation
Claus Gittinger <cg@exept.de>
parents: 2869
diff changeset
   109
    of the application class. These methods are typically tagged with a menu-resource.
914fbb4edbae comment/format in: #documentation
Claus Gittinger <cg@exept.de>
parents: 2869
diff changeset
   110
    The menu editor is able to retrieve such specifications and generate new menu-spec
914fbb4edbae comment/format in: #documentation
Claus Gittinger <cg@exept.de>
parents: 2869
diff changeset
   111
    methods.
914fbb4edbae comment/format in: #documentation
Claus Gittinger <cg@exept.de>
parents: 2869
diff changeset
   112
914fbb4edbae comment/format in: #documentation
Claus Gittinger <cg@exept.de>
parents: 2869
diff changeset
   113
    The editor is typically opened by double-clicking on a menu-spec method in the browser.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   114
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   115
    [Instance variables:]
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   116
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   117
	listOfItemsView         <HierarcicalListView>  the view which shows the list of items
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   118
	listOfItems             <HierarchicalList>     hierarchical list of menu items
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   119
	listOfTabs              <List>                 list of current shown tab-labels
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   120
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   121
	selectionHolder         <ValueHolder>          collection of current selected items
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   122
	selectedSuperItems      <Collection>           collection of superItems derived from selection
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   123
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   124
	tabHolder               <ValueHolder>          selected tab label holder
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   125
	notifyDisabledCounter   <SmallInteger>         ~~ 0 than change notifications are discard
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   126
	wizards                 <IdentityDictionary>   keeps all created wizard dialogs
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   127
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   128
	dropOverLine            <nil or SmallInteger>  nil: drop context not dropabel.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   129
						       = 0: drop context dropable but no item specified
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   130
						       ~ 0: drop context dropable for item at lineNumber
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   131
						       used t6o restore drop indication drawings
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   132
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   133
    [Class variables:]
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   134
	ImageRetrieverClasses   <Collection>        sorted collection of image receivers
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   135
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   136
    [start with:]
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   137
	MenuEditor open
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   138
	MenuEditor openOnClass:MenuEditor andSelector:#menu
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   139
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   140
    [author:]
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   141
	Claus Atzkern, eXept Software AG
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   142
	Thomas Zwick, eXept Software AG
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   143
"
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   144
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   145
1462
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
   146
!MenuEditor class methodsFor:'initialization'!
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
   147
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
   148
initialize
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   149
    ImageRetrieverClasses := #(
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   150
				Icon
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   151
				SystemBrowser
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   152
				ToolbarIconLibrary
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   153
			      ).
1546
4485d0c37aae another default image retriever
Claus Gittinger <cg@exept.de>
parents: 1545
diff changeset
   154
4485d0c37aae another default image retriever
Claus Gittinger <cg@exept.de>
parents: 1545
diff changeset
   155
    "
4485d0c37aae another default image retriever
Claus Gittinger <cg@exept.de>
parents: 1545
diff changeset
   156
     self initialize
4485d0c37aae another default image retriever
Claus Gittinger <cg@exept.de>
parents: 1545
diff changeset
   157
    "
1462
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
   158
! !
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
   159
508
968c6aa88ef0 updates channels after adding menu items
tz
parents: 507
diff changeset
   160
!MenuEditor class methodsFor:'instance creation'!
968c6aa88ef0 updates channels after adding menu items
tz
parents: 507
diff changeset
   161
728
638ae95885e1 method comments added
tz
parents: 725
diff changeset
   162
openModalOnMenu: aMenu
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   163
    "Open a MenuEditor modal on aMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   164
     self openModalOnMenu: (self perform: #menu) decodeAsLiteralArray
734
9fdcc26c458f method comments completed
tz
parents: 728
diff changeset
   165
    "
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   166
    ^self new openModalOnMenu:aMenu
633
11bbf4599843 uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents: 627
diff changeset
   167
! !
11bbf4599843 uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents: 627
diff changeset
   168
1462
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
   169
!MenuEditor class methodsFor:'accessing image retriever'!
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
   170
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
   171
addNewImageRetriever:aSymbolOrClass
1546
4485d0c37aae another default image retriever
Claus Gittinger <cg@exept.de>
parents: 1545
diff changeset
   172
    "add a class to the imageRetriever list"
4485d0c37aae another default image retriever
Claus Gittinger <cg@exept.de>
parents: 1545
diff changeset
   173
1462
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
   174
    |key|
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
   175
1546
4485d0c37aae another default image retriever
Claus Gittinger <cg@exept.de>
parents: 1545
diff changeset
   176
    aSymbolOrClass isBehavior ifTrue:[
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   177
	key := aSymbolOrClass nameWithNameSpacePrefix
1546
4485d0c37aae another default image retriever
Claus Gittinger <cg@exept.de>
parents: 1545
diff changeset
   178
    ] ifFalse:[
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   179
	key := aSymbolOrClass
1462
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
   180
    ].
1463
7dde3777813a show waitCursor while reading images
ca
parents: 1462
diff changeset
   181
1462
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
   182
    key size ~~ 0 ifTrue:[
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   183
	key := key asSymbol.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   184
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   185
	(ImageRetrieverClasses includes:key) ifFalse:[
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   186
	    ImageRetrieverClasses := ImageRetrieverClasses asOrderedCollection.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   187
	    ImageRetrieverClasses add:key.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   188
	    ImageRetrieverClasses sort.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   189
	]
1462
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
   190
    ].
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
   191
!
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
   192
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
   193
imageRetrieverClasses
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
   194
    "returns a collection of image retrievers
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
   195
    "
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
   196
    ^ ImageRetrieverClasses
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
   197
! !
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
   198
633
11bbf4599843 uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents: 627
diff changeset
   199
!MenuEditor class methodsFor:'aspects'!
11bbf4599843 uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents: 627
diff changeset
   200
11bbf4599843 uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents: 627
diff changeset
   201
aspects
728
638ae95885e1 method comments added
tz
parents: 725
diff changeset
   202
    "get the aspects for the attributes of the menu components"
638ae95885e1 method comments added
tz
parents: 725
diff changeset
   203
638ae95885e1 method comments added
tz
parents: 725
diff changeset
   204
    ^#(
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   205
	rawLabel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   206
	accessCharacterPosition
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   207
	showBusyCursorWhilePerforming
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   208
	horizontalLayout
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   209
	triggerOnDown
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   210
	font
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   211
	argument
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   212
	submenuChannel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   213
	keepLinkedMenu
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   214
	enabled
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   215
	itemValue
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   216
	nameKey
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   217
	indication
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   218
	choice
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   219
	choiceValue
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   220
	translateLabel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   221
	isButton
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   222
	shortcutKeyCharacter
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   223
	startGroup
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   224
	isVisible
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   225
	hideMenuOnActivated
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   226
	auxValue
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   227
	activeHelpKey
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   228
	resourceRetriever
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   229
	sendToOriginator
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   230
	ignoreMnemonicKeys
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   231
	ignoreShortcutKeys
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   232
	isMenuSlice
633
11bbf4599843 uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents: 627
diff changeset
   233
     )
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   234
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   235
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   236
!MenuEditor class methodsFor:'defaults'!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   237
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   238
resourceType
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   239
    "get the type of the resource of the method generated by the MenuEditor
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   240
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   241
    ^ #menu
633
11bbf4599843 uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents: 627
diff changeset
   242
! !
11bbf4599843 uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents: 627
diff changeset
   243
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   244
!MenuEditor class methodsFor:'help specs'!
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   245
1545
4f8b08f745eb flyByHelp stuff
Claus Gittinger <cg@exept.de>
parents: 1539
diff changeset
   246
flyByHelpSpec
1629
a79dce7e7045 flyby texts must be short
Claus Gittinger <cg@exept.de>
parents: 1623
diff changeset
   247
    ^super flyByHelpSpec addPairsFrom:(self localFlyHelpSpecStrings)
1545
4f8b08f745eb flyByHelp stuff
Claus Gittinger <cg@exept.de>
parents: 1539
diff changeset
   248
!
4f8b08f745eb flyByHelp stuff
Claus Gittinger <cg@exept.de>
parents: 1539
diff changeset
   249
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   250
helpSpec
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   251
    ^super helpSpec addPairsFrom:(self localFlyHelpSpecStrings)
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   252
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   253
    "Modified: / 03-08-2011 / 10:13:37 / cg"
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   254
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   255
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   256
localFlyHelpSpecStrings
1690
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   257
    "This resource specification was automatically generated
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   258
     by the UIHelpTool of ST/X."
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   259
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   260
    "Do not manually edit this!! If it is corrupted,
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   261
     the UIHelpTool may not be able to read the specification."
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   262
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   263
    "
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   264
     UIHelpTool openOnClass:MenuEditor
1690
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   265
    "
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   266
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   267
    <resource: #help>
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   268
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   269
    ^ #(
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   270
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   271
#editCut
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   272
'Cut Item'
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   273
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   274
#editCopy
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   275
'Copy Item'
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   276
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   277
#editPaste
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   278
'Paste Item'
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   279
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   280
#fileSaveSpec
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   281
'Save Menuspec'
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   282
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   283
#addMenuSlice
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   284
'Add Menuslice'
1690
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   285
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   286
#addDelayedMenu
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   287
'Add a new delayed menu to item.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   288
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   289
#addDelayedSubMenuLink
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   290
'Add a new linked delayed menu to item.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   291
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   292
#addMenuItem
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   293
'Add a new menu item.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   294
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   295
#addMenuSeparator
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   296
'Add a new menu separator.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   297
1844
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
   298
#addMenuSliceItem
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
   299
'Add a new menu slice.'
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
   300
1690
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   301
#addSubMenu
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   302
'Add a new sub menu.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   303
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   304
#addSubMenuLink
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   305
'Add a new linked sub menu.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   306
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   307
#basicsAction
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   308
'An action selector with 0, 1 (the argument field), or 2 (the selected item) arguments.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   309
2810
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
   310
#browseMethod
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
   311
'Open a browser on this method in the application. Create the method, if it does not exist.'
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
   312
1690
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   313
#basicsArgument
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   314
'An optional arg passed with above selector, if it is a 1 or 2 arg selector (enter a Smalltalk literal).'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   315
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   316
#basicsChoice
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   317
'Aspect for a boolean holder, block or method, specifying the choices state (RadioButton behavior).'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   318
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   319
#basicsChoiceValue
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   320
'That choices value (typically number or symbol).'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   321
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   322
#basicsIndication
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   323
'Aspect for boolean holder, block, or method, specifying the indication state (CheckToggle behavior).'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   324
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   325
#basicsIsButton
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   326
'Button-like look and behavior.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   327
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   328
#basicsKey
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   329
'Internal key of the item (optional, for programmed accesses).'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   330
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   331
#basicsLabel
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   332
'Label of the item.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   333
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   334
#basicsMenu
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   335
'Aspect providing the sub menu to be opened if item is selected (provide spec or valueHolder).'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   336
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   337
#basicsMenuArgument
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   338
'An argument passed with the menu selector.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   339
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   340
#basicsNameKey
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   341
'Unique identifier of the item (optional).'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   342
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   343
#basicsSelector
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   344
'Selector under which the generated menu spec is saved.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   345
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   346
#basicsSeparatorType
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   347
'List of valid separators.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   348
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   349
#basicsTranslateLabel
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   350
'Translate the label via the classes resource file (internationalization).'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   351
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   352
#browseResource
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   353
'Search for methods with image resource.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   354
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   355
#detailsAccelerator
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   356
'Accelerator key to select the menu item from the keyboard (Cmdx or Ctrlx).'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   357
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   358
#detailsAccessCharaterPosition
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   359
'Index of the access character position of the textual label (obsolete, VW compatibility).'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   360
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   361
#detailsAuxValue
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   362
'Some additional value - for arbitrary use by the program.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   363
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   364
#detailsEnabled
1702
ace326bd303f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1691
diff changeset
   365
'Aspect or binding providing a boolean value holder to enable/disable the menu item.'
1690
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   366
1844
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
   367
#detailsIgnoreAcceleratorKeys
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
   368
'Ignore accelerator keys in submenu(s).'
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
   369
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
   370
#detailsIgnoreMnemonicKeys
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
   371
'Ignore mnemonic keys (access characters) in submenu(s).'
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
   372
1690
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   373
#detailsStartGroup
2123
7a78e0088013 help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2122
diff changeset
   374
'Specify start of a specially aligned group.'
1690
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   375
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   376
#detailsVisibility
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   377
'Boolean, or aspect or binding for a boolean holder controlling the visibility of the menu item.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   378
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   379
#fileLoad
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   380
'Load a menu spec from a class.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   381
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   382
#fileNew
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   383
'Create a new menu spec.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   384
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   385
#filePickAMenu
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   386
'Select a menu from an open view and read its specification'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   387
2331
938a31972544 choose from screen menu function
Claus Gittinger <cg@exept.de>
parents: 2297
diff changeset
   388
#fileChooseAMenu
938a31972544 choose from screen menu function
Claus Gittinger <cg@exept.de>
parents: 2297
diff changeset
   389
'Select a menu from an open view and edit its spec-method'
938a31972544 choose from screen menu function
Claus Gittinger <cg@exept.de>
parents: 2297
diff changeset
   390
1690
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   391
#fileSave
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   392
'Save the menu spec (and the help spec, if modified).'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   393
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   394
#fileSaveAs
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   395
'Open a dialog to save the menu spec (and the help spec, if modified).'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   396
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   397
#fileShowMenuSpec
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   398
'Opens a Workspace showing the current menu spec.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   399
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   400
#generateAspectMethods
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   401
'Generates aspect methods for defined aspect selectors of the menu.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   402
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   403
#hideMenuOnActivated
1702
ace326bd303f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1691
diff changeset
   404
'If on, the menu hides itself after the item was activated (PopUp/PullDown-Menus only).'
1690
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   405
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   406
#horizontalLayout
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   407
'If on, the submenu organizes its items horizontal instead of vertical (default).'
1690
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   408
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   409
#imageImageAndLabel
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   410
'Toggle display of both image and textual label.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   411
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   412
#imageImageEditor
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   413
'Open an Image Editor on the resource method defined by retriever and selector.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   414
2797
06bae3d05b78 changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2729
diff changeset
   415
#imageBrowseImageClass
06bae3d05b78 changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2729
diff changeset
   416
'Open a Browser on the resource retriever class.'
06bae3d05b78 changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2729
diff changeset
   417
1690
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   418
#imageImageList
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   419
'Currently existing image resources.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   420
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   421
#imageRetriever
3071
e69992cb4b24 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3029
diff changeset
   422
'Class implementing the image resource method. If unspecified, the application instance / class are asked.'
1690
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   423
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   424
#imageSelector
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   425
'Selector returning an image (sent to above or the application).'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   426
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   427
#keepLinkedMenu
2055
481537d623d3 helpspec
Claus Gittinger <cg@exept.de>
parents: 2036
diff changeset
   428
'Keep the linked menu after activation (do not destroy; if off, menu is rebuild for every activation).'
1690
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   429
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   430
#sendToOriginator
1702
ace326bd303f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1691
diff changeset
   431
'Send action-Message to widget (instead of application); only valid for PopUpMenus.'
1690
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   432
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   433
#settingsRedefineAspectMethods
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   434
'Toggles the permission to overwrite existing aspect methods.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   435
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   436
#showBusyCursorWhilePerforming
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   437
'If on, a busy cursor is shown while the items action is performing.'
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   438
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   439
#triggerOnDown
1702
ace326bd303f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1691
diff changeset
   440
'If on, the items action is performed on mouse-button press (default is: on button-release).'
1690
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   441
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   442
#selectorFilter
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   443
'In the list below, only matching selectors are shown'
1690
Claus Gittinger <cg@exept.de>
parents: 1685
diff changeset
   444
)
2055
481537d623d3 helpspec
Claus Gittinger <cg@exept.de>
parents: 2036
diff changeset
   445
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
   446
    "Modified: / 03-08-2011 / 10:17:05 / cg"
371
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   447
! !
7017eaabd9ed add help text
ca
parents: 359
diff changeset
   448
734
9fdcc26c458f method comments completed
tz
parents: 728
diff changeset
   449
!MenuEditor class methodsFor:'image specs'!
9fdcc26c458f method comments completed
tz
parents: 728
diff changeset
   450
2297
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
   451
browseActionImage
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
   452
    <resource: #programImage>
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
   453
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
   454
    ^ UIPainter browseActionImage
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
   455
!
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
   456
2156
215e8d8f965e Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2151
diff changeset
   457
defaultIcon
215e8d8f965e Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2151
diff changeset
   458
    <resource: #programImage>
215e8d8f965e Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2151
diff changeset
   459
215e8d8f965e Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2151
diff changeset
   460
    ^ ToolbarIconLibrary startMenuEditorIcon
215e8d8f965e Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2151
diff changeset
   461
!
215e8d8f965e Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2151
diff changeset
   462
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   463
iconUnknown
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   464
    "returns an image used for picked items containing an image
734
9fdcc26c458f method comments completed
tz
parents: 728
diff changeset
   465
    "
2271
046148411383 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2270
diff changeset
   466
    <resource: #programImage>
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   467
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   468
    ^ MenuPanelSpec icon
1425
a196da536bff *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1413
diff changeset
   469
! !
734
9fdcc26c458f method comments completed
tz
parents: 728
diff changeset
   470
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   471
!MenuEditor class methodsFor:'interface specs'!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
   472
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   473
windowSpec
738
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
   474
    "This resource specification was automatically generated
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
   475
     by the UIPainter of ST/X."
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
   476
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
   477
    "Do not manually edit this!! If it is corrupted,
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
   478
     the UIPainter may not be able to read the specification."
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   479
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   480
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   481
     UIPainter new openOnClass:MenuEditor andSelector:#windowSpec
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   482
     MenuEditor new openInterface:#windowSpec
738
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
   483
     MenuEditor open
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   484
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   485
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   486
    <resource: #canvas>
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   487
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   488
    ^
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
   489
     #(FullSpec
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   490
	name: windowSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   491
	window:
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
   492
       (WindowSpec
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   493
	  label: 'Menu Editor'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   494
	  name: 'Menu Editor'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   495
	  min: (Point 550 385)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   496
	  bounds: (Rectangle 0 0 574 473)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   497
	  menu: menu
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   498
	  icon: defaultIcon
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   499
	  returnIsOKInDialog: false
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   500
	  escapeIsCancelInDialog: false
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   501
	)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   502
	component:
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
   503
       (SpecCollection
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   504
	  collection: (
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   505
	   (MenuPanelSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   506
	      name: 'toolbar'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   507
	      layout: (LayoutFrame 0 0.0 0 0 0 1.0 32 0)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   508
	      tabable: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   509
	      menu: toolbar
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   510
	      showSeparatingLines: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   511
	    )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   512
	   (VariableHorizontalPanelSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   513
	      name: 'mainPanel'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   514
	      layout: (LayoutFrame 0 0.0 34 0.0 0 1.0 -26 1.0)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   515
	      component:
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   516
	     (SpecCollection
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   517
		collection: (
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   518
		 (HierarchicalListViewSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   519
		    name: 'ListOfItemsView'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   520
		    model: selectionHolder
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   521
		    menu: editMenu
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   522
		    hasHorizontalScrollBar: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   523
		    hasVerticalScrollBar: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   524
		    miniScrollerHorizontal: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   525
		    miniScrollerVertical: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   526
		    listModel: listOfItems
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   527
		    multipleSelectOk: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   528
		    useIndex: false
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   529
		    highlightMode: label
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   530
		    doubleClickSelector: indicatorClickedAt:
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   531
		    selectConditionSelector: canSelect:
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   532
		    showLeftIndicators: false
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   533
		    indicatorSelector: indicatorClickedAt:
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   534
		    properties:
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   535
		   (PropertyListDictionary
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   536
		      dropSelector: doDrop:
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   537
		      dragArgument: nil
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   538
		      dropObjectSelector: dropObjects
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   539
		      overSelector: dropOver:
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   540
		      dropArgument: nil
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   541
		      leaveSelector: dropLeave:
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   542
		      canDropSelector: canDrop:
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   543
		      enterSelector: dropEnter:
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   544
		    )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   545
		    postBuildCallback: postBuildListOfItemsView:
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   546
		  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   547
		 (ViewSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   548
		    name: 'Box'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   549
		    level: -1
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   550
		    component:
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   551
		   (SpecCollection
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   552
		      collection: (
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   553
		       (NoteBookViewSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   554
			  name: 'NoteBook'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   555
			  layout: (LayoutFrame 1 0.0 0 0.0 1 1.0 -30 1.0)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   556
			  enableChannel: hasSingleSelectionChannel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   557
			  tabable: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   558
			  model: tabHolder
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   559
			  menu: listOfTabs
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   560
			  fitLastRow: false
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   561
			  translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   562
			  canvas: wizardHolder
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   563
			  keepCanvasAlive: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   564
			  postBuildCallback: postBuildNoteBook:
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   565
			)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   566
		       (UISubSpecification
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   567
			  name: 'SubSpecification'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   568
			  layout: (LayoutFrame 2 0.0 -26 1 -2 1.0 -2 1.0)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   569
			  majorKey: ToolApplicationModel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   570
			  minorKey: windowSpecForCommit
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   571
			)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   572
		       )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   573
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   574
		    )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   575
		  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   576
		 )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   577
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   578
	      )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   579
	      handles: (Any 0.300493 1.0)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   580
	    )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   581
	   (UISubSpecification
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   582
	      name: 'infoBarSubSpec'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   583
	      layout: (LayoutFrame 0 0.0 -24 1 0 1.0 0 1.0)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   584
	      majorKey: ToolApplicationModel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   585
	      minorKey: windowSpecForInfoBar
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   586
	    )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   587
	   )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   588
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   589
	)
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   590
      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   591
! !
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   592
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   593
!MenuEditor class methodsFor:'menu specs'!
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
   594
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   595
addMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   596
    "This resource specification was automatically generated
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   597
     by the MenuEditor of ST/X."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   598
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   599
    "Do not manually edit this!! If it is corrupted,
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   600
     the MenuEditor may not be able to read the specification."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   601
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   602
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   603
     MenuEditor new openOnClass:MenuEditor andSelector:#addMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   604
     (Menu new fromLiteralArrayEncoding:(MenuEditor addMenu)) startUp
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   605
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   607
    <resource: #menu>
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   608
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   609
    ^
1844
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
   610
     #(Menu
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   611
	(
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   612
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   613
	    activeHelpKey: addMenuSeparator
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   614
	    label: 'Separator'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   615
	    itemValue: doCreateSep
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   616
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   617
	    labelImage: (ResourceRetriever #'MenuEditor::Item' iconSeparator '')
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   618
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   619
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   620
	    activeHelpKey: addMenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   621
	    label: 'Item'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   622
	    itemValue: doCreateItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   623
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   624
	    labelImage: (ResourceRetriever #'MenuEditor::Item' iconItem '')
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   625
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   626
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   627
	    activeHelpKey: addMenuSliceItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   628
	    label: 'Menu Slice'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   629
	    itemValue: doCreateMenuSliceItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   630
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   631
	    labelImage: (ResourceRetriever #'MenuEditor::Item' iconSliceMenu '')
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   632
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   633
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   634
	    activeHelpKey: addMenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   635
	    label: 'Menu'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   636
	    itemValue: doCreateMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   637
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   638
	    labelImage: (ResourceRetriever #'MenuEditor::Item' iconMenu '')
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   639
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   640
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   641
	    activeHelpKey: addSubMenuLink
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   642
	    label: 'Linked Menu'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   643
	    itemValue: doCreateLinkedMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   644
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   645
	    labelImage: (ResourceRetriever #'MenuEditor::Item' iconLinkedMenu '')
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   646
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   647
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   648
	    label: '-'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   649
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   650
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   651
	    activeHelpKey: addDelayedMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   652
	    enabled: canCreateDelayedMenuChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   653
	    label: 'Delayed Menu'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   654
	    itemValue: doCreateDelayedMenu:
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   655
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   656
	    labelImage: (ResourceRetriever #'MenuEditor::Item' iconDelayedMenu '')
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   657
	    argument: menu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   658
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   659
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   660
	    activeHelpKey: addDelayedSubMenuLink
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   661
	    enabled: canCreateDelayedMenuChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   662
	    label: 'Delayed Linked Menu'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   663
	    itemValue: doCreateDelayedMenu:
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   664
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   665
	    labelImage: (ResourceRetriever #'MenuEditor::Item' iconDelayedLinkedMenu '')
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   666
	    argument: linkedMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   667
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   668
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   669
	    label: '-'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   670
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   671
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   672
	    label: 'Standard Menus'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   673
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   674
	    submenuChannel: standardMenus
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   675
	    keepLinkedMenu: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   676
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   677
	 )
2275
b0f6890e73cf code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
   678
"/        nil
b0f6890e73cf code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
   679
"/        nil
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   680
      )
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   681
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   682
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   683
editMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   684
    "This resource specification was automatically generated
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   685
     by the MenuEditor of ST/X."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   686
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   687
    "Do not manually edit this!! If it is corrupted,
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   688
     the MenuEditor may not be able to read the specification."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   689
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   690
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   691
     MenuEditor new openOnClass:MenuEditor andSelector:#editMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   692
     (Menu new fromLiteralArrayEncoding:(MenuEditor editMenu)) startUp
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   693
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   694
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   695
    <resource: #menu>
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   696
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   697
    ^
2186
6ef00e72f1d5 menu UI
Claus Gittinger <cg@exept.de>
parents: 2169
diff changeset
   698
     #(Menu
3135
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   699
        (
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   700
         (MenuItem
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   701
            activeHelpKey: editCut
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   702
            enabled: hasSelectionChannel
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   703
            label: 'Cut'
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   704
            itemValue: doCut
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   705
            translateLabel: true
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   706
            shortcutKey: Cut
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   707
          )
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   708
         (MenuItem
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   709
            activeHelpKey: editCopy
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   710
            enabled: hasSelectionChannel
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   711
            label: 'Copy'
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   712
            itemValue: doCopy
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   713
            translateLabel: true
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   714
            shortcutKey: Copy
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   715
          )
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   716
         (MenuItem
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   717
            activeHelpKey: editPaste
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   718
            enabled: canPasteHolder
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   719
            label: 'Paste'
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   720
            itemValue: doPaste
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   721
            translateLabel: true
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   722
            shortcutKey: Paste
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   723
          )
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   724
         (MenuItem
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   725
            activeHelpKey: editDelete
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   726
            enabled: hasSelectionChannel
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   727
            label: 'Delete'
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   728
            itemValue: doDelete
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   729
            translateLabel: true
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   730
            isVisible: false
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   731
          )
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   732
         (MenuItem
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   733
            label: '-'
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   734
          )
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   735
         (MenuItem
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   736
            activeHelpKey: makeLinkedMenu
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   737
            enabled: hasNonLinkedMenuSelectedHolder
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   738
            label: 'Make Linked Menu...'
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   739
            itemValue: doMakeLinkedMenu
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   740
            translateLabel: true
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   741
          )
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   742
         (MenuItem
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   743
            label: '-'
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   744
          )
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   745
         (MenuItem
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   746
            activeHelpKey: editMoveUp
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   747
            enabled: enableMovingUpOrDownHolder
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   748
            label: 'Move Up'
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   749
            itemValue: doMoveUpOrDown:
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   750
            translateLabel: true
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   751
            startGroup: right
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   752
            shortcutKey: CtrlCursorUp
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   753
            labelImage: (ResourceRetriever Icon upIcon 'Move Up')
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   754
            argument: up
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   755
          )
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   756
         (MenuItem
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   757
            activeHelpKey: editMoveDown
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   758
            enabled: enableMovingUpOrDownHolder
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   759
            label: 'Move Down'
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   760
            itemValue: doMoveUpOrDown:
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   761
            translateLabel: true
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   762
            shortcutKey: CtrlCursorDown
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   763
            labelImage: (ResourceRetriever Icon downIcon 'Move Down')
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   764
            argument: down
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   765
          )
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   766
         (MenuItem
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   767
            activeHelpKey: editMoveIn
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   768
            enabled: enableMovingInHolder
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   769
            label: 'Move Into Next'
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   770
            itemValue: doMoveIn:
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   771
            translateLabel: true
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   772
            shortcutKey: CtrlCursorRight
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   773
            labelImage: (ResourceRetriever Icon downRightIcon 'Move Into Next')
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   774
            argument: inNext
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   775
          )
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   776
         (MenuItem
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   777
            activeHelpKey: editMoveInAbove
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   778
            enabled: enableMovingInAboveHolder
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   779
            label: 'Move Into Previous'
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   780
            itemValue: doMoveIn:
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   781
            translateLabel: true
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   782
            labelImage: (ResourceRetriever Icon upRightIcon 'Move Into Previous' )
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   783
            argument: inPrev
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   784
          )
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   785
         (MenuItem
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   786
            activeHelpKey: editMoveOut
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   787
            enabled: enableMovingOutHolder
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   788
            label: 'Move Out'
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   789
            itemValue: doMoveOut
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   790
            translateLabel: true
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   791
            shortcutKey: CtrlCursorLeft
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   792
            labelImage: (ResourceRetriever Icon leftDownIcon 'Move Out' )
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   793
          )
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   794
         )
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   795
        nil
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   796
        nil
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   797
      )
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   798
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   799
2187
39825ff916b8 menu UI
Claus Gittinger <cg@exept.de>
parents: 2186
diff changeset
   800
editMenuForMainMenuWithoutAccelerators
39825ff916b8 menu UI
Claus Gittinger <cg@exept.de>
parents: 2186
diff changeset
   801
    "This resource specification was automatically generated
39825ff916b8 menu UI
Claus Gittinger <cg@exept.de>
parents: 2186
diff changeset
   802
     by the MenuEditor of ST/X."
39825ff916b8 menu UI
Claus Gittinger <cg@exept.de>
parents: 2186
diff changeset
   803
39825ff916b8 menu UI
Claus Gittinger <cg@exept.de>
parents: 2186
diff changeset
   804
    "Do not manually edit this!! If it is corrupted,
39825ff916b8 menu UI
Claus Gittinger <cg@exept.de>
parents: 2186
diff changeset
   805
     the MenuEditor may not be able to read the specification."
39825ff916b8 menu UI
Claus Gittinger <cg@exept.de>
parents: 2186
diff changeset
   806
39825ff916b8 menu UI
Claus Gittinger <cg@exept.de>
parents: 2186
diff changeset
   807
    "
39825ff916b8 menu UI
Claus Gittinger <cg@exept.de>
parents: 2186
diff changeset
   808
     MenuEditor new openOnClass:MenuEditor andSelector:#editMenuForMainMenuWithoutAccelerators
39825ff916b8 menu UI
Claus Gittinger <cg@exept.de>
parents: 2186
diff changeset
   809
     (Menu new fromLiteralArrayEncoding:(MenuEditor editMenuForMainMenuWithoutAccelerators)) startUp
39825ff916b8 menu UI
Claus Gittinger <cg@exept.de>
parents: 2186
diff changeset
   810
    "
39825ff916b8 menu UI
Claus Gittinger <cg@exept.de>
parents: 2186
diff changeset
   811
39825ff916b8 menu UI
Claus Gittinger <cg@exept.de>
parents: 2186
diff changeset
   812
    <resource: #menu>
39825ff916b8 menu UI
Claus Gittinger <cg@exept.de>
parents: 2186
diff changeset
   813
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   814
    ^
2187
39825ff916b8 menu UI
Claus Gittinger <cg@exept.de>
parents: 2186
diff changeset
   815
     #(Menu
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   816
	(
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   817
	 (MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   818
	    activeHelpKey: editCut
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   819
	    enabled: hasSelectionChannel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   820
	    label: 'Cut'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   821
	    itemValue: doCut
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   822
	    translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   823
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   824
	 (MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   825
	    activeHelpKey: editCopy
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   826
	    enabled: hasSelectionChannel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   827
	    label: 'Copy'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   828
	    itemValue: doCopy
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   829
	    translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   830
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   831
	 (MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   832
	    activeHelpKey: editPaste
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   833
	    enabled: canPasteHolder
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   834
	    label: 'Paste'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   835
	    itemValue: doPaste
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   836
	    translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   837
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   838
	 (MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   839
	    activeHelpKey: editDelete
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   840
	    enabled: hasSelectionChannel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   841
	    label: 'Delete'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   842
	    itemValue: doDelete
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   843
	    translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   844
	    isVisible: false
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   845
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   846
	 (MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   847
	    label: '-'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   848
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   849
	 (MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   850
	    activeHelpKey: editMoveUp
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   851
	    enabled: enableMovingUpOrDownHolder
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   852
	    label: 'Move Up'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   853
	    itemValue: doMoveUpOrDown:
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   854
	    translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   855
	    startGroup: right
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   856
	    labelImage: (ResourceRetriever Icon upIcon 'Move Up')
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   857
	    argument: up
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   858
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   859
	 (MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   860
	    activeHelpKey: editMoveDown
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   861
	    enabled: enableMovingUpOrDownHolder
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   862
	    label: 'Move Down'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   863
	    itemValue: doMoveUpOrDown:
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   864
	    translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   865
	    labelImage: (ResourceRetriever Icon downIcon 'Move Down')
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   866
	    argument: down
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   867
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   868
	 (MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   869
	    activeHelpKey: editMoveIn
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   870
	    enabled: enableMovingInHolder
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   871
	    label: 'Move Into Next'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   872
	    itemValue: doMoveIn:
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   873
	    translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   874
	    labelImage: (ResourceRetriever Icon downRightIcon 'Move Into Next')
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   875
	    argument: inNext
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   876
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   877
	 (MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   878
	    activeHelpKey: editMoveInAbove
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   879
	    enabled: enableMovingInAboveHolder
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   880
	    label: 'Move Into Previous'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   881
	    itemValue: doMoveIn:
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   882
	    translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   883
	    labelImage: (ResourceRetriever Icon upRightIcon 'Move Into Previous')
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   884
	    argument: inPrev
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   885
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   886
	 (MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   887
	    activeHelpKey: editMoveOut
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   888
	    enabled: enableMovingOutHolder
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   889
	    label: 'Move Out'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   890
	    itemValue: doMoveOut
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   891
	    translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   892
	    labelImage: (ResourceRetriever Icon leftDownIcon 'Move Out')
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   893
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   894
	 )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   895
	nil
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
   896
	nil
2187
39825ff916b8 menu UI
Claus Gittinger <cg@exept.de>
parents: 2186
diff changeset
   897
      )
39825ff916b8 menu UI
Claus Gittinger <cg@exept.de>
parents: 2186
diff changeset
   898
!
39825ff916b8 menu UI
Claus Gittinger <cg@exept.de>
parents: 2186
diff changeset
   899
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   900
fileMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   901
    "This resource specification was automatically generated
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   902
     by the MenuEditor of ST/X."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   903
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   904
    "Do not manually edit this!! If it is corrupted,
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   905
     the MenuEditor may not be able to read the specification."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   906
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   907
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   908
     MenuEditor new openOnClass:MenuEditor andSelector:#fileMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   909
     (Menu new fromLiteralArrayEncoding:(MenuEditor fileMenu)) startUp
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   910
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   911
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   912
    <resource: #menu>
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
   913
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   914
    ^
1971
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
   915
     #(Menu
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   916
	(
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   917
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   918
	    isVisible: isNotEditingSpecOnlyAndNotEmbeddedInBrowser
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   919
	    activeHelpKey: fileNew
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   920
	    label: 'New'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   921
	    itemValue: doNew
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   922
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   923
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   924
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   925
	    isVisible: isNotEditingSpecOnlyAndNotEmbeddedInBrowser
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   926
	    label: '-'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   927
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   928
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   929
	    isVisible: isNotEditingSpecOnlyAndNotEmbeddedInBrowser
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   930
	    activeHelpKey: fileLoad
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   931
	    label: 'Load...'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   932
	    itemValue: doLoad
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   933
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   934
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   935
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   936
	    isVisible: isNotEditingSpecOnlyAndNotEmbeddedInBrowser
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   937
	    label: '-'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   938
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   939
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   940
	    isVisible: isEditingSpecOnly
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   941
	    activeHelpKey: fileSaveSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   942
	    label: 'Save'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   943
	    itemValue: doSave
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   944
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   945
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   946
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   947
	    isVisible: isNotEditingSpecOnly
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   948
	    activeHelpKey: fileSave
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   949
	    label: 'Save'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   950
	    itemValue: doSave
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   951
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   952
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   953
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   954
	    isVisible: isNotEditingSpecOnlyAndNotEmbeddedInBrowser
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   955
	    activeHelpKey: fileSaveAs
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   956
	    label: 'Save As...'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   957
	    itemValue: doSaveAs
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   958
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   959
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   960
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   961
	    label: '-'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   962
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   963
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   964
	    activeHelpKey: filePickAMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   965
	    label: 'Pick a Menu...'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   966
	    itemValue: doPickAMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   967
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   968
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   969
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   970
	    activeHelpKey: fileChooseAMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   971
	    label: 'Choose a Menu...'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   972
	    itemValue: doChooseAMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   973
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   974
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   975
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   976
	    label: '-'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   977
	    isVisible: isStandAlone
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   978
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   979
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   980
	    activeHelpKey: fileBrowseClass
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   981
	    enabled: hasValidSpecClass
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   982
	    label: 'Browse Class'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   983
	    itemValue: doBrowseClass
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   984
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   985
	    isVisible: isStandAlone
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   986
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   987
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   988
	    activeHelpKey: fileShowMenuSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   989
	    label: 'Show Menu Spec'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   990
	    itemValue: doShowMenuSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   991
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   992
	    isVisible: isStandAlone
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   993
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   994
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   995
	    label: '-'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   996
	    isVisible: isStandAlone
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   997
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   998
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
   999
	    activeHelpKey: fileExit
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1000
	    label: 'Exit'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1001
	    itemValue: closeRequest
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1002
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1003
	    isVisible: isStandAlone
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1004
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1005
	 )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1006
	nil
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1007
	nil
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1008
      )
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1009
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1010
1614
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  1011
generateMenu
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  1012
    "This resource specification was automatically generated
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  1013
     by the MenuEditor of ST/X."
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  1014
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  1015
    "Do not manually edit this!! If it is corrupted,
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  1016
     the MenuEditor may not be able to read the specification."
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  1017
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  1018
    "
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  1019
     MenuEditor new openOnClass:MenuEditor andSelector:#generateMenu
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  1020
     (Menu new fromLiteralArrayEncoding:(MenuEditor generateMenu)) startUp
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  1021
    "
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  1022
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  1023
    <resource: #menu>
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  1024
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1025
    ^
1614
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  1026
     #(#Menu
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1027
	#(
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1028
	 #(#MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1029
	    #activeHelpKey: #generateAspectMethods
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1030
	    #enabled: #hasValidSpecClass
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1031
	    #label: 'Aspect Methods'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1032
	    #itemValue: #doGenerateAspectMethods
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1033
	    #translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1034
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1035
	 )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1036
	nil
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1037
	nil
1614
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  1038
      )
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  1039
!
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  1040
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1041
helpMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1042
    "This resource specification was automatically generated
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1043
     by the MenuEditor of ST/X."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1044
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1045
    "Do not manually edit this!! If it is corrupted,
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1046
     the MenuEditor may not be able to read the specification."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1047
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1048
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1049
     MenuEditor new openOnClass:MenuEditor andSelector:#helpMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1050
     (Menu new fromLiteralArrayEncoding:(MenuEditor helpMenu)) startUp
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1051
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1052
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1053
    <resource: #menu>
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1054
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1055
    ^
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1056
     #(#Menu
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1057
	#(
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1058
	 #(#MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1059
	    #activeHelpKey: #helpTutorial
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1060
	    #label: 'Documentation'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1061
	    #itemValue: #openHTMLDocument:
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1062
	    #translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1063
	    #argument: 'tools/uipainter/MenuEditor.html'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1064
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1065
	 #(#MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1066
	    #label: '-'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1067
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1068
	 #(#MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1069
	    #activeHelpKey: #helpHelpTool
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1070
	    #label: 'Help Tool'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1071
	    #itemValue: #openHTMLDocument:
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1072
	    #translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1073
	    #argument: 'tools/uipainter/HelpTool.html'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1074
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1075
	 #(#MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1076
	    #label: '-'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1077
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1078
	 #(#MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1079
	    #activeHelpKey: #helpShowHelp
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1080
	    #label: 'Show Help Texts'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1081
	    #translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1082
	    #indication: #showingHelp:
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1083
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1084
	 #(#MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1085
	    #label: '-'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1086
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1087
	 #(#MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1088
	    #activeHelpKey: #aboutThisAppliaction
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1089
	    #label: 'About MenuEditor...'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1090
	    #itemValue: #openAboutThisApplication
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1091
	    #translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1092
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1093
	 )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1094
	nil
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1095
	nil
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1096
      )
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1097
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1098
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1099
menu
738
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
  1100
    "This resource specification was automatically generated
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
  1101
     by the MenuEditor of ST/X."
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
  1102
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
  1103
    "Do not manually edit this!! If it is corrupted,
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
  1104
     the MenuEditor may not be able to read the specification."
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1105
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1106
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1107
     MenuEditor new openOnClass:MenuEditor andSelector:#menu
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1108
     (Menu new fromLiteralArrayEncoding:(MenuEditor menu)) startUp
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1109
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1110
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1111
    <resource: #menu>
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1112
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1113
    ^
1775
695f10f213d1 no flyByHelp for menu
ca
parents: 1749
diff changeset
  1114
     #(Menu
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1115
	(
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1116
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1117
	    label: '&File'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1118
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1119
	    submenuChannel: fileMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1120
	    keepLinkedMenu: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1121
	    ignoreMnemonicKeys: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1122
	    ignoreShortcutKeys: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1123
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1124
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1125
	    label: '&Edit'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1126
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1127
	    submenuChannel: editMenuForMainMenuWithoutAccelerators
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1128
	    keepLinkedMenu: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1129
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1130
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1131
	    enabled: hasSingleSelectionChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1132
	    label: 'Item'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1133
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1134
	    submenuChannel: addMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1135
	    keepLinkedMenu: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1136
	    ignoreMnemonicKeys: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1137
	    ignoreShortcutKeys: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1138
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1139
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1140
	    isVisible: isNotEditingSpecOnly
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1141
	    label: 'Generate'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1142
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1143
	    submenuChannel: generateMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1144
	    keepLinkedMenu: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1145
	    ignoreMnemonicKeys: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1146
	    ignoreShortcutKeys: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1147
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1148
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1149
	    label: 'Test'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1150
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1151
	    submenuChannel: submenuTest
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1152
	    ignoreMnemonicKeys: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1153
	    ignoreShortcutKeys: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1154
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1155
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1156
	    label: 'Settings'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1157
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1158
	    submenuChannel: settingsMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1159
	    keepLinkedMenu: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1160
	    ignoreMnemonicKeys: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1161
	    ignoreShortcutKeys: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1162
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1163
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1164
	    label: 'History'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1165
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1166
	    isVisible: isStandAlone
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1167
	    submenuChannel: menuHistory
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1168
	    ignoreMnemonicKeys: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1169
	    ignoreShortcutKeys: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1170
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1171
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1172
	    label: 'MENU_Help'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1173
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1174
	    startGroup: conditionalRight
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1175
	    submenuChannel: helpMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1176
	    keepLinkedMenu: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1177
	    ignoreMnemonicKeys: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1178
	    ignoreShortcutKeys: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1179
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1180
	 )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1181
	nil
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1182
	nil
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1183
      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1184
!
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1185
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  1186
settingsMenu
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  1187
    "This resource specification was automatically generated
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  1188
     by the MenuEditor of ST/X."
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  1189
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  1190
    "Do not manually edit this!! If it is corrupted,
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  1191
     the MenuEditor may not be able to read the specification."
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  1192
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  1193
    "
1632
1f0a0d241ff8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1631
diff changeset
  1194
     MenuEditor new openOnClass:MenuEditor andSelector:#settingsMenu
1f0a0d241ff8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1631
diff changeset
  1195
     (Menu new fromLiteralArrayEncoding:(MenuEditor settingsMenu)) startUp
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  1196
    "
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  1197
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  1198
    <resource: #menu>
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  1199
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1200
    ^
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  1201
     #(#Menu
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1202
	#(
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1203
	 #(#MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1204
	    isVisible: isNotEditingSpecOnly
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1205
	    #activeHelpKey: #settingsRedefineAspectMethods
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1206
	    #enabled: #hasValidSpecClass
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1207
	    #label: 'Redefine Aspect Methods'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1208
	    #translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1209
	    #hideMenuOnActivated: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1210
	    #indication: #redefineAspectMethodsChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1211
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1212
	 #(#MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1213
	    #activeHelpKey: #settingsRedefineAspectMethods
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1214
	    #label: 'AutoAccept on Selection-Change'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1215
	    #translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1216
	    #hideMenuOnActivated: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1217
	    #indication: #autoAcceptOnSelectionChange
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1218
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1219
	 )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1220
	nil
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1221
	nil
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  1222
      )
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  1223
!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  1224
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1225
standardMenus
738
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
  1226
    "This resource specification was automatically generated
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
  1227
     by the MenuEditor of ST/X."
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
  1228
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
  1229
    "Do not manually edit this!! If it is corrupted,
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
  1230
     the MenuEditor may not be able to read the specification."
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1231
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1232
    "
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1233
     MenuEditor new openOnClass:MenuEditor andSelector:#standardMenus
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1234
     (Menu new fromLiteralArrayEncoding:(MenuEditor standardMenus)) startUp
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1235
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1236
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1237
    <resource: #menu>
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1238
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1239
    ^
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1240
     #(#Menu
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1241
	#(
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1242
	 #(#MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1243
	    #label: 'Standard Menu: File'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1244
	    #itemValue: #doCreateStandardFileMenu
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1245
	    #translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1246
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1247
	 #(#MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1248
	    #label: 'Standard Menu: Edit'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1249
	    #itemValue: #doCreateStandardEditMenu
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1250
	    #translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1251
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1252
	 #(#MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1253
	    #label: 'Standard Menu: Help'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1254
	    #itemValue: #doCreateStandardHelpMenu
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1255
	    #translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1256
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1257
	 )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1258
	nil
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1259
	nil
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1260
      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1261
!
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1262
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1263
toolbar
738
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
  1264
    "This resource specification was automatically generated
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
  1265
     by the MenuEditor of ST/X."
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
  1266
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
  1267
    "Do not manually edit this!! If it is corrupted,
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
  1268
     the MenuEditor may not be able to read the specification."
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1269
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1270
    "
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1271
     MenuEditor new openOnClass:MenuEditor andSelector:#toolbar
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1272
     (Menu new fromLiteralArrayEncoding:(MenuEditor toolbar)) startUp
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1273
    "
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1274
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1275
    <resource: #menu>
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1276
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1277
    ^
1749
817e1191a4fc toolBar: button image
Claus Gittinger <cg@exept.de>
parents: 1737
diff changeset
  1278
     #(Menu
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1279
	(
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1280
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1281
	    activeHelpKey: fileNew
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1282
	    label: 'New'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1283
	    itemValue: doNew
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1284
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1285
	    isButton: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1286
	    labelImage: (ResourceRetriever ToolbarIconLibrary newMenuIcon)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1287
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1288
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1289
	    label: '-'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1290
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1291
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1292
	    activeHelpKey: fileLoad
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1293
	    label: 'Load'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1294
	    itemValue: doLoad
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1295
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1296
	    isButton: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1297
	    isVisible: isNotEditingSpecOnly
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1298
	    submenuChannel: menuHistory
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1299
	    labelImage: (ResourceRetriever ToolbarIconLibrary loadFromMethodIcon)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1300
	    keepLinkedMenu: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1301
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1302
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1303
	    activeHelpKey: fileSave
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1304
	    label: 'Save'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1305
	    itemValue: doSave
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1306
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1307
	    isButton: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1308
	    isVisible: isNotEditingSpecOnly
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1309
	    labelImage: (ResourceRetriever ToolbarIconLibrary saveAsMethodIcon)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1310
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1311
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1312
	    activeHelpKey: fileSaveSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1313
	    label: 'Save'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1314
	    itemValue: doSave
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1315
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1316
	    isButton: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1317
	    isVisible: isEditingSpecOnly
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1318
	    labelImage: (ResourceRetriever XPToolbarIconLibrary saveImageIcon)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1319
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1320
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1321
	    label: '-'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1322
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1323
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1324
	    activeHelpKey: editCut
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1325
	    enabled: hasSelectionChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1326
	    label: 'Cut'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1327
	    itemValue: doCut
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1328
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1329
	    isButton: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1330
	    labelImage: (ResourceRetriever ToolbarIconLibrary cutMenuItemIcon)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1331
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1332
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1333
	    activeHelpKey: editCopy
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1334
	    enabled: hasSelectionChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1335
	    label: 'Copy'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1336
	    itemValue: doCopy
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1337
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1338
	    isButton: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1339
	    labelImage: (ResourceRetriever ToolbarIconLibrary copyMenuItemIcon)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1340
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1341
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1342
	    activeHelpKey: editPaste
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1343
	    enabled: canPasteHolder
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1344
	    label: 'Paste'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1345
	    itemValue: doPaste
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1346
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1347
	    isButton: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1348
	    labelImage: (ResourceRetriever ToolbarIconLibrary pasteMenuItemIcon)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1349
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1350
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1351
	    label: '-'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1352
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1353
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1354
	    activeHelpKey: addMenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1355
	    enabled: hasSingleSelectionChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1356
	    label: 'Add Item'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1357
	    itemValue: doCreateItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1358
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1359
	    isButton: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1360
	    labelImage: (ResourceRetriever #'MenuEditor::Item' iconItem)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1361
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1362
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1363
	    activeHelpKey: addMenuSeparator
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1364
	    enabled: hasSingleSelectionChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1365
	    label: 'Add Separator'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1366
	    itemValue: doCreateSep
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1367
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1368
	    isButton: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1369
	    labelImage: (ResourceRetriever #'MenuEditor::Item' iconSeparator)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1370
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1371
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1372
	    activeHelpKey: addMenuSlice
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1373
	    enabled: hasSingleSelectionChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1374
	    label: 'Menu Slice'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1375
	    itemValue: doCreateMenuSliceItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1376
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1377
	    isButton: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1378
	    labelImage: (ResourceRetriever #'MenuEditor::Item' iconSliceMenu)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1379
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1380
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1381
	    activeHelpKey: addSubMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1382
	    enabled: hasSingleSelectionChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1383
	    label: 'Add Menu'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1384
	    itemValue: doCreateMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1385
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1386
	    isButton: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1387
	    submenuChannel: standardMenus
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1388
	    labelImage: (ResourceRetriever #'MenuEditor::Item' iconMenu)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1389
	    keepLinkedMenu: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1390
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1391
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1392
	    activeHelpKey: addSubMenuLink
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1393
	    enabled: hasSingleSelectionChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1394
	    label: 'Add Linked Menu'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1395
	    itemValue: doCreateLinkedMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1396
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1397
	    isButton: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1398
	    labelImage: (ResourceRetriever #'MenuEditor::Item' iconLinkedMenu)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1399
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1400
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1401
	    activeHelpKey: addDelayedMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1402
	    enabled: canCreateDelayedMenuChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1403
	    label: 'Add Delayed Menu'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1404
	    itemValue: doCreateDelayedMenu:
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1405
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1406
	    isButton: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1407
	    labelImage: (ResourceRetriever #'MenuEditor::Item' iconDelayedMenu)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1408
	    argument: menu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1409
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1410
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1411
	    activeHelpKey: addDelayedSubMenuLink
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1412
	    enabled: canCreateDelayedMenuChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1413
	    label: 'Add Delayed Linked Menu'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1414
	    itemValue: doCreateDelayedMenu:
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1415
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1416
	    isButton: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1417
	    labelImage: (ResourceRetriever #'MenuEditor::Item' iconDelayedLinkedMenu)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1418
	    argument: linkedMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1419
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1420
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1421
	    label: ''
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1422
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1423
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1424
	    activeHelpKey: editMoveUp
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1425
	    enabled: enableMovingUpOrDownHolder
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1426
	    label: 'Move Up'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1427
	    itemValue: doMoveUp
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1428
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1429
	    isButton: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1430
	    startGroup: right
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1431
	    labelImage: (ResourceRetriever Icon upIcon)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1432
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1433
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1434
	    activeHelpKey: editMoveDown
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1435
	    enabled: enableMovingUpOrDownHolder
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1436
	    label: 'Move Down'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1437
	    itemValue: doMoveDown
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1438
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1439
	    isButton: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1440
	    labelImage: (ResourceRetriever Icon downIcon)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1441
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1442
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1443
	    activeHelpKey: editMoveIn
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1444
	    enabled: enableMovingInHolder
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1445
	    label: 'Move Into Next'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1446
	    itemValue: doMoveInNext
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1447
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1448
	    isButton: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1449
	    labelImage: (ResourceRetriever Icon downRightIcon)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1450
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1451
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1452
	    activeHelpKey: editMoveInAbove
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1453
	    enabled: enableMovingInAboveHolder
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1454
	    label: 'Move Into Previous'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1455
	    itemValue: doMoveInPrevious
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1456
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1457
	    isButton: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1458
	    labelImage: (ResourceRetriever Icon upRightIcon)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1459
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1460
	 (MenuItem
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1461
	    activeHelpKey: editMoveOut
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1462
	    enabled: enableMovingOutHolder
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1463
	    label: 'Move Out'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1464
	    itemValue: doMoveOut
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1465
	    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1466
	    isButton: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1467
	    labelImage: (ResourceRetriever Icon leftDownIcon)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1468
	  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1469
	 )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1470
	nil
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1471
	nil
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1472
      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1473
! !
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1474
1725
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  1475
!MenuEditor class methodsFor:'menu specs-standard'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1476
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1477
standardEditMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1478
    "This resource specification was automatically generated
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1479
     by the MenuEditor of ST/X."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1480
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1481
    "Do not manually edit this!! If it is corrupted,
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1482
     the MenuEditor may not be able to read the specification."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1483
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1484
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1485
     MenuEditor new openOnClass:MenuEditor andSelector:#standardEditMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1486
     (Menu new fromLiteralArrayEncoding:(MenuEditor standardEditMenu)) startUp
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1487
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1488
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1489
    <resource: #menu>
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1490
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1491
    ^
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1492
     #(#Menu
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1493
	#(
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1494
	 #(#MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1495
	    #label: 'Cut'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1496
	    #translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1497
	    #value: #cutSelection
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1498
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1499
	 #(#MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1500
	    #label: 'Copy'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1501
	    #translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1502
	    #value: #copySelection
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1503
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1504
	 #(#MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1505
	    #label: 'Paste'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1506
	    #translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1507
	    #value: #paste
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1508
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1509
	 )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1510
	nil
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1511
	nil
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1512
      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1513
!
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1514
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1515
standardFileMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1516
    "This resource specification was automatically generated
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1517
     by the MenuEditor of ST/X."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1518
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1519
    "Do not manually edit this!! If it is corrupted,
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1520
     the MenuEditor may not be able to read the specification."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1521
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1522
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1523
     MenuEditor new openOnClass:MenuEditor andSelector:#standardFileMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1524
     (Menu new fromLiteralArrayEncoding:(MenuEditor standardFileMenu)) startUp
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1525
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1526
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1527
    <resource: #menu>
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1528
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1529
    ^
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1530
     #(#Menu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1531
	#(
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1532
	 #(#MenuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1533
	    #label: 'New'
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1534
	    #translateLabel: true
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1535
	    #value: #menuNew
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1536
	  )
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1537
	 #(#MenuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1538
	    #label: '-'
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1539
	  )
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1540
	 #(#MenuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1541
	    #label: 'Open...'
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1542
	    #translateLabel: true
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1543
	    #value: #menuOpen
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1544
	  )
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1545
	 #(#MenuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1546
	    #label: '-'
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1547
	  )
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1548
	 #(#MenuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1549
	    #label: 'Save'
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1550
	    #translateLabel: true
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1551
	    #value: #menuSave
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1552
	  )
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1553
	 #(#MenuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1554
	    #label: 'Save As...'
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1555
	    #translateLabel: true
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1556
	    #value: #menuSaveAs
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1557
	  )
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1558
	 #(#MenuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1559
	    #label: '-'
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1560
	  )
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1561
	 #(#MenuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1562
	    #label: 'Exit'
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1563
	    #translateLabel: true
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1564
	    #value: #closeRequest
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1565
	  )
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1566
	 )
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1567
	nil
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1568
	nil
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1569
      )
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1570
!
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1571
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1572
standardHelpMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1573
    "This resource specification was automatically generated
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1574
     by the MenuEditor of ST/X."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1575
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1576
    "Do not manually edit this!! If it is corrupted,
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1577
     the MenuEditor may not be able to read the specification."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1578
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1579
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1580
     MenuEditor new openOnClass:MenuEditor andSelector:#standardHelpMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1581
     (Menu new fromLiteralArrayEncoding:(MenuEditor standardHelpMenu)) startUp
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1582
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1583
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1584
    <resource: #menu>
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1585
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1586
    ^
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1587
     #(#Menu
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1588
	#(
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1589
	 #(#MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1590
	    #label: 'Documentation'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1591
	    #translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1592
	    #value: #openDocumentation
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1593
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1594
	 #(#MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1595
	    #label: '-'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1596
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1597
	 #(#MenuItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1598
	    #label: 'About this Application...'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1599
	    #translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1600
	    #value: #openAboutThisApplication
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1601
	  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1602
	 )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1603
	nil
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1604
	nil
525
3c59244da8c8 dialog headline changed + some cleans
tz
parents: 520
diff changeset
  1605
      )
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1606
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1607
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1608
!MenuEditor methodsFor:'accessing'!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1609
2123
7a78e0088013 help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2122
diff changeset
  1610
helpSpec
3016
6aff65697c4f Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 3013
diff changeset
  1611
    |spec t g|
2123
7a78e0088013 help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2122
diff changeset
  1612
7a78e0088013 help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2122
diff changeset
  1613
    spec := super helpSpec.
7a78e0088013 help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2122
diff changeset
  1614
    t := spec at:#detailsStartGroup.
7a78e0088013 help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2122
diff changeset
  1615
    g := (aspects at:#startGroup ifAbsent:nil) value.
7a78e0088013 help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2122
diff changeset
  1616
    g == #conditionalRight ifTrue:[
3016
6aff65697c4f Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 3013
diff changeset
  1617
        t := t , ' #conditionalRight means: "right on non-win32 systems"'
2123
7a78e0088013 help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2122
diff changeset
  1618
    ].
7a78e0088013 help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2122
diff changeset
  1619
    g == #right ifTrue:[
3016
6aff65697c4f Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 3013
diff changeset
  1620
        t := t , ' #right means: "right align from here"'
2123
7a78e0088013 help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2122
diff changeset
  1621
    ].
7a78e0088013 help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2122
diff changeset
  1622
    g == #left ifTrue:[
3016
6aff65697c4f Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 3013
diff changeset
  1623
        t := t , ' #left means: "left align group"'
2123
7a78e0088013 help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2122
diff changeset
  1624
    ].
7a78e0088013 help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2122
diff changeset
  1625
    spec at:#detailsStartGroup put:t.
7a78e0088013 help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2122
diff changeset
  1626
7a78e0088013 help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2122
diff changeset
  1627
    ^ spec.
7a78e0088013 help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2122
diff changeset
  1628
"/ #detailsStartGroup
7a78e0088013 help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2122
diff changeset
  1629
"/ 'Specify start of a right-aligned item group.'
7a78e0088013 help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2122
diff changeset
  1630
7a78e0088013 help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2122
diff changeset
  1631
    "Created: / 16-10-2006 / 13:19:14 / cg"
7a78e0088013 help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2122
diff changeset
  1632
!
7a78e0088013 help text for #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2122
diff changeset
  1633
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1634
helpTool
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1635
    "get the help tool application
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1636
    "
1669
e6ea33c843a0 *** empty log message ***
ca
parents: 1668
diff changeset
  1637
    ^ wizards at:#help ifAbsentPut:[ |tool|
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1638
	tool := UIHelpTool new.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1639
	tool masterApplication:self.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1640
	tool modifiedHolder: self enablingCommitButtonsHolder.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1641
	tool builder window:(ApplicationSubView new client:tool spec:#innerSpec).
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1642
	tool masterApplication:self.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1643
	tool
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1644
    ]
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1645
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1646
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1647
imageTool
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  1648
    "get the image tool application"
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  1649
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1650
    ^ wizards
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1651
	at:#image
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1652
	ifAbsentPut:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1653
	    |tool|
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1654
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1655
	    tool := ImageResourceEditor new createBuilder.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1656
	    tool masterApplication:self.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1657
	    tool modifiedChannel: self enablingCommitButtonsHolder.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1658
	    tool builder window:(ApplicationSubView new client:tool).
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1659
	    tool
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1660
	]
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  1661
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  1662
    "Modified: / 03-08-2011 / 10:03:08 / cg"
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1663
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1664
2569
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  1665
savedSpec
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  1666
    ^ savedSpec
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  1667
!
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  1668
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1669
useHelpTool:aHelpTool
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1670
    "take the help dictionaries from aHelpTool into my helpTool
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1671
    "
1971
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  1672
    self helpTool loadFromHelpTool:aHelpTool.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1673
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1674
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1675
!MenuEditor methodsFor:'actions'!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1676
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1677
accept
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1678
    "accept modifications
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1679
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1680
    self accept:true.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1681
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1682
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1683
accept:ok
2297
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
  1684
    "if ok is true, the modifications are accepted.
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
  1685
     then reload from item
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1686
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1687
    |selectedItem rscRetrHolder helpKeyHolder helpTool imageTool acceptChannel|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1688
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1689
    selectedItem := self selectedItem.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1690
2862
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  1691
    selectedItem notNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1692
	self withoutNotifyDo:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1693
	    rscRetrHolder := aspects at:#resourceRetriever.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1694
	    helpKeyHolder := aspects at:#activeHelpKey.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1695
	    imageTool     := self imageTool.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1696
	    helpTool      := self helpTool.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1697
	    acceptChannel := self acceptChannel.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1698
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1699
	    acceptChannel triggerValue:true.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1700
	    acceptChannel setValue:false.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1701
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1702
	    ok ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1703
		helpTool accept.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1704
		rscRetrHolder value:(imageTool resourceRetriever).
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1705
		helpKeyHolder value:(helpTool helpKey).
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1706
		selectedItem  fromAspects:aspects.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1707
		self setModified.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1708
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1709
		selectedItem isRootItem ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1710
		    "/ update specSelector
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1711
		    specSelector := selectedItem rawLabel.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1712
		].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1713
	    ].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1714
	    selectedItem toAspects:aspects.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1715
	    helpTool     helpKey:(helpKeyHolder value).
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1716
	    imageTool    resourceRetriever:(rscRetrHolder value).
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1717
	]
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  1718
    ].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1719
    self updateChannels.
2075
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  1720
"/    self clearModified.
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  1721
    self clearModifiedFlag.
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  1722
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  1723
    self enablingCommitButtonsHolder value:false.
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  1724
2862
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  1725
    "Modified: / 29-11-2011 / 11:28:02 / cg"
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1726
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1727
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1728
cancel
2070
d8d3bdf3c90e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2057
diff changeset
  1729
    "reload aspects from current selected item; reset modification flag"
d8d3bdf3c90e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2057
diff changeset
  1730
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1731
    self accept:false.
2070
d8d3bdf3c90e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2057
diff changeset
  1732
d8d3bdf3c90e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2057
diff changeset
  1733
    "Modified: / 29-08-2006 / 10:20:46 / cg"
287
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1734
!
1ecabfd468dc HelpTool is seperated like LayoutTool
ca
parents: 275
diff changeset
  1735
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1736
indicatorClickedAt:atLine
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1737
    "indicator clicked at line number; toggle expand of item at line
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1738
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1739
    |item|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1740
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1741
    item := listOfItems at:atLine ifAbsent:nil.
2862
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  1742
    item notNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1743
	item toggleExpand.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1744
	self hasSelection ifFalse:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1745
	    self selectedItem:item
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1746
	]
1610
cb3e093aa6d5 if after collapse no selection exists, use the collapsed element
ca
parents: 1609
diff changeset
  1747
    ].
2862
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  1748
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  1749
    "Modified: / 29-11-2011 / 11:28:20 / cg"
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1750
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1751
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1752
!MenuEditor methodsFor:'aspects'!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1753
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1754
canCreateDelayedMenuChannel
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1755
    "boolean holder, true if the current selected item accepts a delayed menu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1756
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1757
    ^ builder booleanValueAspectFor:#canCreateDelayedMenuChannel
220
ca
parents: 218
diff changeset
  1758
!
ca
parents: 218
diff changeset
  1759
1636
85ab98a850c8 centerItems attribute
Claus Gittinger <cg@exept.de>
parents: 1634
diff changeset
  1760
hasItemValue
85ab98a850c8 centerItems attribute
Claus Gittinger <cg@exept.de>
parents: 1634
diff changeset
  1761
    "boolean holder, true if any item is selected
85ab98a850c8 centerItems attribute
Claus Gittinger <cg@exept.de>
parents: 1634
diff changeset
  1762
    "
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1763
    ^ BlockValue
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1764
	with:[:holder | holder size > 0]
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1765
	argument:(self aspectFor:#itemValue)
2161
1dd6800c1bb3 BlockValue usage cleanup
Claus Gittinger <cg@exept.de>
parents: 2156
diff changeset
  1766
1dd6800c1bb3 BlockValue usage cleanup
Claus Gittinger <cg@exept.de>
parents: 2156
diff changeset
  1767
    "Modified: / 08-03-2007 / 22:59:42 / cg"
1636
85ab98a850c8 centerItems attribute
Claus Gittinger <cg@exept.de>
parents: 1634
diff changeset
  1768
!
85ab98a850c8 centerItems attribute
Claus Gittinger <cg@exept.de>
parents: 1634
diff changeset
  1769
3135
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1770
hasNonLinkedMenuSelectedHolder
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1771
    "boolean holder, true if a single non linked menu item is selected
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1772
    "
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1773
    ^ BlockValue
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1774
        with:[:m | 
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1775
                |items| 
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1776
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1777
                items := self selectionHolder value.
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1778
                (items size == 1) 
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1779
                and:[items first isKindOfNonLinkedMenu
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1780
                and:[items first isRootItem not]]
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1781
             ]
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1782
        argument:(self selectionHolder)
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1783
!
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1784
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1785
hasSelectionChannel
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1786
    "boolean holder, true if any item is selected
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1787
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1788
    ^ builder booleanValueAspectFor:#hasSelectionChannel
220
ca
parents: 218
diff changeset
  1789
!
ca
parents: 218
diff changeset
  1790
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1791
hasSingleSelectionChannel
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1792
    "boolean holder, true if one item is selected
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1793
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1794
    ^ builder booleanValueAspectFor:#hasSingleSelectionChannel
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1795
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1796
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1797
listOfItems
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1798
    "returns the hierarchical list of menuItems
1244
fd44af858001 optimized
ca
parents: 1200
diff changeset
  1799
    "
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1800
    ^ listOfItems
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1801
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1802
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1803
listOfTabs
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1804
    "returns the list of current shown tab-labels retrieved
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1805
     from the current selected item.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1806
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1807
    ^ listOfTabs
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1808
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1809
1617
dd4bd2e32826 prepared for CodeGeneratorTool
ca
parents: 1614
diff changeset
  1810
redefineAspectMethodsChannel
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1811
    "boolean holder, true if aspects should be generated in only implemented
1617
dd4bd2e32826 prepared for CodeGeneratorTool
ca
parents: 1614
diff changeset
  1812
     in superClass by calling #super ...
dd4bd2e32826 prepared for CodeGeneratorTool
ca
parents: 1614
diff changeset
  1813
    "
dd4bd2e32826 prepared for CodeGeneratorTool
ca
parents: 1614
diff changeset
  1814
    ^ builder booleanValueAspectFor:#redefineAspectMethodsChannel
dd4bd2e32826 prepared for CodeGeneratorTool
ca
parents: 1614
diff changeset
  1815
!
dd4bd2e32826 prepared for CodeGeneratorTool
ca
parents: 1614
diff changeset
  1816
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1817
selectionHolder
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1818
    "value holder, which keeps the current selected items
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1819
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1820
    ^ selectionHolder
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1821
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1822
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1823
tabHolder
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1824
    "value holder, which keeps the current selected tab label or nil
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1825
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1826
    ^ tabHolder
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1827
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1828
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1829
wizardHolder
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1830
    "holder, which keeps the current wizard window
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1831
    "
879
9f1a94815f07 list all images from the retriever in a list
tz
parents: 875
diff changeset
  1832
    |holder|
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1833
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1834
    holder := builder bindingAt:#wizardHolder.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1835
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  1836
    holder isNil ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1837
	holder := nil asValue.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1838
	builder aspectAt:#wizardHolder put:holder.
879
9f1a94815f07 list all images from the retriever in a list
tz
parents: 875
diff changeset
  1839
    ].
9f1a94815f07 list all images from the retriever in a list
tz
parents: 875
diff changeset
  1840
    ^ holder
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1841
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1842
728
638ae95885e1 method comments added
tz
parents: 725
diff changeset
  1843
!MenuEditor methodsFor:'building'!
638ae95885e1 method comments added
tz
parents: 725
diff changeset
  1844
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1845
buildFromMenu:aMenu selector:aSelector
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1846
    "rebuild menu from a Menu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1847
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1848
    |root menu|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1849
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1850
    aMenu isCollection ifTrue:[menu := aMenu decodeAsLiteralArray]
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1851
		      ifFalse:[menu := aMenu].
1988
1f898443e253 valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1984
diff changeset
  1852
1f898443e253 valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1984
diff changeset
  1853
    self enablingCommitButtonsHolder value:false.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1854
    root := listOfItems root.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1855
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1856
    self withoutNotifyDo:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1857
	selectionHolder setValue:#().
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1858
	root menu:aMenu labeled:(aSelector ? specSelector).
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1859
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1860
    self selectedItem:root.
734
9fdcc26c458f method comments completed
tz
parents: 728
diff changeset
  1861
    self updateHistory.
9fdcc26c458f method comments completed
tz
parents: 728
diff changeset
  1862
!
9fdcc26c458f method comments completed
tz
parents: 728
diff changeset
  1863
2019
Claus Gittinger <cg@exept.de>
parents: 2017
diff changeset
  1864
buildFromResourceSpec:aResourceSpec
Claus Gittinger <cg@exept.de>
parents: 2017
diff changeset
  1865
    "rebuild the menu from a resource spec"
Claus Gittinger <cg@exept.de>
parents: 2017
diff changeset
  1866
Claus Gittinger <cg@exept.de>
parents: 2017
diff changeset
  1867
    self buildFromMenu:aResourceSpec selector:nil
Claus Gittinger <cg@exept.de>
parents: 2017
diff changeset
  1868
!
Claus Gittinger <cg@exept.de>
parents: 2017
diff changeset
  1869
1971
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  1870
loadFromClass:aClass andSelector:aSelector
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  1871
    "rebuild menu from a class and selector"
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  1872
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  1873
    |cls menu|
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  1874
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  1875
    self assert:(aClass isNil or:[aClass isClass]).
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  1876
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  1877
    menu := nil.
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  1878
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1879
    self isStandAlone ifTrue:[ self helpTool loadFromClass:aClass ].
1971
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  1880
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  1881
    specClass := aClass.
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  1882
    specSelector := aSelector.
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  1883
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  1884
    aSelector notNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1885
	aClass notNil ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1886
	    cls := aClass isBehavior ifTrue:[ aClass ] ifFalse:[ self resolveName:aClass].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1887
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1888
	    (cls respondsTo:aSelector) ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1889
		menu := cls perform: aSelector.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1890
	    ].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1891
	].
1971
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  1892
    ].
2569
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  1893
    self loadFromMenu:menu selector:aSelector.
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  1894
!
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  1895
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  1896
loadFromMenu:menuArg selector:selectorOrNil
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  1897
    "rebuild menu"
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  1898
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  1899
    |menu|
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  1900
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  1901
    menu := menuArg.
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  1902
    menu notNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1903
	(menu isCollection) ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1904
	    menu := Menu decodeFromLiteralArray:menu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1905
	].
2569
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  1906
    ].
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  1907
    self buildFromMenu:menu selector:selectorOrNil.
1971
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  1908
    self clearModified.
2168
8ebed0b2d3c8 use decodeFromLiteralArray:
Claus Gittinger <cg@exept.de>
parents: 2161
diff changeset
  1909
2169
e7b7c5379e4b no explicit class check
Claus Gittinger <cg@exept.de>
parents: 2168
diff changeset
  1910
    "Modified: / 27-03-2007 / 11:16:47 / cg"
728
638ae95885e1 method comments added
tz
parents: 725
diff changeset
  1911
! !
638ae95885e1 method comments added
tz
parents: 725
diff changeset
  1912
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1913
!MenuEditor methodsFor:'change & update'!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  1914
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1915
selectedSuperItems
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1916
    "returns collection of superItems derived from selection
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1917
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1918
    |selection size root|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1919
2862
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  1920
    selectedSuperItems notNil ifTrue:[ ^ selectedSuperItems ].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1921
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1922
    selection := selectionHolder value.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1923
    size      := selection size.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1924
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1925
    size <= 1 ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1926
	selectedSuperItems := selection ? #().
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1927
      ^ selectedSuperItems
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1928
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1929
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1930
    root := listOfItems root.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1931
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1932
    (selection includesIdentical:root) ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1933
	selectedSuperItems := Array with:root.
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1934
      ^ selectedSuperItems
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1935
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1936
    selectedSuperItems := OrderedCollection new.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1937
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1938
    selection do:[:anItem|
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1939
	anItem parentsDetect:[:el| selection includesIdentical:el ]
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1940
		      ifNone:[ selectedSuperItems add:anItem ].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1941
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1942
    ^ selectedSuperItems
2862
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  1943
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  1944
    "Modified: / 29-11-2011 / 11:28:23 / cg"
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1945
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1946
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1947
selectionChanged
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1948
    "called if the selection has changed
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1949
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1950
    |newTabList selection|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1951
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1952
    selection := selectionHolder value.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1953
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1954
    selection size == 1 ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1955
	selectedSuperItems := selection.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1956
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1957
	newTabList := selection first slices collect:[:el| el first ].
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1958
	newTabList = listOfTabs ifFalse:[
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1959
	    listOfTabs contents:newTabList.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1960
	].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1961
    ] ifFalse:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1962
	"must compute selected super items on request
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1963
	"
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  1964
	selectedSuperItems := nil.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1965
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1966
    self cancel.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1967
    self tabChanged.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1968
    self updateChannels.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1969
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1970
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1971
tabChanged
2593
719725e66005 comment/format in: #imageTool
Claus Gittinger <cg@exept.de>
parents: 2589
diff changeset
  1972
    "called if the tab changed"
719725e66005 comment/format in: #imageTool
Claus Gittinger <cg@exept.de>
parents: 2589
diff changeset
  1973
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1974
    |tab selector item canvas wizardHolder|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1975
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1976
    wizardHolder := self wizardHolder.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1977
    item := self selectedItem.
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1978
    item isNil ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1979
	wizardHolder value:nil.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1980
	^ self
2593
719725e66005 comment/format in: #imageTool
Claus Gittinger <cg@exept.de>
parents: 2589
diff changeset
  1981
    ].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1982
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1983
    tab := tabHolder value.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1984
1676
3f488e7cbbae use configurable tabLabelInset for the NoteBook
ca
parents: 1669
diff changeset
  1985
    tab notNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1986
	tab := item slices detect:[:el| el first = tab ] ifNone:nil.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1987
    ].
1676
3f488e7cbbae use configurable tabLabelInset for the NoteBook
ca
parents: 1669
diff changeset
  1988
    tab isNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1989
	tabHolder value:( listOfTabs at:1 ifAbsent:nil ).
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1990
	^ self.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1991
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1992
    selector := tab last.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  1993
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1994
    selector == #help  ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1995
	wizardHolder value:(self helpTool  window).
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1996
	^ self
2593
719725e66005 comment/format in: #imageTool
Claus Gittinger <cg@exept.de>
parents: 2589
diff changeset
  1997
    ].
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1998
    selector == #image ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  1999
	wizardHolder value:(self imageTool window).
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2000
	^ self
2593
719725e66005 comment/format in: #imageTool
Claus Gittinger <cg@exept.de>
parents: 2589
diff changeset
  2001
    ].
719725e66005 comment/format in: #imageTool
Claus Gittinger <cg@exept.de>
parents: 2589
diff changeset
  2002
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2003
    canvas := wizards
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2004
		at:(item class name, selector) asSymbol
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2005
		ifAbsentPut:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2006
		    SimpleView new
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2007
			client:self
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2008
			spec:(item class perform:selector)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2009
			builder:(self builder)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2010
		].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2011
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2012
    wizardHolder value:canvas.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2013
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2014
970
23d20044894f show all icons;
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
  2015
update:something with:aParameter from:changedObject
1711
548d690e780f auto-accept on selection change
Claus Gittinger <cg@exept.de>
parents: 1702
diff changeset
  2016
    |lbl|
548d690e780f auto-accept on selection change
Claus Gittinger <cg@exept.de>
parents: 1702
diff changeset
  2017
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2018
    notifyDisabledCounter ~~ 0 ifTrue:[ ^ self ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2019
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2020
    changedObject == selectionHolder ifTrue:[ ^ self selectionChanged ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2021
    changedObject == tabHolder       ifTrue:[ ^ self tabChanged ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2022
1711
548d690e780f auto-accept on selection change
Claus Gittinger <cg@exept.de>
parents: 1702
diff changeset
  2023
    changedObject == self autoAcceptOnSelectionChange ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2024
	lbl := changedObject value ifTrue:['Apply'] ifFalse:['OK'].
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2025
	(builder componentAt:'okButton') label:(resources string:lbl).
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2026
	^ self
1711
548d690e780f auto-accept on selection change
Claus Gittinger <cg@exept.de>
parents: 1702
diff changeset
  2027
    ].
548d690e780f auto-accept on selection change
Claus Gittinger <cg@exept.de>
parents: 1702
diff changeset
  2028
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2029
    super update:something with:aParameter from:changedObject
970
23d20044894f show all icons;
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
  2030
!
23d20044894f show all icons;
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
  2031
748
03bc27132916 update other instances if clipboarding
tz
parents: 738
diff changeset
  2032
updateChannels
2869
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2033
    "update all channels"
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2034
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2035
    |selection sizeOfSel selectedItem hasSelection|
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2036
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2037
    super updateChannels.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2038
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2039
    selection := selectionHolder value.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2040
    sizeOfSel := selection size.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2041
2869
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2042
    hasSelection := sizeOfSel ~~ 0.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2043
    sizeOfSel == 1 ifTrue:[selectedItem := selection at:1]
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2044
		  ifFalse:[selectedItem := nil].
2869
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2045
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2046
    self hasSelectionChannel       value:hasSelection.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2047
    self hasSingleSelectionChannel value:(selectedItem notNil).
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2048
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2049
    selectedItem isNil ifTrue:[
2869
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2050
"/        self enableMovingUpOrDownHolder  value:false.
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2051
	self enableMovingInHolder        value:false.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2052
	self enableMovingOutHolder       value:false.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2053
	self enableMovingInAboveHolder   value:false.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2054
	self canCreateDelayedMenuChannel value:false.
1244
fd44af858001 optimized
ca
parents: 1200
diff changeset
  2055
    ] ifFalse:[
2869
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2056
"/        self enableMovingUpOrDownHolder  value:(selectedItem canMoveUpOrDown).
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2057
	self enableMovingInHolder        value:(selectedItem canMoveInNext).
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2058
	self enableMovingOutHolder       value:(selectedItem canMoveOut).
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2059
	self enableMovingInAboveHolder   value:(selectedItem canMoveInAbove).
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2060
	self canCreateDelayedMenuChannel value:(selectedItem canAddDelayedMenu).
902
f510032000ad unnecessary info prints
tz
parents: 888
diff changeset
  2061
    ].
2869
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2062
    self enableMovingUpOrDownHolder value:(selection conform:[:i | i canMoveUpOrDown]).
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2063
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2064
    "Modified (comment): / 18-01-2012 / 11:24:07 / cg"
220
ca
parents: 218
diff changeset
  2065
! !
ca
parents: 218
diff changeset
  2066
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2067
!MenuEditor methodsFor:'drag & drop'!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2068
2118
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2069
canDrop:aDropContext
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2070
    "return true, if the DropContext can be dropped into the list of items.
1953
3b5022bccca4 drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 1949
diff changeset
  2071
     The dropable objects are already validated by: #dropEnter:"
3b5022bccca4 drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 1949
diff changeset
  2072
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2073
    ^ (dropOverLine notNil and:[dropOverLine ~~ 0])
2118
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2074
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2075
    "Modified: / 13-10-2006 / 16:03:47 / cg"
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2076
!
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2077
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2078
changeDropLineTo:aLineOrNil in:aContext
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2079
    "the over dropLine changed; redraw drop indication stuff
1244
fd44af858001 optimized
ca
parents: 1200
diff changeset
  2080
    "
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2081
    |x0 x1 y0|
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2082
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2083
    aLineOrNil == dropOverLine ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2084
	^ self. "/ nothing changed
1244
fd44af858001 optimized
ca
parents: 1200
diff changeset
  2085
    ].
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2086
    x0 := listOfItemsView margin + 2.
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2087
    x1 := listOfItemsView width - x0.
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2088
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2089
    "/ inform the DragAndDrop handler that the draw contents will change
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2090
    aContext contentsWillChange.
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2091
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2092
    (dropOverLine notNil and:[dropOverLine ~~ 0]) ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2093
	"/ restore old draw
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2094
	y0 := listOfItemsView yVisibleOfLine:(dropOverLine + 1).
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2095
	y0 := y0 - 3.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2096
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2097
	listOfItemsView invalidate:(Rectangle left:x0 top:y0 width:(x1-x0+1) height:2)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2098
			 repairNow:true.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2099
    ].
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2100
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2101
    dropOverLine := aLineOrNil.
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2102
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2103
    (dropOverLine notNil and:[dropOverLine ~~ 0]) ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2104
	"/ highlight new drop target
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2105
	y0 := listOfItemsView yVisibleOfLine:(dropOverLine + 1).
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2106
	y0 := y0 - 3.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2107
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2108
	listOfItemsView paint:(Color white).
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2109
	listOfItemsView displayLineFromX:x0 y:y0 toX:x1 y:y0.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2110
	y0 := y0 + 1.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2111
	listOfItemsView paint:(Color black).
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2112
	listOfItemsView displayLineFromX:x0 y:y0 toX:x1 y:y0.
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2113
    ].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2114
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2115
2118
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2116
doDrop:aDropContext
1702
ace326bd303f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1691
diff changeset
  2117
    "drop the dropContext into the hierachical list of items
1244
fd44af858001 optimized
ca
parents: 1200
diff changeset
  2118
    "
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2119
    |done item|
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2120
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  2121
    dropOverLine isNil ifTrue:[^ false ].      "/ context not valid to me ...
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2122
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2123
    item := listOfItems at:dropOverLine ifAbsent:nil.
2118
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2124
    self dropLeave:aDropContext.
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  2125
    item isNil ifTrue:[^ false].
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2126
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2127
    selectionHolder setValue:(Array with:item).
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2128
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2129
    done := false.
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2130
1702
ace326bd303f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1691
diff changeset
  2131
    self addAndSelectValueOf:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2132
	done := true.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2133
	aDropContext dropObjects collect:[:el| Item menuItem:(el theObject) ]
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2134
    ].
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2135
    ^ done
2118
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2136
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2137
    "Modified: / 13-10-2006 / 16:03:54 / cg"
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2138
!
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2139
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2140
dropEnter:aDropContext
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2141
    "a drop operation enters my widget; validate dropable objects.
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2142
     If the objects are not dropable, dropOverLine is set to nil,
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2143
     otherwise to 0 (can drop the contents but not).
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2144
    "
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2145
    |objects|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2146
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2147
    dropOverLine := nil.
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2148
1988
1f898443e253 valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1984
diff changeset
  2149
    self enablingCommitButtonsHolder value ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2150
	"/ current editing spec is modified (couldn't accept operation)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2151
	^ self
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2152
    ].
2118
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2153
    objects := aDropContext dropObjects.
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2154
    objects isEmpty ifTrue:[ ^ self ].  "/ nothing to drop ???
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2155
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2156
    "/ test whether all objects are dropable (kind of MenuItem)
2113
8e2be2823f9e code cleanup: use #contains/#conform instead of explicit loop
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  2157
    (objects conform:[:el | (el theObject askFor:#isMenuItem)]) ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2158
	"/ ok, the contents is dropable
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2159
	dropOverLine := 0.
2113
8e2be2823f9e code cleanup: use #contains/#conform instead of explicit loop
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  2160
    ]
8e2be2823f9e code cleanup: use #contains/#conform instead of explicit loop
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  2161
2118
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2162
    "Modified: / 13-10-2006 / 16:04:14 / cg"
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2163
!
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2164
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2165
dropLeave:aDropContext
2729
b21105a0a38c comment/format in: #dropLeave:
Claus Gittinger <cg@exept.de>
parents: 2664
diff changeset
  2166
    "restore drop indications drawn..."
b21105a0a38c comment/format in: #dropLeave:
Claus Gittinger <cg@exept.de>
parents: 2664
diff changeset
  2167
2118
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2168
    self changeDropLineTo:nil in:aDropContext.
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2169
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2170
    "Modified: / 13-10-2006 / 16:03:59 / cg"
879
9f1a94815f07 list all images from the retriever in a list
tz
parents: 875
diff changeset
  2171
!
9f1a94815f07 list all images from the retriever in a list
tz
parents: 875
diff changeset
  2172
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2173
dropObjects
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2174
    "returns list of DropObjects
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2175
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2176
    |obj items|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2177
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2178
    items := self selectedSuperItems.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2179
    items isEmpty ifTrue:[ ^ nil ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2180
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2181
  ^ items collect:[:el|
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2182
	obj := DropObject new:(el menuItem).
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2183
	obj displayObject:(el rawLabel).
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2184
	obj
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2185
    ].
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2186
!
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2187
2118
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2188
dropOver:aDropContext
1685
85559494e8aa comment
Claus Gittinger <cg@exept.de>
parents: 1679
diff changeset
  2189
    "called during drag & drop while moving over the widget."
85559494e8aa comment
Claus Gittinger <cg@exept.de>
parents: 1679
diff changeset
  2190
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2191
    |lnNr item|
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2192
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  2193
    dropOverLine isNil ifTrue:[^ self ].       "/ context not valid to me ...
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2194
2118
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2195
    lnNr := listOfItemsView yVisibleToLineNr:(aDropContext targetPoint y).
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2196
    item := nil.
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2197
2862
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  2198
    lnNr notNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2199
	item := listOfItems at:lnNr ifAbsent:nil.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2200
	item notNil ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2201
	    (item isAction and:[item hasDelayedMenu]) ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2202
		item := nil
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2203
	    ]
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2204
	]
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2205
    ].
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  2206
    item isNil ifTrue:[ lnNr := 0 ].   "/ not dropable for item
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2207
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2208
    "/ redraw drop indication
2118
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2209
    self changeDropLineTo:lnNr in:aDropContext.
caee73c7b7dd drag and drop cleanup
Claus Gittinger <cg@exept.de>
parents: 2113
diff changeset
  2210
2862
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  2211
    "Modified: / 29-11-2011 / 11:28:17 / cg"
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2212
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2213
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2214
!MenuEditor methodsFor:'event processing'!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2215
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2216
processEvent:anEvent
1895
b7d6683ebaca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1891
diff changeset
  2217
    "filter keyboard edit-events typed into the listOfItemsView.
b7d6683ebaca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1891
diff changeset
  2218
     Return true, if I have eaten the event"
b7d6683ebaca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1891
diff changeset
  2219
2946
1994064bc8e2 changed: #processEvent:
Claus Gittinger <cg@exept.de>
parents: 2936
diff changeset
  2220
    <resource: #keyboard (#Delete #BackSpace #Cut #Copy #Paste #CtrlCursorUp #CtrlCursorDown
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2221
			  #CtrlCursorLeft #CtrlCursorRight )>
2946
1994064bc8e2 changed: #processEvent:
Claus Gittinger <cg@exept.de>
parents: 2936
diff changeset
  2222
2275
b0f6890e73cf code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
  2223
    |evView rawKey key|
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2224
2187
39825ff916b8 menu UI
Claus Gittinger <cg@exept.de>
parents: 2186
diff changeset
  2225
    anEvent isKeyPressEvent ifFalse:[^ false].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2226
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2227
    evView := anEvent targetView.
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  2228
    evView isNil ifTrue:[ ^ false ].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2229
2263
e3784764ba54 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
  2230
    "/ only handle keyboard events for the left item list
e3784764ba54 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
  2231
    "/ (otherwise, copy-paste would not work in the editFields on the right)
2275
b0f6890e73cf code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
  2232
    (evView isSameOrComponentOf:listOfItemsView) ifFalse:[^ false].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2233
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2234
    key    := anEvent key.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2235
    rawKey := anEvent rawKey.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2236
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2237
    (    key == #Delete
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2238
     or:[key == #BackSpace
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2239
     or:[key == #Cut]]
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2240
    ) ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2241
	self doCut.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2242
	^ true.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2243
    ].
1256
38ff328f119b care for hidden editFields with acceptChannel
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  2244
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2245
    key == #Copy  ifTrue:[ self doCopy.  ^ true ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2246
    key == #Paste ifTrue:[ self doPaste. ^ true ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2247
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2248
    (rawKey == #CtrlCursorUp) ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2249
	self doMoveUp.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2250
	^ true.
1958
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  2251
    ].
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2252
    (rawKey == #CtrlCursorDown) ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2253
	self doMoveDown.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2254
	^ true.
1958
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  2255
    ].
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2256
    (rawKey == #CtrlCursorLeft) ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2257
	self doMoveOut.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2258
	^ true.
1958
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  2259
    ].
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2260
    (rawKey == #CtrlCursorRight) ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2261
	self doMoveInNext.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2262
	^ true.
1958
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  2263
    ].
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  2264
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  2265
    ^ false.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2266
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2267
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2268
!MenuEditor methodsFor:'initialization & release'!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2269
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2270
closeRequest
2036
f38451813c50 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2019
diff changeset
  2271
    "asks for permission before closing"
f38451813c50 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2019
diff changeset
  2272
2075
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  2273
    self askForModification ifFalse:[^self].
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  2274
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  2275
"/    self enablingCommitButtonsHolder value ifTrue:[
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  2276
"/        self setModified.
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  2277
"/        self askForListModification.
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  2278
"/        modified ifTrue:[^ self].
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  2279
"/        self clearModified.
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  2280
"/    ].
2036
f38451813c50 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2019
diff changeset
  2281
    super closeRequest
2075
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  2282
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  2283
    "Modified: / 05-09-2006 / 18:44:15 / cg"
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2284
!
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2285
1992
f026ffeb44db postBuildCode cleanup
Claus Gittinger <cg@exept.de>
parents: 1988
diff changeset
  2286
commonPostBuild
f026ffeb44db postBuildCode cleanup
Claus Gittinger <cg@exept.de>
parents: 1988
diff changeset
  2287
    self autoAcceptOnSelectionChange addDependent:self.
f026ffeb44db postBuildCode cleanup
Claus Gittinger <cg@exept.de>
parents: 1988
diff changeset
  2288
    self autoAcceptOnSelectionChange value ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2289
	(builder componentAt:'okButton') label:(resources string:'Apply')
1992
f026ffeb44db postBuildCode cleanup
Claus Gittinger <cg@exept.de>
parents: 1988
diff changeset
  2290
    ].
f026ffeb44db postBuildCode cleanup
Claus Gittinger <cg@exept.de>
parents: 1988
diff changeset
  2291
1997
646225e1e5bf *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1992
diff changeset
  2292
    "/ using masters infoHolder ?
646225e1e5bf *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1992
diff changeset
  2293
    (builder aspectAt:#useAlienInfoLabelHolder) == true ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2294
	(builder componentAt:#mainPanel) layout bottomOffset:0.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2295
	(builder componentAt:#infoBarSubSpec) beInvisible
1997
646225e1e5bf *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1992
diff changeset
  2296
    ]
1992
f026ffeb44db postBuildCode cleanup
Claus Gittinger <cg@exept.de>
parents: 1988
diff changeset
  2297
!
f026ffeb44db postBuildCode cleanup
Claus Gittinger <cg@exept.de>
parents: 1988
diff changeset
  2298
2581
d78dec3e0866 fixed usage as subcomponent in browser
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2299
commonPostOpen
d78dec3e0866 fixed usage as subcomponent in browser
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2300
    "reset keyboardProcessor for menuBar"
d78dec3e0866 fixed usage as subcomponent in browser
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2301
d78dec3e0866 fixed usage as subcomponent in browser
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2302
    super commonPostOpen.
d78dec3e0866 fixed usage as subcomponent in browser
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2303
    builder keyboardProcessor menuBar:nil.
d78dec3e0866 fixed usage as subcomponent in browser
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2304
    self windowGroup addPreEventHook:self.
d78dec3e0866 fixed usage as subcomponent in browser
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2305
!
d78dec3e0866 fixed usage as subcomponent in browser
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2306
738
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
  2307
initialize
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2308
    "setup aspects, ...
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2309
    "
738
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
  2310
    super initialize.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2311
    notifyDisabledCounter := 0.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2312
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2313
    Item withAllSubclasses do:[:aClass|
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2314
	aClass addBindingsTo:aspects for:self.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2315
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2316
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2317
    selectionHolder    := #() asValue.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2318
    selectionHolder addDependent:self.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2319
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2320
    listOfItems := HierarchicalList new.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2321
    listOfItems application:self.
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  2322
    listOfItems root:(RootItem new).
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2323
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2324
    tabHolder := nil asValue.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2325
    tabHolder addDependent:self.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2326
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2327
    listOfTabs := List new.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2328
    wizards    := IdentityDictionary new.
738
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
  2329
!
ebc4a399f4dc user can define own font styles
tz
parents: 734
diff changeset
  2330
2569
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2331
loadFromResourceSpec:aResourceSpec
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2332
    self loadFromMenu:aResourceSpec selector:nil
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2333
!
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2334
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2335
openModalOnMenu:aMenuOrNil
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2336
    "build a tree from aMenu and open it modal"
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2337
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2338
    self openModalOnResourceSpec:aMenuOrNil
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2339
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2340
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2341
postBuildListOfItemsView:aSrollableView
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2342
    listOfItemsView := aSrollableView scrolledView.
1250
644ed357b524 reset menuBar in keyProcessor
ca
parents: 1249
diff changeset
  2343
!
644ed357b524 reset menuBar in keyProcessor
ca
parents: 1249
diff changeset
  2344
1676
3f488e7cbbae use configurable tabLabelInset for the NoteBook
ca
parents: 1669
diff changeset
  2345
postBuildNoteBook:aNoteBook
3f488e7cbbae use configurable tabLabelInset for the NoteBook
ca
parents: 1669
diff changeset
  2346
    aNoteBook tabLabelInset:16@4.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2347
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2348
2275
b0f6890e73cf code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
  2349
!MenuEditor methodsFor:'menus-dynamic'!
b0f6890e73cf code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
  2350
b0f6890e73cf code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
  2351
submenuTest
b0f6890e73cf code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
  2352
    "returns a menu on the current editing menu
b0f6890e73cf code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
  2353
    "
b0f6890e73cf code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
  2354
    |menu indication choice submenu retriever|
b0f6890e73cf code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
  2355
b0f6890e73cf code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
  2356
    menu := listOfItems root submenu.
b0f6890e73cf code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
  2357
    menu isNil ifTrue:[^ nil ].
b0f6890e73cf code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
  2358
b0f6890e73cf code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
  2359
    menu allItemsDo:[:anItem|
3138
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2360
        anItem ignoreShortcutKeys:true.
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2361
        anItem isVisible:true.
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2362
        anItem enabled:true.
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2363
        anItem translateLabel:false.
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2364
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2365
        anItem itemValue notNil ifTrue:[
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2366
            anItem itemValue:[ Transcript showCR:(anItem label) ].
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2367
        ].
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2368
        anItem indication notNil ifTrue:[
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2369
            indication isNil ifTrue:[ indication := true asValue ].
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2370
            anItem indication:indication
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2371
        ].
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2372
        anItem choice notNil ifTrue:[
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2373
            choice isNil ifTrue:[ choice := anItem choiceValue asValue ].
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2374
            anItem choice:choice
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2375
        ].
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2376
        anItem isMenuSlice ifTrue:[
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2377
            anItem submenuChannel:nil.
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2378
            anItem label:'... Slice Menu ...'.
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2379
        ].
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2380
        anItem submenuChannel notNil ifTrue:[
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2381
            anItem submenuChannel:nil.
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2382
            anItem submenu isNil ifTrue:[
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2383
                submenu isNil ifTrue:[
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2384
                    submenu := Menu new.
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2385
                    submenu addItem:(MenuItem label:'Linked Menu...').
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2386
                ].
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2387
                anItem submenu:submenu.
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2388
            ].
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2389
        ].
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2390
        retriever := anItem resourceRetriever.
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2391
        retriever notNil ifTrue:[
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2392
            retriever labelText notNil ifTrue:[ retriever labelText:(anItem label) ]
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  2393
        ].
2275
b0f6890e73cf code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
  2394
    ].
b0f6890e73cf code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
  2395
    menu findGuiResourcesIn:(self resolveName:specClass).
b0f6890e73cf code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
  2396
    ^ menu
b0f6890e73cf code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
  2397
! !
b0f6890e73cf code generation in CodegeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
  2398
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2399
!MenuEditor methodsFor:'private'!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2400
1702
ace326bd303f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1691
diff changeset
  2401
addAndSelectValueOf:aBlockOrItem
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2402
    "add an item(s) derived from the block; test if add operation
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2403
     is enabled. On success the new item(s) are returned otherwise nil.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2404
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2405
    |intoItem index newItem|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2406
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2407
    intoItem := self selectedItem.
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  2408
    intoItem isNil ifTrue:[ ^ nil].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2409
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2410
    self askForItemModification ifFalse:[ ^ nil ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2411
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2412
    index := 1.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2413
1618
9c9b649ce251 support drag & drop inside my widget (highlight the drop target)
ca
parents: 1617
diff changeset
  2414
    (intoItem canAddChildren and:[intoItem isExpanded]) ifFalse:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2415
	intoItem parent notNil ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2416
	    [ intoItem parent canAddChildren ] whileFalse:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2417
		intoItem := intoItem parent.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2418
	    ].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2419
	    index := intoItem parent identityIndexOf:intoItem.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2420
	    index := index + 1.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2421
	    intoItem := intoItem parent.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2422
	].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2423
    ].
1702
ace326bd303f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1691
diff changeset
  2424
    newItem := aBlockOrItem value.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2425
2862
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  2426
    newItem notNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2427
	selectionHolder setValue:nil.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2428
	intoItem expand.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2429
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2430
	newItem isCollection ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2431
	    intoItem addAll:newItem beforeIndex:index.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2432
	    selectionHolder value:newItem.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2433
	] ifFalse:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2434
	    intoItem add:newItem beforeIndex:index.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2435
	    selectionHolder value:(Array with:newItem).
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2436
	].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2437
	self setModified.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2438
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2439
    ^ newItem
2862
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  2440
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  2441
    "Modified: / 29-11-2011 / 11:28:06 / cg"
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2442
!
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2443
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2444
clearModified
1971
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  2445
    "clear the modifiedChannel and the commitPanel"
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  2446
2008
a2906aabdbb1 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 2003
diff changeset
  2447
    super clearModified.
1988
1f898443e253 valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1984
diff changeset
  2448
    self enablingCommitButtonsHolder value:false.
1189
0e7e286f864c code cleanup; care for non-string argument
Claus Gittinger <cg@exept.de>
parents: 1155
diff changeset
  2449
    self clearModifiedFlag.
407
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2450
!
578a7aaed19e totally revised version
tz
parents: 406
diff changeset
  2451
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2452
generateMenuSpec
2569
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2453
    "generate and returns the current menu spec or nil"
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2454
3135
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2455
    ^ self generateMenuSpecFor:listOfItems root
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2456
!
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2457
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2458
generateMenuSpecFor:aMenuItem
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2459
    "generate and returns a menu spec or nil"
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2460
2569
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2461
    |menu|
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2462
3135
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2463
    menu := aMenuItem submenu.
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  2464
    menu isNil ifTrue:[^ nil].
2569
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2465
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2466
    ^ menu literalArrayEncoding.
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2467
!
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2468
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2469
generateMenuSpecString
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2470
    "generate and returns the current menu spec as string or nil"
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2471
3135
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2472
    ^ self generateMenuSpecStringFor:listOfItems root 
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2473
!
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2474
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2475
generateMenuSpecStringFor:aMenuItem
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2476
    "generate and returns the current menu spec as string or nil"
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2477
2569
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2478
    |menu specStream|
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2479
3135
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2480
    menu := self generateMenuSpecFor:aMenuItem.
2569
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2481
    menu isNil ifTrue:[^ nil].
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2482
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2483
    specStream := WriteStream on:String new.
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2484
    UISpecification prettyPrintSpecArray:menu on:specStream indent:5.
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2485
    ^ specStream contents.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2486
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2487
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2488
withoutNotifyDo:aBlock
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2489
    "evaluate the block; all change notifications are
1722
517efee14b0d Stream streamErrorSignal -> StreamError
Stefan Vogel <sv@exept.de>
parents: 1715
diff changeset
  2490
     discard during the block is evaluated"
517efee14b0d Stream streamErrorSignal -> StreamError
Stefan Vogel <sv@exept.de>
parents: 1715
diff changeset
  2491
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2492
    |blockResult|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2493
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2494
    [
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2495
	notifyDisabledCounter := notifyDisabledCounter + 1.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2496
	blockResult := aBlock value.
1722
517efee14b0d Stream streamErrorSignal -> StreamError
Stefan Vogel <sv@exept.de>
parents: 1715
diff changeset
  2497
    ] ensure:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2498
	notifyDisabledCounter := notifyDisabledCounter - 1
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2499
    ].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2500
    ^ blockResult
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2501
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2502
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2503
!MenuEditor methodsFor:'queries'!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2504
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2505
hasValidSpecClass
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2506
    "returns true if a valid specClass exists
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2507
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2508
    |cls|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2509
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  2510
    specClass isNil ifTrue:[^ false].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2511
    cls := self resolveName:specClass.
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  2512
    ^ cls notNil
2569
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2513
!
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2514
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2515
isEditingSpecOnly
2581
d78dec3e0866 fixed usage as subcomponent in browser
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2516
    ^ masterApplication notNil
d78dec3e0866 fixed usage as subcomponent in browser
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2517
    and:[ masterApplication perform:#isEditingSpecOnly ifNotUnderstood:false]
2569
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2518
!
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2519
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2520
isNotEditingSpecOnly
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2521
    ^ self isEditingSpecOnly not
2581
d78dec3e0866 fixed usage as subcomponent in browser
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2522
!
d78dec3e0866 fixed usage as subcomponent in browser
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2523
d78dec3e0866 fixed usage as subcomponent in browser
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2524
isNotEditingSpecOnlyAndNotEmbeddedInBrowser
d78dec3e0866 fixed usage as subcomponent in browser
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2525
    ^ self isNotEditingSpecOnly and:[ self isEmbeddedInBrowser not ]
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2526
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2527
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2528
!MenuEditor methodsFor:'selection'!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2529
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2530
canSelect:anIndex
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2531
    "called whenever the selection changed; test whether
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2532
     current item is not modified ....
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2533
    "
1711
548d690e780f auto-accept on selection change
Claus Gittinger <cg@exept.de>
parents: 1702
diff changeset
  2534
    |oldSelectedItem newSelectedItem anythingChanged|
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2535
1988
1f898443e253 valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1984
diff changeset
  2536
    self enablingCommitButtonsHolder value ifFalse:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2537
	^ true
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2538
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2539
    oldSelectedItem := self selectedItem.
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  2540
    oldSelectedItem isNil ifTrue:[^ true].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2541
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2542
    newSelectedItem := listOfItems at:anIndex ifAbsent:nil.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2543
    oldSelectedItem == newSelectedItem ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2544
	^ true
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2545
    ].
1711
548d690e780f auto-accept on selection change
Claus Gittinger <cg@exept.de>
parents: 1702
diff changeset
  2546
1988
1f898443e253 valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1984
diff changeset
  2547
    anythingChanged := self enablingCommitButtonsHolder value.
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2548
    anythingChanged ifTrue:[
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2549
	self autoAcceptOnSelectionChange value ifTrue:[
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2550
	    self accept.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2551
	    ^ true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2552
	].
1711
548d690e780f auto-accept on selection change
Claus Gittinger <cg@exept.de>
parents: 1702
diff changeset
  2553
    ].
548d690e780f auto-accept on selection change
Claus Gittinger <cg@exept.de>
parents: 1702
diff changeset
  2554
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2555
    ^ self askForItemModification
879
9f1a94815f07 list all images from the retriever in a list
tz
parents: 875
diff changeset
  2556
!
9f1a94815f07 list all images from the retriever in a list
tz
parents: 875
diff changeset
  2557
1610
cb3e093aa6d5 if after collapse no selection exists, use the collapsed element
ca
parents: 1609
diff changeset
  2558
hasSelection
cb3e093aa6d5 if after collapse no selection exists, use the collapsed element
ca
parents: 1609
diff changeset
  2559
    "returns true if a selection exists
cb3e093aa6d5 if after collapse no selection exists, use the collapsed element
ca
parents: 1609
diff changeset
  2560
    "
cb3e093aa6d5 if after collapse no selection exists, use the collapsed element
ca
parents: 1609
diff changeset
  2561
    ^ selectionHolder value size ~~ 0
cb3e093aa6d5 if after collapse no selection exists, use the collapsed element
ca
parents: 1609
diff changeset
  2562
!
cb3e093aa6d5 if after collapse no selection exists, use the collapsed element
ca
parents: 1609
diff changeset
  2563
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2564
selectedItem
2869
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2565
    "returns the selected item or nil (none or multiple selected)"
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2566
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2567
    |selection|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2568
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2569
    selection := selectionHolder value.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2570
    selection size == 1 ifTrue:[ ^ selection first ].
2869
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2571
    ^ nil
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2572
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2573
    "Modified: / 18-01-2012 / 11:33:42 / cg"
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2574
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2575
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2576
selectedItem:anItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2577
    "change selection to an item
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2578
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2579
    |selection|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2580
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2581
    anItem notNil ifTrue:[ selection := Array with:anItem ]
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2582
		 ifFalse:[ selection := #() ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2583
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2584
    selectionHolder value:selection.
2869
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2585
!
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2586
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2587
selectedItems
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2588
    "returns the selected items or an empty collection"
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2589
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2590
    ^ selectionHolder value.
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2591
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2592
    "Created: / 18-01-2012 / 11:32:20 / cg"
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2593
!
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2594
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2595
selectedItems:aCollectionOfItems
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2596
    "set the selected items"
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2597
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2598
    selectionHolder value:aCollectionOfItems.
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2599
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  2600
    "Created: / 18-01-2012 / 11:32:37 / cg"
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2601
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2602
1715
9eebdb3802aa method category rename
Claus Gittinger <cg@exept.de>
parents: 1711
diff changeset
  2603
!MenuEditor methodsFor:'user actions-aspects'!
1614
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2604
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2605
collectActionSelectors
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2606
    |selectors|
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2607
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2608
    selectors := IdentitySet new.
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2609
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2610
    listOfItems root recursiveDo:[:el|
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2611
	el actionSelectors do:[:s| selectors add:s ].
1614
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2612
    ].
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2613
    ^ selectors asOrderedCollection
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2614
!
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2615
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2616
collectAspectSelectors
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2617
    |selectors|
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2618
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2619
    selectors := IdentitySet new.
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2620
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2621
    listOfItems root recursiveDo:[:el|
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2622
	selectors addAll:(el aspectSelectors).
1614
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2623
    ].
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2624
    ^ selectors asOrderedCollection
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2625
!
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2626
2297
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
  2627
doBrowseActionMethod
3029
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  2628
    "open a browser on the action callback method (create if not yet existing)"
2810
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2629
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2630
    self doBrowseApplicationMethodFor:#itemValue
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2631
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2632
    "Modified: / 21-10-2010 / 14:09:33 / cg"
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2633
!
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2634
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2635
doBrowseApplicationMethodFor:aspect
3028
272d45da727d class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3026
diff changeset
  2636
    |selector cls implClass browsedClass category|
2297
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
  2637
2810
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2638
    specClass isNil ifTrue:[
3026
0bf0d52eb92e class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3016
diff changeset
  2639
        self warn:(resources string:'Please define the application class first.').
0bf0d52eb92e class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3016
diff changeset
  2640
        ^ self
2297
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
  2641
    ].
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
  2642
2810
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2643
    selector := (self aspectFor:aspect) value.
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2644
    selector isEmptyOrNil ifTrue:[
3029
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  2645
        Dialog information:(resources string:'Missing name for the action/aspect method.').
3026
0bf0d52eb92e class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3016
diff changeset
  2646
        ^ self
2297
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
  2647
    ].
2810
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2648
    (selector = 'true' or:[selector = 'false']) ifTrue:[^ self].
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2649
    (selector == true or:[selector == false]) ifTrue:[^ self].
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2650
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2651
    selector := selector asSymbol.
2297
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
  2652
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
  2653
    cls := self resolveName:specClass.
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
  2654
    cls isNil ifTrue:[
3026
0bf0d52eb92e class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3016
diff changeset
  2655
        self warn:(resources string:'Class %1 does not exist!!' with:specClass asString).
0bf0d52eb92e class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3016
diff changeset
  2656
        ^ self
2297
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
  2657
    ].
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
  2658
3028
272d45da727d class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3026
diff changeset
  2659
    browsedClass := cls.
2630
8d19a544d5da changed: #doBrowseActionMethod
Claus Gittinger <cg@exept.de>
parents: 2593
diff changeset
  2660
    (cls includesSelector:selector) ifFalse:[
3099
7fee6db3c473 Fix in #doBrowseApplicationMethodFor: - generate method if it does not exist
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3095
diff changeset
  2661
        | generate |    
3028
272d45da727d class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3026
diff changeset
  2662
        (implClass := cls whichClassImplements:selector) notNil ifTrue:[
3099
7fee6db3c473 Fix in #doBrowseApplicationMethodFor: - generate method if it does not exist
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3095
diff changeset
  2663
            generate := (Dialog 
3029
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  2664
                confirm:(resources 
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  2665
                            stringWithCRs:'The application does not directly implement %1.\However it inherits this from %2.\\Create a redefinition in %1?'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  2666
                            with:cls name
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  2667
                            with:implClass name)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  2668
                initialAnswer:false)
3099
7fee6db3c473 Fix in #doBrowseApplicationMethodFor: - generate method if it does not exist
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3095
diff changeset
  2669
        ] ifFalse:[ 
7fee6db3c473 Fix in #doBrowseApplicationMethodFor: - generate method if it does not exist
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3095
diff changeset
  2670
            generate := true.
7fee6db3c473 Fix in #doBrowseApplicationMethodFor: - generate method if it does not exist
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3095
diff changeset
  2671
        ].
7fee6db3c473 Fix in #doBrowseApplicationMethodFor: - generate method if it does not exist
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3095
diff changeset
  2672
        category := UserPreferences current categoryForMenuActionsMethods.
7fee6db3c473 Fix in #doBrowseApplicationMethodFor: - generate method if it does not exist
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3095
diff changeset
  2673
7fee6db3c473 Fix in #doBrowseApplicationMethodFor: - generate method if it does not exist
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3095
diff changeset
  2674
        SmalltalkCodeGeneratorTool
7fee6db3c473 Fix in #doBrowseApplicationMethodFor: - generate method if it does not exist
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3095
diff changeset
  2675
            createActionMethodFor:selector in:cls
7fee6db3c473 Fix in #doBrowseApplicationMethodFor: - generate method if it does not exist
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3095
diff changeset
  2676
            category:category
7fee6db3c473 Fix in #doBrowseApplicationMethodFor: - generate method if it does not exist
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3095
diff changeset
  2677
            redefine:(self redefineAspectMethodsChannel value).
2297
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
  2678
    ].
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
  2679
3028
272d45da727d class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3026
diff changeset
  2680
    UserPreferences systemBrowserClass openInClass:browsedClass selector:selector
2810
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2681
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2682
    "Created: / 21-10-2010 / 14:07:32 / cg"
2833
c4e0add90aaa CodeGeneratorTool->SmalltalkCodeGeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2810
diff changeset
  2683
    "Modified: / 31-01-2011 / 18:28:59 / cg"
3099
7fee6db3c473 Fix in #doBrowseApplicationMethodFor: - generate method if it does not exist
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3095
diff changeset
  2684
    "Modified: / 17-03-2014 / 12:25:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2810
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2685
!
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2686
3029
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  2687
doBrowseChoiceMethod
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  2688
    "open a browser on the choice aspect method (create if not yet existing)"
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  2689
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  2690
    self doBrowseApplicationMethodFor:#choice
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  2691
!
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  2692
2810
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2693
doBrowseEnabledMethod
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2694
    "open a browser on the enabled method (create if not yet existing)"
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2695
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2696
    self doBrowseApplicationMethodFor:#enabled
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2697
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2698
    "Created: / 21-10-2010 / 14:09:41 / cg"
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2699
!
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2700
3029
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  2701
doBrowseIndicationMethod
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  2702
    "open a browser on the indicator aspect method (create if not yet existing)"
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  2703
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  2704
    self doBrowseApplicationMethodFor:#indication
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  2705
!
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  2706
2810
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2707
doBrowseVisibilityMethod
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2708
    "open a browser on the visibility method (create if not yet existing)"
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2709
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2710
    self doBrowseApplicationMethodFor:#isVisible
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2711
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  2712
    "Created: / 21-10-2010 / 14:09:56 / cg"
2297
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
  2713
!
ee43ce83094d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
  2714
1614
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2715
doGenerateAspectMethods
1805
cf1a9d636bf7 category and comment flags now in Userprefs
Claus Gittinger <cg@exept.de>
parents: 1788
diff changeset
  2716
    "compile aspect and action methods"
cf1a9d636bf7 category and comment flags now in Userprefs
Claus Gittinger <cg@exept.de>
parents: 1788
diff changeset
  2717
cf1a9d636bf7 category and comment flags now in Userprefs
Claus Gittinger <cg@exept.de>
parents: 1788
diff changeset
  2718
    |cls redefineAspectMethods category|
1614
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2719
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  2720
    specClass isNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2721
	self warn:'Define the class first !!'.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2722
	^ self
1614
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2723
    ].
1617
dd4bd2e32826 prepared for CodeGeneratorTool
ca
parents: 1614
diff changeset
  2724
    redefineAspectMethods := self redefineAspectMethodsChannel value.
1614
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2725
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2726
    cls := self resolveName:specClass.
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  2727
    cls isNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2728
	self warn:'Class ', specClass asString, ' does not exist!!'.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2729
	^ self
1614
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2730
    ].
1617
dd4bd2e32826 prepared for CodeGeneratorTool
ca
parents: 1614
diff changeset
  2731
1805
cf1a9d636bf7 category and comment flags now in Userprefs
Claus Gittinger <cg@exept.de>
parents: 1788
diff changeset
  2732
    category := UserPreferences current categoryForMenuActionsMethods.
cf1a9d636bf7 category and comment flags now in Userprefs
Claus Gittinger <cg@exept.de>
parents: 1788
diff changeset
  2733
1617
dd4bd2e32826 prepared for CodeGeneratorTool
ca
parents: 1614
diff changeset
  2734
    self collectActionSelectors do:[:aSelector|
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2735
	SmalltalkCodeGeneratorTool
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2736
	    createActionMethodFor:aSelector in:cls
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2737
	    category:category
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2738
	    redefine:redefineAspectMethods.
1614
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2739
    ].
1617
dd4bd2e32826 prepared for CodeGeneratorTool
ca
parents: 1614
diff changeset
  2740
dd4bd2e32826 prepared for CodeGeneratorTool
ca
parents: 1614
diff changeset
  2741
    self collectAspectSelectors do:[:anAspect|
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2742
	SmalltalkCodeGeneratorTool
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2743
	    createAspectMethodFor:anAspect in:cls
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2744
	    category:category
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2745
	    redefine:redefineAspectMethods
1614
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2746
    ].
2833
c4e0add90aaa CodeGeneratorTool->SmalltalkCodeGeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2810
diff changeset
  2747
c4e0add90aaa CodeGeneratorTool->SmalltalkCodeGeneratorTool
Claus Gittinger <cg@exept.de>
parents: 2810
diff changeset
  2748
    "Modified: / 31-01-2011 / 18:29:06 / cg"
1614
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2749
! !
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  2750
1715
9eebdb3802aa method category rename
Claus Gittinger <cg@exept.de>
parents: 1711
diff changeset
  2751
!MenuEditor methodsFor:'user actions-building'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2752
3135
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2753
compileSpecMethodFor:aMenuItem selector:specSelector
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2754
    "save current editing menu to
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2755
           class: specClass
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2756
        selector: specSelector
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2757
    "
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2758
    |cls specCode mthd category s|
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2759
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2760
    specCode := self generateMenuSpecStringFor:aMenuItem.
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2761
    specCode isNil ifTrue:[^ nil].
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2762
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2763
    cls  := self resolveName:specClass.
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2764
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2765
    "/ if that method already exists, do not overwrite the category
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2766
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2767
    category := 'menu specs'.
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2768
    (mthd := cls theMetaclass compiledMethodAt:specSelector) notNil ifTrue:[
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2769
        category := mthd category.
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2770
    ].
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2771
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2772
    s := '' writeStream.
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2773
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2774
    s nextPutChunkSeparator;
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2775
      nextPutAll:(cls name);
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2776
      nextPutAll:' class methodsFor:';
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2777
      nextPutAll:category storeString;
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2778
      nextPutChunkSeparator;
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2779
      cr; cr;
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2780
      nextPutAll:specSelector;
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2781
      cr;
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2782
      nextPutAllAsChunk:(self class codeGenerationComment) withCRs;
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2783
      cr; cr;
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2784
      nextPutLine:'    "';
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2785
      nextPutLine:('     MenuEditor new openOnClass:' , cls name , ' andSelector:#' , specSelector);
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2786
      nextPutLine:('     (Menu new fromLiteralArrayEncoding:(' , cls name , ' ' , specSelector , ')) startUp');
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2787
      nextPutLine:'    "';
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2788
      cr;
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2789
      nextPutLine:'    <resource: #menu>';
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2790
      cr;
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2791
      nextPutAll:'    ^ ';
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2792
      nextChunkPut:specCode;
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2793
      space;
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2794
      nextPutChunkSeparator;
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2795
      cr.
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2796
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2797
    Class packageQuerySignal answer:cls package do:[
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2798
        (ReadStream on:s contents) fileIn.
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2799
    ].
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2800
!
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2801
2331
938a31972544 choose from screen menu function
Claus Gittinger <cg@exept.de>
parents: 2297
diff changeset
  2802
doChooseAMenu
938a31972544 choose from screen menu function
Claus Gittinger <cg@exept.de>
parents: 2297
diff changeset
  2803
    "pick a menu and edit its spec method"
938a31972544 choose from screen menu function
Claus Gittinger <cg@exept.de>
parents: 2297
diff changeset
  2804
938a31972544 choose from screen menu function
Claus Gittinger <cg@exept.de>
parents: 2297
diff changeset
  2805
    |view subSpec app bldr spec menuSelector1 menuSelector2 info|
938a31972544 choose from screen menu function
Claus Gittinger <cg@exept.de>
parents: 2297
diff changeset
  2806
938a31972544 choose from screen menu function
Claus Gittinger <cg@exept.de>
parents: 2297
diff changeset
  2807
    self askForModification ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2808
	view := Screen current viewFromUser.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2809
	(view isNil or:[view == Screen current rootView]) ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2810
	    ^ self
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2811
	].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2812
	view specClass == MenuPanelSpec ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2813
	    (app := view application) isNil ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2814
		info := 'Could not figure out the application class.'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2815
	    ] ifFalse:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2816
		(bldr := app builder) isNil ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2817
		    info := 'Application has no builder.'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2818
		] ifFalse:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2819
		    menuSelector1 := bldr namedComponents keyAtValue:view ifAbsent:nil.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2820
		    (spec := bldr spec) isNil ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2821
			info := 'Cannot fetch spec from applications builder.'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2822
		    ] ifFalse:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2823
			subSpec := spec findSpecForWhich:[:subSpec | subSpec name = view name].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2824
			subSpec isNil ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2825
			    info := 'Cannot find view-spec for ',view name asString,'.'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2826
			] ifFalse:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2827
			    menuSelector2 := subSpec menu.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2828
			]
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2829
		    ].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2830
		    (menuSelector1 isNil and:[ menuSelector2 isNil ]) ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2831
			info := 'menu is probably not provided by a menuSelector.'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2832
		    ] ifFalse:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2833
			(app class respondsTo:menuSelector1) ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2834
			    self loadFromClass:app class andSelector:menuSelector1.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2835
			    ^ self.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2836
			].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2837
			(app class respondsTo:menuSelector2) ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2838
			    self loadFromClass:app class andSelector:menuSelector2.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2839
			    ^ self.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2840
			].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2841
			info := 'menu is probably not provided by a menuSelector.'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2842
		    ].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2843
		]
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2844
	    ].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2845
	    info notNil ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2846
		app notNil ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2847
		    (Dialog confirm:(info,'\\Browse ?' withCRs)) ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2848
			app browse.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2849
		    ].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2850
		] ifFalse:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2851
		    Dialog information:info.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2852
		].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2853
	    ].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2854
	    ^ self.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2855
	].
2331
938a31972544 choose from screen menu function
Claus Gittinger <cg@exept.de>
parents: 2297
diff changeset
  2856
    ].
938a31972544 choose from screen menu function
Claus Gittinger <cg@exept.de>
parents: 2297
diff changeset
  2857
!
938a31972544 choose from screen menu function
Claus Gittinger <cg@exept.de>
parents: 2297
diff changeset
  2858
633
11bbf4599843 uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents: 627
diff changeset
  2859
doNew
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2860
    "clear editing menu; start from scratch
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2861
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2862
    super doNew ifTrue:[ self helpTool doNew ].
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2863
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2864
633
11bbf4599843 uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents: 627
diff changeset
  2865
doPickAMenu
2331
938a31972544 choose from screen menu function
Claus Gittinger <cg@exept.de>
parents: 2297
diff changeset
  2866
    "let user pick a menu and create a new spec"
1971
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  2867
633
11bbf4599843 uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents: 627
diff changeset
  2868
    |view|
11bbf4599843 uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents: 627
diff changeset
  2869
1244
fd44af858001 optimized
ca
parents: 1200
diff changeset
  2870
    self askForModification ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2871
	view := Screen current viewFromUser.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2872
	(view isNil or:[view == Screen current rootView]) ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2873
	    ^ self
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2874
	].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2875
	view specClass == MenuPanelSpec ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2876
	    specSelector := #pickedMenu.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2877
	    self buildFromMenu:(view asMenu) selector:specSelector.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2878
	].
633
11bbf4599843 uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents: 627
diff changeset
  2879
    ].
888
2712edb36a3a image methods removing
tz
parents: 885
diff changeset
  2880
!
2712edb36a3a image methods removing
tz
parents: 885
diff changeset
  2881
633
11bbf4599843 uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents: 627
diff changeset
  2882
doSave
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2883
    "save current editing menu to
3016
6aff65697c4f Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 3013
diff changeset
  2884
           class: specClass
6aff65697c4f Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 3013
diff changeset
  2885
        selector: specSelector
6aff65697c4f Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 3013
diff changeset
  2886
    "
2569
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2887
    self isEditingSpecOnly ifTrue:[
3016
6aff65697c4f Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 3013
diff changeset
  2888
        savedSpec := self generateMenuSpec.
6aff65697c4f Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 3013
diff changeset
  2889
        hasSaved := true.
6aff65697c4f Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 3013
diff changeset
  2890
        self clearModified.
6aff65697c4f Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 3013
diff changeset
  2891
        ^ self
2569
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2892
    ].
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2893
642
f8ba35e5a678 saving bug fixed
tz
parents: 640
diff changeset
  2894
    super doSave ifFalse: [^nil].
3135
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2895
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  2896
    self compileSpecMethodFor:listOfItems root selector:specSelector.
1669
e6ea33c843a0 *** empty log message ***
ca
parents: 1668
diff changeset
  2897
    self isStandAlone ifTrue:[
3016
6aff65697c4f Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 3013
diff changeset
  2898
        self helpTool doSave
1669
e6ea33c843a0 *** empty log message ***
ca
parents: 1668
diff changeset
  2899
    ].
699
7746185a3621 for the help tool
tz
parents: 686
diff changeset
  2900
633
11bbf4599843 uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents: 627
diff changeset
  2901
    self updateHistory.
11bbf4599843 uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents: 627
diff changeset
  2902
    hasSaved := true.
1971
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  2903
    self clearModified.
2856
8f5778095338 changed: #doSave
Claus Gittinger <cg@exept.de>
parents: 2850
diff changeset
  2904
3075
ae4ba1019eb5 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3071
diff changeset
  2905
    "Modified: / 28-01-2014 / 21:57:24 / cg"
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2906
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  2907
633
11bbf4599843 uses dynamic tree items and needs ListSpecEditor as superclass (-> libview2)
tz
parents: 627
diff changeset
  2908
doSaveAs
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2909
    "save current editing menu to class and selector
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2910
     defined by the user.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2911
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2912
    super doSaveAs ifTrue:[
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2913
	listOfItems root rawLabel:specSelector
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2914
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2915
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2916
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2917
doShowMenuSpec
2569
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2918
    "opens a code view with the contents of the menu spec"
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2919
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2920
    |code|
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2921
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2922
    code := self generateMenuSpecString.
b55aeaecefda preps for menuSpec without a class
Claus Gittinger <cg@exept.de>
parents: 2448
diff changeset
  2923
2862
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  2924
    code notNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2925
	CodeView openWith:code title: 'Menu Spec'
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2926
    ].
2862
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  2927
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  2928
    "Modified: / 29-11-2011 / 11:28:12 / cg"
1971
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  2929
!
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  2930
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  2931
save
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  2932
    self doSave
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2933
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2934
1715
9eebdb3802aa method category rename
Claus Gittinger <cg@exept.de>
parents: 1711
diff changeset
  2935
!MenuEditor methodsFor:'user actions-creation'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2936
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2937
doCreateDelayedMenu:what
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2938
    |selectedItem delayedItem|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2939
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2940
    selectedItem := self selectedItem.
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  2941
    selectedItem isNil ifTrue:[^ self].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2942
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2943
    selectedItem canAddDelayedMenu      ifFalse:[ ^ self ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2944
    self askForItemModification ifFalse:[ ^ self ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2945
1633
24748704c741 checkin from browser
ca
parents: 1632
diff changeset
  2946
    what == #menu ifTrue:[ delayedItem := RegularMenuItem new ]
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2947
		 ifFalse:[ delayedItem := LinkedMenuItem new ].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2948
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2949
    delayedItem setExpanded:true.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2950
    delayedItem := selectedItem add:delayedItem.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2951
2862
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  2952
    delayedItem notNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2953
	self selectedItem:delayedItem.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2954
    ].
2862
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  2955
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  2956
    "Modified: / 29-11-2011 / 11:28:09 / cg"
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2957
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2958
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2959
doCreateItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2960
    "create a new Item
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2961
    "
1702
ace326bd303f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1691
diff changeset
  2962
    self addAndSelectValueOf:[ ActionItem new translateLabel:true ].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2963
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2964
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2965
doCreateLinkedMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2966
    "create a new Linked Menu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2967
    "
1702
ace326bd303f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1691
diff changeset
  2968
    self addAndSelectValueOf:[ LinkedMenuItem new ].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2969
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2970
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2971
doCreateMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2972
    "create a new Menu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2973
    "
1702
ace326bd303f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1691
diff changeset
  2974
    self addAndSelectValueOf:
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2975
	[ |item|
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2976
	    item := RegularMenuItem new.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2977
	    "/ --- do not add it expanded - because that makes it hard to add multipe menus
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2978
	    "/ item expand.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2979
	    item
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  2980
	].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2981
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2982
1844
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  2983
doCreateMenuSliceItem
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  2984
    "create a new MenuSlice Item
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  2985
    "
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  2986
    self addAndSelectValueOf:[ MenuSliceItem new ].
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  2987
!
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  2988
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2989
doCreateSep
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2990
    "create a new Separator Item
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2991
    "
1702
ace326bd303f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1691
diff changeset
  2992
    self addAndSelectValueOf:[ SeparatorItem new ].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2993
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2994
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2995
doCreateStandardEditMenu
2345
abdefb8e2b52 standard
Claus Gittinger <cg@exept.de>
parents: 2341
diff changeset
  2996
    "create a standard edit menu
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  2997
    "
1702
ace326bd303f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1691
diff changeset
  2998
    self addAndSelectValueOf:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  2999
	RegularMenuItem menu:(self class standardEditMenu) labeled:'Edit' translateLabel:true
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3000
    ].
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  3001
!
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  3002
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3003
doCreateStandardFileMenu
2345
abdefb8e2b52 standard
Claus Gittinger <cg@exept.de>
parents: 2341
diff changeset
  3004
    "create a standard file menu
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3005
    "
1702
ace326bd303f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1691
diff changeset
  3006
    self addAndSelectValueOf:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3007
	RegularMenuItem menu:(self class standardFileMenu) labeled:'File' translateLabel:true
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3008
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3009
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3010
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3011
doCreateStandardHelpMenu
2345
abdefb8e2b52 standard
Claus Gittinger <cg@exept.de>
parents: 2341
diff changeset
  3012
    "create a standard help menu
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3013
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3014
    |item|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3015
1702
ace326bd303f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1691
diff changeset
  3016
    self addAndSelectValueOf:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3017
	item := RegularMenuItem menu:(self class standardHelpMenu) labeled:'Help' translateLabel:true.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3018
	item aspectAt:#startGroup put:#conditionalRight.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3019
	item
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3020
    ].
2122
417dabd716d5 new startGroup value: #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2118
diff changeset
  3021
417dabd716d5 new startGroup value: #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2118
diff changeset
  3022
    "Modified: / 16-10-2006 / 12:49:27 / cg"
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3023
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3024
1715
9eebdb3802aa method category rename
Claus Gittinger <cg@exept.de>
parents: 1711
diff changeset
  3025
!MenuEditor methodsFor:'user actions-editing'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3026
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3027
doCopy
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3028
    "copy selected menuItems to the clipboard
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3029
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3030
    |clip items|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3031
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3032
    items := self selectedSuperItems.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3033
    items isEmpty ifTrue:[ ^ self ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3034
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3035
    clip := OrderedCollection new.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3036
    items do:[:el| clip add:(el menuItem) ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3037
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3038
    self clipboard:clip.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3039
    self updateAllToolInstances.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3040
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3041
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3042
doCut
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3043
    "copy selected menuItems to the clipboard and delete
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3044
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3045
    self doCopy.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3046
    self doDelete.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3047
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3048
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3049
doDelete
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3050
    "delete selected menuItems
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3051
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3052
    |selectedItem parent toDelete behind nextItem prevItem|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3053
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3054
    toDelete := self selectedSuperItems.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3055
    toDelete isEmpty ifTrue:[ ^ self ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3056
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3057
    self clearModified.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3058
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3059
    selectedItem := toDelete first.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3060
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3061
    selectedItem isRootItem ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3062
	^ selectedItem removeAll.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3063
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3064
    "/ compute the new selection
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3065
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3066
    prevItem := parent := selectedItem parent.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3067
    nextItem := nil.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3068
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3069
    parent children size ~~ 1 ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3070
	behind := false.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3071
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3072
	parent do:[:el|
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3073
	    behind ifTrue:[
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3074
		(nextItem notNil or:[toDelete includesIdentical:el]) ifFalse:[ nextItem := el ].
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3075
	    ] ifFalse:[
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3076
		behind := el == selectedItem.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3077
		(behind or:[toDelete includesIdentical:el]) ifFalse:[ prevItem := el ].
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3078
	    ]
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3079
	]
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3080
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3081
    self withoutNotifyDo:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3082
	toDelete do:[:el| el remove ].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3083
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3084
    self selectedItem:(nextItem ? prevItem).
1971
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  3085
    self setModified.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3086
    self updateChannels.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3087
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3088
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3089
doPaste
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3090
    "paste from clipboard
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3091
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3092
    ^ self doPaste:(self clipboard)
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  3093
!
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  3094
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3095
doPaste:aCollection
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3096
    "paste collection of MenuItems
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3097
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3098
    |item loMenuItems|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3099
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3100
    aCollection size == 0 ifTrue:[ ^ self ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3101
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3102
    item := self selectedItem.
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  3103
    item isNil ifTrue:[ ^ self ].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3104
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3105
    loMenuItems := OrderedCollection new.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3106
    aCollection do:[:el|
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3107
	(el askFor:#isMenuItem) ifTrue:[ loMenuItems add:el ].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3108
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3109
    loMenuItems isEmpty ifTrue:[ ^ self ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3110
1702
ace326bd303f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1691
diff changeset
  3111
    self addAndSelectValueOf:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3112
	loMenuItems collect:[:el| Item menuItem:el ]
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3113
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3114
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3115
1715
9eebdb3802aa method category rename
Claus Gittinger <cg@exept.de>
parents: 1711
diff changeset
  3116
!MenuEditor methodsFor:'user actions-hierarchy'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3117
3135
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3118
doMakeLinkedMenu
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3119
    "the selected item must be a regular submenu.
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3120
     create a new menuspec for it,
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3121
     and chenge the item to a linke menu item."
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3122
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3123
    |cls subSelector oldMenuItem newLinkedMenuItem index|
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3124
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3125
    oldMenuItem := self selectionHolder value first.
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3126
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3127
    subSelector := Dialog 
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3128
                    request:'Name of spec method for submenu:'
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3129
                    initialAnswer:((oldMenuItem label reject:[:ch | ch isLetterOrDigit not]),'MenuSpec') asLowercaseFirst.
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3130
    subSelector isEmptyOrNil ifTrue:[^ self].
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3131
    subSelector := subSelector asSymbol.
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3132
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3133
    cls  := self resolveName:specClass.
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3134
    (cls theMetaclass compiledMethodAt:subSelector) notNil ifTrue:[
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3135
        (Dialog confirm:'Overwrite existing spec?') ifFalse:[^ self].
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3136
    ].
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3137
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3138
    self compileSpecMethodFor:oldMenuItem selector:subSelector.
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3139
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3140
    newLinkedMenuItem := LinkedMenuItem new.
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3141
    newLinkedMenuItem submenuChannel:subSelector.
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3142
    newLinkedMenuItem menuItem nameKey:(oldMenuItem menuItem nameKey).
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3143
    newLinkedMenuItem menuItem label:oldMenuItem menuItem label.
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3144
    newLinkedMenuItem menuItem rawLabel:oldMenuItem menuItem rawLabel.
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3145
    newLinkedMenuItem menuItem translateLabel:(oldMenuItem menuItem translateLabel).
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3146
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3147
    index := oldMenuItem parent identityIndexOf:oldMenuItem.
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3148
    oldMenuItem parent at:index put:newLinkedMenuItem.
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3149
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3150
    self selectedItem:newLinkedMenuItem.
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3151
!
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  3152
1958
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3153
doMoveDown
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3154
    "move selected item down"
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3155
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3156
    self doMoveUpOrDown:#down
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3157
!
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3158
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3159
doMoveIn:aDirection
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3160
    "move selected item into the next (#inNext) or previous (#inPrev) item
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3161
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3162
    |item idx parent toParent|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3163
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3164
    item := self selectedItem.
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  3165
    item isNil ifTrue:[^ self].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3166
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3167
    aDirection == #inNext ifTrue:[ item canMoveInNext  ifFalse:[^ self] ]
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3168
			 ifFalse:[ item canMoveInAbove ifFalse:[^ self] ].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3169
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3170
    self askForItemModification ifFalse:[ ^ self ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3171
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3172
    parent := item parent.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3173
    idx    := parent identityIndexOf:item.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3174
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3175
    aDirection == #inNext ifTrue:[ toParent := parent at:(idx + 1) ifAbsent:nil ]
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3176
			 ifFalse:[ toParent := parent at:(idx - 1) ifAbsent:nil ].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3177
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3178
    self withoutNotifyDo:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3179
	selectionHolder setValue:#().
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3180
	parent removeIndex:idx.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3181
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3182
	aDirection == #inNext ifTrue:[ toParent addFirst:item ]
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3183
			     ifFalse:[ toParent  addLast:item ].
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3184
	item makeVisible.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3185
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3186
    self selectedItem:item.
1971
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  3187
    self setModified.
1468
94fcd912ef88 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1464
diff changeset
  3188
!
94fcd912ef88 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1464
diff changeset
  3189
1958
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3190
doMoveInNext
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3191
    "move selected item into the next item"
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3192
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3193
    self doMoveIn:#inNext.
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3194
!
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3195
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3196
doMoveInPrevious
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3197
    "move selected item into the previous item"
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3198
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3199
    self doMoveIn:#inPrev.
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3200
!
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3201
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3202
doMoveOut
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3203
    "move selected item out of current item
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3204
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3205
    |item parent grandParent index|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3206
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3207
    item := self selectedItem.
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  3208
    item isNil ifTrue:[^ self].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3209
    item canMoveOut ifFalse:[^ self].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3210
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3211
    self askForItemModification ifFalse:[ ^ self ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3212
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3213
    parent      := item parent.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3214
    grandParent := parent parent.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3215
    index       := grandParent identityIndexOf:parent.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3216
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3217
    self withoutNotifyDo:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3218
	selectionHolder setValue:#().
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3219
	parent remove:item.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3220
	index > grandParent size ifTrue:[ grandParent add:item ]
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3221
				ifFalse:[ grandParent add:item afterIndex:index ]
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3222
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3223
    self selectedItem:item.
1971
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  3224
    self setModified.
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  3225
!
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  3226
1958
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3227
doMoveUp
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3228
    "move selected item up"
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3229
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3230
    self doMoveUpOrDown:#up
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3231
!
109ef8358a55 Ctrl-CursorUp/Down in tree
Claus Gittinger <cg@exept.de>
parents: 1953
diff changeset
  3232
2869
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  3233
doMoveUpOrDown:aDirectionSymbol
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  3234
    "move selected item up (#up) or down (#down)"
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  3235
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  3236
    |items itemsSortedByIndex index parent children|
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  3237
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  3238
    items := self selectedItems.
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  3239
    items isEmptyOrNil ifTrue:[^ self].
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  3240
    (items conform:[:i | i canMoveUpOrDown]) ifFalse:[^ self].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3241
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3242
    self askForItemModification ifFalse:[ ^ self ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3243
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3244
    self withoutNotifyDo:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3245
	itemsSortedByIndex := items copy.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3246
	(items collect:[:i | listOfItems identityIndexOf:i])
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3247
	    sortWith:itemsSortedByIndex.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3248
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3249
	aDirectionSymbol == #down ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3250
	    itemsSortedByIndex := itemsSortedByIndex reversed
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3251
	].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3252
	itemsSortedByIndex do:[:item |
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3253
	    parent   := item parent.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3254
	    children := parent children.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3255
	    index    := children identityIndexOf:item.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3256
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3257
	    selectionHolder setValue:#().
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3258
	    children removeIndex:index.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3259
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3260
	    aDirectionSymbol == #up ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3261
		index == 1 ifTrue:[ children add:item ]
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3262
			ifFalse:[ children add:item beforeIndex:index - 1 ]
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3263
	    ] ifFalse:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3264
		index > children size ifTrue:[ children addFirst:item ]
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3265
				    ifFalse:[ children add:item afterIndex:index ]
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3266
	    ].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3267
	    parent childrenOrderChanged.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3268
	]
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3269
    ].
2869
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  3270
    self selectedItems:items.
1971
469f9fd53021 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1958
diff changeset
  3271
    self setModified.
2869
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  3272
aa4cdac32055 changed:
Claus Gittinger <cg@exept.de>
parents: 2862
diff changeset
  3273
    "Modified: / 18-01-2012 / 11:35:38 / cg"
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  3274
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  3275
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3276
!MenuEditor::Item class methodsFor:'defaults'!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3277
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3278
defaultLabel
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3279
    ^ self subclassResponsibility
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3280
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3281
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3282
!MenuEditor::Item class methodsFor:'image specs'!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3283
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3284
iconDelayedLinkedMenu
3120
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3285
    <resource: #image>
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3286
    "This resource specification was automatically generated
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3287
     by the ImageEditor of ST/X."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3288
    "Do not manually edit this!! If it is corrupted,
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3289
     the ImageEditor may not be able to read the specification."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3290
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3291
     self iconDelayedLinkedMenu inspect
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3292
     ImageEditor openOnClass:self andSelector:#iconDelayedLinkedMenu
3120
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3293
     Icon flushCachedIcons"
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3294
    
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3295
    ^ Icon constantNamed:'MenuEditor::Item class iconDelayedLinkedMenu'
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3296
        ifAbsentPut:[
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3297
            (Depth4Image new)
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3298
                width:20;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3299
                height:16;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3300
                photometric:(#palette);
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3301
                bitsPerSample:(#( 4 ));
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3302
                samplesPerPixel:(1);
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3303
                bits:(ByteArray 
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3304
                            fromPackedString:'
2270
daa949fce11e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2263
diff changeset
  3305
@@@@@@@@@@@@@@DQDQDQDQDQDR@AH"H"H"H"H"H0@@@BH"H"@@@BL@QDPBH"H"@@H#@DQDPBH@H"@"H0ADQDPBA@H"H"L@@@QDP@Q@@@@C@ADPQDQDQ@DQD:
3120
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3306
@RH QDQDQ@H"L@D"H QDQD@"H#@A@@@@@DP@@@@0@QDQDQA@DQDQL@D"H"H @"H"H#@BL3L3L3L3L3L0@@@@@@@@@@@a');
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3307
                colorMapFromArray:#[ 0 0 0 255 255 255 170 170 170 127 127 127 255 0 0 ];
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3308
                mask:((ImageMask new)
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3309
                            width:20;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3310
                            height:16;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3311
                            bits:(ByteArray 
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3312
                                        fromPackedString:'???0???0???0???0???0???0???0???0???0???0???0???0???0???0???0???0');
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3313
                            yourself);
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3314
                yourself
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3315
        ]
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3316
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3317
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3318
iconDelayedMenu
3120
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3319
    <resource: #image>
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3320
    "This resource specification was automatically generated
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3321
     by the ImageEditor of ST/X."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3322
    "Do not manually edit this!! If it is corrupted,
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3323
     the ImageEditor may not be able to read the specification."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3324
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3325
     self iconDelayedMenu inspect
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3326
     ImageEditor openOnClass:self andSelector:#iconDelayedMenu
3120
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3327
     Icon flushCachedIcons"
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3328
    
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3329
    ^ Icon constantNamed:'MenuEditor::Item class iconDelayedMenu'
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3330
        ifAbsentPut:[
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3331
            (Depth2Image new)
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3332
                width:20;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3333
                height:16;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3334
                photometric:(#palette);
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3335
                bitsPerSample:(#( 2 ));
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3336
                samplesPerPixel:(1);
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3337
                bits:(ByteArray 
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3338
                            fromPackedString:'@@@@@@@UUUUUVA*****,F***@B0Z***@+A****J,F*****0@@@@@@AUUUUUXF*****0Z****+A@@@@@LEUUUUU0Z****+B?????<@@@@@@@b');
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3339
                colorMapFromArray:#[ 0 0 0 255 255 255 170 170 170 127 127 127 ];
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3340
                mask:((ImageMask new)
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3341
                            width:20;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3342
                            height:16;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3343
                            bits:(ByteArray 
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3344
                                        fromPackedString:'???0???0???0???0???0???0???0???0???0???0???0???0???0???0???0???0');
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3345
                            yourself);
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3346
                yourself
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3347
        ]
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3348
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3349
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3350
iconItem
3120
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3351
    <resource: #image>
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3352
    "This resource specification was automatically generated
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3353
     by the ImageEditor of ST/X."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3354
    "Do not manually edit this!! If it is corrupted,
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3355
     the ImageEditor may not be able to read the specification."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3356
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3357
     self iconItem inspect
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3358
     ImageEditor openOnClass:self andSelector:#iconItem
3120
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3359
     Icon flushCachedIcons"
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3360
    
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3361
    ^ Icon constantNamed:'MenuEditor::Item class iconItem'
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3362
        ifAbsentPut:[
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3363
            (Depth2Image new)
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3364
                width:20;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3365
                height:16;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3366
                photometric:(#palette);
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3367
                bitsPerSample:(#( 2 ));
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3368
                samplesPerPixel:(1);
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3369
                bits:(ByteArray 
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3370
                            fromPackedString:'UUUUUUUUUUUUUP@@@@@@EUUUUU Z****+A.?/;+,F:::/>0[++>:;A...++,F::?..0Z****+B?????<@@@@@@@@@@@@@@@@@@@@@@@@@@@b');
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3371
                colorMapFromArray:#[ 0 0 0 255 255 255 170 170 170 127 127 127 ];
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3372
                mask:((ImageMask new)
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3373
                            width:20;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3374
                            height:16;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3375
                            bits:(ByteArray 
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3376
                                        fromPackedString:'@@@@@@@@???0???0???0???0???0???0???0???0???0???0???0@@@@@@@@@@@@');
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3377
                            yourself);
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3378
                yourself
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3379
        ]
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3380
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3381
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3382
iconLinkedMenu
3120
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3383
    <resource: #image>
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3384
    "This resource specification was automatically generated
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3385
     by the ImageEditor of ST/X."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3386
    "Do not manually edit this!! If it is corrupted,
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3387
     the ImageEditor may not be able to read the specification."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3388
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3389
     self iconLinkedMenu inspect
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3390
     ImageEditor openOnClass:self andSelector:#iconLinkedMenu
3120
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3391
     Icon flushCachedIcons"
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3392
    
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3393
    ^ Icon constantNamed:'MenuEditor::Item class iconLinkedMenu'
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3394
        ifAbsentPut:[
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3395
            (Depth4Image new)
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3396
                width:20;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3397
                height:16;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3398
                photometric:(#palette);
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3399
                bitsPerSample:(#( 4 ));
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3400
                samplesPerPixel:(1);
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3401
                bits:(ByteArray 
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3402
                            fromPackedString:'
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3403
@@@@@@@@@@@@@@QDQDQDQDQDQA@DH"H"H"H"H"HPABH@@@H"H"H"D@PQ@3L0DQDQDQ@D@@L3L0@@@@@PADPCL3L0PCADD@P"@@@3L0@3@!!@DH"H"@3L3L3@P
3120
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3404
AADQDQ@3L3L3@@P@@@@@@3L3LA@DQDQDQD@@L0PPABH"H"H"HC@"D@P"H"H"H"@BH!!@BDQDQDQDQDQDP@@@@@@@@@@@@@@@a');
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3405
                colorMapFromArray:#[ 0 0 0 127 127 127 170 170 170 255 0 0 255 255 255 ];
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3406
                mask:((ImageMask new)
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3407
                            width:20;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3408
                            height:16;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3409
                            bits:(ByteArray 
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3410
                                        fromPackedString:'???0???0???0???0???0???0???0???0???0???0???0???0???0???0???0???0');
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3411
                            yourself);
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3412
                yourself
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3413
        ]
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3414
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3415
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3416
iconMenu
3120
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3417
    <resource: #image>
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3418
    "This resource specification was automatically generated
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3419
     by the ImageEditor of ST/X."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3420
    "Do not manually edit this!! If it is corrupted,
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3421
     the ImageEditor may not be able to read the specification."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3422
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3423
     self iconMenu inspect
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3424
     ImageEditor openOnClass:self andSelector:#iconMenu
3120
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3425
     Icon flushCachedIcons"
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3426
    
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3427
    ^ Icon constantNamed:'MenuEditor::Item class iconMenu'
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3428
        ifAbsentPut:[
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3429
            (Depth2Image new)
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3430
                width:20;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3431
                height:16;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3432
                photometric:(#palette);
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3433
                bitsPerSample:(#( 2 ));
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3434
                samplesPerPixel:(1);
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3435
                bits:(ByteArray 
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3436
                            fromPackedString:'@@@@@@@?????=C*****$N*****P5UUUUUC@@@@@DO?????P:****)C*****$MUUUUUP0@@@@AC?????4N*****P:****)BUUUUUT@@@@@@@b');
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3437
                colorMapFromArray:#[ 0 0 0 127 127 127 170 170 170 255 255 255 ];
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3438
                mask:((ImageMask new)
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3439
                            width:20;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3440
                            height:16;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3441
                            bits:(ByteArray 
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3442
                                        fromPackedString:'???0???0???0???0???0???0???0???0???0???0???0???0???0???0???0???0');
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3443
                            yourself);
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3444
                yourself
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3445
        ]
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3446
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3447
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3448
iconSeparator
3120
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3449
    <resource: #image>
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3450
    "This resource specification was automatically generated
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3451
     by the ImageEditor of ST/X."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3452
    "Do not manually edit this!! If it is corrupted,
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3453
     the ImageEditor may not be able to read the specification."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3454
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3455
     self iconSeparator inspect
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3456
     ImageEditor openOnClass:self andSelector:#iconSeparator
3120
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3457
     Icon flushCachedIcons"
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3458
    
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3459
    ^ Icon constantNamed:'MenuEditor::Item class iconSeparator'
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3460
        ifAbsentPut:[
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3461
            (Depth2Image new)
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3462
                width:20;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3463
                height:16;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3464
                photometric:(#palette);
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3465
                bitsPerSample:(#( 2 ));
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3466
                samplesPerPixel:(1);
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3467
                bits:(ByteArray 
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3468
                            fromPackedString:'UUUUUUUUUUUUUP@@@@@@EUUUUU Z****+A*****,F????:0[@@@@[A)UUUU,F*****0Z****+B?????<@@@@@@@@@@@@@@@@@@@@@@@@@@@b');
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3469
                colorMapFromArray:#[ 0 0 0 255 255 255 170 170 170 127 127 127 ];
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3470
                mask:((ImageMask new)
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3471
                            width:20;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3472
                            height:16;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3473
                            bits:(ByteArray 
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3474
                                        fromPackedString:'@@@@@@@@???0???0???0???0???0???0???0???0???0???0???0@@@@@@@@@@@@');
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3475
                            yourself);
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3476
                yourself
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3477
        ]
1844
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  3478
!
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  3479
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  3480
iconSliceMenu
3120
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3481
    <resource: #image>
1844
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  3482
    "This resource specification was automatically generated
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  3483
     by the ImageEditor of ST/X."
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  3484
    "Do not manually edit this!! If it is corrupted,
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  3485
     the ImageEditor may not be able to read the specification."
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  3486
    "
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  3487
     self iconSliceMenu inspect
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  3488
     ImageEditor openOnClass:self andSelector:#iconSliceMenu
3120
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3489
     Icon flushCachedIcons"
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3490
    
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3491
    ^ Icon constantNamed:'MenuEditor::Item class iconSliceMenu'
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3492
        ifAbsentPut:[
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3493
            (Depth2Image new)
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3494
                width:20;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3495
                height:16;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3496
                photometric:(#palette);
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3497
                bitsPerSample:(#( 2 ));
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3498
                samplesPerPixel:(1);
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3499
                bits:(ByteArray 
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3500
                            fromPackedString:'@@@@@@@@@@@@@@@@@@@@O?????0:*****C/?6??XN:*[*) ;*).*&C.*&:*XN5U[UU :*****C*****(@@@@@@@@@@@@@@@@@@@@@@@@@@@b');
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3501
                colorMapFromArray:#[ 0 0 0 127 127 127 170 170 170 255 255 255 ];
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3502
                mask:((ImageMask new)
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3503
                            width:20;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3504
                            height:16;
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3505
                            bits:(ByteArray 
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3506
                                        fromPackedString:'@@@@@@@@???0???0???0???0???0???0???0???0???0???0???0@@@@@@@@@@@@');
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3507
                            yourself);
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3508
                yourself
93de037400b6 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3110
diff changeset
  3509
        ]
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3510
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3511
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3512
!MenuEditor::Item class methodsFor:'instance creation'!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3513
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3514
classFor:aMenuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3515
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  3516
    aMenuItem isNil ifTrue:[ ^ nil ].
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  3517
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  3518
    aMenuItem itemValue isNil ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3519
	aMenuItem isMenuSlice ifTrue:[ ^ MenuEditor::MenuSliceItem ].
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3520
	aMenuItem submenu notNil ifTrue:[ ^ MenuEditor::RegularMenuItem ].
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3521
	aMenuItem submenuChannel notNil ifTrue:[ ^ MenuEditor::LinkedMenuItem ].
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3522
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3523
	(self separatorTypeOf:(aMenuItem rawLabel)) notNil ifTrue:[
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3524
	    ^ MenuEditor::SeparatorItem
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3525
	]
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3526
    ].
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  3527
    ^ MenuEditor::ActionItem
1454
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3528
!
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3529
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3530
menuItem:aMenuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3531
    |item cls|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3532
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3533
    cls := self classFor:aMenuItem.
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  3534
    cls isNil ifTrue:[^ nil].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3535
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3536
    item := cls new.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3537
    item menuItem:aMenuItem.
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  3538
    ^ item
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3539
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3540
1668
3e83796a3e0e category rename
Claus Gittinger <cg@exept.de>
parents: 1660
diff changeset
  3541
!MenuEditor::Item class methodsFor:'interface specs'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3542
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3543
detailsEditSpec
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3544
    "This resource specification was automatically generated
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3545
     by the UIPainter of ST/X."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3546
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3547
    "Do not manually edit this!! If it is corrupted,
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3548
     the UIPainter may not be able to read the specification."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3549
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3550
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3551
     UIPainter new openOnClass:MenuEditor::Item andSelector:#detailsEditSpec
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3552
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3553
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3554
    <resource: #canvas>
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3555
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3556
    ^
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  3557
     #(FullSpec
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3558
	name: detailsEditSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3559
	window:
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  3560
       (WindowSpec
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3561
	  label: 'Details Edit'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3562
	  name: 'Details Edit'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3563
	  min: (Point 10 10)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3564
	  bounds: (Rectangle 0 0 407 291)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3565
	)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3566
	component:
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  3567
       (SpecCollection
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3568
	  collection: (
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3569
	   (LabelSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3570
	      label: 'Accelerator:'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3571
	      name: 'shortcutKeyLabel'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3572
	      layout: (AlignmentOrigin 107 0 26 0 1 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3573
	      activeHelpKey: detailsAccelerator
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3574
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3575
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3576
	      adjust: right
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3577
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3578
	   (InputFieldSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3579
	      name: 'shortcutKeyField'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3580
	      layout: (LayoutFrame 110 0 15 0 -5 1.0 37 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3581
	      activeHelpKey: detailsAccelerator
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3582
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3583
	      model: shortcutKeyCharacter
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3584
	      group: inputGroup
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3585
	      type: symbolOrNil
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3586
	      immediateAccept: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3587
	      acceptOnReturn: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3588
	      acceptOnTab: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3589
	      acceptChannel: acceptChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3590
	      modifiedChannel: modifiedChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3591
	      acceptOnPointerLeave: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3592
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3593
	   (LabelSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3594
	      label: 'Enabled:'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3595
	      name: 'enabledLabel'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3596
	      layout: (AlignmentOrigin 107 0 51 0 1 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3597
	      activeHelpKey: detailsEnabled
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3598
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3599
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3600
	      adjust: right
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3601
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3602
	   (InputFieldSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3603
	      name: 'enabledField'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3604
	      layout: (LayoutFrame 110 0 40 0 -25 1.0 62 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3605
	      activeHelpKey: detailsEnabled
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3606
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3607
	      model: enabled
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3608
	      group: inputGroup
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3609
	      type: symbolOrBooleanOrNil
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3610
	      immediateAccept: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3611
	      acceptOnReturn: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3612
	      acceptOnTab: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3613
	      acceptChannel: acceptChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3614
	      modifiedChannel: modifiedChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3615
	      acceptOnPointerLeave: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3616
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3617
	   (ActionButtonSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3618
	      label: 'browseActionImage'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3619
	      name: 'Button1'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3620
	      layout: (LayoutFrame -25 1 40 0 -5 1 62 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3621
	      activeHelpKey: browseMethod
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3622
	      hasCharacterOrientedLabel: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3623
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3624
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3625
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3626
	      model: doBrowseEnabledMethod
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3627
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3628
	   (LabelSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3629
	      label: 'Visibility:'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3630
	      name: 'visibilityLabel'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3631
	      layout: (AlignmentOrigin 107 0 76 0 1 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3632
	      activeHelpKey: detailsVisibility
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3633
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3634
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3635
	      adjust: right
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3636
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3637
	   (InputFieldSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3638
	      name: 'isVisibleInputField'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3639
	      layout: (LayoutFrame 110 0 65 0 -25 1.0 87 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3640
	      activeHelpKey: detailsVisibility
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3641
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3642
	      model: isVisible
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3643
	      group: inputGroup
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3644
	      type: symbolOrBooleanOrNil
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3645
	      immediateAccept: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3646
	      acceptOnReturn: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3647
	      acceptOnTab: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3648
	      acceptChannel: acceptChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3649
	      modifiedChannel: modifiedChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3650
	      acceptOnPointerLeave: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3651
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3652
	   (ActionButtonSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3653
	      label: 'browseActionImage'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3654
	      name: 'Button2'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3655
	      layout: (LayoutFrame -25 1 65 0 -5 1 87 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3656
	      activeHelpKey: browseMethod
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3657
	      hasCharacterOrientedLabel: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3658
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3659
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3660
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3661
	      model: doBrowseVisibilityMethod
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3662
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3663
	   (LabelSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3664
	      label: 'Aux Value'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3665
	      name: 'auxLabel'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3666
	      layout: (AlignmentOrigin 107 0 101 0 1 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3667
	      activeHelpKey: detailsAuxValue
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3668
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3669
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3670
	      adjust: right
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3671
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3672
	   (InputFieldSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3673
	      name: 'auxInputField'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3674
	      layout: (LayoutFrame 110 0 90 0 -5 1.0 112 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3675
	      activeHelpKey: detailsAuxValue
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3676
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3677
	      model: auxValue
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3678
	      group: inputGroup
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3679
	      type: smalltalkObjectOrNil
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3680
	      immediateAccept: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3681
	      acceptOnReturn: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3682
	      acceptOnTab: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3683
	      acceptChannel: acceptChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3684
	      modifiedChannel: modifiedChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3685
	      acceptOnPointerLeave: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3686
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3687
	   (LabelSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3688
	      label: 'Start Group:'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3689
	      name: 'StartGroupLabel'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3690
	      layout: (AlignmentOrigin 107 0 139 0 1 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3691
	      activeHelpKey: detailsStartGroup
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3692
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3693
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3694
	      adjust: right
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3695
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3696
	   (PopUpListSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3697
	      label: 'left'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3698
	      name: 'StartGroupPopUp'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3699
	      layout: (LayoutFrame 110 0 128 0 -5 1.0 150 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3700
	      activeHelpKey: detailsStartGroup
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3701
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3702
	      model: startGroup
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3703
	      menu:
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3704
	     (Array
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3705
		left right
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3706
		conditionalRight
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3707
	      )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3708
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3709
	   (LabelSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3710
	      label: 'Access Character Position:'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3711
	      name: 'accessCharLabel'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3712
	      layout: (AlignmentOrigin 217 0 170 0 1 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3713
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3714
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3715
	      adjust: right
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3716
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3717
	   (InputFieldSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3718
	      name: 'accessCharField'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3719
	      layout: (LayoutFrame 220 0 159 0 -5 1.0 181 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3720
	      activeHelpKey: detailsAccessCharaterPosition
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3721
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3722
	      model: accessCharacterPosition
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3723
	      group: inputGroup
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3724
	      type: numberOrNil
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3725
	      immediateAccept: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3726
	      acceptOnReturn: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3727
	      acceptOnTab: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3728
	      acceptChannel: acceptChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3729
	      modifiedChannel: modifiedChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3730
	      acceptOnPointerLeave: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3731
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3732
	   (CheckBoxSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3733
	      label: 'Ignore Accelerator (i.e. Display Only)'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3734
	      name: 'ignoreShortcutKeysInItem'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3735
	      layout: (AlignmentOrigin 42 0 204 0 0 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3736
	      activeHelpKey: detailsIgnoreAcceleratorKeys
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3737
	      visibilityChannel: hasNoSubmenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3738
	      model: ignoreShortcutKeys
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3739
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3740
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3741
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3742
	   (CheckBoxSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3743
	      label: 'Ignore Accelerators in Submenu'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3744
	      name: 'ignoreShortcutKeys'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3745
	      layout: (AlignmentOrigin 42 0 204 0 0 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3746
	      activeHelpKey: detailsIgnoreAcceleratorKeys
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3747
	      visibilityChannel: hasSubmenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3748
	      model: ignoreShortcutKeys
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3749
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3750
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3751
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3752
	   (CheckBoxSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3753
	      label: 'Ignore Mnemonics in Submenu'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3754
	      name: 'ignoreMnemonicKeys'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3755
	      layout: (AlignmentOrigin 42 0 232 0 0 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3756
	      activeHelpKey: detailsIgnoreMnemonicKeys
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3757
	      visibilityChannel: hasSubmenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3758
	      model: ignoreMnemonicKeys
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3759
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3760
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3761
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3762
	   (LabelSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3763
	      label: 'Font:'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3764
	      name: 'fontLabel'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3765
	      layout: (AlignmentOrigin 107 0 271 0 1 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3766
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3767
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3768
	      adjust: right
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3769
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3770
	   (FontMenuSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3771
	      name: 'fontMenu'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3772
	      layout: (LayoutFrame 110 0 260 0 -5 1.0 282 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3773
	      activeHelpKey: fontMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3774
	      model: font
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3775
	      allowSymbolicFonts: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3776
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3777
	   )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3778
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3779
	)
1454
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3780
      )
2122
417dabd716d5 new startGroup value: #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2118
diff changeset
  3781
2810
Claus Gittinger <cg@exept.de>
parents: 2798
diff changeset
  3782
    "Modified: / 21-10-2010 / 14:15:09 / cg"
1454
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3783
! !
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3784
1725
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  3785
!MenuEditor::Item class methodsFor:'interface-editor'!
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  3786
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  3787
addBindingsTo:aspects for:aMenuEditor
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  3788
    "add additional bindings to the aspects
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  3789
    "
2341
5e96eeacf346 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2337
diff changeset
  3790
    aspects at:#notDelayedMenu ifAbsentPut:[true asValue].
5e96eeacf346 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2337
diff changeset
  3791
    aspects at:#hasSubmenu ifAbsentPut:[false asValue].
5e96eeacf346 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2337
diff changeset
  3792
    aspects at:#hasNoSubmenu ifAbsentPut:[true asValue].
1725
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  3793
! !
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  3794
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3795
!MenuEditor::Item class methodsFor:'testing'!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3796
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3797
separatorTypeOf:aString
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3798
    |size first|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3799
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3800
    size := aString size.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3801
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3802
    size == 0 ifTrue:[ ^ #blank ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3803
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3804
    size == 1 ifTrue:[
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3805
	first := aString first.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3806
	first == $-                ifTrue:[ ^ #single ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3807
	first == $=                ifTrue:[ ^ #double ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3808
	first == (Character space) ifTrue:[ ^ #blank  ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3809
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3810
    ^ nil
1454
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3811
! !
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3812
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3813
!MenuEditor::Item methodsFor:'accessing'!
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3814
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3815
children
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3816
    "optimize access; do not ask the model for unspecified children
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3817
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3818
    ^ children
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3819
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3820
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3821
menuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3822
     "returns self as a MenuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3823
    "
2168
8ebed0b2d3c8 use decodeFromLiteralArray:
Claus Gittinger <cg@exept.de>
parents: 2161
diff changeset
  3824
    ^ MenuItem decodeFromLiteralArray:(menuItem literalArrayEncoding).
8ebed0b2d3c8 use decodeFromLiteralArray:
Claus Gittinger <cg@exept.de>
parents: 2161
diff changeset
  3825
8ebed0b2d3c8 use decodeFromLiteralArray:
Claus Gittinger <cg@exept.de>
parents: 2161
diff changeset
  3826
    "Modified: / 27-03-2007 / 08:43:14 / cg"
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3827
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3828
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3829
menuItem:aMenuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3830
    "rebuild self from a MenuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3831
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3832
    |value|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3833
3138
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  3834
    menuItem := MenuItem label:(self rawLabel).
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3835
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3836
    MenuEditor aspects do:[:aKey|
3138
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  3837
        value := self validateValue:(aMenuItem perform:aKey).
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  3838
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  3839
        value notNil ifTrue:[
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  3840
            self aspectAt:aKey put:value.
6fe10704089b class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3135
diff changeset
  3841
        ].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3842
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3843
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3844
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3845
rawLabel
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3846
    "returns the label assigned to the item
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3847
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3848
    ^ menuItem rawLabel
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3849
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3850
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3851
rawLabel:aValue
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3852
    "set the label assigned to the item
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3853
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3854
    aValue isString ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3855
	"/ KLUDGE alarm: '-' and '' indicate a separator
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3856
	"/ (there is no separate menuItem class for them)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3857
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3858
	(self isKindOfMenu or:[(self class separatorTypeOf:aValue) isNil]) ifTrue:[
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3859
	    menuItem rawLabel:aValue
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3860
	]
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3861
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3862
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3863
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3864
slices
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3865
    "returns a sequence of supported slices
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3866
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3867
    ^ self subclassResponsibility
1454
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3868
!
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3869
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3870
submenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3871
    "returns the submenu (of class Menu) or nil
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3872
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3873
    ^ nil
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  3874
!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  3875
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  3876
translateLabel:aBoolean
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  3877
    menuItem translateLabel:aBoolean
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3878
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3879
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3880
!MenuEditor::Item methodsFor:'aspects'!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3881
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3882
aspectAt:aKey put:aValue
2075
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  3883
    "set a specific aspect named aKey to the aValue"
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  3884
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3885
    aKey == #rawLabel       ifTrue:[ ^ self rawLabel:aValue ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3886
    aKey == #submenuChannel ifTrue:[ ^ self ].
3095
f7491ef4bcf0 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3087
diff changeset
  3887
    menuItem perform:(aKey asMutator) with:aValue.
2075
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  3888
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  3889
    "Modified: / 05-09-2006 / 17:47:19 / cg"
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3890
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3891
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3892
fromAspects:aspects
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3893
    "read values from aspects
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3894
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3895
    MenuEditor aspects do:[:aKey|
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3896
	self aspectAt:aKey put:((aspects at:aKey) value).
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3897
    ].
2189
2ee8670e6307 bugfix 745 - argument not removeable
ca
parents: 2188
diff changeset
  3898
    self validateMenuItem.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3899
    self changed.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3900
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3901
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3902
toAspects:aspects
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3903
    "write values to aspects
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3904
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3905
    MenuEditor aspects do:[:aKey|
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3906
	(aspects at:aKey) value:(menuItem perform:aKey)
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3907
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3908
    (aspects at:#notDelayedMenu) value:(self isDelayedMenu not).
1778
32befdc61270 support ignoreShortcutKeys and ignoreMnemonicKeys in Editor
ca
parents: 1775
diff changeset
  3909
    (aspects at:#hasSubmenu)     value:(self isKindOfMenu or:[self children size ~~ 0]).
2010
f5f5a961cfa8 ignoreShortcutKeys also blocks individual items
Claus Gittinger <cg@exept.de>
parents: 2008
diff changeset
  3910
    (aspects at:#hasNoSubmenu)   value:(self isKindOfMenu not ).
2189
2ee8670e6307 bugfix 745 - argument not removeable
ca
parents: 2188
diff changeset
  3911
!
2ee8670e6307 bugfix 745 - argument not removeable
ca
parents: 2188
diff changeset
  3912
2ee8670e6307 bugfix 745 - argument not removeable
ca
parents: 2188
diff changeset
  3913
validateMenuItem
2ee8670e6307 bugfix 745 - argument not removeable
ca
parents: 2188
diff changeset
  3914
    "validate the menuItem for correctness"
2ee8670e6307 bugfix 745 - argument not removeable
ca
parents: 2188
diff changeset
  3915
2ee8670e6307 bugfix 745 - argument not removeable
ca
parents: 2188
diff changeset
  3916
    menuItem isNil ifTrue:[^ self].
2ee8670e6307 bugfix 745 - argument not removeable
ca
parents: 2188
diff changeset
  3917
2ee8670e6307 bugfix 745 - argument not removeable
ca
parents: 2188
diff changeset
  3918
    menuItem choice isEmptyOrNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3919
	menuItem choice:nil.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  3920
	menuItem choiceValue:nil.
2189
2ee8670e6307 bugfix 745 - argument not removeable
ca
parents: 2188
diff changeset
  3921
    ].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3922
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3923
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3924
!MenuEditor::Item methodsFor:'displaying'!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3925
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3926
displayLabel
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3927
    "returns the label on default displayed on the screen
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3928
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3929
    ^ menuItem rawLabel
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3930
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3931
3178
58100b56595d class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3165
diff changeset
  3932
displayOn:aGC x:x y:y h:h isHighlightedAsSelected:isHighlightedAsSelected
58100b56595d class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3165
diff changeset
  3933
    "display the item in the graphicsContext, aGC"
58100b56595d class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3165
diff changeset
  3934
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3935
    |label|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3936
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3937
    label := self displayLabel.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3938
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3939
    label notNil ifTrue:[
3178
58100b56595d class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3165
diff changeset
  3940
        self displayLabel:label h:(self heightOn:aGC) on:aGC x:x y:y h:h isHighlightedAsSelected:isHighlightedAsSelected
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3941
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3942
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3943
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3944
heightOn:aGC
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3945
    "returns the height of the label on a GC
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3946
    "
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  3947
    height isNil ifTrue:[ height := parent heightOn:aGC ].
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  3948
    ^ height
1454
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3949
!
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3950
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3951
label
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3952
    "get the rawLabel assigned to the item
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3953
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3954
    ^ menuItem rawLabel
1454
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3955
!
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3956
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3957
label:aLabel
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3958
    "set the rawLabel assigned to the item
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3959
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3960
    self rawLabel:aLabel
1454
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3961
!
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3962
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3963
widthOn:aGC
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3964
    "returns the height of the displayLabel on a GC
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3965
    "
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  3966
    width isNil ifTrue:[ width := self widthOf:(self displayLabel) on:aGC ].
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  3967
    ^ width
1454
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3968
! !
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3969
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3970
!MenuEditor::Item methodsFor:'initialization'!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3971
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3972
initialize
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3973
    super initialize.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3974
    menuItem := MenuItem label:(self class defaultLabel).
1454
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3975
! !
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3976
1653
1798c7bcb787 test whether attributes from MenuItem are not a block or model
ca
parents: 1645
diff changeset
  3977
!MenuEditor::Item methodsFor:'private'!
1798c7bcb787 test whether attributes from MenuItem are not a block or model
ca
parents: 1645
diff changeset
  3978
1798c7bcb787 test whether attributes from MenuItem are not a block or model
ca
parents: 1645
diff changeset
  3979
validateValue:aValue
1798c7bcb787 test whether attributes from MenuItem are not a block or model
ca
parents: 1645
diff changeset
  3980
    "if we pick a menupanel, the values of an item can be
1798c7bcb787 test whether attributes from MenuItem are not a block or model
ca
parents: 1645
diff changeset
  3981
     a block model, ....
1798c7bcb787 test whether attributes from MenuItem are not a block or model
ca
parents: 1645
diff changeset
  3982
    "
1798c7bcb787 test whether attributes from MenuItem are not a block or model
ca
parents: 1645
diff changeset
  3983
    aValue notNil ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3984
	aValue isBlock      ifTrue:[ ^ #block ].
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  3985
	aValue isValueModel ifTrue:[ ^ #valueModel ].
1653
1798c7bcb787 test whether attributes from MenuItem are not a block or model
ca
parents: 1645
diff changeset
  3986
    ].
1798c7bcb787 test whether attributes from MenuItem are not a block or model
ca
parents: 1645
diff changeset
  3987
    ^ aValue
1798c7bcb787 test whether attributes from MenuItem are not a block or model
ca
parents: 1645
diff changeset
  3988
! !
1798c7bcb787 test whether attributes from MenuItem are not a block or model
ca
parents: 1645
diff changeset
  3989
1454
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3990
!MenuEditor::Item methodsFor:'queries'!
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  3991
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3992
isAction
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3993
    "returns true if the item is an Action
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3994
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3995
    ^ false
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3996
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3997
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3998
isDelayedMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  3999
    "returns true if the item is a Delayed (Linked) Menu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4000
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4001
    ^ parent isAction
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4002
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4003
3135
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  4004
isKindOfLinkedMenu
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  4005
    "returns true if the item is a Linked Menu
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  4006
    "
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  4007
    ^ false
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  4008
!
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  4009
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4010
isKindOfMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4011
    "returns true if the item is a Linked Menu or Menu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4012
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4013
    ^ false
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4014
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4015
3135
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  4016
isKindOfNonLinkedMenu
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  4017
    "returns true if the item is a Linked Menu
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  4018
    "
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  4019
    ^ false
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  4020
!
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  4021
1633
24748704c741 checkin from browser
ca
parents: 1632
diff changeset
  4022
isMenuEditItem
24748704c741 checkin from browser
ca
parents: 1632
diff changeset
  4023
    ^ true
24748704c741 checkin from browser
ca
parents: 1632
diff changeset
  4024
!
24748704c741 checkin from browser
ca
parents: 1632
diff changeset
  4025
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4026
isRootItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4027
    "returns true if the item is the root item
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4028
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4029
    ^ false
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4030
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4031
1660
442cdb5b1e0b category change
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  4032
!MenuEditor::Item methodsFor:'queries-editor'!
1614
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  4033
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  4034
actionSelectors
2232
1613b21d0095 ca's english language and wierd indentation code cleanup
Claus Gittinger <cg@exept.de>
parents: 2189
diff changeset
  4035
    "return my action selectors"
1613b21d0095 ca's english language and wierd indentation code cleanup
Claus Gittinger <cg@exept.de>
parents: 2189
diff changeset
  4036
1614
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  4037
    |value|
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  4038
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  4039
    value := menuItem value.
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  4040
    value isSymbol ifTrue:[ ^ Array with:value ].
2232
1613b21d0095 ca's english language and wierd indentation code cleanup
Claus Gittinger <cg@exept.de>
parents: 2189
diff changeset
  4041
    ^ #()
1614
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  4042
!
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  4043
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  4044
aspectSelectors
2232
1613b21d0095 ca's english language and wierd indentation code cleanup
Claus Gittinger <cg@exept.de>
parents: 2189
diff changeset
  4045
    "return my aspect selectors"
1613b21d0095 ca's english language and wierd indentation code cleanup
Claus Gittinger <cg@exept.de>
parents: 2189
diff changeset
  4046
1614
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  4047
    |aspects|
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  4048
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  4049
    aspects := OrderedCollection new.
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  4050
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  4051
    #( indication choice enabled isVisible ) do:[:aKey| |sel|
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4052
	sel := menuItem perform:aKey.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4053
	sel isSymbol ifTrue:[ aspects add:sel ]
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  4054
    ].
1614
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  4055
    ^ aspects
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  4056
! !
46cc531eecc6 add code generation
ca
parents: 1610
diff changeset
  4057
1660
442cdb5b1e0b category change
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  4058
!MenuEditor::Item methodsFor:'queries-operation'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4059
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4060
canAddChildren
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4061
    "returns true if children can be added
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4062
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4063
    ^ false
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4064
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4065
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4066
canAddDelayedMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4067
    "returns true if a delayed menu can be added;
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4068
     on default false is returned
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4069
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4070
    ^ false
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4071
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4072
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4073
canMoveInAbove
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4074
    "returns true if the item can become a child of its previous sibling
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4075
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4076
    |siblings index nextItem|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4077
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4078
    siblings := parent children.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4079
    siblings size > 1 ifFalse:[ ^ false ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4080
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4081
    index    := siblings identityIndexOf:self.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4082
    nextItem := siblings at:(index - 1)  ifAbsent:nil.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4083
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  4084
    nextItem isNil ifTrue:[^ false].
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  4085
    ^ nextItem canAddChildren
1454
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  4086
!
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  4087
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4088
canMoveInNext
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4089
    "returns true if the item can become a child of its next sibling
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4090
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4091
    |siblings index nextItem|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4092
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4093
    siblings := parent children.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4094
    siblings size > 1 ifFalse:[ ^ false ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4095
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4096
    index    := siblings identityIndexOf:self.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4097
    nextItem := siblings at:(index + 1)  ifAbsent:nil.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4098
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  4099
    nextItem isNil ifTrue:[^ false].
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  4100
    ^ nextItem canAddChildren
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4101
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4102
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4103
canMoveOut
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4104
    "returns true if the item can be moved out from its current parent
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4105
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4106
    self   isDelayedMenu ifTrue:[^ false].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4107
    parent isDelayedMenu ifTrue:[^ false].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4108
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4109
  ^ parent parent notNil
1454
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  4110
!
367b8342663e checkin from browser
Stefan Vogel <sv@exept.de>
parents: 1430
diff changeset
  4111
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4112
canMoveUpOrDown
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4113
    "returns true if the item can change its vertical order in its sibling
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4114
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4115
    ^ parent children size > 1
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4116
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4117
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4118
!MenuEditor::ImageResourceEditor class methodsFor:'interface specs'!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4119
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4120
windowSpec
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4121
    "This resource specification was automatically generated
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4122
     by the UIPainter of ST/X."
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4123
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4124
    "Do not manually edit this!! If it is corrupted,
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4125
     the UIPainter may not be able to read the specification."
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4126
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4127
    "
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4128
     UIPainter new openOnClass:MenuEditor::ImageResourceEditor andSelector:#windowSpec
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4129
     MenuEditor::ImageResourceEditor new openInterface:#windowSpec
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4130
     MenuEditor::ImageResourceEditor open
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4131
    "
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4132
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4133
    <resource: #canvas>
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4134
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4135
    ^
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4136
     #(FullSpec
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4137
	name: windowSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4138
	window:
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4139
       (WindowSpec
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4140
	  label: 'Image Item'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4141
	  name: 'Image Item'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4142
	  min: (Point 10 10)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4143
	  bounds: (Rectangle 0 0 303 304)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4144
	)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4145
	component:
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4146
       (SpecCollection
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4147
	  collection: (
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4148
	   (LabelSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4149
	      label: 'Retriever:'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4150
	      name: 'retrieverLabel'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4151
	      layout: (AlignmentOrigin 107 0 26 0 1 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4152
	      activeHelpKey: imageRetriever
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4153
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4154
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4155
	      adjust: right
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4156
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4157
	   (ComboBoxSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4158
	      name: 'retrieverHolder'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4159
	      layout: (LayoutFrame 110 0 15 0 -2 1.0 37 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4160
	      activeHelpKey: imageRetriever
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4161
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4162
	      model: retrieverHolder
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4163
	      type: symbolOrNil
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4164
	      immediateAccept: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4165
	      acceptOnReturn: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4166
	      acceptOnTab: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4167
	      acceptOnPointerLeave: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4168
	      entryCompletionBlock: entryCompletionForRetriever
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4169
	      comboList: retrieverList
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4170
	      isFilenameBox: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4171
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4172
	   (LabelSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4173
	      label: 'Selector:'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4174
	      name: 'iconLabel'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4175
	      layout: (AlignmentOrigin 107 0 51 0 1 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4176
	      activeHelpKey: imageSelector
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4177
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4178
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4179
	      adjust: right
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4180
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4181
	   (InputFieldSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4182
	      name: 'selectorHolder'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4183
	      layout: (LayoutFrame 110 0 40 0 -24 1.0 62 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4184
	      activeHelpKey: imageSelector
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4185
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4186
	      model: selectorHolder
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4187
	      group: inputGroup
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4188
	      type: symbolOrNil
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4189
	      immediateAccept: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4190
	      acceptOnReturn: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4191
	      acceptOnTab: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4192
	      modifiedChannel: modifiedChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4193
	      acceptOnPointerLeave: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4194
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4195
	   (ActionButtonSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4196
	      label: '...'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4197
	      name: 'browseButton'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4198
	      layout: (LayoutFrame -22 1 40 0 -2 1 62 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4199
	      activeHelpKey: browseResource
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4200
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4201
	      model: doBrowseForImageResource
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4202
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4203
	   (DividerSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4204
	      name: 'Separator1'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4205
	      layout: (LayoutFrame 0 0.0 66 0 0 1.0 70 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4206
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4207
	   (ViewSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4208
	      name: 'SelectorFilterBox2'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4209
	      layout: (LayoutFrame 0 0.0 74 0 0 1.0 96 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4210
	      activeHelpKey: selectorFilter
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4211
	      component:
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4212
	     (SpecCollection
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4213
		collection: (
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4214
		 (LabelSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4215
		    label: 'Filter:'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4216
		    name: 'Label1'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4217
		    layout: (AlignmentOrigin 107 0 11 0 1 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4218
		    activeHelpKey: selectorFilter
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4219
		    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4220
		    resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4221
		    adjust: right
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4222
		  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4223
		 (InputFieldSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4224
		    name: 'EntryField1'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4225
		    layout: (LayoutFrame 110 0 0 0 -2 1 22 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4226
		    model: selectorFilterHolder
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4227
		    immediateAccept: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4228
		    acceptOnLeave: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4229
		    acceptOnReturn: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4230
		    acceptOnTab: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4231
		    acceptOnPointerLeave: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4232
		    activeHelpKey: selectorFilter
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4233
		  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4234
		 )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4235
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4236
	      )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4237
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4238
	   (HierarchicalListViewSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4239
	      name: 'imageList'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4240
	      layout: (LayoutFrame 2 0.0 100 0 -2 1.0 -60 1.0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4241
	      activeHelpKey: imageImageList
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4242
	      model: imageHolder
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4243
	      menu: menuEditImage
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4244
	      hasHorizontalScrollBar: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4245
	      hasVerticalScrollBar: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4246
	      miniScrollerHorizontal: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4247
	      listModel: imageList
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4248
	      useIndex: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4249
	      highlightMode: label
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4250
	      postBuildCallback: postBuildImageViewer:
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4251
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4252
	   (ViewSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4253
	      name: 'Box1'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4254
	      layout: (LayoutFrame 20 0.0 -60 1.0 -20 1.0 0 1.0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4255
	      level: 0
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4256
	      component:
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4257
	     (SpecCollection
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4258
		collection: (
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4259
		 (CheckBoxSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4260
		    label: 'Image & Label'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4261
		    name: 'iconAndLabelCheckBox'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4262
		    layout: (AlignmentOrigin 0 0 17 0 0 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4263
		    activeHelpKey: imageImageAndLabel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4264
		    tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4265
		    model: iconAndLabelHolder
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4266
		    translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4267
		  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4268
		 (ActionButtonSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4269
		    label: 'Image Editor'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4270
		    name: 'imageEditorButton'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4271
		    layout: (AlignmentOrigin -69 1.0 17 0 0 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4272
		    activeHelpKey: imageImageEditor
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4273
		    hasCharacterOrientedLabel: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4274
		    foregroundColor: (Color 0.0 0.0 66.9993133440146)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4275
		    tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4276
		    model: doEditImage
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4277
		  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4278
		 (ActionButtonSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4279
		    label: 'Browse'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4280
		    name: 'Button1'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4281
		    layout: (AlignmentOrigin -69 1.0 41 0 0 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4282
		    activeHelpKey: imageBrowseImageClass
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4283
		    hasCharacterOrientedLabel: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4284
		    foregroundColor: (Color 0.0 0.0 66.9993133440146)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4285
		    tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4286
		    model: doBrowseImageClass
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4287
		  )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4288
		 )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4289
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4290
	      )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4291
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4292
	   )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4293
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4294
	)
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4295
      )
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4296
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4297
    "Modified: / 03-08-2011 / 10:16:13 / cg"
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4298
! !
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4299
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4300
!MenuEditor::ImageResourceEditor methodsFor:'accessing'!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4301
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4302
resourceRetriever
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4303
    |rcv sel cls clsName|
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4304
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4305
    sel := selectorHolder value.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4306
    sel size == 0 ifTrue:[ ^ nil ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4307
    cls := self retrieverClass.
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4308
    cls notNil ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4309
	clsName := retrieverHolder value.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4310
	clsName isEmptyOrNil ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4311
	    clsName := cls name.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4312
	].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4313
	clsName := clsName asSymbol.
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4314
    ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4315
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4316
    rcv := ResourceRetriever new.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4317
    rcv className:clsName.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4318
    rcv selector:sel.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4319
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4320
    iconAndLabelHolder value ifTrue:[ rcv labelText:'' ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4321
    ^ rcv
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4322
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4323
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4324
resourceRetriever:aResourceRetriever
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4325
    |className sel isOn|
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4326
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4327
    aResourceRetriever notNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4328
	className := aResourceRetriever className.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4329
	className isBehavior ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4330
	    className := className name asSymbol
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4331
	].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4332
	sel  := aResourceRetriever selector.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4333
	isOn := aResourceRetriever labelText notNil.
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4334
    ] ifFalse:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4335
	className := sel := nil.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4336
	isOn := false.
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4337
    ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4338
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4339
    retrieverHolder value:className.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4340
    selectorHolder  value:sel.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4341
    iconAndLabelHolder value:isOn.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4342
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4343
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4344
retrieverClass
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4345
    |clsName cls|
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4346
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4347
    clsName  := retrieverHolder value.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4348
    clsName notEmptyOrNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4349
	cls := Smalltalk at:clsName ifAbsent:nil.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4350
	(cls isBehavior) ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4351
	    ^ cls
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4352
	].
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4353
    ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4354
    ^ nil
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4355
! !
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4356
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4357
!MenuEditor::ImageResourceEditor methodsFor:'actions'!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4358
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4359
doBrowseForImageResource
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4360
    "opens a browser on image-resource methods"
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4361
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4362
    |classAndSelector|
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4363
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4364
    classAndSelector := ResourceSelectionBrowser
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4365
		request:'Use Image From Class'
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4366
		onSuperclass:nil
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4367
		andClass:(self retrieverClass)
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4368
		andSelector:(selectorHolder value)
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4369
		withResourceTypes:#(image fileImage programImage).
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4370
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4371
    classAndSelector isNil ifTrue:[ ^ self ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4372
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4373
    retrieverHolder value:(classAndSelector methodClass) name.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4374
    selectorHolder  value:(classAndSelector methodSelector).
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4375
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4376
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4377
doBrowseImageClass
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4378
    |cls sel image|
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4379
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4380
    (cls := retrieverHolder value) isNil ifTrue:[
3026
0bf0d52eb92e class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3016
diff changeset
  4381
        Dialog warn:'No resource retriever is defined.'.
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4382
    ] ifFalse:[
3026
0bf0d52eb92e class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3016
diff changeset
  4383
        sel := selectorHolder value.
0bf0d52eb92e class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3016
diff changeset
  4384
0bf0d52eb92e class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3016
diff changeset
  4385
        cls := Smalltalk classNamed:cls.
0bf0d52eb92e class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3016
diff changeset
  4386
        cls isNil ifTrue:[
0bf0d52eb92e class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3016
diff changeset
  4387
            Dialog warn:'No such resource retriever class.'.
0bf0d52eb92e class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3016
diff changeset
  4388
        ] ifFalse:[
0bf0d52eb92e class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3016
diff changeset
  4389
            (cls respondsTo:#visualFor:) ifTrue:[
0bf0d52eb92e class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3016
diff changeset
  4390
                image := cls visualFor:sel.
3087
bbbb798caa45 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3075
diff changeset
  4391
                image ~~ (cls perform:sel ifNotUnderstood:nil) ifTrue:[
3026
0bf0d52eb92e class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3016
diff changeset
  4392
                    self warn:'The image is resolved via #visualFor: from some unknown class'.
0bf0d52eb92e class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3016
diff changeset
  4393
                    sel := #visualFor:.
0bf0d52eb92e class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3016
diff changeset
  4394
                ].
0bf0d52eb92e class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3016
diff changeset
  4395
            ].
0bf0d52eb92e class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3016
diff changeset
  4396
            UserPreferences systemBrowserClass openInClass:cls class selector:sel
0bf0d52eb92e class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3016
diff changeset
  4397
        ]
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4398
    ]
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4399
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4400
    "Created: / 20-09-2010 / 13:27:34 / cg"
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4401
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4402
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4403
doEditImage
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4404
    |sel cls item image|
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4405
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4406
    item := imageHolder value.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4407
    item notNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4408
	item doEdit.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4409
	^ self.
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4410
    ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4411
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4412
    sel := selectorHolder value.
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4413
    sel isNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4414
	Dialog warn:'No selector is defined.'.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4415
	^ self.
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4416
    ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4417
    cls := retrieverHolder value.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4418
    cls isNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4419
	Dialog warn:'No resource retriever is defined.'.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4420
	^ self.
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4421
    ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4422
    cls := Smalltalk classNamed:cls.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4423
    cls isNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4424
	Dialog warn:'No such resource retriever class.'.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4425
	^ self.
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4426
    ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4427
    (cls respondsTo:#visualFor:) ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4428
	image := cls visualFor:sel.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4429
	image ~~ (cls perform:sel ifNotUnderstood:nil) ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4430
	    self warn:'The image is resolved via #visualFor: from some unknown class'.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4431
	    image notNil ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4432
		ImageEditor openOnImage:image.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4433
	    ].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4434
	    ^ self.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4435
	].
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4436
    ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4437
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4438
    ImageEditor openOnClass:cls andSelector:sel
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4439
! !
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4440
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4441
!MenuEditor::ImageResourceEditor methodsFor:'aspects'!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4442
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4443
entryCompletionForRetriever
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4444
    ^ DoWhatIMeanSupport classNameEntryCompletionBlock.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4445
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4446
    "Modified: / 10-08-2006 / 12:55:22 / cg"
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4447
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4448
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4449
iconAndLabelHolder
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4450
    ^ iconAndLabelHolder
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4451
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4452
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4453
imageHolder
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4454
    ^ imageHolder.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4455
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4456
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4457
imageList
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4458
    ^ imageList
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4459
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4460
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4461
modifiedChannel
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4462
    ^ builder booleanValueAspectFor: #modifiedChannel
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4463
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4464
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4465
modifiedChannel:aChannel
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4466
    builder aspectAt:#modifiedChannel put:aChannel.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4467
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4468
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4469
retrieverHolder
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4470
    ^ retrieverHolder
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4471
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4472
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4473
retrieverList
3165
c4e94501002c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3138
diff changeset
  4474
    |listOfClassNames cls owner|
c4e94501002c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3138
diff changeset
  4475
c4e94501002c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3138
diff changeset
  4476
    listOfClassNames := builder bindingAt:#retrieverList.
c4e94501002c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3138
diff changeset
  4477
    listOfClassNames isNil ifTrue:[
c4e94501002c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3138
diff changeset
  4478
        listOfClassNames := MenuEditor imageRetrieverClasses asList.
c4e94501002c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3138
diff changeset
  4479
        builder aspectAt:#retrieverList put:listOfClassNames.
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4480
    ].
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4481
    (masterApplication notNil
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4482
     and:[(cls := masterApplication specClass) notNil]) ifTrue:[
3165
c4e94501002c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3138
diff changeset
  4483
        (listOfClassNames includes:cls name) ifFalse:[ listOfClassNames addFirst:cls name ].
c4e94501002c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3138
diff changeset
  4484
        cls isPrivate ifTrue:[
c4e94501002c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3138
diff changeset
  4485
            (owner := cls owningClass) notNil ifTrue:[
c4e94501002c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3138
diff changeset
  4486
                (listOfClassNames includes:owner name) ifFalse:[ listOfClassNames addFirst:owner name ].   
c4e94501002c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3138
diff changeset
  4487
            ].
c4e94501002c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3138
diff changeset
  4488
        ].
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4489
    ].
3165
c4e94501002c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3138
diff changeset
  4490
    ^ listOfClassNames
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4491
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4492
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4493
selectorFilterHolder
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4494
    ^ selectorFilterHolder
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4495
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4496
    "Created: / 03-08-2011 / 10:01:05 / cg"
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4497
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4498
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4499
selectorHolder
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4500
    ^ selectorHolder.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4501
! !
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4502
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4503
!MenuEditor::ImageResourceEditor methodsFor:'change & update'!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4504
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4505
retrieverChanged
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4506
    |retriever list name|
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4507
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4508
    retriever := self retrieverClass.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4509
    imageHolder setValue:nil.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4510
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4511
    self updateImageList.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4512
    self updateSelectedImage.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4513
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4514
    (retriever notNil and:[imageList size ~~ 0]) ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4515
	list := self retrieverList.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4516
	name := retriever name.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4517
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4518
	(list includes:name) ifFalse:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4519
	    list add:(name asSymbol).
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4520
	]
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4521
    ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4522
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4523
    "Modified: / 03-08-2011 / 10:56:58 / cg"
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4524
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4525
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4526
selectorChanged
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4527
    self updateSelectedImage.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4528
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4529
    "Modified: / 03-08-2011 / 10:56:04 / cg"
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4530
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4531
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4532
selectorFilterChanged
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4533
    self updateImageList.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4534
    self updateSelectedImage.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4535
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4536
    "Created: / 03-08-2011 / 10:58:47 / cg"
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4537
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4538
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4539
update:what with:aPara from:aModel
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4540
    |item|
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4541
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4542
    self modifiedChannel value:true.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4543
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4544
    aModel == retrieverHolder ifTrue:[ self retrieverChanged. ^ self ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4545
    aModel == selectorHolder ifTrue:[ self selectorChanged. ^ self  ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4546
    aModel == selectorFilterHolder ifTrue:[ self selectorFilterChanged. ^ self  ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4547
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4548
    aModel == imageHolder ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4549
	item := imageHolder value.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4550
	item notNil ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4551
	    selectorHolder value:(item label)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4552
	].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4553
	^ self
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4554
    ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4555
    super update:what with:aPara from:aModel
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4556
2862
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  4557
    "Modified: / 29-11-2011 / 11:28:26 / cg"
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4558
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4559
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4560
updateImageList
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4561
    |retriever selectorFilterString filter|
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4562
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4563
    retriever := self retrieverClass.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4564
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4565
    filter := [:sel | true].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4566
    (selectorFilterString := selectorFilterHolder value) notEmptyOrNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4567
	selectorFilterString includesMatchCharacters ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4568
	    filter := [:sel | selectorFilterString match:sel ignoreCase:true].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4569
	] ifFalse:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4570
	    filter := [:sel | sel includesString:selectorFilterString].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4571
	].
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4572
    ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4573
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4574
    imageList root updateFromClass:retriever selectorFilter:filter.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4575
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4576
    "Created: / 03-08-2011 / 10:56:41 / cg"
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4577
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4578
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4579
updateSelectedImage
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4580
    "provider or selector has changed; select it in the list"
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4581
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4582
    |item selector line|
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4583
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4584
    imageList isEmpty ifTrue:[^ self].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4585
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4586
    selector := selectorHolder value.
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4587
    selector isEmptyOrNil ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4588
	imageHolder value:nil.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4589
	^ self
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4590
    ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4591
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4592
    item     := nil.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4593
    selector := selector asSymbol.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4594
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4595
    imageList do:[:anItem|
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4596
	|sel|
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4597
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4598
	sel := anItem selector.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4599
	selector == sel ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4600
	    imageHolder value:anItem.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4601
	    ^ self
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4602
	].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4603
	item isNil ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4604
	    (sel startsWith:selector) ifTrue:[ item := anItem ]
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4605
	]
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4606
    ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4607
    imageHolder value:nil.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4608
2862
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  4609
    item notNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4610
	line := imageList identityIndexOf:item.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4611
	line ~~ 0 ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4612
	    "/ imageListView scrollToLine:line
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4613
	    imageListView makeLineVisible:line
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4614
	]
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4615
    ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4616
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4617
    "Created: / 03-08-2011 / 10:55:45 / cg"
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4618
! !
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4619
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4620
!MenuEditor::ImageResourceEditor methodsFor:'initialization'!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4621
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4622
initialize
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4623
    super initialize.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4624
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4625
    iconAndLabelHolder := true asValue.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4626
    iconAndLabelHolder addDependent:self.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4627
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4628
    imageHolder := nil asValue.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4629
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4630
    selectorHolder := nil asValue.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4631
    selectorHolder addDependent:self.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4632
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4633
    imageList := HierarchicalList new.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4634
    imageList application:self.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4635
    imageList root:(ImageResourceEditorItem new).
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4636
    imageList showRoot:false.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4637
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4638
    imageHolder := nil asValue.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4639
    imageHolder addDependent:self.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4640
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4641
    retrieverHolder := nil asValue.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4642
    retrieverHolder addDependent:self.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4643
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4644
    selectorFilterHolder := '' asValue.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4645
    selectorFilterHolder addDependent:self.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4646
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4647
    "Modified: / 03-08-2011 / 10:18:46 / cg"
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4648
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4649
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4650
postBuildImageViewer:aWidget
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4651
    imageListView := aWidget.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4652
! !
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4653
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4654
!MenuEditor::ImageResourceEditor::ImageResourceEditorItem methodsFor:'accessing'!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4655
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4656
icon
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4657
    ^ icon
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4658
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4659
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4660
label
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4661
    ^ selector
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4662
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4663
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4664
selector
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4665
    ^ selector
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4666
! !
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4667
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4668
!MenuEditor::ImageResourceEditor::ImageResourceEditorItem methodsFor:'instance creation'!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4669
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4670
forClass:aClass selector:aSelector
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4671
    |w h magnify iconOrSymbol|
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4672
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4673
    selector := aSelector asSymbol.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4674
    selector numArgs == 0 ifFalse:[^ self].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4675
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4676
    "do what the ResourceRetriever will do"
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4677
    (aClass respondsTo:#visualFor:) ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4678
	iconOrSymbol := aClass visualFor:selector.
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4679
    ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4680
    iconOrSymbol isNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4681
	iconOrSymbol := aClass perform:selector.
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4682
    ].
2948
b11312ccf82d class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 2946
diff changeset
  4683
    iconOrSymbol isNil ifTrue:[^ self].
b11312ccf82d class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 2946
diff changeset
  4684
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4685
    iconOrSymbol isSymbol ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4686
	icon := ToolbarIconLibrary perform:iconOrSymbol.
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4687
    ] ifFalse:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4688
	icon := iconOrSymbol.
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4689
    ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4690
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4691
    w := icon width.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4692
    h := icon height.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4693
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4694
    w > 32 ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4695
	magnify := 32 / w.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4696
	h > 32 ifTrue:[ magnify := (32 / h) max:magnify ].
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4697
    ] ifFalse:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4698
	h > 32 ifFalse:[^ self].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4699
	magnify := 32 / h.
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4700
    ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4701
    icon := icon magnifiedBy: magnify.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4702
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4703
    "Modified: / 13-04-2011 / 18:56:45 / cg"
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4704
    "Created: / 03-08-2011 / 10:47:16 / cg"
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4705
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4706
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4707
initialize
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4708
    super initialize.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4709
    children := #().
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4710
!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4711
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4712
updateFromClass:aClass selectorFilter:aFilterBlock
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4713
    (aClass notNil and:[aClass isBehavior]) ifFalse:[
3110
35a4010e8790 class: MenuEditor
Stefan Vogel <sv@exept.de>
parents: 3099
diff changeset
  4714
        ^ self collapse.
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4715
    ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4716
"/    aClass == selector ifTrue:[
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4717
"/        ^ self expand
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4718
"/    ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4719
    self collapse.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4720
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4721
    selector := aClass.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4722
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4723
    self application withWaitCursorDo:[
3110
35a4010e8790 class: MenuEditor
Stefan Vogel <sv@exept.de>
parents: 3099
diff changeset
  4724
        |methods|
35a4010e8790 class: MenuEditor
Stefan Vogel <sv@exept.de>
parents: 3099
diff changeset
  4725
        methods := aClass methodsWithAnyResource:#(image programImage).
35a4010e8790 class: MenuEditor
Stefan Vogel <sv@exept.de>
parents: 3099
diff changeset
  4726
        children := methods 
35a4010e8790 class: MenuEditor
Stefan Vogel <sv@exept.de>
parents: 3099
diff changeset
  4727
                        select:[:each| aFilterBlock value:each selector]
35a4010e8790 class: MenuEditor
Stefan Vogel <sv@exept.de>
parents: 3099
diff changeset
  4728
                        thenCollect:[:each|
35a4010e8790 class: MenuEditor
Stefan Vogel <sv@exept.de>
parents: 3099
diff changeset
  4729
                                |item|
35a4010e8790 class: MenuEditor
Stefan Vogel <sv@exept.de>
parents: 3099
diff changeset
  4730
                                item := self class new forClass:aClass selector:each selector.
35a4010e8790 class: MenuEditor
Stefan Vogel <sv@exept.de>
parents: 3099
diff changeset
  4731
                                item parent:self.
35a4010e8790 class: MenuEditor
Stefan Vogel <sv@exept.de>
parents: 3099
diff changeset
  4732
                        ].
35a4010e8790 class: MenuEditor
Stefan Vogel <sv@exept.de>
parents: 3099
diff changeset
  4733
35a4010e8790 class: MenuEditor
Stefan Vogel <sv@exept.de>
parents: 3099
diff changeset
  4734
        children sort:[:a :b | a label < b label ].
35a4010e8790 class: MenuEditor
Stefan Vogel <sv@exept.de>
parents: 3099
diff changeset
  4735
        self expand
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4736
    ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4737
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4738
    "Created: / 03-08-2011 / 10:48:10 / cg"
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4739
! !
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4740
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4741
!MenuEditor::ImageResourceEditor::ImageResourceEditorItem methodsFor:'user operations'!
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4742
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4743
doEdit
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4744
    "open image browser on self"
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4745
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4746
    |parent aClass image|
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4747
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4748
    parent := self parent.
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4749
    parent notNil ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4750
	aClass := parent selector.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4751
	(aClass respondsTo:#visualFor:) ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4752
	    image := aClass visualFor:selector.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4753
	    image ~~ (aClass perform:selector) ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4754
		self warn:'The image is resolved via #visualFor: from some unknown class'.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4755
		ImageEditor openOnImage:image.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4756
		^ self.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4757
	    ].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4758
	].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  4759
	ImageEditor openOnClass:aClass andSelector:selector.
2850
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4760
    ].
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4761
! !
3a5c3b8eedff added a selector filter (to the image resource tab)
Claus Gittinger <cg@exept.de>
parents: 2843
diff changeset
  4762
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  4763
!MenuEditor::ActionItem class methodsFor:'defaults'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4764
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4765
defaultLabel
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4766
    ^ 'Action'
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4767
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4768
1668
3e83796a3e0e category rename
Claus Gittinger <cg@exept.de>
parents: 1660
diff changeset
  4769
!MenuEditor::ActionItem class methodsFor:'interface specs'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4770
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4771
basicsEditSpec
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4772
    "This resource specification was automatically generated
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4773
     by the UIPainter of ST/X."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4774
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4775
    "Do not manually edit this!! If it is corrupted,
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4776
     the UIPainter may not be able to read the specification."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4777
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4778
    "
1634
1dd4cd7ea43b can now specify if menu action is to be performed by
ca
parents: 1633
diff changeset
  4779
     UIPainter new openOnClass:MenuEditor::ActionItem andSelector:#basicsEditSpec
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4780
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4781
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4782
    <resource: #canvas>
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  4783
3029
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4784
    ^ 
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  4785
     #(FullSpec
3029
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4786
        name: basicsEditSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4787
        window: 
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  4788
       (WindowSpec
3029
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4789
          label: 'basicsEditSpec'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4790
          name: 'basicsEditSpec'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4791
          min: (Point 10 10)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4792
          bounds: (Rectangle 0 0 340 340)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4793
        )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4794
        component: 
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  4795
       (SpecCollection
3029
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4796
          collection: (
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4797
           (LabelSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4798
              label: 'Name Key:'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4799
              name: 'nameKeyLabel'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4800
              layout: (AlignmentOrigin 107 0 25 0 1 0.5)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4801
              activeHelpKey: basicsKey
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4802
              translateLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4803
              resizeForLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4804
              adjust: right
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4805
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4806
           (InputFieldSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4807
              name: 'nameKeyField'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4808
              layout: (LayoutFrame 110 0 15 0 -5 1.0 37 0)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4809
              activeHelpKey: basicsKey
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4810
              tabable: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4811
              model: nameKey
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4812
              group: inputGroup
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4813
              type: symbolOrNil
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4814
              immediateAccept: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4815
              acceptOnLeave: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4816
              acceptOnReturn: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4817
              acceptOnTab: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4818
              acceptOnLostFocus: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4819
              acceptChannel: acceptChannel
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4820
              modifiedChannel: modifiedChannel
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4821
              acceptOnPointerLeave: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4822
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4823
           (LabelSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4824
              label: 'Label:'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4825
              name: 'labelLabel'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4826
              layout: (AlignmentOrigin 107 0 51 0 1 0.5)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4827
              activeHelpKey: basicsLabel
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4828
              translateLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4829
              resizeForLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4830
              adjust: right
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4831
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4832
           (InputFieldSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4833
              name: 'labelField'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4834
              layout: (LayoutFrame 110 0 40 0 -5 1.0 62 0)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4835
              activeHelpKey: basicsLabel
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4836
              tabable: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4837
              model: rawLabel
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4838
              group: inputGroup
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4839
              immediateAccept: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4840
              acceptOnReturn: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4841
              acceptOnTab: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4842
              acceptOnLostFocus: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4843
              acceptChannel: acceptChannel
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4844
              modifiedChannel: modifiedChannel
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4845
              acceptOnPointerLeave: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4846
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4847
           (LabelSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4848
              label: 'Action:'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4849
              name: 'valueLabel'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4850
              layout: (AlignmentOrigin 107 0 82 0 1 0.5)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4851
              activeHelpKey: basicsAction
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4852
              translateLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4853
              resizeForLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4854
              adjust: right
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4855
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4856
           (InputFieldSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4857
              name: 'valueField'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4858
              layout: (LayoutFrame 110 0 71 0 -25 1.0 93 0)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4859
              activeHelpKey: basicsAction
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4860
              tabable: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4861
              model: itemValue
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4862
              group: inputGroup
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4863
              type: symbolOrNil
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4864
              immediateAccept: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4865
              acceptOnLeave: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4866
              acceptOnReturn: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4867
              acceptOnTab: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4868
              acceptOnLostFocus: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4869
              acceptChannel: acceptChannel
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4870
              modifiedChannel: modifiedChannel
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4871
              acceptOnPointerLeave: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4872
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4873
           (ActionButtonSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4874
              label: 'browseActionImage'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4875
              name: 'Button1'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4876
              layout: (LayoutFrame -25 1 71 0 -5 1 93 0)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4877
              activeHelpKey: browseMethod
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4878
              hasCharacterOrientedLabel: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4879
              translateLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4880
              resizeForLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4881
              tabable: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4882
              model: doBrowseActionMethod
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4883
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4884
           (LabelSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4885
              label: 'Argument:'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4886
              name: 'argumentLabel'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4887
              layout: (AlignmentOrigin 107 0 107 0 1 0.5)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4888
              activeHelpKey: basicsArgument
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4889
              translateLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4890
              resizeForLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4891
              adjust: right
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4892
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4893
           (InputFieldSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4894
              name: 'argumentField'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4895
              layout: (LayoutFrame 110 0 96 0 -5 1.0 118 0)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4896
              activeHelpKey: basicsArgument
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4897
              tabable: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4898
              model: argument
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4899
              group: inputGroup
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4900
              type: smalltalkObjectOrNil
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4901
              immediateAccept: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4902
              acceptOnReturn: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4903
              acceptOnTab: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4904
              acceptOnLostFocus: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4905
              acceptChannel: acceptChannel
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4906
              modifiedChannel: modifiedChannel
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4907
              acceptOnPointerLeave: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4908
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4909
           (LabelSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4910
              label: 'Indication:'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4911
              name: 'indicationLabel'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4912
              layout: (AlignmentOrigin 107 0 138 0 1 0.5)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4913
              activeHelpKey: basicsIndication
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4914
              translateLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4915
              resizeForLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4916
              adjust: right
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4917
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4918
           (InputFieldSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4919
              name: 'indicationField'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4920
              layout: (LayoutFrame 110 0 127 0 -25 1.0 149 0)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4921
              activeHelpKey: basicsIndication
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4922
              enableChannel: indicationEnabled
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4923
              tabable: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4924
              model: indication
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4925
              group: inputGroup
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4926
              type: symbolOrNil
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4927
              immediateAccept: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4928
              acceptOnReturn: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4929
              acceptOnTab: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4930
              acceptOnLostFocus: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4931
              modifiedChannel: modifiedChannel
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4932
              acceptOnPointerLeave: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4933
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4934
           (ActionButtonSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4935
              label: 'browseActionImage'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4936
              name: 'Button2'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4937
              layout: (LayoutFrame -25 1 127 0 -5 1 149 0)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4938
              activeHelpKey: browseMethod
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4939
              hasCharacterOrientedLabel: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4940
              translateLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4941
              resizeForLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4942
              tabable: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4943
              model: doBrowseIndicationMethod
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4944
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4945
           (LabelSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4946
              label: 'Choice:'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4947
              name: 'choiceLabel'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4948
              layout: (AlignmentOrigin 107 0 163 0 1 0.5)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4949
              activeHelpKey: basicsChoice
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4950
              translateLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4951
              resizeForLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4952
              adjust: right
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4953
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4954
           (InputFieldSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4955
              name: 'choiceField'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4956
              layout: (LayoutFrame 110 0 152 0 -25 1.0 174 0)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4957
              activeHelpKey: basicsChoice
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4958
              enableChannel: choiceEnabled
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4959
              tabable: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4960
              model: choice
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4961
              group: inputGroup
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4962
              type: symbolOrNil
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4963
              immediateAccept: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4964
              acceptOnReturn: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4965
              acceptOnTab: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4966
              acceptOnLostFocus: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4967
              modifiedChannel: modifiedChannel
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4968
              acceptOnPointerLeave: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4969
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4970
           (ActionButtonSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4971
              label: 'browseActionImage'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4972
              name: 'Button3'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4973
              layout: (LayoutFrame -25 1 152 0 -5 1 174 0)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4974
              activeHelpKey: browseMethod
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4975
              hasCharacterOrientedLabel: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4976
              translateLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4977
              resizeForLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4978
              tabable: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4979
              model: doBrowseChoiceMethod
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4980
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4981
           (LabelSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4982
              label: 'Value:'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4983
              name: 'choiceValueLabel'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4984
              layout: (AlignmentOrigin 107 0 188 0 1 0.5)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4985
              activeHelpKey: basicsChoiceValue
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4986
              translateLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4987
              resizeForLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4988
              adjust: right
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4989
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4990
           (InputFieldSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4991
              name: 'choiceValueField'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4992
              layout: (LayoutFrame 110 0 177 0 -5 1.0 199 0)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4993
              activeHelpKey: basicsChoiceValue
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4994
              enableChannel: choiceValueEnabled
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4995
              tabable: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4996
              model: choiceValue
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4997
              group: inputGroup
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4998
              type: smalltalkObjectOrNil
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  4999
              immediateAccept: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5000
              acceptOnLeave: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5001
              acceptOnReturn: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5002
              acceptOnTab: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5003
              acceptOnLostFocus: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5004
              acceptChannel: acceptChannel
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5005
              modifiedChannel: modifiedChannel
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5006
              acceptOnPointerLeave: false
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5007
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5008
           (CheckBoxSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5009
              label: 'Translate Label'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5010
              name: 'translateLabelCheckBox'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5011
              layout: (AlignmentOrigin 7 0 213 0 0 0)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5012
              activeHelpKey: basicsTranslateLabel
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5013
              tabable: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5014
              model: translateLabel
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5015
              translateLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5016
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5017
           (CheckBoxSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5018
              label: 'Is Button'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5019
              name: 'isButtonCheckBox'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5020
              layout: (AlignmentOrigin 7 0 238 0 0 0)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5021
              activeHelpKey: basicsIsButton
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5022
              tabable: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5023
              model: isButton
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5024
              translateLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5025
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5026
           (CheckBoxSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5027
              label: 'Hide Menu after Activation'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5028
              name: 'hideMenuOnActivated'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5029
              layout: (AlignmentOrigin 7 0 263 0 0 0)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5030
              activeHelpKey: hideMenuOnActivated
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5031
              tabable: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5032
              model: hideMenuOnActivated
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5033
              translateLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5034
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5035
           (CheckBoxSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5036
              label: 'BusyCursor while Active'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5037
              name: 'showBusyCursorWhilePerforming'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5038
              layout: (AlignmentOrigin 7 0 288 0 0 0)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5039
              activeHelpKey: showBusyCursorWhilePerforming
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5040
              tabable: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5041
              model: showBusyCursorWhilePerforming
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5042
              translateLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5043
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5044
           (CheckBoxSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5045
              label: 'Trigger On Down'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5046
              name: 'triggerOnDown'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5047
              layout: (AlignmentOrigin 25 0.5 238 0 0 0)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5048
              activeHelpKey: triggerOnDown
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5049
              enableChannel: hasNoDelayedMenuValue
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5050
              tabable: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5051
              model: triggerOnDown
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5052
              translateLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5053
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5054
           (CheckBoxSpec
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5055
              label: 'Send To Originating Widget'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5056
              name: 'sendToOriginator'
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5057
              layout: (AlignmentOrigin 7 0 313 0 0 0)
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5058
              activeHelpKey: sendToOriginator
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5059
              enableChannel: hasItemValue
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5060
              tabable: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5061
              model: sendToOriginator
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5062
              translateLabel: true
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5063
            )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5064
           )
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5065
         
58cc0b402815 class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3028
diff changeset
  5066
        )
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5067
      )
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5068
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5069
1725
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  5070
!MenuEditor::ActionItem class methodsFor:'interface-editor'!
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  5071
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  5072
addBindingsTo:aspects for:aMenuEditor
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  5073
    "add additional bindings to the aspects
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  5074
    "
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5075
    aspects
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5076
	at:#indicationEnabled
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5077
	ifAbsentPut:[ BlockValue with:[:a | a size == 0 ] argument:(aspects at:#choice)].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5078
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5079
    aspects
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5080
	at:#choiceEnabled
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5081
	ifAbsentPut:[ BlockValue with:[:a | a size == 0 ] argument:(aspects at:#indication)].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5082
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5083
    aspects
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5084
	at:#choiceValueEnabled
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5085
	ifAbsentPut:[ BlockValue with:[:a | a size ~~ 0 ] argument:(aspects at:#choice)].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5086
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5087
    aspects
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5088
	at:#hasNoDelayedMenuValue
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5089
	ifAbsentPut:[true asValue].
1725
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  5090
! !
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  5091
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  5092
!MenuEditor::ActionItem methodsFor:'accessing'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5093
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5094
menuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5095
    |item|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5096
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5097
    item := super menuItem.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5098
    self hasDelayedMenu ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5099
	children first setDelayedAttributesTo:item.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5100
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5101
	menuItem value isNil ifTrue:[
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5102
	    menuItem value:#unspecified
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5103
	]
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5104
    ].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5105
    ^ item
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5106
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5107
213
71b11a173f87 change model; supports multiple selection
ca
parents: 209
diff changeset
  5108
menuItem:anItem
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5109
    |submenu item|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5110
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5111
    super menuItem:anItem.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5112
    submenu := anItem submenu.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5113
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5114
    submenu notNil ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5115
	item := MenuEditor::RegularMenuItem new
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5116
    ] ifFalse:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5117
	anItem submenuChannel isNil ifTrue:[
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5118
	    ^ self
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5119
	].
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5120
	item := MenuEditor::LinkedMenuItem new
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5121
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5122
    item getDelayedAttributesFrom:anItem.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5123
    self add:item.
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5124
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5125
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5126
slices
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5127
    ^ #(
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5128
	    (Basics   basicsEditSpec )
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5129
	    (Details  detailsEditSpec)
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5130
	    (Image    image  )
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5131
	    (Help     help)
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5132
       )
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5133
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5134
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  5135
!MenuEditor::ActionItem methodsFor:'adding & removing'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5136
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5137
add:anItem
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5138
    "add an item; test whether the item is a delayed menu and
2075
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  5139
     not already a delayed menu exists."
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5140
2075
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  5141
    (anItem isKindOfMenu and:[ self canAddDelayedMenu ]) ifFalse:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5142
	^ nil
853
4c906c364da2 replace method:
ca
parents: 849
diff changeset
  5143
    ].
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5144
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5145
    menuItem triggerOnDown:false.
2075
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  5146
    anItem argument:(menuItem argument).
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5147
    isExpanded := false.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5148
    anItem parent:self.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5149
    children := Array with:anItem.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5150
    self expand.
2075
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  5151
    ^ anItem
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  5152
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  5153
    "Modified: / 05-09-2006 / 17:49:57 / cg"
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5154
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5155
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  5156
!MenuEditor::ActionItem methodsFor:'aspects'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5157
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5158
aspectAt:aKey put:aValue
2075
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  5159
    "set a specific aspect named aKey to the aValue"
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  5160
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5161
    aKey == #argument ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5162
	self hasDelayedMenu ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5163
	    children first argument:aValue
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5164
	].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5165
	menuItem argument:aValue.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5166
	^ self
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5167
    ].
1778
32befdc61270 support ignoreShortcutKeys and ignoreMnemonicKeys in Editor
ca
parents: 1775
diff changeset
  5168
1623
3fac80dbb0b3 allow delayedMenus on toggles too
ca
parents: 1618
diff changeset
  5169
    aKey == #triggerOnDown ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5170
	|triggerOnDown|
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5171
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5172
	self hasDelayedMenu ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5173
	    triggerOnDown := false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5174
	] ifFalse:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5175
	    triggerOnDown := aValue
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5176
	].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5177
	menuItem triggerOnDown:triggerOnDown.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5178
	^ self.
1623
3fac80dbb0b3 allow delayedMenus on toggles too
ca
parents: 1618
diff changeset
  5179
    ].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5180
    super aspectAt:aKey put:aValue.
2055
481537d623d3 helpspec
Claus Gittinger <cg@exept.de>
parents: 2036
diff changeset
  5181
2075
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  5182
    "Modified: / 05-09-2006 / 17:47:24 / cg"
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5183
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5184
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5185
toAspects:aspects
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5186
    "write values to aspects
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5187
    "
1623
3fac80dbb0b3 allow delayedMenus on toggles too
ca
parents: 1618
diff changeset
  5188
    |hasDelayedMenu|
3fac80dbb0b3 allow delayedMenus on toggles too
ca
parents: 1618
diff changeset
  5189
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5190
    super toAspects:aspects.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5191
1623
3fac80dbb0b3 allow delayedMenus on toggles too
ca
parents: 1618
diff changeset
  5192
    hasDelayedMenu := self hasDelayedMenu.
3fac80dbb0b3 allow delayedMenus on toggles too
ca
parents: 1618
diff changeset
  5193
    (aspects at:#hasNoDelayedMenuValue) value:(hasDelayedMenu not).
3fac80dbb0b3 allow delayedMenus on toggles too
ca
parents: 1618
diff changeset
  5194
3fac80dbb0b3 allow delayedMenus on toggles too
ca
parents: 1618
diff changeset
  5195
    hasDelayedMenu ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5196
	(aspects at:#triggerOnDown) value:false
1623
3fac80dbb0b3 allow delayedMenus on toggles too
ca
parents: 1618
diff changeset
  5197
    ].
356
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  5198
! !
269c117830ba before closing the builder, check for outstanding
ca
parents: 340
diff changeset
  5199
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  5200
!MenuEditor::ActionItem methodsFor:'displaying'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5201
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5202
icon
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5203
    ^ self class iconItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5204
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5205
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  5206
!MenuEditor::ActionItem methodsFor:'initialization'!
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5207
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5208
initialize
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5209
    super initialize.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5210
    isExpanded := true.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5211
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5212
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  5213
!MenuEditor::ActionItem methodsFor:'queries'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5214
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5215
canCollapse
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5216
    ^ false
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5217
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5218
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5219
hasDelayedMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5220
    "returns true if a delayed menu exists
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5221
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5222
    ^ children size ~~ 0
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5223
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5224
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5225
hasIndicator
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5226
    ^ false
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5227
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5228
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5229
isAction
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5230
    ^ true
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5231
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5232
1660
442cdb5b1e0b category change
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  5233
!MenuEditor::ActionItem methodsFor:'queries-operation'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5234
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5235
canAddDelayedMenu
1623
3fac80dbb0b3 allow delayedMenus on toggles too
ca
parents: 1618
diff changeset
  5236
    "returns true if a delayed menu can be added
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5237
    "
1623
3fac80dbb0b3 allow delayedMenus on toggles too
ca
parents: 1618
diff changeset
  5238
    ^ self hasDelayedMenu not
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5239
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5240
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  5241
!MenuEditor::LinkedMenuItem class methodsFor:'defaults'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5242
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5243
defaultLabel
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5244
    ^ 'Linked Menu'
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5245
! !
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5246
1668
3e83796a3e0e category rename
Claus Gittinger <cg@exept.de>
parents: 1660
diff changeset
  5247
!MenuEditor::LinkedMenuItem class methodsFor:'interface specs'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5248
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5249
basicsEditSpec
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5250
    "This resource specification was automatically generated
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5251
     by the UIPainter of ST/X."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5252
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5253
    "Do not manually edit this!! If it is corrupted,
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5254
     the UIPainter may not be able to read the specification."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5255
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5256
    "
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  5257
     UIPainter new openOnClass:MenuEditor::LinkedMenuItem andSelector:#basicsEditSpec
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5258
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5259
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5260
    <resource: #canvas>
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5261
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5262
    ^
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  5263
     #(FullSpec
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5264
	name: basicsEditSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5265
	window:
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  5266
       (WindowSpec
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5267
	  label: 'basicsEditSpec'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5268
	  name: 'basicsEditSpec'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5269
	  min: (Point 10 10)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5270
	  bounds: (Rectangle 0 0 340 340)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5271
	)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5272
	component:
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  5273
       (SpecCollection
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5274
	  collection: (
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5275
	   (LabelSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5276
	      label: 'Name Key:'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5277
	      name: 'nameKeyLabel'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5278
	      layout: (AlignmentOrigin 107 0 25 0 1 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5279
	      activeHelpKey: basicsKey
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5280
	      visibilityChannel: notDelayedMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5281
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5282
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5283
	      adjust: right
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5284
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5285
	   (InputFieldSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5286
	      name: 'nameKeyField'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5287
	      layout: (LayoutFrame 110 0 15 0 -5 1.0 37 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5288
	      activeHelpKey: basicsKey
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5289
	      visibilityChannel: notDelayedMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5290
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5291
	      model: nameKey
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5292
	      group: inputGroup
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5293
	      type: symbolOrNil
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5294
	      immediateAccept: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5295
	      acceptOnLeave: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5296
	      acceptOnReturn: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5297
	      acceptOnTab: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5298
	      acceptOnLostFocus: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5299
	      acceptChannel: acceptChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5300
	      modifiedChannel: modifiedChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5301
	      acceptOnPointerLeave: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5302
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5303
	   (LabelSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5304
	      label: 'Label:'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5305
	      name: 'labelLabel'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5306
	      layout: (AlignmentOrigin 107 0 51 0 1 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5307
	      activeHelpKey: basicsLabel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5308
	      visibilityChannel: notDelayedMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5309
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5310
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5311
	      adjust: right
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5312
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5313
	   (InputFieldSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5314
	      name: 'labelField'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5315
	      layout: (LayoutFrame 110 0 40 0 -5 1.0 62 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5316
	      activeHelpKey: basicsLabel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5317
	      visibilityChannel: notDelayedMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5318
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5319
	      model: rawLabel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5320
	      group: inputGroup
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5321
	      immediateAccept: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5322
	      acceptOnReturn: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5323
	      acceptOnTab: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5324
	      acceptOnLostFocus: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5325
	      acceptChannel: acceptChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5326
	      modifiedChannel: modifiedChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5327
	      acceptOnPointerLeave: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5328
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5329
	   (LabelSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5330
	      label: 'Menu:'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5331
	      name: 'menuLabel'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5332
	      layout: (AlignmentOrigin 107 0 90 0 1 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5333
	      activeHelpKey: basicsLabel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5334
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5335
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5336
	      adjust: right
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5337
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5338
	   (InputFieldSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5339
	      name: 'menuField'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5340
	      layout: (LayoutFrame 110 0 79 0 -5 1.0 101 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5341
	      activeHelpKey: basicsMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5342
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5343
	      model: submenuChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5344
	      group: inputGroup
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5345
	      type: symbolOrNil
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5346
	      immediateAccept: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5347
	      acceptOnReturn: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5348
	      acceptOnTab: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5349
	      acceptOnLostFocus: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5350
	      acceptChannel: acceptChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5351
	      modifiedChannel: modifiedChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5352
	      acceptOnPointerLeave: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5353
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5354
	   (LabelSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5355
	      label: 'Argument:'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5356
	      name: 'argumentLabel'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5357
	      layout: (AlignmentOrigin 107 0 115 0 1 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5358
	      activeHelpKey: basicsLabel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5359
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5360
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5361
	      adjust: right
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5362
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5363
	   (InputFieldSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5364
	      name: 'argumentField'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5365
	      layout: (LayoutFrame 110 0 104 0 -5 1.0 126 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5366
	      activeHelpKey: basicsMenuArgument
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5367
	      enableChannel: notDelayedMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5368
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5369
	      model: argument
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5370
	      group: inputGroup
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5371
	      type: smalltalkObjectOrNil
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5372
	      immediateAccept: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5373
	      acceptOnReturn: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5374
	      acceptOnTab: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5375
	      acceptOnLostFocus: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5376
	      acceptChannel: acceptChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5377
	      modifiedChannel: modifiedChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5378
	      acceptOnPointerLeave: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5379
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5380
	   (CheckBoxSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5381
	      label: 'Translate Label'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5382
	      name: 'translateLabelCheckBox'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5383
	      layout: (Point 20 213)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5384
	      activeHelpKey: basicsTranslateLabel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5385
	      visibilityChannel: notDelayedMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5386
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5387
	      model: translateLabel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5388
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5389
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5390
	   (CheckBoxSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5391
	      label: 'Is Button'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5392
	      name: 'isButtonCheckBox'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5393
	      layout: (Point 20 238)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5394
	      activeHelpKey: basicsIsButton
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5395
	      visibilityChannel: notDelayedMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5396
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5397
	      model: isButton
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5398
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5399
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5400
	   (CheckBoxSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5401
	      label: 'Horizontal Layout'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5402
	      name: 'horizontalLayout'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5403
	      layout: (Point 20 263)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5404
	      activeHelpKey: horizontalLayout
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5405
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5406
	      model: horizontalLayout
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5407
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5408
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5409
	   (CheckBoxSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5410
	      label: 'Do not Destroy Linked Menu'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5411
	      name: 'keepLinkedMenu'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5412
	      layout: (Point 20 288)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5413
	      activeHelpKey: keepLinkedMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5414
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5415
	      model: keepLinkedMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5416
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5417
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5418
	   )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5419
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5420
	)
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5421
      )
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5422
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5423
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  5424
!MenuEditor::LinkedMenuItem methodsFor:'accessing'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5425
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5426
argument:aValue
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5427
    menuItem argument:aValue.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5428
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5429
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5430
menuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5431
     "returns self as a MenuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5432
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5433
    |item|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5434
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5435
    item := super menuItem.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5436
    item submenuChannel:(self submenuChannel).
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5437
  ^ item
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5438
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5439
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5440
slices
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5441
    self isDelayedMenu ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5442
	^ #(
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5443
		(Basics   basicsEditSpec )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5444
	   )
1389
85a41c80e8dc change selection behaviour after delete
ca
parents: 1378
diff changeset
  5445
    ].
85a41c80e8dc change selection behaviour after delete
ca
parents: 1378
diff changeset
  5446
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5447
    ^ #(
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5448
	    (Basics   basicsEditSpec )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5449
	    (Details  detailsEditSpec)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5450
	    (Image    image  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5451
	    (Help     help)
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5452
       )
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5453
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5454
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5455
submenuChannel
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5456
    ^ menuItem submenuChannel ? #unspecified
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5457
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5458
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5459
submenuChannel:aValue
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5460
    menuItem submenuChannel:aValue.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5461
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5462
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  5463
!MenuEditor::LinkedMenuItem methodsFor:'aspects'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5464
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5465
aspectAt:aKey put:aValue
2075
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  5466
    "set a specific aspect named aKey to the aValue"
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  5467
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5468
    aKey == #submenuChannel ifTrue:[ ^ self submenuChannel:aValue ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5469
    super aspectAt:aKey put:aValue.
2075
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  5470
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  5471
    "Modified: / 05-09-2006 / 17:47:39 / cg"
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5472
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5473
1653
1798c7bcb787 test whether attributes from MenuItem are not a block or model
ca
parents: 1645
diff changeset
  5474
getDelayedAttributesFrom:anItem
1798c7bcb787 test whether attributes from MenuItem are not a block or model
ca
parents: 1645
diff changeset
  5475
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5476
    menuItem rawLabel:'Delayed'.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5477
1653
1798c7bcb787 test whether attributes from MenuItem are not a block or model
ca
parents: 1645
diff changeset
  5478
    menuItem   submenuChannel:(self validateValue:(anItem submenuChannel)).
1798c7bcb787 test whether attributes from MenuItem are not a block or model
ca
parents: 1645
diff changeset
  5479
    menuItem horizontalLayout:(self validateValue:(anItem horizontalLayout)).
1881
dde52f4278c0 horizontalLayout flag bug fixed
Claus Gittinger <cg@exept.de>
parents: 1867
diff changeset
  5480
    menuItem   keepLinkedMenu:(self validateValue:(anItem keepLinkedMenu)).
1389
85a41c80e8dc change selection behaviour after delete
ca
parents: 1378
diff changeset
  5481
!
85a41c80e8dc change selection behaviour after delete
ca
parents: 1378
diff changeset
  5482
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5483
setDelayedAttributesTo:aMenuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5484
    aMenuItem   submenuChannel:(self submenuChannel).
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5485
    aMenuItem horizontalLayout:(menuItem horizontalLayout).
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5486
    aMenuItem   keepLinkedMenu:(menuItem keepLinkedMenu).
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5487
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5488
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  5489
!MenuEditor::LinkedMenuItem methodsFor:'displaying'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5490
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5491
displayLabel
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5492
    "returns the label dependent on is delayed or not
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5493
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5494
    self isDelayedMenu ifTrue:[ ^ self submenuChannel ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5495
  ^ menuItem rawLabel
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5496
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5497
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5498
icon
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5499
    self isDelayedMenu ifTrue:[ ^ self class iconDelayedLinkedMenu ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5500
  ^ self class iconLinkedMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5501
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5502
1780
5f831e1fc839 set #keepLinkedMenu for linked menus on default to true (do not destroy)
ca
parents: 1778
diff changeset
  5503
!MenuEditor::LinkedMenuItem methodsFor:'initialization'!
5f831e1fc839 set #keepLinkedMenu for linked menus on default to true (do not destroy)
ca
parents: 1778
diff changeset
  5504
5f831e1fc839 set #keepLinkedMenu for linked menus on default to true (do not destroy)
ca
parents: 1778
diff changeset
  5505
initialize
5f831e1fc839 set #keepLinkedMenu for linked menus on default to true (do not destroy)
ca
parents: 1778
diff changeset
  5506
    "setup default values on the item
5f831e1fc839 set #keepLinkedMenu for linked menus on default to true (do not destroy)
ca
parents: 1778
diff changeset
  5507
    "
5f831e1fc839 set #keepLinkedMenu for linked menus on default to true (do not destroy)
ca
parents: 1778
diff changeset
  5508
    super initialize.
5f831e1fc839 set #keepLinkedMenu for linked menus on default to true (do not destroy)
ca
parents: 1778
diff changeset
  5509
5f831e1fc839 set #keepLinkedMenu for linked menus on default to true (do not destroy)
ca
parents: 1778
diff changeset
  5510
    "setting default values
5f831e1fc839 set #keepLinkedMenu for linked menus on default to true (do not destroy)
ca
parents: 1778
diff changeset
  5511
    "
2334
dc1388cc7160 keepLinkedMenu is now FALSE by default.
Claus Gittinger <cg@exept.de>
parents: 2331
diff changeset
  5512
    "/ CG: Thu, 08 May 2008 11:16:54 GMT
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5513
    "/     I think having keepLinkedMenu true by default
2334
dc1388cc7160 keepLinkedMenu is now FALSE by default.
Claus Gittinger <cg@exept.de>
parents: 2331
diff changeset
  5514
    "/     will confuse newcomers (even me occasionally)
dc1388cc7160 keepLinkedMenu is now FALSE by default.
Claus Gittinger <cg@exept.de>
parents: 2331
diff changeset
  5515
    "/     (will search, why the menu is not updated...)
dc1388cc7160 keepLinkedMenu is now FALSE by default.
Claus Gittinger <cg@exept.de>
parents: 2331
diff changeset
  5516
dc1388cc7160 keepLinkedMenu is now FALSE by default.
Claus Gittinger <cg@exept.de>
parents: 2331
diff changeset
  5517
    "/ menuItem keepLinkedMenu:true.
dc1388cc7160 keepLinkedMenu is now FALSE by default.
Claus Gittinger <cg@exept.de>
parents: 2331
diff changeset
  5518
    menuItem keepLinkedMenu:false.
1780
5f831e1fc839 set #keepLinkedMenu for linked menus on default to true (do not destroy)
ca
parents: 1778
diff changeset
  5519
! !
5f831e1fc839 set #keepLinkedMenu for linked menus on default to true (do not destroy)
ca
parents: 1778
diff changeset
  5520
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  5521
!MenuEditor::LinkedMenuItem methodsFor:'queries'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5522
3135
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  5523
isKindOfLinkedMenu
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  5524
    ^ true
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  5525
!
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  5526
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5527
isKindOfMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5528
    ^ true
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5529
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5530
1844
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5531
!MenuEditor::MenuSliceItem class methodsFor:'defaults'!
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5532
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5533
defaultLabel
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5534
    ^ 'Menu Slice'
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5535
! !
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5536
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5537
!MenuEditor::MenuSliceItem class methodsFor:'interface specs'!
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5538
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5539
basicsEditSpec
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5540
    "This resource specification was automatically generated
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5541
     by the UIPainter of ST/X."
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5542
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5543
    "Do not manually edit this!! If it is corrupted,
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5544
     the UIPainter may not be able to read the specification."
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5545
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5546
    "
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5547
     UIPainter new openOnClass:MenuEditor::MenuSliceItem andSelector:#basicsEditSpec
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5548
    "
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5549
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5550
    <resource: #canvas>
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5551
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5552
    ^
1844
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5553
     #(FullSpec
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5554
	name: basicsEditSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5555
	window:
1844
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5556
       (WindowSpec
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5557
	  label: 'basicsEditSpec'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5558
	  name: 'basicsEditSpec'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5559
	  min: (Point 10 10)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5560
	  bounds: (Rectangle 0 0 344 146)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5561
	)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5562
	component:
1844
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5563
       (SpecCollection
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5564
	  collection: (
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5565
	   (LabelSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5566
	      label: 'Name Key:'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5567
	      name: 'nameKeyLabel'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5568
	      layout: (AlignmentOrigin 107 0 25 0 1 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5569
	      activeHelpKey: basicsKey
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5570
	      visibilityChannel: notDelayedMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5571
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5572
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5573
	      adjust: right
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5574
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5575
	   (InputFieldSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5576
	      name: 'nameKeyField'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5577
	      layout: (LayoutFrame 110 0 15 0 -5 1.0 37 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5578
	      activeHelpKey: basicsKey
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5579
	      visibilityChannel: notDelayedMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5580
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5581
	      model: nameKey
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5582
	      group: inputGroup
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5583
	      type: symbolOrNil
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5584
	      immediateAccept: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5585
	      acceptOnLeave: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5586
	      acceptOnReturn: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5587
	      acceptOnTab: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5588
	      acceptOnLostFocus: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5589
	      acceptChannel: acceptChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5590
	      modifiedChannel: modifiedChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5591
	      acceptOnPointerLeave: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5592
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5593
	   (LabelSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5594
	      label: 'Label:'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5595
	      name: 'labelLabel'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5596
	      layout: (AlignmentOrigin 107 0 51 0 1 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5597
	      activeHelpKey: basicsLabel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5598
	      visibilityChannel: notDelayedMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5599
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5600
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5601
	      adjust: right
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5602
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5603
	   (InputFieldSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5604
	      name: 'labelField'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5605
	      layout: (LayoutFrame 110 0 40 0 -5 1.0 62 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5606
	      activeHelpKey: basicsLabel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5607
	      visibilityChannel: notDelayedMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5608
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5609
	      model: rawLabel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5610
	      group: inputGroup
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5611
	      immediateAccept: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5612
	      acceptOnReturn: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5613
	      acceptOnTab: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5614
	      acceptOnLostFocus: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5615
	      acceptChannel: acceptChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5616
	      modifiedChannel: modifiedChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5617
	      acceptOnPointerLeave: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5618
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5619
	   (LabelSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5620
	      label: 'Menu:'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5621
	      name: 'menuLabel'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5622
	      layout: (AlignmentOrigin 107 0 90 0 1 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5623
	      activeHelpKey: basicsLabel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5624
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5625
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5626
	      adjust: right
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5627
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5628
	   (InputFieldSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5629
	      name: 'menuField'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5630
	      layout: (LayoutFrame 110 0 79 0 -5 1.0 101 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5631
	      activeHelpKey: basicsMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5632
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5633
	      model: submenuChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5634
	      group: inputGroup
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5635
	      type: symbolOrNil
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5636
	      immediateAccept: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5637
	      acceptOnReturn: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5638
	      acceptOnTab: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5639
	      acceptOnLostFocus: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5640
	      acceptChannel: acceptChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5641
	      modifiedChannel: modifiedChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5642
	      acceptOnPointerLeave: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5643
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5644
	   (LabelSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5645
	      label: 'Argument:'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5646
	      name: 'argumentLabel'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5647
	      layout: (AlignmentOrigin 107 0 115 0 1 0.5)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5648
	      activeHelpKey: basicsLabel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5649
	      translateLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5650
	      resizeForLabel: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5651
	      adjust: right
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5652
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5653
	   (InputFieldSpec
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5654
	      name: 'argumentField'
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5655
	      layout: (LayoutFrame 110 0 104 0 -5 1.0 126 0)
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5656
	      activeHelpKey: basicsMenuArgument
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5657
	      enableChannel: notDelayedMenu
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5658
	      tabable: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5659
	      model: argument
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5660
	      group: inputGroup
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5661
	      type: smalltalkObjectOrNil
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5662
	      immediateAccept: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5663
	      acceptOnReturn: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5664
	      acceptOnTab: true
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5665
	      acceptOnLostFocus: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5666
	      acceptChannel: acceptChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5667
	      modifiedChannel: modifiedChannel
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5668
	      acceptOnPointerLeave: false
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5669
	    )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5670
	   )
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5671
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5672
	)
1844
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5673
      )
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5674
! !
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5675
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5676
!MenuEditor::MenuSliceItem methodsFor:'accessing'!
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5677
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5678
icon
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5679
    ^ self class iconSliceMenu
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5680
!
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5681
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5682
menuItem
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5683
     "returns self as a MenuItem
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5684
    "
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5685
    |item|
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5686
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5687
    item := super menuItem.
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5688
    item submenuChannel:(self submenuChannel).
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5689
    item isMenuSlice:true.
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5690
  ^ item
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5691
!
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5692
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5693
slices
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5694
    ^ #(
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5695
	    (Basics   basicsEditSpec)
1844
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5696
       )
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5697
! !
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5698
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5699
!MenuEditor::MenuSliceItem methodsFor:'aspects'!
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5700
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5701
argument:aValue
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5702
    menuItem argument:aValue.
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5703
!
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5704
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5705
aspectAt:aKey put:aValue
2075
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  5706
    "set a specific aspect named aKey to the aValue"
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  5707
1844
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5708
    aKey == #submenuChannel ifTrue:[ ^ self submenuChannel:aValue ].
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5709
    aKey == #isSliceMenu    ifTrue:[ ^ self ].
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5710
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5711
    super aspectAt:aKey put:aValue.
2075
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  5712
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  5713
    "Modified: / 05-09-2006 / 17:47:42 / cg"
1844
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5714
!
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5715
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5716
submenuChannel
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5717
    ^ menuItem submenuChannel ? #unspecified
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5718
!
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5719
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5720
submenuChannel:aValue
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5721
    menuItem submenuChannel:aValue.
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5722
! !
62f5b971145e *** empty log message ***
ca
parents: 1820
diff changeset
  5723
1633
24748704c741 checkin from browser
ca
parents: 1632
diff changeset
  5724
!MenuEditor::RegularMenuItem class methodsFor:'defaults'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5725
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5726
defaultDelayedLabel
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5727
    ^ 'delayed'
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5728
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5729
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5730
defaultLabel
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5731
    ^ 'Menu'
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5732
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5733
1633
24748704c741 checkin from browser
ca
parents: 1632
diff changeset
  5734
!MenuEditor::RegularMenuItem class methodsFor:'instance creation'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5735
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5736
menu:aMenu labeled:aString
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5737
    |item|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5738
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5739
    item := self new.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5740
    item menu:aMenu labeled:aString.
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  5741
    ^ item
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  5742
!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  5743
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  5744
menu:aMenu labeled:aString translateLabel:translateLabel
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  5745
    |item|
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  5746
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  5747
    item := self new.
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  5748
    item menu:aMenu labeled:aString.
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  5749
    item translateLabel:translateLabel.
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  5750
    ^ item
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5751
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5752
1668
3e83796a3e0e category rename
Claus Gittinger <cg@exept.de>
parents: 1660
diff changeset
  5753
!MenuEditor::RegularMenuItem class methodsFor:'interface specs'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5754
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5755
basicsEditSpec
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5756
    "This resource specification was automatically generated
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5757
     by the UIPainter of ST/X."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5758
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5759
    "Do not manually edit this!! If it is corrupted,
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5760
     the UIPainter may not be able to read the specification."
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5761
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5762
    "
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  5763
     UIPainter new openOnClass:MenuEditor::RegularMenuItem andSelector:#basicsEditSpec
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5764
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5765
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5766
    <resource: #canvas>
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5767
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5768
    ^
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  5769
     #(FullSpec
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5770
	name: basicsEditSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5771
	window:
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  5772
       (WindowSpec
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5773
	  label: 'basicsEditSpec'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5774
	  name: 'basicsEditSpec'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5775
	  min: (Point 10 10)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5776
	  bounds: (Rectangle 0 0 340 340)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5777
	)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5778
	component:
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  5779
       (SpecCollection
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5780
	  collection: (
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5781
	   (LabelSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5782
	      label: 'Name Key:'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5783
	      name: 'nameKeyLabel'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5784
	      layout: (AlignmentOrigin 107 0 25 0 1 0.5)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5785
	      activeHelpKey: basicsKey
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5786
	      visibilityChannel: notDelayedMenu
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5787
	      translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5788
	      resizeForLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5789
	      adjust: right
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5790
	    )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5791
	   (InputFieldSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5792
	      name: 'nameKeyField'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5793
	      layout: (LayoutFrame 110 0 15 0 -5 1.0 37 0)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5794
	      activeHelpKey: basicsKey
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5795
	      visibilityChannel: notDelayedMenu
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5796
	      tabable: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5797
	      model: nameKey
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5798
	      group: inputGroup
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5799
	      type: symbolOrNil
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5800
	      immediateAccept: false
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5801
	      acceptOnLeave: false
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5802
	      acceptOnReturn: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5803
	      acceptOnTab: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5804
	      acceptOnLostFocus: false
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5805
	      acceptChannel: acceptChannel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5806
	      modifiedChannel: modifiedChannel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5807
	      acceptOnPointerLeave: false
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5808
	    )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5809
	   (LabelSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5810
	      label: 'Label:'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5811
	      name: 'labelLabel'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5812
	      layout: (AlignmentOrigin 107 0 51 0 1 0.5)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5813
	      activeHelpKey: basicsLabel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5814
	      visibilityChannel: notDelayedMenu
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5815
	      translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5816
	      resizeForLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5817
	      adjust: right
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5818
	    )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5819
	   (InputFieldSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5820
	      name: 'labelField'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5821
	      layout: (LayoutFrame 110 0 40 0 -5 1.0 62 0)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5822
	      activeHelpKey: basicsLabel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5823
	      visibilityChannel: notDelayedMenu
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5824
	      tabable: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5825
	      model: rawLabel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5826
	      group: inputGroup
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5827
	      immediateAccept: false
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5828
	      acceptOnReturn: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5829
	      acceptOnTab: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5830
	      acceptOnLostFocus: false
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5831
	      acceptChannel: acceptChannel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5832
	      modifiedChannel: modifiedChannel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5833
	      acceptOnPointerLeave: false
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5834
	    )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5835
	   (CheckBoxSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5836
	      label: 'Translate Label'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5837
	      name: 'translateLabelCheckBox'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5838
	      layout: (Point 20 213)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5839
	      activeHelpKey: basicsTranslateLabel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5840
	      visibilityChannel: notDelayedMenu
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5841
	      tabable: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5842
	      model: translateLabel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5843
	      translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5844
	    )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5845
	   (CheckBoxSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5846
	      label: 'Is Button'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5847
	      name: 'isButtonCheckBox'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5848
	      layout: (Point 20 238)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5849
	      activeHelpKey: basicsIsButton
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5850
	      visibilityChannel: notDelayedMenu
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5851
	      tabable: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5852
	      model: isButton
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5853
	      translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5854
	    )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5855
	   (CheckBoxSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5856
	      label: 'Horizontal Layout'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5857
	      name: 'horizontalLayout'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5858
	      layout: (Point 20 263)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5859
	      activeHelpKey: horizontalLayout
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5860
	      tabable: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5861
	      model: horizontalLayout
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5862
	      translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5863
	    )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5864
	   )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5865
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5866
	)
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5867
      )
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5868
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5869
1633
24748704c741 checkin from browser
ca
parents: 1632
diff changeset
  5870
!MenuEditor::RegularMenuItem methodsFor:'accessing'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5871
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5872
argument:aValue
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5873
    "/ ignorred.
218
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  5874
!
5c88856b360f access MenuEditor from any specification;
ca
parents: 215
diff changeset
  5875
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5876
menu:aMenu labeled:aString
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5877
    |expanded item menu|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5878
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5879
    self criticalDo:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5880
	self isRootItem ifTrue:[ expanded := true ]
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5881
		       ifFalse:[ expanded := isExpanded ].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5882
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5883
	self removeAll.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5884
	self rawLabel:aString.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5885
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5886
	menu := aMenu value.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5887
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5888
	(menu isNil or:[menu isString]) ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5889
	    menu := nil
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5890
	] ifFalse:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5891
	    aMenu isCollection ifTrue:[ menu := Menu decodeFromLiteralArray:aMenu ]
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5892
			      ifFalse:[ menu := aMenu ].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5893
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5894
	    menu hasItems ifFalse:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5895
		menu := nil
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5896
	    ].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5897
	].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5898
	menu notNil ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5899
	    isExpanded := false.        "/ discard change notifications
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5900
	    children   := OrderedCollection new.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5901
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5902
	    menu itemsDo:[:el|
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5903
		item := self class menuItem:el.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5904
		item parent:self.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5905
		children add:item.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5906
	    ].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5907
	    expanded ifTrue:[ self expand ].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5908
	].
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  5909
	isExpanded := expanded.
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5910
    ].
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5911
    self changed
2168
8ebed0b2d3c8 use decodeFromLiteralArray:
Claus Gittinger <cg@exept.de>
parents: 2161
diff changeset
  5912
2862
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  5913
    "Modified: / 29-11-2011 / 11:28:33 / cg"
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5914
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5915
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5916
menuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5917
    "returns self as a MenuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5918
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5919
    |item|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5920
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5921
    item := super menuItem.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5922
    item submenu:(self submenu).
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5923
  ^ item
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5924
!
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  5925
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5926
menuItem:anItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5927
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5928
    super menuItem:anItem.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5929
    self  menu:(anItem submenu) labeled:nil.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5930
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5931
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5932
slices
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5933
    self isDelayedMenu ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5934
	^ #(
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5935
		(Basics   basicsEditSpec )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5936
	   )
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5937
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5938
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5939
    ^ #(
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5940
	    (Basics   basicsEditSpec )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5941
	    (Details  detailsEditSpec)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5942
	    (Image    image  )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  5943
	    (Help     help)
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5944
       )
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5945
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5946
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5947
submenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5948
    |menu|
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5949
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5950
    menu := Menu new.
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5951
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5952
    children size ~~ 0 ifTrue:[
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5953
	children do:[:el| menu addItem:(el menuItem) ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5954
    ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5955
    ^ menu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5956
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5957
1633
24748704c741 checkin from browser
ca
parents: 1632
diff changeset
  5958
!MenuEditor::RegularMenuItem methodsFor:'aspects'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5959
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5960
getDelayedAttributesFrom:aMenuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5961
1653
1798c7bcb787 test whether attributes from MenuItem are not a block or model
ca
parents: 1645
diff changeset
  5962
    |menu|
1798c7bcb787 test whether attributes from MenuItem are not a block or model
ca
parents: 1645
diff changeset
  5963
1798c7bcb787 test whether attributes from MenuItem are not a block or model
ca
parents: 1645
diff changeset
  5964
    menu := self validateValue:(aMenuItem submenu value).
1798c7bcb787 test whether attributes from MenuItem are not a block or model
ca
parents: 1645
diff changeset
  5965
1798c7bcb787 test whether attributes from MenuItem are not a block or model
ca
parents: 1645
diff changeset
  5966
    self menu:menu labeled:nil.
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5967
    menuItem horizontalLayout:(aMenuItem horizontalLayout).
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5968
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5969
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5970
setDelayedAttributesTo:aMenuItem
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5971
    aMenuItem          submenu:(self submenu).
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5972
    aMenuItem horizontalLayout:(menuItem horizontalLayout).
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5973
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5974
1633
24748704c741 checkin from browser
ca
parents: 1632
diff changeset
  5975
!MenuEditor::RegularMenuItem methodsFor:'displaying'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5976
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5977
displayLabel
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5978
    "returns the label dependent on is delayed or not
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5979
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5980
    self isDelayedMenu ifTrue:[ ^ self class defaultDelayedLabel ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5981
  ^ menuItem rawLabel
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5982
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5983
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5984
icon
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5985
    self isDelayedMenu ifTrue:[ ^ self class iconDelayedMenu ].
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5986
  ^ self class iconMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5987
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5988
1633
24748704c741 checkin from browser
ca
parents: 1632
diff changeset
  5989
!MenuEditor::RegularMenuItem methodsFor:'queries'!
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5990
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5991
canAddChildren
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5992
    "children can be added
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5993
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5994
    ^ true
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5995
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5996
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5997
canExpand
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5998
    "returns true if the item is expandable
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  5999
    "
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  6000
    ^ isExpanded == false
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  6001
!
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  6002
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  6003
hasIndicator
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  6004
    ^ true
968
f52b5744063b added standard-submenu generators (in item menu)
Claus Gittinger <cg@exept.de>
parents: 959
diff changeset
  6005
!
f52b5744063b added standard-submenu generators (in item menu)
Claus Gittinger <cg@exept.de>
parents: 959
diff changeset
  6006
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  6007
isKindOfMenu
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  6008
    ^ true
3135
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  6009
!
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  6010
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  6011
isKindOfNonLinkedMenu
ddfd8044f87c class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  6012
    ^ true
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  6013
! !
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  6014
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6015
!MenuEditor::RootItem class methodsFor:'defaults'!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6016
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6017
defaultLabel
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6018
    ^ MenuEditor resourceType
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6019
! !
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6020
1668
3e83796a3e0e category rename
Claus Gittinger <cg@exept.de>
parents: 1660
diff changeset
  6021
!MenuEditor::RootItem class methodsFor:'interface specs'!
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6022
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6023
basicsEditSpec
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6024
    "This resource specification was automatically generated
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6025
     by the UIPainter of ST/X."
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6026
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6027
    "Do not manually edit this!! If it is corrupted,
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6028
     the UIPainter may not be able to read the specification."
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6029
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6030
    "
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  6031
     UIPainter new openOnClass:MenuEditor::RootItem andSelector:#basicsEditSpec
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6032
    "
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6033
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6034
    <resource: #canvas>
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6035
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6036
    ^
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  6037
     #(FullSpec
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6038
	name: basicsEditSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6039
	window:
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  6040
       (WindowSpec
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6041
	  label: 'basicsEditSpec'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6042
	  name: 'basicsEditSpec'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6043
	  min: (Point 10 10)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6044
	  bounds: (Rectangle 0 0 260 46)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6045
	)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6046
	component:
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  6047
       (SpecCollection
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6048
	  collection: (
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6049
	   (LabelSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6050
	      label: 'Selector:'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6051
	      name: 'selectorLabel'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6052
	      layout: (AlignmentOrigin 107 0 26 0 1 0.5)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6053
	      activeHelpKey: basicsSelector
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6054
	      translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6055
	      resizeForLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6056
	      adjust: right
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6057
	    )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6058
	   (InputFieldSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6059
	      name: 'selectorField'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6060
	      layout: (LayoutFrame 110 0 15 0 -5 1.0 37 0)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6061
	      activeHelpKey: basicsSelector
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6062
	      tabable: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6063
	      model: rawLabel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6064
	      group: inputGroup
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6065
	      type: string
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6066
	      immediateAccept: false
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6067
	      acceptOnReturn: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6068
	      acceptOnTab: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6069
	      acceptChannel: acceptChannel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6070
	      modifiedChannel: modifiedChannel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6071
	      acceptOnPointerLeave: false
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6072
	    )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6073
	   )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6074
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6075
	)
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6076
      )
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6077
! !
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6078
1725
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6079
!MenuEditor::RootItem class methodsFor:'interface-editor'!
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6080
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6081
addBindingsTo:aspects for:aMenuEditor
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6082
    "add additional bindings to the aspects
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6083
    "
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6084
! !
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6085
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6086
!MenuEditor::RootItem methodsFor:'accessing'!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6087
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6088
menuItem:aMenuItem
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6089
    "rebuild self from a MenuItem
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6090
    "
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6091
    |submenu selector|
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6092
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6093
    aMenuItem notNil ifTrue:[
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6094
	submenu  := aMenuItem submenu.
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6095
	selector := aMenuItem rawLabel.
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6096
    ] ifFalse:[
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6097
	selector := submenu := nil.
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6098
    ].
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6099
    self menu:submenu labeled:selector.
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6100
!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6101
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6102
rawLabel:aValue
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6103
    "set the label assigned to the item
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6104
    "
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6105
    |value|
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6106
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6107
    aValue isString ifTrue:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6108
	value := aValue withoutSeparators.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6109
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6110
	(value notEmpty and:[value first isLetter]) ifTrue:[
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6111
	    menuItem rawLabel:(value asSymbol)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6112
	].
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6113
    ].
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6114
!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6115
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6116
slices
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6117
    ^ #(
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6118
	    (Basics   basicsEditSpec)
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6119
       )
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6120
! !
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6121
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6122
!MenuEditor::RootItem methodsFor:'adding & removing'!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6123
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6124
remove
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6125
    "cannot remove the root item; delete all my children
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6126
    "
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6127
    self removeAll.
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6128
! !
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6129
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6130
!MenuEditor::RootItem methodsFor:'aspects'!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6131
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6132
aspectAt:aKey put:aValue
2075
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  6133
    "ignore all aspects other than the rawLabel"
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  6134
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6135
    aKey == #rawLabel ifTrue:[ self rawLabel:aValue ].
2075
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  6136
f7f1cfb3da29 modificataion handling
Claus Gittinger <cg@exept.de>
parents: 2070
diff changeset
  6137
    "Modified: / 05-09-2006 / 17:48:01 / cg"
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6138
! !
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6139
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6140
!MenuEditor::RootItem methodsFor:'displaying'!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6141
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6142
heightOn:aGC
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  6143
    height isNil ifTrue:[ height := aGC font heightOn:aGC device ].
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  6144
    ^ height
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6145
! !
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6146
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6147
!MenuEditor::RootItem methodsFor:'initialization'!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6148
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6149
initialize
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6150
    super initialize.
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6151
    isExpanded := true.
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6152
! !
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6153
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6154
!MenuEditor::RootItem methodsFor:'queries'!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6155
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6156
canCollapse
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6157
    ^ false
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6158
!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6159
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6160
hasIndicator
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6161
    ^ false
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6162
!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6163
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6164
isDelayedMenu
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6165
    ^ false
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6166
!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6167
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6168
isRootItem
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6169
    ^ true
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6170
! !
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6171
1660
442cdb5b1e0b category change
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  6172
!MenuEditor::RootItem methodsFor:'queries-editor'!
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6173
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6174
actionSelectors
2232
1613b21d0095 ca's english language and wierd indentation code cleanup
Claus Gittinger <cg@exept.de>
parents: 2189
diff changeset
  6175
    "return my action selectors"
1613b21d0095 ca's english language and wierd indentation code cleanup
Claus Gittinger <cg@exept.de>
parents: 2189
diff changeset
  6176
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6177
    ^ #()
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6178
!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6179
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6180
aspectSelectors
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6181
    "returns my aspect selectors
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6182
    "
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6183
    ^ #()
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6184
! !
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6185
1660
442cdb5b1e0b category change
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  6186
!MenuEditor::RootItem methodsFor:'queries-operation'!
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6187
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6188
canMoveInAbove
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6189
    ^ false
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6190
!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6191
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6192
canMoveInNext
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6193
    ^ false
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6194
!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6195
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6196
canMoveOut
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6197
    ^ false
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6198
!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6199
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6200
canMoveUpOrDown
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6201
   ^ false
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6202
! !
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6203
1668
3e83796a3e0e category rename
Claus Gittinger <cg@exept.de>
parents: 1660
diff changeset
  6204
!MenuEditor::SeparatorItem class methodsFor:'interface specs'!
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6205
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6206
basicsEditSpec
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6207
    "This resource specification was automatically generated
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6208
     by the UIPainter of ST/X."
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6209
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6210
    "Do not manually edit this!! If it is corrupted,
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6211
     the UIPainter may not be able to read the specification."
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6212
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6213
    "
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  6214
     UIPainter new openOnClass:MenuEditor::SeparatorItem andSelector:#basicsEditSpec
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6215
    "
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6216
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6217
    <resource: #canvas>
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6218
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6219
    ^
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  6220
     #(FullSpec
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6221
	name: basicsEditSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6222
	window:
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  6223
       (WindowSpec
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6224
	  label: 'basicsEditSpec'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6225
	  name: 'basicsEditSpec'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6226
	  min: (Point 10 10)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6227
	  bounds: (Rectangle 0 0 260 245)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6228
	)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6229
	component:
1737
de6abd3c55d2 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1730
diff changeset
  6230
       (SpecCollection
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6231
	  collection: (
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6232
	   (LabelSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6233
	      label: 'Separator:'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6234
	      name: 'separatorLabel'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6235
	      layout: (AlignmentOrigin 107 0 26 0 1 0.5)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6236
	      translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6237
	      resizeForLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6238
	      adjust: right
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6239
	    )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6240
	   (ComboListSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6241
	      name: 'seperatorList'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6242
	      layout: (LayoutFrame 110 0 15 0 -5 1.0 37 0)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6243
	      activeHelpKey: basicsSeparatorType
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6244
	      tabable: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6245
	      model: seperatorSelection
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6246
	      comboList: seperatorList
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6247
	      useIndex: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6248
	    )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6249
	   (LabelSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6250
	      label: 'Visibility:'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6251
	      name: 'visibilityLabel'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6252
	      layout: (AlignmentOrigin 107 0 51 0 1 0.5)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6253
	      translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6254
	      resizeForLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6255
	      adjust: right
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6256
	    )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6257
	   (InputFieldSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6258
	      name: 'visibilityInputField'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6259
	      layout: (LayoutFrame 110 0 40 0 -5 1.0 62 0)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6260
	      activeHelpKey: detailsVisibility
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6261
	      tabable: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6262
	      model: isVisible
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6263
	      group: inputGroup
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6264
	      type: symbolOrBooleanOrNil
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6265
	      immediateAccept: false
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6266
	      acceptOnReturn: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6267
	      acceptOnTab: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6268
	      acceptChannel: acceptChannel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6269
	      modifiedChannel: modifiedChannel
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6270
	      acceptOnPointerLeave: false
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6271
	    )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6272
	   (LabelSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6273
	      label: 'Start Group:'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6274
	      name: 'startGroupLabel'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6275
	      layout: (AlignmentOrigin 107 0 88 0 1 0.5)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6276
	      translateLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6277
	      resizeForLabel: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6278
	      adjust: right
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6279
	    )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6280
	   (PopUpListSpec
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6281
	      label: 'left'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6282
	      name: 'startGroupPopUp'
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6283
	      layout: (LayoutFrame 110 0 77 0 -5 1.0 99 0)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6284
	      activeHelpKey: detailsStartGroup
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6285
	      tabable: true
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6286
	      model: startGroup
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6287
	      menu: (left right conditionalRight)
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6288
	    )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6289
	   )
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6290
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6291
	)
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6292
      )
2122
417dabd716d5 new startGroup value: #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2118
diff changeset
  6293
417dabd716d5 new startGroup value: #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2118
diff changeset
  6294
    "Modified: / 16-10-2006 / 12:48:30 / cg"
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6295
! !
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6296
1725
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6297
!MenuEditor::SeparatorItem class methodsFor:'interface-editor'!
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6298
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6299
addBindingsTo:aspects for:aMenuEditor
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6300
    "add additional bindings to the aspects
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6301
    "
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6302
    |holder|
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6303
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6304
    aspects
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6305
	at:#seperatorList
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6306
	ifAbsentPut:
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6307
	    [
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6308
		|l|
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6309
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6310
		l := self separatorSlices collect:[:el| el last ].
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6311
		l := l collect:[:s | self classResources string:s ].
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6312
		l
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6313
	    ].
1725
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6314
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6315
    aspects at:#seperatorSelection ifAbsentPut:[
2188
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6316
	holder := 0 asValue.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6317
	holder addDependent:aMenuEditor.
4b6ba5164391 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2187
diff changeset
  6318
	holder
1725
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6319
    ].
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6320
!
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6321
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6322
defaultLabel
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6323
    ^ '-'
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6324
!
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6325
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6326
separatorSlices
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6327
    "get the list of menu spec values of the corresponding separator types
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6328
    "
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6329
    ^ #(
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6330
	( #blank        ''      'blank' )
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6331
	( #single       '-'     'single line')
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6332
	( #double       '='     'double line')
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6333
      )
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6334
! !
2de97eb77984 category
Claus Gittinger <cg@exept.de>
parents: 1722
diff changeset
  6335
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6336
!MenuEditor::SeparatorItem methodsFor:'accessing'!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6337
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6338
icon
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6339
    ^ self class iconSeparator
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6340
!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6341
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6342
rawLabel:aValue
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6343
    |value|
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6344
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6345
    aValue isString ifTrue:[
3013
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  6346
	value := aValue withoutSeparators.
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  6347
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  6348
	(self class separatorTypeOf:value) notNil ifTrue:[
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  6349
	    menuItem rawLabel:value
4aa95683c0fc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2948
diff changeset
  6350
	]
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6351
    ].
2862
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  6352
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  6353
    "Modified: / 29-11-2011 / 11:28:39 / cg"
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6354
!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6355
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6356
separatorType
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6357
    ^ self class separatorTypeOf:(menuItem rawLabel).
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6358
!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6359
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6360
slices
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6361
    ^ #(
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6362
	    (Basics   basicsEditSpec)
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6363
       )
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6364
! !
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6365
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6366
!MenuEditor::SeparatorItem methodsFor:'aspects'!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6367
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6368
fromAspects:aspects
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6369
    "put my values into the values of aspects
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6370
    "
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6371
    |index slice|
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6372
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6373
    index  := (aspects at:#seperatorSelection) value ? 0.
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6374
    slice  := self class separatorSlices at:index ifAbsent:nil.
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6375
2862
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  6376
    slice notNil ifTrue:[ slice := slice at:2 ].
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6377
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6378
    (aspects at:#rawLabel) value:slice.
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6379
  ^ super fromAspects:aspects.
2862
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  6380
eac49c3e168e changed:7 methods
Claus Gittinger <cg@exept.de>
parents: 2858
diff changeset
  6381
    "Modified: / 29-11-2011 / 11:28:36 / cg"
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6382
!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6383
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6384
toAspects:aspects
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6385
    "put my values into the values of aspects
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6386
    "
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6387
    |index type|
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6388
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6389
    type   := self separatorType.
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6390
    index  := self class separatorSlices findFirst:[:el| el first == type ].
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6391
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6392
    (aspects at:#seperatorSelection) value:index.
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6393
  ^ super  toAspects:aspects.
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6394
! !
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6395
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6396
!MenuEditor::SeparatorItem methodsFor:'displaying'!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6397
3178
58100b56595d class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3165
diff changeset
  6398
displayOn:aGC x:x y:y h:h isHighlightedAsSelected:isHighlightedAsSelected
58100b56595d class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3165
diff changeset
  6399
    "draw the receiver in the graphicsContext, aGC"
58100b56595d class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3165
diff changeset
  6400
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6401
    |x1 y0 type|
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6402
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6403
    type := self separatorType.
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6404
    type == #blank ifTrue:[ ^ self ].
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6405
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6406
    x1 := x + (self widthOn:aGC).
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6407
    y0 := y + (h // 2) - 1.
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6408
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6409
    type == #double ifTrue:[
3178
58100b56595d class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3165
diff changeset
  6410
        y0 := y0 + 1.
58100b56595d class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3165
diff changeset
  6411
        aGC displayLineFromX:x y:y0 toX:x1 y:y0.
58100b56595d class: MenuEditor
Claus Gittinger <cg@exept.de>
parents: 3165
diff changeset
  6412
        y0 := y0 - 2
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6413
    ].
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6414
    aGC displayLineFromX:x y:y0 toX:x1 y:y0
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6415
!
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6416
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6417
widthOn:aGC
2151
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  6418
    width isNil ifTrue:[ width := 60 ].
5427bb64d15e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2137
diff changeset
  6419
    ^ width
1631
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6420
! !
d7979e4253fd menu beautified;
Claus Gittinger <cg@exept.de>
parents: 1629
diff changeset
  6421
2019
Claus Gittinger <cg@exept.de>
parents: 2017
diff changeset
  6422
!MenuEditor class methodsFor:'documentation'!
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  6423
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  6424
version
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  6425
    ^ '$Header$'
2589
3b888b5f6791 comment/format in: #accept:
Claus Gittinger <cg@exept.de>
parents: 2584
diff changeset
  6426
!
3b888b5f6791 comment/format in: #accept:
Claus Gittinger <cg@exept.de>
parents: 2584
diff changeset
  6427
3b888b5f6791 comment/format in: #accept:
Claus Gittinger <cg@exept.de>
parents: 2584
diff changeset
  6428
version_CVS
3b888b5f6791 comment/format in: #accept:
Claus Gittinger <cg@exept.de>
parents: 2584
diff changeset
  6429
    ^ '$Header$'
199
6ce84c1270a6 intitial checkin
ca
parents:
diff changeset
  6430
! !
1606
54f978ea4b66 *** empty log message ***
ca
parents: 1586
diff changeset
  6431
2946
1994064bc8e2 changed: #processEvent:
Claus Gittinger <cg@exept.de>
parents: 2936
diff changeset
  6432
1462
02fe22d76582 change layout of image viewer, support of adding new image retriever
ca
parents: 1454
diff changeset
  6433
MenuEditor initialize!