MenuEditor.st
changeset 1104 cd4a620e6f94
parent 1083 46a1cb1c595d
child 1155 512913ffbdd9
equal deleted inserted replaced
1103:ecc91379704b 1104:cd4a620e6f94
  2045 updateChannels
  2045 updateChannels
  2046     "update channels"
  2046     "update channels"
  2047 
  2047 
  2048     |node parent next state|
  2048     |node parent next state|
  2049 
  2049 
       
  2050     self modifiedChannel value:false.
  2050     state := false.   
  2051     state := false.   
  2051     self updateSelectionOfImage.
  2052     self updateSelectionOfImage.
  2052 
  2053 
  2053     (node  := self treeView selectedNode) notNil
  2054     (node  := self treeView selectedNode) notNil
  2054     ifTrue:
  2055     ifTrue:
  2079     self valueOfEnableMovingOut      value:false.
  2080     self valueOfEnableMovingOut      value:false.
  2080     self hasValidSingleSelection     value:false.
  2081     self hasValidSingleSelection     value:false.
  2081     self hasValidSelection           value:state.     
  2082     self hasValidSelection           value:state.     
  2082     self valueOfCanPaste             value:(self hasValidSingleSelection value or: [node == self treeView root]) & self valueOfCanPaste value. 
  2083     self valueOfCanPaste             value:(self hasValidSingleSelection value or: [node == self treeView root]) & self valueOfCanPaste value. 
  2083 
  2084 
  2084 
       
  2085 !
  2085 !
  2086 
  2086 
  2087 updateListAndSelectionOfImage
  2087 updateListAndSelectionOfImage
  2088     "updates the list and selection of image"
  2088     "updates the list and selection of image"
  2089 
  2089 
  3252 !MenuEditor::TreeView methodsFor:'private'!
  3252 !MenuEditor::TreeView methodsFor:'private'!
  3253 
  3253 
  3254 addElement: aNode
  3254 addElement: aNode
  3255     "add something after selection"
  3255     "add something after selection"
  3256 
  3256 
  3257     self askForItemModification
  3257     |label sel|     
  3258     ifTrue:
  3258 
  3259     [   
  3259     self askForItemModification ifTrue:[   
  3260         self selectedNodeAdd: aNode.
  3260         self selectedNodeAdd:aNode.
  3261         (aNode isCollection not and: [aNode name = 'Item']) 
  3261         (aNode isCollection not 
  3262         ifTrue: 
  3262         and: [aNode name = 'Item']) 
  3263         [
  3263         ifTrue:[
  3264             |label|     
  3264             sel := self selectedNode.
  3265             label := aNode name, ' ',
  3265             label := aNode name , ' ',
  3266                 (self selectedNode parent notNil 
  3266                 (sel parent notNil 
  3267                 ifTrue:
  3267                 ifTrue:
  3268                 [
  3268                     [
  3269                     (((self selectedNode children size = 0 
  3269                         (((sel children size = 0 
  3270                         ifTrue: [self selectedNode parent children] 
  3270                             ifTrue: [sel parent children] 
  3271                         ifFalse: [self selectedNode children]) select: 
  3271                             ifFalse: [sel children]) 
  3272                             [:node| 
  3272                         select:[:node| 
  3273                                 |lab| 
  3273                             |lab| 
  3274                                 lab := node contents label. 
  3274                             lab := node contents label. 
  3275                                 ((node children size = 0) & 
  3275                             ((node children size = 0) & 
  3276                                 node contents submenuChannel isNil &
  3276                             node contents submenuChannel isNil &
  3277                                 (lab ~= '-') & (lab ~= '=') & (lab ~= ''))
  3277                             (lab ~= '-') & (lab ~= '=') & (lab ~= ''))
  3278                             ]) size) printString] 
  3278                         ]) size) printString
       
  3279                     ] 
  3279                 ifFalse: ['1']).  
  3280                 ifFalse: ['1']).  
  3280 
  3281 
  3281             aNode name: label string asBoldText.
  3282             aNode name: label string asBoldText.
  3282             aNode contents label: label string.
  3283             aNode contents label: label string.
  3283         ].    
  3284         ].    
  3306     "Created: / 23.8.1998 / 15:58:59 / cg"
  3307     "Created: / 23.8.1998 / 15:58:59 / cg"
  3307 !
  3308 !
  3308 
  3309 
  3309 selectedNodeAdd:something
  3310 selectedNodeAdd:something
  3310 
  3311 
  3311     |node|
  3312     |node numChildren|
  3312 
  3313 
  3313     something notNil ifTrue:[
  3314     something notNil ifTrue:[
  3314         (node := self selectedNode) notNil ifTrue:[
  3315         (node := self selectedNode) notNil ifTrue:[
       
  3316             numChildren := node children size.
       
  3317 
  3315             node parent notNil ifTrue:[
  3318             node parent notNil ifTrue:[
  3316                 node isCollapsable ifTrue:[
  3319                 node isCollapsable ifTrue:[
  3317                     model add:something afterIndex:node children size below:node
  3320                     model add:something afterIndex:numChildren below:node
  3318                 ] ifFalse:[
  3321                 ] ifFalse:[
  3319                     model add:something after:node
  3322                     model add:something after:node
  3320                 ]
  3323                 ]
  3321             ] ifFalse:[
  3324             ] ifFalse:[
  3322                 model add:something afterIndex:node children size below:(self root)
  3325                 model add:something afterIndex:numChildren below:(self root)
  3323             ]
  3326             ]
  3324         ]
  3327         ]
  3325     ]
  3328     ]
  3326 
  3329 
  3327 
  3330