--- a/MenuEditor.st Tue Sep 03 17:23:22 2002 +0200
+++ b/MenuEditor.st Wed Sep 04 12:27:09 2002 +0200
@@ -3475,8 +3475,8 @@
!
doCreateMenu
-
|node|
+
node := self nodeLabel:'Submenu'.
node parent: self selectedNode.
node add:(self nodeLabel:'Item 1').
@@ -3590,37 +3590,43 @@
addElement: aNode
"add something after selection"
- |label sel|
-
- self askForItemModification ifTrue:[
- self selectedNodeAdd:aNode.
- (aNode isCollection not
- and: [aNode name = 'Item'])
- ifTrue:[
- sel := self selectedNode.
- label := aNode name , ' ',
- (sel parent notNil
- ifTrue:
- [
- (((sel children size = 0
- ifTrue: [sel parent children]
- ifFalse: [sel children])
- select:[:node|
- |lab|
- lab := node contents label.
- ((node children size = 0) &
- node contents submenuChannel isNil &
- (lab ~= '-') & (lab ~= '=') & (lab ~= ''))
- ]) size) printString
- ]
- ifFalse: ['1']).
-
- aNode name: label string asBoldText.
- aNode contents label: label string.
- ].
- aNode isCollection ifFalse: [self selectNode: aNode] ifTrue: [self selection: (aNode collect: [:node| self indexOfNode: node])].
- self setModified.
- ]
+ |label sel selParent|
+
+ self askForItemModification ifFalse:[^ self].
+
+ self selectedNodeAdd:aNode.
+ (aNode isCollection not and:[aNode name = 'Item'])
+ ifTrue:[
+ sel := self selectedNode.
+ selParent := sel parent.
+ label := aNode name
+ ,
+ ' '
+ ,
+ (selParent notNil
+ ifTrue:[
+ (((sel children size = 0
+ ifTrue: [selParent children]
+ ifFalse: [sel children])
+ select:[:node|
+ |lab|
+ lab := node contents label.
+ ((node children size = 0) &
+ node contents submenuChannel isNil &
+ (lab ~= '-') & (lab ~= '=') & (lab ~= ''))
+ ]) size) printString
+ ]
+ ifFalse: ['1']).
+
+ aNode name: label string asBoldText.
+ aNode contents label: label string.
+ ].
+ aNode isCollection ifFalse: [
+ self selectNode: aNode
+ ] ifTrue: [
+ self selection: (aNode collect: [:node| self indexOfNode: node])
+ ].
+ self setModified.
!
askForItemModification