--- a/MenuEditor.st Thu Feb 05 22:10:09 1998 +0100
+++ b/MenuEditor.st Thu Feb 05 22:15:36 1998 +0100
@@ -141,7 +141,7 @@
'A boolean value holder, a boolean evaluating block, or a boolean returning selector for specifying indication state.'
#basicsIsButton
-'Toggles on/off a button behavior.'
+'Turns on/off a button behavior.'
#basicsLabel
'Label of the item.'
@@ -162,7 +162,7 @@
'List of valid separators.'
#basicsTranslateLabel
-'Toggles on/off translation behavior of the label via class resource file.'
+'Turns on/off translation behavior of the label via class resource file.'
#detailsAccelerator
'Key to be pressed to select the menu item from the keyboard (accelerator key).'
@@ -189,7 +189,7 @@
'Saves current menu spec and if modified the help spec.'
#imageImageAndLabel
-'Toggles on/off displaying both image and textual label.'
+'Turns on/off displaying both image and textual label.'
#imageImageEditor
'Opens an Image Editor on retriever and selector.'
@@ -1048,13 +1048,13 @@
#'enabled:' #isStandAlone
)
#(#MenuItem
- #'label:' 'Define Menu Class...'
+ #'label:' 'Define Class...'
#'value:' #doDefineClass
#'activeHelpKey:' #fileDefineClass
#'enabled:' #isStandAlone
)
#(#MenuItem
- #'label:' 'Browse Menu Class'
+ #'label:' 'Browse Class'
#'value:' #doBrowseAppClass
#'activeHelpKey:' #fileBrowseClass
)
@@ -2772,13 +2772,16 @@
doCut
- |selectedNodes|
- self doCopy.
- selectedNodes := self selection asSortedCollection.
- self selectedNodesRemove.
- self selection: selectedNodes first - 1.
- self setModified.
-
+ self checkMenuItemModified
+ ifTrue:
+ [
+ |selectedNodes|
+ self doCopy.
+ selectedNodes := self selection asSortedCollection.
+ self selectedNodesRemove.
+ self selection: selectedNodes first - 1.
+ self setModified.
+ ]
!
@@ -2794,20 +2797,29 @@
addElement: aNode
"add something after selection"
- (aNode isCollection not and: [aNode name = 'Item'])
- ifTrue:
+ self checkMenuItemModified
+ ifTrue:
[
- |label|
- label := aNode name, ' ',
- (self selectedNode parent notNil ifTrue:
- [(((self selectedNode children size = 0 ifTrue: [self selectedNode parent children] ifFalse: [self selectedNode children]) select: [:node|
- |lab| lab := node contents label. ((node children size = 0) & node contents submenuChannel isNil & (lab ~= '-') & (lab ~= '=') & (lab ~= ''))]) size + 1) printString] ifFalse: ['1']).
- aNode name: label.
- aNode contents label: label.
- ].
- self selectedNodeAdd: aNode.
- aNode isCollection ifFalse: [self selectNode: aNode] ifTrue: [self selection: (aNode collect: [:node| self indexOfNode: node])].
- self setModified.
+ (aNode isCollection not and: [aNode name = 'Item'])
+ ifTrue:
+ [
+ |label|
+ label := aNode name, ' ',
+ (self selectedNode parent notNil ifTrue:
+ [(((self selectedNode children size = 0 ifTrue: [self selectedNode parent children] ifFalse: [self selectedNode children]) select: [:node|
+ |lab| lab := node contents label. ((node children size = 0) & node contents submenuChannel isNil & (lab ~= '-') & (lab ~= '=') & (lab ~= ''))]) size + 1) printString] ifFalse: ['1']).
+ aNode name: label.
+ aNode contents label: label.
+ ].
+ self selectedNodeAdd: aNode.
+ aNode isCollection ifFalse: [self selectNode: aNode] ifTrue: [self selection: (aNode collect: [:node| self indexOfNode: node])].
+ self setModified.
+ ]
+!
+
+checkMenuItemModified
+
+ ^self topView application checkMenuItemModified
!
nodeLabel:aLabel