--- a/MenuEditor.st Tue Jun 04 12:59:34 2013 +0200
+++ b/MenuEditor.st Tue Jun 04 14:31:52 2013 +0200
@@ -112,32 +112,32 @@
[Instance variables:]
- listOfItemsView <HierarcicalListView> the view which shows the list of items
- listOfItems <HierarchicalList> hierarchical list of menu items
- listOfTabs <List> list of current shown tab-labels
-
- selectionHolder <ValueHolder> collection of current selected items
- selectedSuperItems <Collection> collection of superItems derived from selection
-
- tabHolder <ValueHolder> selected tab label holder
- notifyDisabledCounter <SmallInteger> ~~ 0 than change notifications are discard
- wizards <IdentityDictionary> keeps all created wizard dialogs
-
- dropOverLine <nil or SmallInteger> nil: drop context not dropabel.
- = 0: drop context dropable but no item specified
- ~ 0: drop context dropable for item at lineNumber
- used t6o restore drop indication drawings
+ listOfItemsView <HierarcicalListView> the view which shows the list of items
+ listOfItems <HierarchicalList> hierarchical list of menu items
+ listOfTabs <List> list of current shown tab-labels
+
+ selectionHolder <ValueHolder> collection of current selected items
+ selectedSuperItems <Collection> collection of superItems derived from selection
+
+ tabHolder <ValueHolder> selected tab label holder
+ notifyDisabledCounter <SmallInteger> ~~ 0 than change notifications are discard
+ wizards <IdentityDictionary> keeps all created wizard dialogs
+
+ dropOverLine <nil or SmallInteger> nil: drop context not dropabel.
+ = 0: drop context dropable but no item specified
+ ~ 0: drop context dropable for item at lineNumber
+ used t6o restore drop indication drawings
[Class variables:]
- ImageRetrieverClasses <Collection> sorted collection of image receivers
+ ImageRetrieverClasses <Collection> sorted collection of image receivers
[start with:]
- MenuEditor open
- MenuEditor openOnClass:MenuEditor andSelector:#menu
+ MenuEditor open
+ MenuEditor openOnClass:MenuEditor andSelector:#menu
[author:]
- Claus Atzkern, eXept Software AG
- Thomas Zwick, eXept Software AG
+ Claus Atzkern, eXept Software AG
+ Thomas Zwick, eXept Software AG
"
! !
@@ -402,7 +402,7 @@
'If on, the menu hides itself after the item was activated (PopUp/PullDown-Menus only).'
#horizontalLayout
-'If on, the submenu organizes its items horizontal insteat of vertical (default).'
+'If on, the submenu organizes its items horizontal instead of vertical (default).'
#imageImageAndLabel
'Toggle display of both image and textual label.'
@@ -606,73 +606,73 @@
^
#(Menu
- (
- (MenuItem
- activeHelpKey: addMenuSeparator
- label: 'Separator'
- itemValue: doCreateSep
- translateLabel: true
- labelImage: (ResourceRetriever #'MenuEditor::Item' iconSeparator '')
- )
- (MenuItem
- activeHelpKey: addMenuItem
- label: 'Item'
- itemValue: doCreateItem
- translateLabel: true
- labelImage: (ResourceRetriever #'MenuEditor::Item' iconItem '')
- )
- (MenuItem
- activeHelpKey: addMenuSliceItem
- label: 'Menu Slice'
- itemValue: doCreateMenuSliceItem
- translateLabel: true
- labelImage: (ResourceRetriever #'MenuEditor::Item' iconSliceMenu '')
- )
- (MenuItem
- activeHelpKey: addMenuItem
- label: 'Menu'
- itemValue: doCreateMenu
- translateLabel: true
- labelImage: (ResourceRetriever #'MenuEditor::Item' iconMenu '')
- )
- (MenuItem
- activeHelpKey: addSubMenuLink
- label: 'Linked Menu'
- itemValue: doCreateLinkedMenu
- translateLabel: true
- labelImage: (ResourceRetriever #'MenuEditor::Item' iconLinkedMenu '')
- )
- (MenuItem
- label: '-'
- )
- (MenuItem
- activeHelpKey: addDelayedMenu
- enabled: canCreateDelayedMenuChannel
- label: 'Delayed Menu'
- itemValue: doCreateDelayedMenu:
- translateLabel: true
- labelImage: (ResourceRetriever #'MenuEditor::Item' iconDelayedMenu '')
- argument: menu
- )
- (MenuItem
- activeHelpKey: addDelayedSubMenuLink
- enabled: canCreateDelayedMenuChannel
- label: 'Delayed Linked Menu'
- itemValue: doCreateDelayedMenu:
- translateLabel: true
- labelImage: (ResourceRetriever #'MenuEditor::Item' iconDelayedLinkedMenu '')
- argument: linkedMenu
- )
- (MenuItem
- label: '-'
- )
- (MenuItem
- label: 'Standard Menus'
- translateLabel: true
- submenuChannel: standardMenus
- keepLinkedMenu: true
- )
- )
+ (
+ (MenuItem
+ activeHelpKey: addMenuSeparator
+ label: 'Separator'
+ itemValue: doCreateSep
+ translateLabel: true
+ labelImage: (ResourceRetriever #'MenuEditor::Item' iconSeparator '')
+ )
+ (MenuItem
+ activeHelpKey: addMenuItem
+ label: 'Item'
+ itemValue: doCreateItem
+ translateLabel: true
+ labelImage: (ResourceRetriever #'MenuEditor::Item' iconItem '')
+ )
+ (MenuItem
+ activeHelpKey: addMenuSliceItem
+ label: 'Menu Slice'
+ itemValue: doCreateMenuSliceItem
+ translateLabel: true
+ labelImage: (ResourceRetriever #'MenuEditor::Item' iconSliceMenu '')
+ )
+ (MenuItem
+ activeHelpKey: addMenuItem
+ label: 'Menu'
+ itemValue: doCreateMenu
+ translateLabel: true
+ labelImage: (ResourceRetriever #'MenuEditor::Item' iconMenu '')
+ )
+ (MenuItem
+ activeHelpKey: addSubMenuLink
+ label: 'Linked Menu'
+ itemValue: doCreateLinkedMenu
+ translateLabel: true
+ labelImage: (ResourceRetriever #'MenuEditor::Item' iconLinkedMenu '')
+ )
+ (MenuItem
+ label: '-'
+ )
+ (MenuItem
+ activeHelpKey: addDelayedMenu
+ enabled: canCreateDelayedMenuChannel
+ label: 'Delayed Menu'
+ itemValue: doCreateDelayedMenu:
+ translateLabel: true
+ labelImage: (ResourceRetriever #'MenuEditor::Item' iconDelayedMenu '')
+ argument: menu
+ )
+ (MenuItem
+ activeHelpKey: addDelayedSubMenuLink
+ enabled: canCreateDelayedMenuChannel
+ label: 'Delayed Linked Menu'
+ itemValue: doCreateDelayedMenu:
+ translateLabel: true
+ labelImage: (ResourceRetriever #'MenuEditor::Item' iconDelayedLinkedMenu '')
+ argument: linkedMenu
+ )
+ (MenuItem
+ label: '-'
+ )
+ (MenuItem
+ label: 'Standard Menus'
+ translateLabel: true
+ submenuChannel: standardMenus
+ keepLinkedMenu: true
+ )
+ )
"/ nil
"/ nil
)
@@ -692,96 +692,96 @@
<resource: #menu>
- ^
+ ^
#(Menu
- (
- (MenuItem
- activeHelpKey: editCut
- enabled: hasSelectionChannel
- label: 'Cut'
- itemValue: doCut
- translateLabel: true
- shortcutKey: Cut
- )
- (MenuItem
- activeHelpKey: editCopy
- enabled: hasSelectionChannel
- label: 'Copy'
- itemValue: doCopy
- translateLabel: true
- shortcutKey: Copy
- )
- (MenuItem
- activeHelpKey: editPaste
- enabled: canPasteHolder
- label: 'Paste'
- itemValue: doPaste
- translateLabel: true
- shortcutKey: Paste
- )
- (MenuItem
- activeHelpKey: editDelete
- enabled: hasSelectionChannel
- label: 'Delete'
- itemValue: doDelete
- translateLabel: true
- isVisible: false
- )
- (MenuItem
- label: '-'
- )
- (MenuItem
- activeHelpKey: editMoveUp
- enabled: enableMovingUpOrDownHolder
- label: 'Move Up'
- itemValue: doMoveUpOrDown:
- translateLabel: true
- startGroup: right
- shortcutKey: CtrlCursorUp
- labelImage: (ResourceRetriever Icon upIcon 'Move Up')
- argument: up
- )
- (MenuItem
- activeHelpKey: editMoveDown
- enabled: enableMovingUpOrDownHolder
- label: 'Move Down'
- itemValue: doMoveUpOrDown:
- translateLabel: true
- shortcutKey: CtrlCursorDown
- labelImage: (ResourceRetriever Icon downIcon 'Move Down')
- argument: down
- )
- (MenuItem
- activeHelpKey: editMoveIn
- enabled: enableMovingInHolder
- label: 'Move Into Next'
- itemValue: doMoveIn:
- translateLabel: true
- shortcutKey: CtrlCursorRight
- labelImage: (ResourceRetriever Icon downRightIcon 'Move Into Next')
- argument: inNext
- )
- (MenuItem
- activeHelpKey: editMoveInAbove
- enabled: enableMovingInAboveHolder
- label: 'Move Into Previous'
- itemValue: doMoveIn:
- translateLabel: true
- labelImage: (ResourceRetriever Icon upRightIcon 'Move Into Previous' )
- argument: inPrev
- )
- (MenuItem
- activeHelpKey: editMoveOut
- enabled: enableMovingOutHolder
- label: 'Move Out'
- itemValue: doMoveOut
- translateLabel: true
- shortcutKey: CtrlCursorLeft
- labelImage: (ResourceRetriever Icon leftDownIcon 'Move Out' )
- )
- )
- nil
- nil
+ (
+ (MenuItem
+ activeHelpKey: editCut
+ enabled: hasSelectionChannel
+ label: 'Cut'
+ itemValue: doCut
+ translateLabel: true
+ shortcutKey: Cut
+ )
+ (MenuItem
+ activeHelpKey: editCopy
+ enabled: hasSelectionChannel
+ label: 'Copy'
+ itemValue: doCopy
+ translateLabel: true
+ shortcutKey: Copy
+ )
+ (MenuItem
+ activeHelpKey: editPaste
+ enabled: canPasteHolder
+ label: 'Paste'
+ itemValue: doPaste
+ translateLabel: true
+ shortcutKey: Paste
+ )
+ (MenuItem
+ activeHelpKey: editDelete
+ enabled: hasSelectionChannel
+ label: 'Delete'
+ itemValue: doDelete
+ translateLabel: true
+ isVisible: false
+ )
+ (MenuItem
+ label: '-'
+ )
+ (MenuItem
+ activeHelpKey: editMoveUp
+ enabled: enableMovingUpOrDownHolder
+ label: 'Move Up'
+ itemValue: doMoveUpOrDown:
+ translateLabel: true
+ startGroup: right
+ shortcutKey: CtrlCursorUp
+ labelImage: (ResourceRetriever Icon upIcon 'Move Up')
+ argument: up
+ )
+ (MenuItem
+ activeHelpKey: editMoveDown
+ enabled: enableMovingUpOrDownHolder
+ label: 'Move Down'
+ itemValue: doMoveUpOrDown:
+ translateLabel: true
+ shortcutKey: CtrlCursorDown
+ labelImage: (ResourceRetriever Icon downIcon 'Move Down')
+ argument: down
+ )
+ (MenuItem
+ activeHelpKey: editMoveIn
+ enabled: enableMovingInHolder
+ label: 'Move Into Next'
+ itemValue: doMoveIn:
+ translateLabel: true
+ shortcutKey: CtrlCursorRight
+ labelImage: (ResourceRetriever Icon downRightIcon 'Move Into Next')
+ argument: inNext
+ )
+ (MenuItem
+ activeHelpKey: editMoveInAbove
+ enabled: enableMovingInAboveHolder
+ label: 'Move Into Previous'
+ itemValue: doMoveIn:
+ translateLabel: true
+ labelImage: (ResourceRetriever Icon upRightIcon 'Move Into Previous' )
+ argument: inPrev
+ )
+ (MenuItem
+ activeHelpKey: editMoveOut
+ enabled: enableMovingOutHolder
+ label: 'Move Out'
+ itemValue: doMoveOut
+ translateLabel: true
+ shortcutKey: CtrlCursorLeft
+ labelImage: (ResourceRetriever Icon leftDownIcon 'Move Out' )
+ )
+ )
+ nil
+ nil
)
!
@@ -899,100 +899,100 @@
<resource: #menu>
- ^
+ ^
#(Menu
- (
- (MenuItem
- isVisible: isNotEditingSpecOnlyAndNotEmbeddedInBrowser
- activeHelpKey: fileNew
- label: 'New'
- itemValue: doNew
- translateLabel: true
- )
- (MenuItem
- isVisible: isNotEditingSpecOnlyAndNotEmbeddedInBrowser
- label: '-'
- )
- (MenuItem
- isVisible: isNotEditingSpecOnlyAndNotEmbeddedInBrowser
- activeHelpKey: fileLoad
- label: 'Load...'
- itemValue: doLoad
- translateLabel: true
- )
- (MenuItem
- isVisible: isNotEditingSpecOnlyAndNotEmbeddedInBrowser
- label: '-'
- )
- (MenuItem
- isVisible: isEditingSpecOnly
- activeHelpKey: fileSaveSpec
- label: 'Save'
- itemValue: doSave
- translateLabel: true
- )
- (MenuItem
- isVisible: isNotEditingSpecOnly
- activeHelpKey: fileSave
- label: 'Save'
- itemValue: doSave
- translateLabel: true
- )
- (MenuItem
- isVisible: isNotEditingSpecOnlyAndNotEmbeddedInBrowser
- activeHelpKey: fileSaveAs
- label: 'Save As...'
- itemValue: doSaveAs
- translateLabel: true
- )
- (MenuItem
- label: '-'
- )
- (MenuItem
- activeHelpKey: filePickAMenu
- label: 'Pick a Menu...'
- itemValue: doPickAMenu
- translateLabel: true
- )
- (MenuItem
- activeHelpKey: fileChooseAMenu
- label: 'Choose a Menu...'
- itemValue: doChooseAMenu
- translateLabel: true
- )
- (MenuItem
- label: '-'
- isVisible: isStandAlone
- )
- (MenuItem
- activeHelpKey: fileBrowseClass
- enabled: hasValidSpecClass
- label: 'Browse Class'
- itemValue: doBrowseClass
- translateLabel: true
- isVisible: isStandAlone
- )
- (MenuItem
- activeHelpKey: fileShowMenuSpec
- label: 'Show Menu Spec'
- itemValue: doShowMenuSpec
- translateLabel: true
- isVisible: isStandAlone
- )
- (MenuItem
- label: '-'
- isVisible: isStandAlone
- )
- (MenuItem
- activeHelpKey: fileExit
- label: 'Exit'
- itemValue: closeRequest
- translateLabel: true
- isVisible: isStandAlone
- )
- )
- nil
- nil
+ (
+ (MenuItem
+ isVisible: isNotEditingSpecOnlyAndNotEmbeddedInBrowser
+ activeHelpKey: fileNew
+ label: 'New'
+ itemValue: doNew
+ translateLabel: true
+ )
+ (MenuItem
+ isVisible: isNotEditingSpecOnlyAndNotEmbeddedInBrowser
+ label: '-'
+ )
+ (MenuItem
+ isVisible: isNotEditingSpecOnlyAndNotEmbeddedInBrowser
+ activeHelpKey: fileLoad
+ label: 'Load...'
+ itemValue: doLoad
+ translateLabel: true
+ )
+ (MenuItem
+ isVisible: isNotEditingSpecOnlyAndNotEmbeddedInBrowser
+ label: '-'
+ )
+ (MenuItem
+ isVisible: isEditingSpecOnly
+ activeHelpKey: fileSaveSpec
+ label: 'Save'
+ itemValue: doSave
+ translateLabel: true
+ )
+ (MenuItem
+ isVisible: isNotEditingSpecOnly
+ activeHelpKey: fileSave
+ label: 'Save'
+ itemValue: doSave
+ translateLabel: true
+ )
+ (MenuItem
+ isVisible: isNotEditingSpecOnlyAndNotEmbeddedInBrowser
+ activeHelpKey: fileSaveAs
+ label: 'Save As...'
+ itemValue: doSaveAs
+ translateLabel: true
+ )
+ (MenuItem
+ label: '-'
+ )
+ (MenuItem
+ activeHelpKey: filePickAMenu
+ label: 'Pick a Menu...'
+ itemValue: doPickAMenu
+ translateLabel: true
+ )
+ (MenuItem
+ activeHelpKey: fileChooseAMenu
+ label: 'Choose a Menu...'
+ itemValue: doChooseAMenu
+ translateLabel: true
+ )
+ (MenuItem
+ label: '-'
+ isVisible: isStandAlone
+ )
+ (MenuItem
+ activeHelpKey: fileBrowseClass
+ enabled: hasValidSpecClass
+ label: 'Browse Class'
+ itemValue: doBrowseClass
+ translateLabel: true
+ isVisible: isStandAlone
+ )
+ (MenuItem
+ activeHelpKey: fileShowMenuSpec
+ label: 'Show Menu Spec'
+ itemValue: doShowMenuSpec
+ translateLabel: true
+ isVisible: isStandAlone
+ )
+ (MenuItem
+ label: '-'
+ isVisible: isStandAlone
+ )
+ (MenuItem
+ activeHelpKey: fileExit
+ label: 'Exit'
+ itemValue: closeRequest
+ translateLabel: true
+ isVisible: isStandAlone
+ )
+ )
+ nil
+ nil
)
!
@@ -1098,76 +1098,76 @@
<resource: #menu>
- ^
+ ^
#(Menu
- (
- (MenuItem
- label: '&File'
- translateLabel: true
- submenuChannel: fileMenu
- keepLinkedMenu: true
- ignoreMnemonicKeys: true
- ignoreShortcutKeys: true
- )
- (MenuItem
- label: '&Edit'
- translateLabel: true
- submenuChannel: editMenuForMainMenuWithoutAccelerators
- keepLinkedMenu: true
- )
- (MenuItem
- enabled: hasSingleSelectionChannel
- label: 'Item'
- translateLabel: true
- submenuChannel: addMenu
- keepLinkedMenu: true
- ignoreMnemonicKeys: true
- ignoreShortcutKeys: true
- )
- (MenuItem
- isVisible: isNotEditingSpecOnly
- label: 'Generate'
- translateLabel: true
- submenuChannel: generateMenu
- keepLinkedMenu: true
- ignoreMnemonicKeys: true
- ignoreShortcutKeys: true
- )
- (MenuItem
- label: 'Test'
- translateLabel: true
- submenuChannel: submenuTest
- ignoreMnemonicKeys: true
- ignoreShortcutKeys: true
- )
- (MenuItem
- label: 'Settings'
- translateLabel: true
- submenuChannel: settingsMenu
- keepLinkedMenu: true
- ignoreMnemonicKeys: true
- ignoreShortcutKeys: true
- )
- (MenuItem
- label: 'History'
- translateLabel: true
- isVisible: isStandAlone
- submenuChannel: menuHistory
- ignoreMnemonicKeys: true
- ignoreShortcutKeys: true
- )
- (MenuItem
- label: 'MENU_Help'
- translateLabel: true
- startGroup: conditionalRight
- submenuChannel: helpMenu
- keepLinkedMenu: true
- ignoreMnemonicKeys: true
- ignoreShortcutKeys: true
- )
- )
- nil
- nil
+ (
+ (MenuItem
+ label: '&File'
+ translateLabel: true
+ submenuChannel: fileMenu
+ keepLinkedMenu: true
+ ignoreMnemonicKeys: true
+ ignoreShortcutKeys: true
+ )
+ (MenuItem
+ label: '&Edit'
+ translateLabel: true
+ submenuChannel: editMenuForMainMenuWithoutAccelerators
+ keepLinkedMenu: true
+ )
+ (MenuItem
+ enabled: hasSingleSelectionChannel
+ label: 'Item'
+ translateLabel: true
+ submenuChannel: addMenu
+ keepLinkedMenu: true
+ ignoreMnemonicKeys: true
+ ignoreShortcutKeys: true
+ )
+ (MenuItem
+ isVisible: isNotEditingSpecOnly
+ label: 'Generate'
+ translateLabel: true
+ submenuChannel: generateMenu
+ keepLinkedMenu: true
+ ignoreMnemonicKeys: true
+ ignoreShortcutKeys: true
+ )
+ (MenuItem
+ label: 'Test'
+ translateLabel: true
+ submenuChannel: submenuTest
+ ignoreMnemonicKeys: true
+ ignoreShortcutKeys: true
+ )
+ (MenuItem
+ label: 'Settings'
+ translateLabel: true
+ submenuChannel: settingsMenu
+ keepLinkedMenu: true
+ ignoreMnemonicKeys: true
+ ignoreShortcutKeys: true
+ )
+ (MenuItem
+ label: 'History'
+ translateLabel: true
+ isVisible: isStandAlone
+ submenuChannel: menuHistory
+ ignoreMnemonicKeys: true
+ ignoreShortcutKeys: true
+ )
+ (MenuItem
+ label: 'MENU_Help'
+ translateLabel: true
+ startGroup: conditionalRight
+ submenuChannel: helpMenu
+ keepLinkedMenu: true
+ ignoreMnemonicKeys: true
+ ignoreShortcutKeys: true
+ )
+ )
+ nil
+ nil
)
!
@@ -1187,26 +1187,26 @@
^
#(#Menu
- #(
- #(#MenuItem
- isVisible: isNotEditingSpecOnly
- #activeHelpKey: #settingsRedefineAspectMethods
- #enabled: #hasValidSpecClass
- #label: 'Redefine Aspect Methods'
- #translateLabel: true
- #hideMenuOnActivated: false
- #indication: #redefineAspectMethodsChannel
- )
- #(#MenuItem
- #activeHelpKey: #settingsRedefineAspectMethods
- #label: 'AutoAccept on Selection-Change'
- #translateLabel: true
- #hideMenuOnActivated: false
- #indication: #autoAcceptOnSelectionChange
- )
- )
- nil
- nil
+ #(
+ #(#MenuItem
+ isVisible: isNotEditingSpecOnly
+ #activeHelpKey: #settingsRedefineAspectMethods
+ #enabled: #hasValidSpecClass
+ #label: 'Redefine Aspect Methods'
+ #translateLabel: true
+ #hideMenuOnActivated: false
+ #indication: #redefineAspectMethodsChannel
+ )
+ #(#MenuItem
+ #activeHelpKey: #settingsRedefineAspectMethods
+ #label: 'AutoAccept on Selection-Change'
+ #translateLabel: true
+ #hideMenuOnActivated: false
+ #indication: #autoAcceptOnSelectionChange
+ )
+ )
+ nil
+ nil
)
!
@@ -1262,201 +1262,201 @@
<resource: #menu>
- ^
+ ^
#(Menu
- (
- (MenuItem
- activeHelpKey: fileNew
- label: 'New'
- itemValue: doNew
- translateLabel: true
- isButton: true
- labelImage: (ResourceRetriever ToolbarIconLibrary newMenuIcon)
- )
- (MenuItem
- label: '-'
- )
- (MenuItem
- activeHelpKey: fileLoad
- label: 'Load'
- itemValue: doLoad
- translateLabel: true
- isButton: true
- isVisible: isNotEditingSpecOnly
- submenuChannel: menuHistory
- labelImage: (ResourceRetriever ToolbarIconLibrary loadFromMethodIcon)
- keepLinkedMenu: true
- )
- (MenuItem
- activeHelpKey: fileSave
- label: 'Save'
- itemValue: doSave
- translateLabel: true
- isButton: true
- isVisible: isNotEditingSpecOnly
- labelImage: (ResourceRetriever ToolbarIconLibrary saveAsMethodIcon)
- )
- (MenuItem
- activeHelpKey: fileSaveSpec
- label: 'Save'
- itemValue: doSave
- translateLabel: true
- isButton: true
- isVisible: isEditingSpecOnly
- labelImage: (ResourceRetriever XPToolbarIconLibrary saveImageIcon)
- )
- (MenuItem
- label: '-'
- )
- (MenuItem
- activeHelpKey: editCut
- enabled: hasSelectionChannel
- label: 'Cut'
- itemValue: doCut
- translateLabel: true
- isButton: true
- labelImage: (ResourceRetriever ToolbarIconLibrary cutMenuItemIcon)
- )
- (MenuItem
- activeHelpKey: editCopy
- enabled: hasSelectionChannel
- label: 'Copy'
- itemValue: doCopy
- translateLabel: true
- isButton: true
- labelImage: (ResourceRetriever ToolbarIconLibrary copyMenuItemIcon)
- )
- (MenuItem
- activeHelpKey: editPaste
- enabled: canPasteHolder
- label: 'Paste'
- itemValue: doPaste
- translateLabel: true
- isButton: true
- labelImage: (ResourceRetriever ToolbarIconLibrary pasteMenuItemIcon)
- )
- (MenuItem
- label: '-'
- )
- (MenuItem
- activeHelpKey: addMenuItem
- enabled: hasSingleSelectionChannel
- label: 'Add Item'
- itemValue: doCreateItem
- translateLabel: true
- isButton: true
- labelImage: (ResourceRetriever #'MenuEditor::Item' iconItem)
- )
- (MenuItem
- activeHelpKey: addMenuSeparator
- enabled: hasSingleSelectionChannel
- label: 'Add Separator'
- itemValue: doCreateSep
- translateLabel: true
- isButton: true
- labelImage: (ResourceRetriever #'MenuEditor::Item' iconSeparator)
- )
- (MenuItem
- activeHelpKey: addMenuSlice
- enabled: hasSingleSelectionChannel
- label: 'Menu Slice'
- itemValue: doCreateMenuSliceItem
- translateLabel: true
- isButton: true
- labelImage: (ResourceRetriever #'MenuEditor::Item' iconSliceMenu)
- )
- (MenuItem
- activeHelpKey: addSubMenu
- enabled: hasSingleSelectionChannel
- label: 'Add Menu'
- itemValue: doCreateMenu
- translateLabel: true
- isButton: true
- submenuChannel: standardMenus
- labelImage: (ResourceRetriever #'MenuEditor::Item' iconMenu)
- keepLinkedMenu: true
- )
- (MenuItem
- activeHelpKey: addSubMenuLink
- enabled: hasSingleSelectionChannel
- label: 'Add Linked Menu'
- itemValue: doCreateLinkedMenu
- translateLabel: true
- isButton: true
- labelImage: (ResourceRetriever #'MenuEditor::Item' iconLinkedMenu)
- )
- (MenuItem
- activeHelpKey: addDelayedMenu
- enabled: canCreateDelayedMenuChannel
- label: 'Add Delayed Menu'
- itemValue: doCreateDelayedMenu:
- translateLabel: true
- isButton: true
- labelImage: (ResourceRetriever #'MenuEditor::Item' iconDelayedMenu)
- argument: menu
- )
- (MenuItem
- activeHelpKey: addDelayedSubMenuLink
- enabled: canCreateDelayedMenuChannel
- label: 'Add Delayed Linked Menu'
- itemValue: doCreateDelayedMenu:
- translateLabel: true
- isButton: true
- labelImage: (ResourceRetriever #'MenuEditor::Item' iconDelayedLinkedMenu)
- argument: linkedMenu
- )
- (MenuItem
- label: ''
- )
- (MenuItem
- activeHelpKey: editMoveUp
- enabled: enableMovingUpOrDownHolder
- label: 'Move Up'
- itemValue: doMoveUp
- translateLabel: true
- isButton: true
- startGroup: right
- labelImage: (ResourceRetriever Icon upIcon)
- )
- (MenuItem
- activeHelpKey: editMoveDown
- enabled: enableMovingUpOrDownHolder
- label: 'Move Down'
- itemValue: doMoveDown
- translateLabel: true
- isButton: true
- labelImage: (ResourceRetriever Icon downIcon)
- )
- (MenuItem
- activeHelpKey: editMoveIn
- enabled: enableMovingInHolder
- label: 'Move Into Next'
- itemValue: doMoveInNext
- translateLabel: true
- isButton: true
- labelImage: (ResourceRetriever Icon downRightIcon)
- )
- (MenuItem
- activeHelpKey: editMoveInAbove
- enabled: enableMovingInAboveHolder
- label: 'Move Into Previous'
- itemValue: doMoveInPrevious
- translateLabel: true
- isButton: true
- labelImage: (ResourceRetriever Icon upRightIcon)
- )
- (MenuItem
- activeHelpKey: editMoveOut
- enabled: enableMovingOutHolder
- label: 'Move Out'
- itemValue: doMoveOut
- translateLabel: true
- isButton: true
- labelImage: (ResourceRetriever Icon leftDownIcon)
- )
- )
- nil
- nil
+ (
+ (MenuItem
+ activeHelpKey: fileNew
+ label: 'New'
+ itemValue: doNew
+ translateLabel: true
+ isButton: true
+ labelImage: (ResourceRetriever ToolbarIconLibrary newMenuIcon)
+ )
+ (MenuItem
+ label: '-'
+ )
+ (MenuItem
+ activeHelpKey: fileLoad
+ label: 'Load'
+ itemValue: doLoad
+ translateLabel: true
+ isButton: true
+ isVisible: isNotEditingSpecOnly
+ submenuChannel: menuHistory
+ labelImage: (ResourceRetriever ToolbarIconLibrary loadFromMethodIcon)
+ keepLinkedMenu: true
+ )
+ (MenuItem
+ activeHelpKey: fileSave
+ label: 'Save'
+ itemValue: doSave
+ translateLabel: true
+ isButton: true
+ isVisible: isNotEditingSpecOnly
+ labelImage: (ResourceRetriever ToolbarIconLibrary saveAsMethodIcon)
+ )
+ (MenuItem
+ activeHelpKey: fileSaveSpec
+ label: 'Save'
+ itemValue: doSave
+ translateLabel: true
+ isButton: true
+ isVisible: isEditingSpecOnly
+ labelImage: (ResourceRetriever XPToolbarIconLibrary saveImageIcon)
+ )
+ (MenuItem
+ label: '-'
+ )
+ (MenuItem
+ activeHelpKey: editCut
+ enabled: hasSelectionChannel
+ label: 'Cut'
+ itemValue: doCut
+ translateLabel: true
+ isButton: true
+ labelImage: (ResourceRetriever ToolbarIconLibrary cutMenuItemIcon)
+ )
+ (MenuItem
+ activeHelpKey: editCopy
+ enabled: hasSelectionChannel
+ label: 'Copy'
+ itemValue: doCopy
+ translateLabel: true
+ isButton: true
+ labelImage: (ResourceRetriever ToolbarIconLibrary copyMenuItemIcon)
+ )
+ (MenuItem
+ activeHelpKey: editPaste
+ enabled: canPasteHolder
+ label: 'Paste'
+ itemValue: doPaste
+ translateLabel: true
+ isButton: true
+ labelImage: (ResourceRetriever ToolbarIconLibrary pasteMenuItemIcon)
+ )
+ (MenuItem
+ label: '-'
+ )
+ (MenuItem
+ activeHelpKey: addMenuItem
+ enabled: hasSingleSelectionChannel
+ label: 'Add Item'
+ itemValue: doCreateItem
+ translateLabel: true
+ isButton: true
+ labelImage: (ResourceRetriever #'MenuEditor::Item' iconItem)
+ )
+ (MenuItem
+ activeHelpKey: addMenuSeparator
+ enabled: hasSingleSelectionChannel
+ label: 'Add Separator'
+ itemValue: doCreateSep
+ translateLabel: true
+ isButton: true
+ labelImage: (ResourceRetriever #'MenuEditor::Item' iconSeparator)
+ )
+ (MenuItem
+ activeHelpKey: addMenuSlice
+ enabled: hasSingleSelectionChannel
+ label: 'Menu Slice'
+ itemValue: doCreateMenuSliceItem
+ translateLabel: true
+ isButton: true
+ labelImage: (ResourceRetriever #'MenuEditor::Item' iconSliceMenu)
+ )
+ (MenuItem
+ activeHelpKey: addSubMenu
+ enabled: hasSingleSelectionChannel
+ label: 'Add Menu'
+ itemValue: doCreateMenu
+ translateLabel: true
+ isButton: true
+ submenuChannel: standardMenus
+ labelImage: (ResourceRetriever #'MenuEditor::Item' iconMenu)
+ keepLinkedMenu: true
+ )
+ (MenuItem
+ activeHelpKey: addSubMenuLink
+ enabled: hasSingleSelectionChannel
+ label: 'Add Linked Menu'
+ itemValue: doCreateLinkedMenu
+ translateLabel: true
+ isButton: true
+ labelImage: (ResourceRetriever #'MenuEditor::Item' iconLinkedMenu)
+ )
+ (MenuItem
+ activeHelpKey: addDelayedMenu
+ enabled: canCreateDelayedMenuChannel
+ label: 'Add Delayed Menu'
+ itemValue: doCreateDelayedMenu:
+ translateLabel: true
+ isButton: true
+ labelImage: (ResourceRetriever #'MenuEditor::Item' iconDelayedMenu)
+ argument: menu
+ )
+ (MenuItem
+ activeHelpKey: addDelayedSubMenuLink
+ enabled: canCreateDelayedMenuChannel
+ label: 'Add Delayed Linked Menu'
+ itemValue: doCreateDelayedMenu:
+ translateLabel: true
+ isButton: true
+ labelImage: (ResourceRetriever #'MenuEditor::Item' iconDelayedLinkedMenu)
+ argument: linkedMenu
+ )
+ (MenuItem
+ label: ''
+ )
+ (MenuItem
+ activeHelpKey: editMoveUp
+ enabled: enableMovingUpOrDownHolder
+ label: 'Move Up'
+ itemValue: doMoveUp
+ translateLabel: true
+ isButton: true
+ startGroup: right
+ labelImage: (ResourceRetriever Icon upIcon)
+ )
+ (MenuItem
+ activeHelpKey: editMoveDown
+ enabled: enableMovingUpOrDownHolder
+ label: 'Move Down'
+ itemValue: doMoveDown
+ translateLabel: true
+ isButton: true
+ labelImage: (ResourceRetriever Icon downIcon)
+ )
+ (MenuItem
+ activeHelpKey: editMoveIn
+ enabled: enableMovingInHolder
+ label: 'Move Into Next'
+ itemValue: doMoveInNext
+ translateLabel: true
+ isButton: true
+ labelImage: (ResourceRetriever Icon downRightIcon)
+ )
+ (MenuItem
+ activeHelpKey: editMoveInAbove
+ enabled: enableMovingInAboveHolder
+ label: 'Move Into Previous'
+ itemValue: doMoveInPrevious
+ translateLabel: true
+ isButton: true
+ labelImage: (ResourceRetriever Icon upRightIcon)
+ )
+ (MenuItem
+ activeHelpKey: editMoveOut
+ enabled: enableMovingOutHolder
+ label: 'Move Out'
+ itemValue: doMoveOut
+ translateLabel: true
+ isButton: true
+ labelImage: (ResourceRetriever Icon leftDownIcon)
+ )
+ )
+ nil
+ nil
)
! !
@@ -1635,17 +1635,17 @@
imageTool
"get the image tool application"
- ^ wizards
- at:#image
- ifAbsentPut:[
- |tool|
-
- tool := ImageResourceEditor new createBuilder.
- tool masterApplication:self.
- tool modifiedChannel: self enablingCommitButtonsHolder.
- tool builder window:(ApplicationSubView new client:tool).
- tool
- ]
+ ^ wizards
+ at:#image
+ ifAbsentPut:[
+ |tool|
+
+ tool := ImageResourceEditor new createBuilder.
+ tool masterApplication:self.
+ tool modifiedChannel: self enablingCommitButtonsHolder.
+ tool builder window:(ApplicationSubView new client:tool).
+ tool
+ ]
"Modified: / 03-08-2011 / 10:03:08 / cg"
!
@@ -1677,32 +1677,32 @@
selectedItem := self selectedItem.
selectedItem notNil ifTrue:[
- self withoutNotifyDo:[
- rscRetrHolder := aspects at:#resourceRetriever.
- helpKeyHolder := aspects at:#activeHelpKey.
- imageTool := self imageTool.
- helpTool := self helpTool.
- acceptChannel := self acceptChannel.
-
- acceptChannel triggerValue:true.
- acceptChannel setValue:false.
-
- ok ifTrue:[
- helpTool accept.
- rscRetrHolder value:(imageTool resourceRetriever).
- helpKeyHolder value:(helpTool helpKey).
- selectedItem fromAspects:aspects.
- self setModified.
-
- selectedItem isRootItem ifTrue:[
- "/ update specSelector
- specSelector := selectedItem rawLabel.
- ].
- ].
- selectedItem toAspects:aspects.
- helpTool helpKey:(helpKeyHolder value).
- imageTool resourceRetriever:(rscRetrHolder value).
- ]
+ self withoutNotifyDo:[
+ rscRetrHolder := aspects at:#resourceRetriever.
+ helpKeyHolder := aspects at:#activeHelpKey.
+ imageTool := self imageTool.
+ helpTool := self helpTool.
+ acceptChannel := self acceptChannel.
+
+ acceptChannel triggerValue:true.
+ acceptChannel setValue:false.
+
+ ok ifTrue:[
+ helpTool accept.
+ rscRetrHolder value:(imageTool resourceRetriever).
+ helpKeyHolder value:(helpTool helpKey).
+ selectedItem fromAspects:aspects.
+ self setModified.
+
+ selectedItem isRootItem ifTrue:[
+ "/ update specSelector
+ specSelector := selectedItem rawLabel.
+ ].
+ ].
+ selectedItem toAspects:aspects.
+ helpTool helpKey:(helpKeyHolder value).
+ imageTool resourceRetriever:(rscRetrHolder value).
+ ]
].
self updateChannels.
"/ self clearModified.
@@ -1728,10 +1728,10 @@
item := listOfItems at:atLine ifAbsent:nil.
item notNil ifTrue:[
- item toggleExpand.
- self hasSelection ifFalse:[
- self selectedItem:item
- ]
+ item toggleExpand.
+ self hasSelection ifFalse:[
+ self selectedItem:item
+ ]
].
"Modified: / 29-11-2011 / 11:28:20 / cg"
@@ -1855,13 +1855,13 @@
specSelector := aSelector.
aSelector notNil ifTrue:[
- aClass notNil ifTrue:[
- cls := aClass isBehavior ifTrue:[ aClass ] ifFalse:[ self resolveName:aClass].
-
- (cls respondsTo:aSelector) ifTrue:[
- menu := cls perform: aSelector.
- ].
- ].
+ aClass notNil ifTrue:[
+ cls := aClass isBehavior ifTrue:[ aClass ] ifFalse:[ self resolveName:aClass].
+
+ (cls respondsTo:aSelector) ifTrue:[
+ menu := cls perform: aSelector.
+ ].
+ ].
].
self loadFromMenu:menu selector:aSelector.
!
@@ -1873,9 +1873,9 @@
menu := menuArg.
menu notNil ifTrue:[
- (menu isCollection) ifTrue:[
- menu := Menu decodeFromLiteralArray:menu
- ].
+ (menu isCollection) ifTrue:[
+ menu := Menu decodeFromLiteralArray:menu
+ ].
].
self buildFromMenu:menu selector:selectorOrNil.
self clearModified.
@@ -1896,21 +1896,21 @@
size := selection size.
size <= 1 ifTrue:[
- selectedSuperItems := selection ? #().
+ selectedSuperItems := selection ? #().
^ selectedSuperItems
].
root := listOfItems root.
(selection includesIdentical:root) ifTrue:[
- selectedSuperItems := Array with:root.
+ selectedSuperItems := Array with:root.
^ selectedSuperItems
].
selectedSuperItems := OrderedCollection new.
selection do:[:anItem|
- anItem parentsDetect:[:el| selection includesIdentical:el ]
- ifNone:[ selectedSuperItems add:anItem ].
+ anItem parentsDetect:[:el| selection includesIdentical:el ]
+ ifNone:[ selectedSuperItems add:anItem ].
].
^ selectedSuperItems
@@ -1948,39 +1948,39 @@
wizardHolder := self wizardHolder.
item := self selectedItem.
- item isNil ifTrue:[
- wizardHolder value:nil.
- ^ self
+ item isNil ifTrue:[
+ wizardHolder value:nil.
+ ^ self
].
tab := tabHolder value.
tab notNil ifTrue:[
- tab := item slices detect:[:el| el first = tab ] ifNone:nil.
+ tab := item slices detect:[:el| el first = tab ] ifNone:nil.
].
tab isNil ifTrue:[
- tabHolder value:( listOfTabs at:1 ifAbsent:nil ).
- ^ self.
+ tabHolder value:( listOfTabs at:1 ifAbsent:nil ).
+ ^ self.
].
selector := tab last.
- selector == #help ifTrue:[
- wizardHolder value:(self helpTool window).
- ^ self
+ selector == #help ifTrue:[
+ wizardHolder value:(self helpTool window).
+ ^ self
].
- selector == #image ifTrue:[
- wizardHolder value:(self imageTool window).
- ^ self
+ selector == #image ifTrue:[
+ wizardHolder value:(self imageTool window).
+ ^ self
].
- canvas := wizards
- at:(item class name, selector) asSymbol
- ifAbsentPut:[
- SimpleView new
- client:self
- spec:(item class perform:selector)
- builder:(self builder)
- ].
+ canvas := wizards
+ at:(item class name, selector) asSymbol
+ ifAbsentPut:[
+ SimpleView new
+ client:self
+ spec:(item class perform:selector)
+ builder:(self builder)
+ ].
wizardHolder value:canvas.
!
@@ -2014,23 +2014,23 @@
hasSelection := sizeOfSel ~~ 0.
sizeOfSel == 1 ifTrue:[selectedItem := selection at:1]
- ifFalse:[selectedItem := nil].
+ ifFalse:[selectedItem := nil].
self hasSelectionChannel value:hasSelection.
self hasSingleSelectionChannel value:(selectedItem notNil).
selectedItem isNil ifTrue:[
"/ self enableMovingUpOrDownHolder value:false.
- self enableMovingInHolder value:false.
- self enableMovingOutHolder value:false.
- self enableMovingInAboveHolder value:false.
- self canCreateDelayedMenuChannel value:false.
+ self enableMovingInHolder value:false.
+ self enableMovingOutHolder value:false.
+ self enableMovingInAboveHolder value:false.
+ self canCreateDelayedMenuChannel value:false.
] ifFalse:[
"/ self enableMovingUpOrDownHolder value:(selectedItem canMoveUpOrDown).
- self enableMovingInHolder value:(selectedItem canMoveInNext).
- self enableMovingOutHolder value:(selectedItem canMoveOut).
- self enableMovingInAboveHolder value:(selectedItem canMoveInAbove).
- self canCreateDelayedMenuChannel value:(selectedItem canAddDelayedMenu).
+ self enableMovingInHolder value:(selectedItem canMoveInNext).
+ self enableMovingOutHolder value:(selectedItem canMoveOut).
+ self enableMovingInAboveHolder value:(selectedItem canMoveInAbove).
+ self canCreateDelayedMenuChannel value:(selectedItem canAddDelayedMenu).
].
self enableMovingUpOrDownHolder value:(selection conform:[:i | i canMoveUpOrDown]).
@@ -2169,12 +2169,12 @@
item := nil.
lnNr notNil ifTrue:[
- item := listOfItems at:lnNr ifAbsent:nil.
- item notNil ifTrue:[
- (item isAction and:[item hasDelayedMenu]) ifTrue:[
- item := nil
- ]
- ]
+ item := listOfItems at:lnNr ifAbsent:nil.
+ item notNil ifTrue:[
+ (item isAction and:[item hasDelayedMenu]) ifTrue:[
+ item := nil
+ ]
+ ]
].
item isNil ifTrue:[ lnNr := 0 ]. "/ not dropable for item
@@ -2191,7 +2191,7 @@
Return true, if I have eaten the event"
<resource: #keyboard (#Delete #BackSpace #Cut #Copy #Paste #CtrlCursorUp #CtrlCursorDown
- #CtrlCursorLeft #CtrlCursorRight )>
+ #CtrlCursorLeft #CtrlCursorRight )>
|evView rawKey key|
@@ -2211,28 +2211,28 @@
or:[key == #BackSpace
or:[key == #Cut]]
) ifTrue:[
- self doCut.
- ^ true.
+ self doCut.
+ ^ true.
].
key == #Copy ifTrue:[ self doCopy. ^ true ].
key == #Paste ifTrue:[ self doPaste. ^ true ].
(rawKey == #CtrlCursorUp) ifTrue:[
- self doMoveUp.
- ^ true.
+ self doMoveUp.
+ ^ true.
].
(rawKey == #CtrlCursorDown) ifTrue:[
- self doMoveDown.
- ^ true.
+ self doMoveDown.
+ ^ true.
].
(rawKey == #CtrlCursorLeft) ifTrue:[
- self doMoveOut.
- ^ true.
+ self doMoveOut.
+ ^ true.
].
(rawKey == #CtrlCursorRight) ifTrue:[
- self doMoveInNext.
- ^ true.
+ self doMoveInNext.
+ ^ true.
].
^ false.
@@ -2330,40 +2330,40 @@
menu isNil ifTrue:[^ nil ].
menu allItemsDo:[:anItem|
- anItem ignoreShortcutKeys:true.
- anItem isVisible:true.
- anItem enabled:true.
- anItem translateLabel:false.
-
- anItem itemValue notNil ifTrue:[
- anItem itemValue:[ Transcript showCR:(anItem label) ].
- ].
- anItem indication notNil ifTrue:[
- indication isNil ifTrue:[ indication := true asValue ].
- anItem indication:indication
- ].
- anItem choice notNil ifTrue:[
- choice isNil ifTrue:[ choice := anItem choiceValue asValue ].
- anItem choice:choice
- ].
- anItem isMenuSlice ifTrue:[
- anItem submenuChannel:nil.
- anItem label:'... Slice Menu ...'.
- ].
- anItem submenuChannel notNil ifTrue:[
- anItem submenuChannel:nil.
- anItem submenu isNil ifTrue:[
- submenu isNil ifTrue:[
- submenu := Menu new.
- submenu addItem:(MenuItem labeled:'Linked Menu...').
- ].
- anItem submenu:submenu.
- ].
- ].
- retriever := anItem resourceRetriever.
- retriever notNil ifTrue:[
- retriever labelText notNil ifTrue:[ retriever labelText:(anItem label) ]
- ].
+ anItem ignoreShortcutKeys:true.
+ anItem isVisible:true.
+ anItem enabled:true.
+ anItem translateLabel:false.
+
+ anItem itemValue notNil ifTrue:[
+ anItem itemValue:[ Transcript showCR:(anItem label) ].
+ ].
+ anItem indication notNil ifTrue:[
+ indication isNil ifTrue:[ indication := true asValue ].
+ anItem indication:indication
+ ].
+ anItem choice notNil ifTrue:[
+ choice isNil ifTrue:[ choice := anItem choiceValue asValue ].
+ anItem choice:choice
+ ].
+ anItem isMenuSlice ifTrue:[
+ anItem submenuChannel:nil.
+ anItem label:'... Slice Menu ...'.
+ ].
+ anItem submenuChannel notNil ifTrue:[
+ anItem submenuChannel:nil.
+ anItem submenu isNil ifTrue:[
+ submenu isNil ifTrue:[
+ submenu := Menu new.
+ submenu addItem:(MenuItem labeled:'Linked Menu...').
+ ].
+ anItem submenu:submenu.
+ ].
+ ].
+ retriever := anItem resourceRetriever.
+ retriever notNil ifTrue:[
+ retriever labelText notNil ifTrue:[ retriever labelText:(anItem label) ]
+ ].
].
menu findGuiResourcesIn:(self resolveName:specClass).
^ menu
@@ -2385,29 +2385,29 @@
index := 1.
(intoItem canAddChildren and:[intoItem isExpanded]) ifFalse:[
- intoItem parent notNil ifTrue:[
- [ intoItem parent canAddChildren ] whileFalse:[
- intoItem := intoItem parent.
- ].
- index := intoItem parent identityIndexOf:intoItem.
- index := index + 1.
- intoItem := intoItem parent.
- ].
+ intoItem parent notNil ifTrue:[
+ [ intoItem parent canAddChildren ] whileFalse:[
+ intoItem := intoItem parent.
+ ].
+ index := intoItem parent identityIndexOf:intoItem.
+ index := index + 1.
+ intoItem := intoItem parent.
+ ].
].
newItem := aBlockOrItem value.
newItem notNil ifTrue:[
- selectionHolder setValue:nil.
- intoItem expand.
-
- newItem isCollection ifTrue:[
- intoItem addAll:newItem beforeIndex:index.
- selectionHolder value:newItem.
- ] ifFalse:[
- intoItem add:newItem beforeIndex:index.
- selectionHolder value:(Array with:newItem).
- ].
- self setModified.
+ selectionHolder setValue:nil.
+ intoItem expand.
+
+ newItem isCollection ifTrue:[
+ intoItem addAll:newItem beforeIndex:index.
+ selectionHolder value:newItem.
+ ] ifFalse:[
+ intoItem add:newItem beforeIndex:index.
+ selectionHolder value:(Array with:newItem).
+ ].
+ self setModified.
].
^ newItem
@@ -2580,7 +2580,7 @@
selectors := IdentitySet new.
listOfItems root recursiveDo:[:el|
- selectors addAll:(el aspectSelectors).
+ selectors addAll:(el aspectSelectors).
].
^ selectors asOrderedCollection
!
@@ -2597,14 +2597,14 @@
|selector cls category|
specClass isNil ifTrue:[
- self warn:(resources string:'Please define the application class first.').
- ^ self
+ self warn:(resources string:'Please define the application class first.').
+ ^ self
].
selector := (self aspectFor:aspect) value.
selector isEmptyOrNil ifTrue:[
- Dialog information:(resources string:'Please enter an action method name.').
- ^ self
+ Dialog information:(resources string:'Please enter an action method name.').
+ ^ self
].
(selector = 'true' or:[selector = 'false']) ifTrue:[^ self].
(selector == true or:[selector == false]) ifTrue:[^ self].
@@ -2613,17 +2613,17 @@
cls := self resolveName:specClass.
cls isNil ifTrue:[
- self warn:(resources string:'Class %1 does not exist!!' with:specClass asString).
- ^ self
+ self warn:(resources string:'Class %1 does not exist!!' with:specClass asString).
+ ^ self
].
(cls includesSelector:selector) ifFalse:[
- category := UserPreferences current categoryForMenuActionsMethods.
-
- SmalltalkCodeGeneratorTool
- createActionMethodFor:selector in:cls
- category:category
- redefine:(self redefineAspectMethodsChannel value).
+ category := UserPreferences current categoryForMenuActionsMethods.
+
+ SmalltalkCodeGeneratorTool
+ createActionMethodFor:selector in:cls
+ category:category
+ redefine:(self redefineAspectMethodsChannel value).
].
UserPreferences current systemBrowserClass openInClass:cls selector:selector
@@ -2654,31 +2654,31 @@
|cls redefineAspectMethods category|
specClass isNil ifTrue:[
- self warn:'Define the class first !!'.
- ^ self
+ self warn:'Define the class first !!'.
+ ^ self
].
redefineAspectMethods := self redefineAspectMethodsChannel value.
cls := self resolveName:specClass.
cls isNil ifTrue:[
- self warn:'Class ', specClass asString, ' does not exist!!'.
- ^ self
+ self warn:'Class ', specClass asString, ' does not exist!!'.
+ ^ self
].
category := UserPreferences current categoryForMenuActionsMethods.
self collectActionSelectors do:[:aSelector|
- SmalltalkCodeGeneratorTool
- createActionMethodFor:aSelector in:cls
- category:category
- redefine:redefineAspectMethods.
+ SmalltalkCodeGeneratorTool
+ createActionMethodFor:aSelector in:cls
+ category:category
+ redefine:redefineAspectMethods.
].
self collectAspectSelectors do:[:anAspect|
- SmalltalkCodeGeneratorTool
- createAspectMethodFor:anAspect in:cls
- category:category
- redefine:redefineAspectMethods
+ SmalltalkCodeGeneratorTool
+ createAspectMethodFor:anAspect in:cls
+ category:category
+ redefine:redefineAspectMethods
].
"Modified: / 31-01-2011 / 18:29:06 / cg"
@@ -2692,54 +2692,54 @@
|view subSpec app bldr spec menuSelector1 menuSelector2 info|
self askForModification ifTrue:[
- view := Screen current viewFromUser.
- (view isNil or:[view == Screen current rootView]) ifTrue:[
- ^ self
- ].
- view specClass == MenuPanelSpec ifTrue:[
- (app := view application) isNil ifTrue:[
- info := 'Could not figure out the application class.'
- ] ifFalse:[
- (bldr := app builder) isNil ifTrue:[
- info := 'Application has no builder.'
- ] ifFalse:[
- menuSelector1 := bldr namedComponents keyAtValue:view ifAbsent:nil.
- (spec := bldr spec) isNil ifTrue:[
- info := 'Cannot fetch spec from applications builder.'
- ] ifFalse:[
- subSpec := spec findSpecForWhich:[:subSpec | subSpec name = view name].
- subSpec isNil ifTrue:[
- info := 'Cannot find view-spec for ',view name asString,'.'
- ] ifFalse:[
- menuSelector2 := subSpec menu.
- ]
- ].
- (menuSelector1 isNil and:[ menuSelector2 isNil ]) ifTrue:[
- info := 'menu is probably not provided by a menuSelector.'
- ] ifFalse:[
- (app class respondsTo:menuSelector1) ifTrue:[
- self loadFromClass:app class andSelector:menuSelector1.
- ^ self.
- ].
- (app class respondsTo:menuSelector2) ifTrue:[
- self loadFromClass:app class andSelector:menuSelector2.
- ^ self.
- ].
- info := 'menu is probably not provided by a menuSelector.'
- ].
- ]
- ].
- info notNil ifTrue:[
- app notNil ifTrue:[
- (Dialog confirm:(info,'\\Browse ?' withCRs)) ifTrue:[
- app browse.
- ].
- ] ifFalse:[
- Dialog information:info.
- ].
- ].
- ^ self.
- ].
+ view := Screen current viewFromUser.
+ (view isNil or:[view == Screen current rootView]) ifTrue:[
+ ^ self
+ ].
+ view specClass == MenuPanelSpec ifTrue:[
+ (app := view application) isNil ifTrue:[
+ info := 'Could not figure out the application class.'
+ ] ifFalse:[
+ (bldr := app builder) isNil ifTrue:[
+ info := 'Application has no builder.'
+ ] ifFalse:[
+ menuSelector1 := bldr namedComponents keyAtValue:view ifAbsent:nil.
+ (spec := bldr spec) isNil ifTrue:[
+ info := 'Cannot fetch spec from applications builder.'
+ ] ifFalse:[
+ subSpec := spec findSpecForWhich:[:subSpec | subSpec name = view name].
+ subSpec isNil ifTrue:[
+ info := 'Cannot find view-spec for ',view name asString,'.'
+ ] ifFalse:[
+ menuSelector2 := subSpec menu.
+ ]
+ ].
+ (menuSelector1 isNil and:[ menuSelector2 isNil ]) ifTrue:[
+ info := 'menu is probably not provided by a menuSelector.'
+ ] ifFalse:[
+ (app class respondsTo:menuSelector1) ifTrue:[
+ self loadFromClass:app class andSelector:menuSelector1.
+ ^ self.
+ ].
+ (app class respondsTo:menuSelector2) ifTrue:[
+ self loadFromClass:app class andSelector:menuSelector2.
+ ^ self.
+ ].
+ info := 'menu is probably not provided by a menuSelector.'
+ ].
+ ]
+ ].
+ info notNil ifTrue:[
+ app notNil ifTrue:[
+ (Dialog confirm:(info,'\\Browse ?' withCRs)) ifTrue:[
+ app browse.
+ ].
+ ] ifFalse:[
+ Dialog information:info.
+ ].
+ ].
+ ^ self.
+ ].
].
!
@@ -2755,29 +2755,29 @@
|view|
self askForModification ifTrue:[
- view := Screen current viewFromUser.
- (view isNil or:[view == Screen current rootView]) ifTrue:[
- ^ self
- ].
- view specClass == MenuPanelSpec ifTrue:[
- specSelector := #pickedMenu.
- self buildFromMenu:(view asMenu) selector:specSelector.
- ].
+ view := Screen current viewFromUser.
+ (view isNil or:[view == Screen current rootView]) ifTrue:[
+ ^ self
+ ].
+ view specClass == MenuPanelSpec ifTrue:[
+ specSelector := #pickedMenu.
+ self buildFromMenu:(view asMenu) selector:specSelector.
+ ].
].
!
doSave
"save current editing menu to
- class: specClass
- selector: specSelector
+ class: specClass
+ selector: specSelector
"
|cls specCode mthd category code excla s|
self isEditingSpecOnly ifTrue:[
- savedSpec := self generateMenuSpec.
- hasSaved := true.
- self clearModified.
- ^ self
+ savedSpec := self generateMenuSpec.
+ hasSaved := true.
+ self clearModified.
+ ^ self
].
super doSave ifFalse: [^nil].
@@ -2790,7 +2790,7 @@
category := 'menu specs'.
(mthd := cls class compiledMethodAt:specSelector) notNil ifTrue:[
- category := mthd category.
+ category := mthd category.
].
s := '' writeStream.
@@ -2804,7 +2804,7 @@
nextPutAll:specSelector;
cr;
nextPutAllAsChunk:(self class codeGenerationComment) withCRs;
- cr; cr;
+ cr; cr;
nextPutLine:' "';
nextPutLine:(' MenuEditor new openOnClass:' , cls name , ' andSelector:#' , specSelector);
nextPutLine:(' (Menu new fromLiteralArrayEncoding:(' , cls name , ' ' , specSelector , ')) startUp');
@@ -2821,7 +2821,7 @@
(ReadStream on:s contents) fileIn.
self isStandAlone ifTrue:[
- self helpTool doSave
+ self helpTool doSave
].
self updateHistory.
@@ -2848,7 +2848,7 @@
code := self generateMenuSpecString.
code notNil ifTrue:[
- CodeView openWith:code title: 'Menu Spec'
+ CodeView openWith:code title: 'Menu Spec'
].
"Modified: / 29-11-2011 / 11:28:12 / cg"
@@ -2870,13 +2870,13 @@
self askForItemModification ifFalse:[ ^ self ].
what == #menu ifTrue:[ delayedItem := RegularMenuItem new ]
- ifFalse:[ delayedItem := LinkedMenuItem new ].
+ ifFalse:[ delayedItem := LinkedMenuItem new ].
delayedItem setExpanded:true.
delayedItem := selectedItem add:delayedItem.
delayedItem notNil ifTrue:[
- self selectedItem:delayedItem.
+ self selectedItem:delayedItem.
].
"Modified: / 29-11-2011 / 11:28:09 / cg"
@@ -2922,7 +2922,7 @@
"create a standard edit menu
"
self addAndSelectValueOf:[
- RegularMenuItem menu:(self class standardEditMenu) labeled:'Edit' translateLabel:true
+ RegularMenuItem menu:(self class standardEditMenu) labeled:'Edit' translateLabel:true
].
!
@@ -2930,7 +2930,7 @@
"create a standard file menu
"
self addAndSelectValueOf:[
- RegularMenuItem menu:(self class standardFileMenu) labeled:'File' translateLabel:true
+ RegularMenuItem menu:(self class standardFileMenu) labeled:'File' translateLabel:true
].
!
@@ -2940,9 +2940,9 @@
|item|
self addAndSelectValueOf:[
- item := RegularMenuItem menu:(self class standardHelpMenu) labeled:'Help' translateLabel:true.
- item aspectAt:#startGroup put:#conditionalRight.
- item
+ item := RegularMenuItem menu:(self class standardHelpMenu) labeled:'Help' translateLabel:true.
+ item aspectAt:#startGroup put:#conditionalRight.
+ item
].
"Modified: / 16-10-2006 / 12:49:27 / cg"
@@ -3133,30 +3133,30 @@
self askForItemModification ifFalse:[ ^ self ].
self withoutNotifyDo:[
- itemsSortedByIndex := items copy.
- (items collect:[:i | listOfItems identityIndexOf:i])
- sortWith:itemsSortedByIndex.
-
- aDirectionSymbol == #down ifTrue:[
- itemsSortedByIndex := itemsSortedByIndex reversed
- ].
- itemsSortedByIndex do:[:item |
- parent := item parent.
- children := parent children.
- index := children identityIndexOf:item.
-
- selectionHolder setValue:#().
- children removeIndex:index.
-
- aDirectionSymbol == #up ifTrue:[
- index == 1 ifTrue:[ children add:item ]
- ifFalse:[ children add:item beforeIndex:index - 1 ]
- ] ifFalse:[
- index > children size ifTrue:[ children addFirst:item ]
- ifFalse:[ children add:item afterIndex:index ]
- ].
- parent childrenOrderChanged.
- ]
+ itemsSortedByIndex := items copy.
+ (items collect:[:i | listOfItems identityIndexOf:i])
+ sortWith:itemsSortedByIndex.
+
+ aDirectionSymbol == #down ifTrue:[
+ itemsSortedByIndex := itemsSortedByIndex reversed
+ ].
+ itemsSortedByIndex do:[:item |
+ parent := item parent.
+ children := parent children.
+ index := children identityIndexOf:item.
+
+ selectionHolder setValue:#().
+ children removeIndex:index.
+
+ aDirectionSymbol == #up ifTrue:[
+ index == 1 ifTrue:[ children add:item ]
+ ifFalse:[ children add:item beforeIndex:index - 1 ]
+ ] ifFalse:[
+ index > children size ifTrue:[ children addFirst:item ]
+ ifFalse:[ children add:item afterIndex:index ]
+ ].
+ parent childrenOrderChanged.
+ ]
].
self selectedItems:items.
self setModified.
@@ -3188,8 +3188,8 @@
<resource: #image>
^Icon
- constantNamed:'MenuEditor::Item class iconDelayedLinkedMenu'
- ifAbsentPut:[(Depth4Image new) width: 20; height: 16; photometric:(#palette); bitsPerSample:(#(4)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
+ constantNamed:'MenuEditor::Item class iconDelayedLinkedMenu'
+ ifAbsentPut:[(Depth4Image new) width: 20; height: 16; photometric:(#palette); bitsPerSample:(#(4)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
@@@@@@@@@@@@@@DQDQDQDQDQDR@AH"H"H"H"H"H0@@@BH"H"@@@BL@QDPBH"H"@@H#@DQDPBH@H"@"H0ADQDPBA@H"H"L@@@QDP@Q@@@@C@ADPQDQDQ@DQD:
@RH QDQDQ@H"L@D"H QDQD@"H#@A@@@@@DP@@@@0@QDQDQA@DQDQL@D"H"H @"H"H#@BL3L3L3L3L3L0@@@@@@@@@@@a') ; colorMapFromArray:#[0 0 0 255 255 255 170 170 170 127 127 127 255 0 0]; mask:((Depth1Image new) width: 20; height: 16; photometric:(#blackIs0); bitsPerSample:(#(1)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'???0???0???0???0???0???0???0???0???0???0???0???0???0???0???0???0') ; yourself); yourself]
!
@@ -3210,8 +3210,8 @@
<resource: #image>
^Icon
- constantNamed:'MenuEditor::Item class iconDelayedMenu'
- ifAbsentPut:[(Depth2Image new) width: 20; height: 16; photometric:(#palette); bitsPerSample:(#(2)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@UUUUUVA*****,F***@B0Z***@+A****J,F*****0@@@@@@AUUUUUXF*****0Z****+A@@@@@LEUUUUU0Z****+B?????<@@@@@@@b') ; colorMapFromArray:#[0 0 0 255 255 255 170 170 170 127 127 127]; mask:((Depth1Image new) width: 20; height: 16; photometric:(#blackIs0); bitsPerSample:(#(1)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'???0???0???0???0???0???0???0???0???0???0???0???0???0???0???0???0') ; yourself); yourself]
+ constantNamed:'MenuEditor::Item class iconDelayedMenu'
+ ifAbsentPut:[(Depth2Image new) width: 20; height: 16; photometric:(#palette); bitsPerSample:(#(2)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@UUUUUVA*****,F***@B0Z***@+A****J,F*****0@@@@@@AUUUUUXF*****0Z****+A@@@@@LEUUUUU0Z****+B?????<@@@@@@@b') ; colorMapFromArray:#[0 0 0 255 255 255 170 170 170 127 127 127]; mask:((Depth1Image new) width: 20; height: 16; photometric:(#blackIs0); bitsPerSample:(#(1)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'???0???0???0???0???0???0???0???0???0???0???0???0???0???0???0???0') ; yourself); yourself]
!
iconItem
@@ -3230,8 +3230,8 @@
<resource: #image>
^Icon
- constantNamed:'MenuEditor::Item class iconItem'
- ifAbsentPut:[(Depth2Image new) width: 20; height: 16; photometric:(#palette); bitsPerSample:(#(2)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'UUUUUUUUUUUUUP@@@@@@EUUUUU Z****+A.?/;+,F:::/>0[++>:;A...++,F::?..0Z****+B?????<@@@@@@@@@@@@@@@@@@@@@@@@@@@b') ; colorMapFromArray:#[0 0 0 255 255 255 170 170 170 127 127 127]; mask:((Depth1Image new) width: 20; height: 16; photometric:(#blackIs0); bitsPerSample:(#(1)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@???0???0???0???0???0???0???0???0???0???0???0@@@@@@@@@@@@') ; yourself); yourself]
+ constantNamed:'MenuEditor::Item class iconItem'
+ ifAbsentPut:[(Depth2Image new) width: 20; height: 16; photometric:(#palette); bitsPerSample:(#(2)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'UUUUUUUUUUUUUP@@@@@@EUUUUU Z****+A.?/;+,F:::/>0[++>:;A...++,F::?..0Z****+B?????<@@@@@@@@@@@@@@@@@@@@@@@@@@@b') ; colorMapFromArray:#[0 0 0 255 255 255 170 170 170 127 127 127]; mask:((Depth1Image new) width: 20; height: 16; photometric:(#blackIs0); bitsPerSample:(#(1)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@???0???0???0???0???0???0???0???0???0???0???0@@@@@@@@@@@@') ; yourself); yourself]
!
iconLinkedMenu
@@ -3250,8 +3250,8 @@
<resource: #image>
^Icon
- constantNamed:'MenuEditor::Item class iconLinkedMenu'
- ifAbsentPut:[(Depth4Image new) width: 20; height: 16; photometric:(#palette); bitsPerSample:(#(4)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
+ constantNamed:'MenuEditor::Item class iconLinkedMenu'
+ ifAbsentPut:[(Depth4Image new) width: 20; height: 16; photometric:(#palette); bitsPerSample:(#(4)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
@@@@@@@@@@@@@@QDQDQDQDQDQA@DH"H"H"H"H"HPABH@@@H"H"H"D@PQ@3L0DQDQDQ@D@@L3L0@@@@@PADPCL3L0PCADD@P"@@@3L0@3@!!@DH"H"@3L3L3@P
AADQDQ@3L3L3@@P@@@@@@3L3LA@DQDQDQD@@L0PPABH"H"H"HC@"D@P"H"H"H"@BH!!@BDQDQDQDQDQDP@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[0 0 0 127 127 127 170 170 170 255 0 0 255 255 255]; mask:((Depth1Image new) width: 20; height: 16; photometric:(#blackIs0); bitsPerSample:(#(1)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'???0???0???0???0???0???0???0???0???0???0???0???0???0???0???0???0') ; yourself); yourself]
!
@@ -3272,8 +3272,8 @@
<resource: #image>
^Icon
- constantNamed:'MenuEditor::Item class iconMenu'
- ifAbsentPut:[(Depth2Image new) width: 20; height: 16; photometric:(#palette); bitsPerSample:(#(2)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@?????=C*****$N*****P5UUUUUC@@@@@DO?????P:****)C*****$MUUUUUP0@@@@AC?????4N*****P:****)BUUUUUT@@@@@@@b') ; colorMapFromArray:#[0 0 0 127 127 127 170 170 170 255 255 255]; mask:((Depth1Image new) width: 20; height: 16; photometric:(#blackIs0); bitsPerSample:(#(1)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'???0???0???0???0???0???0???0???0???0???0???0???0???0???0???0???0') ; yourself); yourself]
+ constantNamed:'MenuEditor::Item class iconMenu'
+ ifAbsentPut:[(Depth2Image new) width: 20; height: 16; photometric:(#palette); bitsPerSample:(#(2)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@?????=C*****$N*****P5UUUUUC@@@@@DO?????P:****)C*****$MUUUUUP0@@@@AC?????4N*****P:****)BUUUUUT@@@@@@@b') ; colorMapFromArray:#[0 0 0 127 127 127 170 170 170 255 255 255]; mask:((Depth1Image new) width: 20; height: 16; photometric:(#blackIs0); bitsPerSample:(#(1)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'???0???0???0???0???0???0???0???0???0???0???0???0???0???0???0???0') ; yourself); yourself]
!
iconSeparator
@@ -3292,8 +3292,8 @@
<resource: #image>
^Icon
- constantNamed:'MenuEditor::Item class iconSeparator'
- ifAbsentPut:[(Depth2Image new) width: 20; height: 16; photometric:(#palette); bitsPerSample:(#(2)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'UUUUUUUUUUUUUP@@@@@@EUUUUU Z****+A*****,F????:0[@@@@[A)UUUU,F*****0Z****+B?????<@@@@@@@@@@@@@@@@@@@@@@@@@@@b') ; colorMapFromArray:#[0 0 0 255 255 255 170 170 170 127 127 127]; mask:((Depth1Image new) width: 20; height: 16; photometric:(#blackIs0); bitsPerSample:(#(1)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@???0???0???0???0???0???0???0???0???0???0???0@@@@@@@@@@@@') ; yourself); yourself]
+ constantNamed:'MenuEditor::Item class iconSeparator'
+ ifAbsentPut:[(Depth2Image new) width: 20; height: 16; photometric:(#palette); bitsPerSample:(#(2)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'UUUUUUUUUUUUUP@@@@@@EUUUUU Z****+A*****,F????:0[@@@@[A)UUUU,F*****0Z****+B?????<@@@@@@@@@@@@@@@@@@@@@@@@@@@b') ; colorMapFromArray:#[0 0 0 255 255 255 170 170 170 127 127 127]; mask:((Depth1Image new) width: 20; height: 16; photometric:(#blackIs0); bitsPerSample:(#(1)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@???0???0???0???0???0???0???0???0???0???0???0@@@@@@@@@@@@') ; yourself); yourself]
!
iconSliceMenu
@@ -3312,8 +3312,8 @@
<resource: #image>
^Icon
- constantNamed:'MenuEditor::Item class iconSliceMenu'
- ifAbsentPut:[(Depth2Image new) width: 20; height: 16; photometric:(#palette); bitsPerSample:(#(2)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@@@@@@@@@@@@O?????0:*****C/?6??XN:*[*) ;*).*&C.*&:*XN5U[UU :*****C*****(@@@@@@@@@@@@@@@@@@@@@@@@@@@b') ; colorMapFromArray:#[0 0 0 127 127 127 170 170 170 255 255 255]; mask:((Depth1Image new) width: 20; height: 16; photometric:(#blackIs0); bitsPerSample:(#(1)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@???0???0???0???0???0???0???0???0???0???0???0@@@@@@@@@@@@') ; yourself); yourself]
+ constantNamed:'MenuEditor::Item class iconSliceMenu'
+ ifAbsentPut:[(Depth2Image new) width: 20; height: 16; photometric:(#palette); bitsPerSample:(#(2)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@@@@@@@@@@@@O?????0:*****C/?6??XN:*[*) ;*).*&C.*&:*XN5U[UU :*****C*****(@@@@@@@@@@@@@@@@@@@@@@@@@@@b') ; colorMapFromArray:#[0 0 0 127 127 127 170 170 170 255 255 255]; mask:((Depth1Image new) width: 20; height: 16; photometric:(#blackIs0); bitsPerSample:(#(1)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@???0???0???0???0???0???0???0???0???0???0???0@@@@@@@@@@@@') ; yourself); yourself]
! !
!MenuEditor::Item class methodsFor:'instance creation'!
@@ -3360,230 +3360,230 @@
<resource: #canvas>
- ^
+ ^
#(FullSpec
- name: detailsEditSpec
- window:
+ name: detailsEditSpec
+ window:
(WindowSpec
- label: 'Details Edit'
- name: 'Details Edit'
- min: (Point 10 10)
- bounds: (Rectangle 0 0 407 291)
- )
- component:
+ label: 'Details Edit'
+ name: 'Details Edit'
+ min: (Point 10 10)
+ bounds: (Rectangle 0 0 407 291)
+ )
+ component:
(SpecCollection
- collection: (
- (LabelSpec
- label: 'Accelerator:'
- name: 'shortcutKeyLabel'
- layout: (AlignmentOrigin 107 0 26 0 1 0.5)
- activeHelpKey: detailsAccelerator
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'shortcutKeyField'
- layout: (LayoutFrame 110 0 15 0 -5 1.0 37 0)
- activeHelpKey: detailsAccelerator
- tabable: true
- model: shortcutKeyCharacter
- group: inputGroup
- type: symbolOrNil
- immediateAccept: false
- acceptOnReturn: true
- acceptOnTab: true
- acceptChannel: acceptChannel
- modifiedChannel: modifiedChannel
- acceptOnPointerLeave: false
- )
- (LabelSpec
- label: 'Enabled:'
- name: 'enabledLabel'
- layout: (AlignmentOrigin 107 0 51 0 1 0.5)
- activeHelpKey: detailsEnabled
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'enabledField'
- layout: (LayoutFrame 110 0 40 0 -25 1.0 62 0)
- activeHelpKey: detailsEnabled
- tabable: true
- model: enabled
- group: inputGroup
- type: symbolOrBooleanOrNil
- immediateAccept: false
- acceptOnReturn: true
- acceptOnTab: true
- acceptChannel: acceptChannel
- modifiedChannel: modifiedChannel
- acceptOnPointerLeave: false
- )
- (ActionButtonSpec
- label: 'browseActionImage'
- name: 'Button1'
- layout: (LayoutFrame -25 1 40 0 -5 1 62 0)
- activeHelpKey: browseMethod
- hasCharacterOrientedLabel: false
- translateLabel: true
- resizeForLabel: true
- tabable: true
- model: doBrowseEnabledMethod
- )
- (LabelSpec
- label: 'Visibility:'
- name: 'visibilityLabel'
- layout: (AlignmentOrigin 107 0 76 0 1 0.5)
- activeHelpKey: detailsVisibility
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'isVisibleInputField'
- layout: (LayoutFrame 110 0 65 0 -25 1.0 87 0)
- activeHelpKey: detailsVisibility
- tabable: true
- model: isVisible
- group: inputGroup
- type: symbolOrBooleanOrNil
- immediateAccept: false
- acceptOnReturn: true
- acceptOnTab: true
- acceptChannel: acceptChannel
- modifiedChannel: modifiedChannel
- acceptOnPointerLeave: false
- )
- (ActionButtonSpec
- label: 'browseActionImage'
- name: 'Button2'
- layout: (LayoutFrame -25 1 65 0 -5 1 87 0)
- activeHelpKey: browseMethod
- hasCharacterOrientedLabel: false
- translateLabel: true
- resizeForLabel: true
- tabable: true
- model: doBrowseVisibilityMethod
- )
- (LabelSpec
- label: 'Aux Value'
- name: 'auxLabel'
- layout: (AlignmentOrigin 107 0 101 0 1 0.5)
- activeHelpKey: detailsAuxValue
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'auxInputField'
- layout: (LayoutFrame 110 0 90 0 -5 1.0 112 0)
- activeHelpKey: detailsAuxValue
- tabable: true
- model: auxValue
- group: inputGroup
- type: smalltalkObjectOrNil
- immediateAccept: false
- acceptOnReturn: true
- acceptOnTab: true
- acceptChannel: acceptChannel
- modifiedChannel: modifiedChannel
- acceptOnPointerLeave: false
- )
- (LabelSpec
- label: 'Start Group:'
- name: 'StartGroupLabel'
- layout: (AlignmentOrigin 107 0 139 0 1 0.5)
- activeHelpKey: detailsStartGroup
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (PopUpListSpec
- label: 'left'
- name: 'StartGroupPopUp'
- layout: (LayoutFrame 110 0 128 0 -5 1.0 150 0)
- activeHelpKey: detailsStartGroup
- tabable: true
- model: startGroup
- menu:
- (Array
- left right
- conditionalRight
- )
- )
- (LabelSpec
- label: 'Access Character Position:'
- name: 'accessCharLabel'
- layout: (AlignmentOrigin 217 0 170 0 1 0.5)
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'accessCharField'
- layout: (LayoutFrame 220 0 159 0 -5 1.0 181 0)
- activeHelpKey: detailsAccessCharaterPosition
- tabable: true
- model: accessCharacterPosition
- group: inputGroup
- type: numberOrNil
- immediateAccept: false
- acceptOnReturn: true
- acceptOnTab: true
- acceptChannel: acceptChannel
- modifiedChannel: modifiedChannel
- acceptOnPointerLeave: false
- )
- (CheckBoxSpec
- label: 'Ignore Accelerator (i.e. Display Only)'
- name: 'ignoreShortcutKeysInItem'
- layout: (AlignmentOrigin 42 0 204 0 0 0.5)
- activeHelpKey: detailsIgnoreAcceleratorKeys
- visibilityChannel: hasNoSubmenu
- model: ignoreShortcutKeys
- translateLabel: true
- resizeForLabel: true
- )
- (CheckBoxSpec
- label: 'Ignore Accelerators in Submenu'
- name: 'ignoreShortcutKeys'
- layout: (AlignmentOrigin 42 0 204 0 0 0.5)
- activeHelpKey: detailsIgnoreAcceleratorKeys
- visibilityChannel: hasSubmenu
- model: ignoreShortcutKeys
- translateLabel: true
- resizeForLabel: true
- )
- (CheckBoxSpec
- label: 'Ignore Mnemonics in Submenu'
- name: 'ignoreMnemonicKeys'
- layout: (AlignmentOrigin 42 0 232 0 0 0.5)
- activeHelpKey: detailsIgnoreMnemonicKeys
- visibilityChannel: hasSubmenu
- model: ignoreMnemonicKeys
- translateLabel: true
- resizeForLabel: true
- )
- (LabelSpec
- label: 'Font:'
- name: 'fontLabel'
- layout: (AlignmentOrigin 107 0 271 0 1 0.5)
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (FontMenuSpec
- name: 'fontMenu'
- layout: (LayoutFrame 110 0 260 0 -5 1.0 282 0)
- activeHelpKey: fontMenu
- model: font
- allowSymbolicFonts: true
- )
- )
-
- )
+ collection: (
+ (LabelSpec
+ label: 'Accelerator:'
+ name: 'shortcutKeyLabel'
+ layout: (AlignmentOrigin 107 0 26 0 1 0.5)
+ activeHelpKey: detailsAccelerator
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'shortcutKeyField'
+ layout: (LayoutFrame 110 0 15 0 -5 1.0 37 0)
+ activeHelpKey: detailsAccelerator
+ tabable: true
+ model: shortcutKeyCharacter
+ group: inputGroup
+ type: symbolOrNil
+ immediateAccept: false
+ acceptOnReturn: true
+ acceptOnTab: true
+ acceptChannel: acceptChannel
+ modifiedChannel: modifiedChannel
+ acceptOnPointerLeave: false
+ )
+ (LabelSpec
+ label: 'Enabled:'
+ name: 'enabledLabel'
+ layout: (AlignmentOrigin 107 0 51 0 1 0.5)
+ activeHelpKey: detailsEnabled
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'enabledField'
+ layout: (LayoutFrame 110 0 40 0 -25 1.0 62 0)
+ activeHelpKey: detailsEnabled
+ tabable: true
+ model: enabled
+ group: inputGroup
+ type: symbolOrBooleanOrNil
+ immediateAccept: false
+ acceptOnReturn: true
+ acceptOnTab: true
+ acceptChannel: acceptChannel
+ modifiedChannel: modifiedChannel
+ acceptOnPointerLeave: false
+ )
+ (ActionButtonSpec
+ label: 'browseActionImage'
+ name: 'Button1'
+ layout: (LayoutFrame -25 1 40 0 -5 1 62 0)
+ activeHelpKey: browseMethod
+ hasCharacterOrientedLabel: false
+ translateLabel: true
+ resizeForLabel: true
+ tabable: true
+ model: doBrowseEnabledMethod
+ )
+ (LabelSpec
+ label: 'Visibility:'
+ name: 'visibilityLabel'
+ layout: (AlignmentOrigin 107 0 76 0 1 0.5)
+ activeHelpKey: detailsVisibility
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'isVisibleInputField'
+ layout: (LayoutFrame 110 0 65 0 -25 1.0 87 0)
+ activeHelpKey: detailsVisibility
+ tabable: true
+ model: isVisible
+ group: inputGroup
+ type: symbolOrBooleanOrNil
+ immediateAccept: false
+ acceptOnReturn: true
+ acceptOnTab: true
+ acceptChannel: acceptChannel
+ modifiedChannel: modifiedChannel
+ acceptOnPointerLeave: false
+ )
+ (ActionButtonSpec
+ label: 'browseActionImage'
+ name: 'Button2'
+ layout: (LayoutFrame -25 1 65 0 -5 1 87 0)
+ activeHelpKey: browseMethod
+ hasCharacterOrientedLabel: false
+ translateLabel: true
+ resizeForLabel: true
+ tabable: true
+ model: doBrowseVisibilityMethod
+ )
+ (LabelSpec
+ label: 'Aux Value'
+ name: 'auxLabel'
+ layout: (AlignmentOrigin 107 0 101 0 1 0.5)
+ activeHelpKey: detailsAuxValue
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'auxInputField'
+ layout: (LayoutFrame 110 0 90 0 -5 1.0 112 0)
+ activeHelpKey: detailsAuxValue
+ tabable: true
+ model: auxValue
+ group: inputGroup
+ type: smalltalkObjectOrNil
+ immediateAccept: false
+ acceptOnReturn: true
+ acceptOnTab: true
+ acceptChannel: acceptChannel
+ modifiedChannel: modifiedChannel
+ acceptOnPointerLeave: false
+ )
+ (LabelSpec
+ label: 'Start Group:'
+ name: 'StartGroupLabel'
+ layout: (AlignmentOrigin 107 0 139 0 1 0.5)
+ activeHelpKey: detailsStartGroup
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (PopUpListSpec
+ label: 'left'
+ name: 'StartGroupPopUp'
+ layout: (LayoutFrame 110 0 128 0 -5 1.0 150 0)
+ activeHelpKey: detailsStartGroup
+ tabable: true
+ model: startGroup
+ menu:
+ (Array
+ left right
+ conditionalRight
+ )
+ )
+ (LabelSpec
+ label: 'Access Character Position:'
+ name: 'accessCharLabel'
+ layout: (AlignmentOrigin 217 0 170 0 1 0.5)
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'accessCharField'
+ layout: (LayoutFrame 220 0 159 0 -5 1.0 181 0)
+ activeHelpKey: detailsAccessCharaterPosition
+ tabable: true
+ model: accessCharacterPosition
+ group: inputGroup
+ type: numberOrNil
+ immediateAccept: false
+ acceptOnReturn: true
+ acceptOnTab: true
+ acceptChannel: acceptChannel
+ modifiedChannel: modifiedChannel
+ acceptOnPointerLeave: false
+ )
+ (CheckBoxSpec
+ label: 'Ignore Accelerator (i.e. Display Only)'
+ name: 'ignoreShortcutKeysInItem'
+ layout: (AlignmentOrigin 42 0 204 0 0 0.5)
+ activeHelpKey: detailsIgnoreAcceleratorKeys
+ visibilityChannel: hasNoSubmenu
+ model: ignoreShortcutKeys
+ translateLabel: true
+ resizeForLabel: true
+ )
+ (CheckBoxSpec
+ label: 'Ignore Accelerators in Submenu'
+ name: 'ignoreShortcutKeys'
+ layout: (AlignmentOrigin 42 0 204 0 0 0.5)
+ activeHelpKey: detailsIgnoreAcceleratorKeys
+ visibilityChannel: hasSubmenu
+ model: ignoreShortcutKeys
+ translateLabel: true
+ resizeForLabel: true
+ )
+ (CheckBoxSpec
+ label: 'Ignore Mnemonics in Submenu'
+ name: 'ignoreMnemonicKeys'
+ layout: (AlignmentOrigin 42 0 232 0 0 0.5)
+ activeHelpKey: detailsIgnoreMnemonicKeys
+ visibilityChannel: hasSubmenu
+ model: ignoreMnemonicKeys
+ translateLabel: true
+ resizeForLabel: true
+ )
+ (LabelSpec
+ label: 'Font:'
+ name: 'fontLabel'
+ layout: (AlignmentOrigin 107 0 271 0 1 0.5)
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (FontMenuSpec
+ name: 'fontMenu'
+ layout: (LayoutFrame 110 0 260 0 -5 1.0 282 0)
+ activeHelpKey: fontMenu
+ model: font
+ allowSymbolicFonts: true
+ )
+ )
+
+ )
)
"Modified: / 21-10-2010 / 14:15:09 / cg"
@@ -3700,7 +3700,7 @@
"read values from aspects
"
MenuEditor aspects do:[:aKey|
- self aspectAt:aKey put:((aspects at:aKey) value).
+ self aspectAt:aKey put:((aspects at:aKey) value).
].
self validateMenuItem.
self changed.
@@ -3723,8 +3723,8 @@
menuItem isNil ifTrue:[^ self].
menuItem choice isEmptyOrNil ifTrue:[
- menuItem choice:nil.
- menuItem choiceValue:nil.
+ menuItem choice:nil.
+ menuItem choiceValue:nil.
].
! !
@@ -3844,8 +3844,8 @@
aspects := OrderedCollection new.
#( indication choice enabled isVisible ) do:[:aKey| |sel|
- sel := menuItem perform:aKey.
- sel isSymbol ifTrue:[ aspects add:sel ]
+ sel := menuItem perform:aKey.
+ sel isSymbol ifTrue:[ aspects add:sel ]
].
^ aspects
! !
@@ -3927,166 +3927,166 @@
<resource: #canvas>
- ^
+ ^
#(FullSpec
- name: windowSpec
- window:
+ name: windowSpec
+ window:
(WindowSpec
- label: 'Image Item'
- name: 'Image Item'
- min: (Point 10 10)
- bounds: (Rectangle 0 0 303 304)
- )
- component:
+ label: 'Image Item'
+ name: 'Image Item'
+ min: (Point 10 10)
+ bounds: (Rectangle 0 0 303 304)
+ )
+ component:
(SpecCollection
- collection: (
- (LabelSpec
- label: 'Retriever:'
- name: 'retrieverLabel'
- layout: (AlignmentOrigin 107 0 26 0 1 0.5)
- activeHelpKey: imageRetriever
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (ComboBoxSpec
- name: 'retrieverHolder'
- layout: (LayoutFrame 110 0 15 0 -2 1.0 37 0)
- activeHelpKey: imageRetriever
- tabable: true
- model: retrieverHolder
- type: symbolOrNil
- immediateAccept: true
- acceptOnReturn: false
- acceptOnTab: false
- acceptOnPointerLeave: false
- entryCompletionBlock: entryCompletionForRetriever
- comboList: retrieverList
- isFilenameBox: false
- )
- (LabelSpec
- label: 'Selector:'
- name: 'iconLabel'
- layout: (AlignmentOrigin 107 0 51 0 1 0.5)
- activeHelpKey: imageSelector
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'selectorHolder'
- layout: (LayoutFrame 110 0 40 0 -24 1.0 62 0)
- activeHelpKey: imageSelector
- tabable: true
- model: selectorHolder
- group: inputGroup
- type: symbolOrNil
- immediateAccept: true
- acceptOnReturn: false
- acceptOnTab: false
- modifiedChannel: modifiedChannel
- acceptOnPointerLeave: false
- )
- (ActionButtonSpec
- label: '...'
- name: 'browseButton'
- layout: (LayoutFrame -22 1 40 0 -2 1 62 0)
- activeHelpKey: browseResource
- tabable: true
- model: doBrowseForImageResource
- )
- (DividerSpec
- name: 'Separator1'
- layout: (LayoutFrame 0 0.0 66 0 0 1.0 70 0)
- )
- (ViewSpec
- name: 'SelectorFilterBox2'
- layout: (LayoutFrame 0 0.0 74 0 0 1.0 96 0)
- activeHelpKey: selectorFilter
- component:
- (SpecCollection
- collection: (
- (LabelSpec
- label: 'Filter:'
- name: 'Label1'
- layout: (AlignmentOrigin 107 0 11 0 1 0.5)
- activeHelpKey: selectorFilter
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'EntryField1'
- layout: (LayoutFrame 110 0 0 0 -2 1 22 0)
- model: selectorFilterHolder
- immediateAccept: true
- acceptOnLeave: true
- acceptOnReturn: false
- acceptOnTab: false
- acceptOnPointerLeave: false
- activeHelpKey: selectorFilter
- )
- )
-
- )
- )
- (HierarchicalListViewSpec
- name: 'imageList'
- layout: (LayoutFrame 2 0.0 100 0 -2 1.0 -60 1.0)
- activeHelpKey: imageImageList
- model: imageHolder
- menu: menuEditImage
- hasHorizontalScrollBar: true
- hasVerticalScrollBar: true
- miniScrollerHorizontal: true
- listModel: imageList
- useIndex: false
- highlightMode: label
- postBuildCallback: postBuildImageViewer:
- )
- (ViewSpec
- name: 'Box1'
- layout: (LayoutFrame 20 0.0 -60 1.0 -20 1.0 0 1.0)
- level: 0
- component:
- (SpecCollection
- collection: (
- (CheckBoxSpec
- label: 'Image & Label'
- name: 'iconAndLabelCheckBox'
- layout: (AlignmentOrigin 0 0 17 0 0 0.5)
- activeHelpKey: imageImageAndLabel
- tabable: true
- model: iconAndLabelHolder
- translateLabel: true
- )
- (ActionButtonSpec
- label: 'Image Editor'
- name: 'imageEditorButton'
- layout: (AlignmentOrigin -69 1.0 17 0 0 0.5)
- activeHelpKey: imageImageEditor
- hasCharacterOrientedLabel: false
- foregroundColor: (Color 0.0 0.0 66.9993133440146)
- tabable: true
- model: doEditImage
- )
- (ActionButtonSpec
- label: 'Browse'
- name: 'Button1'
- layout: (AlignmentOrigin -69 1.0 41 0 0 0.5)
- activeHelpKey: imageBrowseImageClass
- hasCharacterOrientedLabel: false
- foregroundColor: (Color 0.0 0.0 66.9993133440146)
- tabable: true
- model: doBrowseImageClass
- )
- )
-
- )
- )
- )
-
- )
+ collection: (
+ (LabelSpec
+ label: 'Retriever:'
+ name: 'retrieverLabel'
+ layout: (AlignmentOrigin 107 0 26 0 1 0.5)
+ activeHelpKey: imageRetriever
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (ComboBoxSpec
+ name: 'retrieverHolder'
+ layout: (LayoutFrame 110 0 15 0 -2 1.0 37 0)
+ activeHelpKey: imageRetriever
+ tabable: true
+ model: retrieverHolder
+ type: symbolOrNil
+ immediateAccept: true
+ acceptOnReturn: false
+ acceptOnTab: false
+ acceptOnPointerLeave: false
+ entryCompletionBlock: entryCompletionForRetriever
+ comboList: retrieverList
+ isFilenameBox: false
+ )
+ (LabelSpec
+ label: 'Selector:'
+ name: 'iconLabel'
+ layout: (AlignmentOrigin 107 0 51 0 1 0.5)
+ activeHelpKey: imageSelector
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'selectorHolder'
+ layout: (LayoutFrame 110 0 40 0 -24 1.0 62 0)
+ activeHelpKey: imageSelector
+ tabable: true
+ model: selectorHolder
+ group: inputGroup
+ type: symbolOrNil
+ immediateAccept: true
+ acceptOnReturn: false
+ acceptOnTab: false
+ modifiedChannel: modifiedChannel
+ acceptOnPointerLeave: false
+ )
+ (ActionButtonSpec
+ label: '...'
+ name: 'browseButton'
+ layout: (LayoutFrame -22 1 40 0 -2 1 62 0)
+ activeHelpKey: browseResource
+ tabable: true
+ model: doBrowseForImageResource
+ )
+ (DividerSpec
+ name: 'Separator1'
+ layout: (LayoutFrame 0 0.0 66 0 0 1.0 70 0)
+ )
+ (ViewSpec
+ name: 'SelectorFilterBox2'
+ layout: (LayoutFrame 0 0.0 74 0 0 1.0 96 0)
+ activeHelpKey: selectorFilter
+ component:
+ (SpecCollection
+ collection: (
+ (LabelSpec
+ label: 'Filter:'
+ name: 'Label1'
+ layout: (AlignmentOrigin 107 0 11 0 1 0.5)
+ activeHelpKey: selectorFilter
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'EntryField1'
+ layout: (LayoutFrame 110 0 0 0 -2 1 22 0)
+ model: selectorFilterHolder
+ immediateAccept: true
+ acceptOnLeave: true
+ acceptOnReturn: false
+ acceptOnTab: false
+ acceptOnPointerLeave: false
+ activeHelpKey: selectorFilter
+ )
+ )
+
+ )
+ )
+ (HierarchicalListViewSpec
+ name: 'imageList'
+ layout: (LayoutFrame 2 0.0 100 0 -2 1.0 -60 1.0)
+ activeHelpKey: imageImageList
+ model: imageHolder
+ menu: menuEditImage
+ hasHorizontalScrollBar: true
+ hasVerticalScrollBar: true
+ miniScrollerHorizontal: true
+ listModel: imageList
+ useIndex: false
+ highlightMode: label
+ postBuildCallback: postBuildImageViewer:
+ )
+ (ViewSpec
+ name: 'Box1'
+ layout: (LayoutFrame 20 0.0 -60 1.0 -20 1.0 0 1.0)
+ level: 0
+ component:
+ (SpecCollection
+ collection: (
+ (CheckBoxSpec
+ label: 'Image & Label'
+ name: 'iconAndLabelCheckBox'
+ layout: (AlignmentOrigin 0 0 17 0 0 0.5)
+ activeHelpKey: imageImageAndLabel
+ tabable: true
+ model: iconAndLabelHolder
+ translateLabel: true
+ )
+ (ActionButtonSpec
+ label: 'Image Editor'
+ name: 'imageEditorButton'
+ layout: (AlignmentOrigin -69 1.0 17 0 0 0.5)
+ activeHelpKey: imageImageEditor
+ hasCharacterOrientedLabel: false
+ foregroundColor: (Color 0.0 0.0 66.9993133440146)
+ tabable: true
+ model: doEditImage
+ )
+ (ActionButtonSpec
+ label: 'Browse'
+ name: 'Button1'
+ layout: (AlignmentOrigin -69 1.0 41 0 0 0.5)
+ activeHelpKey: imageBrowseImageClass
+ hasCharacterOrientedLabel: false
+ foregroundColor: (Color 0.0 0.0 66.9993133440146)
+ tabable: true
+ model: doBrowseImageClass
+ )
+ )
+
+ )
+ )
+ )
+
+ )
)
"Modified: / 03-08-2011 / 10:16:13 / cg"
@@ -4100,12 +4100,12 @@
sel := selectorHolder value.
sel size == 0 ifTrue:[ ^ nil ].
cls := self retrieverClass.
- cls notNil ifTrue:[
- clsName := retrieverHolder value.
- clsName isEmptyOrNil ifTrue:[
- clsName := cls name.
- ].
- clsName := clsName asSymbol.
+ cls notNil ifTrue:[
+ clsName := retrieverHolder value.
+ clsName isEmptyOrNil ifTrue:[
+ clsName := cls name.
+ ].
+ clsName := clsName asSymbol.
].
rcv := ResourceRetriever new.
@@ -4120,15 +4120,15 @@
|className sel isOn|
aResourceRetriever notNil ifTrue:[
- className := aResourceRetriever className.
- className isBehavior ifTrue:[
- className := className name asSymbol
- ].
- sel := aResourceRetriever selector.
- isOn := aResourceRetriever labelText notNil.
+ className := aResourceRetriever className.
+ className isBehavior ifTrue:[
+ className := className name asSymbol
+ ].
+ sel := aResourceRetriever selector.
+ isOn := aResourceRetriever labelText notNil.
] ifFalse:[
- className := sel := nil.
- isOn := false.
+ className := sel := nil.
+ isOn := false.
].
retrieverHolder value:className.
@@ -4141,10 +4141,10 @@
clsName := retrieverHolder value.
clsName notEmptyOrNil ifTrue:[
- cls := Smalltalk at:clsName ifAbsent:nil.
- (cls isBehavior) ifTrue:[
- ^ cls
- ].
+ cls := Smalltalk at:clsName ifAbsent:nil.
+ (cls isBehavior) ifTrue:[
+ ^ cls
+ ].
].
^ nil
! !
@@ -4173,23 +4173,23 @@
|cls sel image|
(cls := retrieverHolder value) isNil ifTrue:[
- Dialog warn:'No resource retriever is defined.'.
+ Dialog warn:'No resource retriever is defined.'.
] ifFalse:[
- sel := selectorHolder value.
-
- cls := Smalltalk classNamed:cls.
- cls isNil ifTrue:[
- Dialog warn:'No such resource retriever class.'.
- ] ifFalse:[
- (cls respondsTo:#visualFor:) ifTrue:[
- image := cls visualFor:sel.
- image ~~ (cls perform:sel) ifTrue:[
- self warn:'The image is resolved via #visualFor: from some unknown class'.
- sel := #visualFor:.
- ].
- ].
- UserPreferences current systemBrowserClass openInClass:cls class selector:sel
- ]
+ sel := selectorHolder value.
+
+ cls := Smalltalk classNamed:cls.
+ cls isNil ifTrue:[
+ Dialog warn:'No such resource retriever class.'.
+ ] ifFalse:[
+ (cls respondsTo:#visualFor:) ifTrue:[
+ image := cls visualFor:sel.
+ image ~~ (cls perform:sel) ifTrue:[
+ self warn:'The image is resolved via #visualFor: from some unknown class'.
+ sel := #visualFor:.
+ ].
+ ].
+ UserPreferences current systemBrowserClass openInClass:cls class selector:sel
+ ]
]
"Created: / 20-09-2010 / 13:27:34 / cg"
@@ -4200,34 +4200,34 @@
item := imageHolder value.
item notNil ifTrue:[
- item doEdit.
- ^ self.
+ item doEdit.
+ ^ self.
].
- sel := selectorHolder value.
+ sel := selectorHolder value.
sel isNil ifTrue:[
- Dialog warn:'No selector is defined.'.
- ^ self.
+ Dialog warn:'No selector is defined.'.
+ ^ self.
].
cls := retrieverHolder value.
cls isNil ifTrue:[
- Dialog warn:'No resource retriever is defined.'.
- ^ self.
+ Dialog warn:'No resource retriever is defined.'.
+ ^ self.
].
cls := Smalltalk classNamed:cls.
cls isNil ifTrue:[
- Dialog warn:'No such resource retriever class.'.
- ^ self.
+ Dialog warn:'No such resource retriever class.'.
+ ^ self.
].
(cls respondsTo:#visualFor:) ifTrue:[
- image := cls visualFor:sel.
- image ~~ (cls perform:sel ifNotUnderstood:nil) ifTrue:[
- self warn:'The image is resolved via #visualFor: from some unknown class'.
- image notNil ifTrue:[
- ImageEditor openOnImage:image.
- ].
- ^ self.
- ].
+ image := cls visualFor:sel.
+ image ~~ (cls perform:sel ifNotUnderstood:nil) ifTrue:[
+ self warn:'The image is resolved via #visualFor: from some unknown class'.
+ image notNil ifTrue:[
+ ImageEditor openOnImage:image.
+ ].
+ ^ self.
+ ].
].
ImageEditor openOnClass:cls andSelector:sel
@@ -4270,12 +4270,12 @@
list := builder bindingAt:#retrieverList.
list isNil ifTrue:[
- list := MenuEditor imageRetrieverClasses asList.
- builder aspectAt:#retrieverList put:list.
+ list := MenuEditor imageRetrieverClasses asList.
+ builder aspectAt:#retrieverList put:list.
].
- (masterApplication notNil
+ (masterApplication notNil
and:[(cls := masterApplication specClass) notNil]) ifTrue:[
- list := list copyWithFirst:cls.
+ list := list copyWithFirst:cls.
].
^ list
!
@@ -4302,12 +4302,12 @@
self updateSelectedImage.
(retriever notNil and:[imageList size ~~ 0]) ifTrue:[
- list := self retrieverList.
- name := retriever name.
-
- (list includes:name) ifFalse:[
- list add:(name asSymbol).
- ]
+ list := self retrieverList.
+ name := retriever name.
+
+ (list includes:name) ifFalse:[
+ list add:(name asSymbol).
+ ]
].
"Modified: / 03-08-2011 / 10:56:58 / cg"
@@ -4336,11 +4336,11 @@
aModel == selectorFilterHolder ifTrue:[ self selectorFilterChanged. ^ self ].
aModel == imageHolder ifTrue:[
- item := imageHolder value.
- item notNil ifTrue:[
- selectorHolder value:(item label)
- ].
- ^ self
+ item := imageHolder value.
+ item notNil ifTrue:[
+ selectorHolder value:(item label)
+ ].
+ ^ self
].
super update:what with:aPara from:aModel
@@ -4354,11 +4354,11 @@
filter := [:sel | true].
(selectorFilterString := selectorFilterHolder value) notEmptyOrNil ifTrue:[
- selectorFilterString includesMatchCharacters ifTrue:[
- filter := [:sel | selectorFilterString match:sel ignoreCase:true].
- ] ifFalse:[
- filter := [:sel | sel includesString:selectorFilterString].
- ].
+ selectorFilterString includesMatchCharacters ifTrue:[
+ filter := [:sel | selectorFilterString match:sel ignoreCase:true].
+ ] ifFalse:[
+ filter := [:sel | sel includesString:selectorFilterString].
+ ].
].
imageList root updateFromClass:retriever selectorFilter:filter.
@@ -4374,34 +4374,34 @@
imageList isEmpty ifTrue:[^ self].
selector := selectorHolder value.
- selector isEmptyOrNil ifTrue:[
- imageHolder value:nil.
- ^ self
+ selector isEmptyOrNil ifTrue:[
+ imageHolder value:nil.
+ ^ self
].
item := nil.
selector := selector asSymbol.
- imageList do:[:anItem|
- |sel|
-
- sel := anItem selector.
- selector == sel ifTrue:[
- imageHolder value:anItem.
- ^ self
- ].
- item isNil ifTrue:[
- (sel startsWith:selector) ifTrue:[ item := anItem ]
- ]
+ imageList do:[:anItem|
+ |sel|
+
+ sel := anItem selector.
+ selector == sel ifTrue:[
+ imageHolder value:anItem.
+ ^ self
+ ].
+ item isNil ifTrue:[
+ (sel startsWith:selector) ifTrue:[ item := anItem ]
+ ]
].
imageHolder value:nil.
item notNil ifTrue:[
- line := imageList identityIndexOf:item.
- line ~~ 0 ifTrue:[
- "/ imageListView scrollToLine:line
- imageListView makeLineVisible:line
- ]
+ line := imageList identityIndexOf:item.
+ line ~~ 0 ifTrue:[
+ "/ imageListView scrollToLine:line
+ imageListView makeLineVisible:line
+ ]
].
"Created: / 03-08-2011 / 10:55:45 / cg"
@@ -4465,28 +4465,28 @@
"do what the ResourceRetriever will do"
(aClass respondsTo:#visualFor:) ifTrue:[
- iconOrSymbol := aClass visualFor:selector.
+ iconOrSymbol := aClass visualFor:selector.
].
iconOrSymbol isNil ifTrue:[
- iconOrSymbol := aClass perform:selector.
+ iconOrSymbol := aClass perform:selector.
].
iconOrSymbol isNil ifTrue:[^ self].
iconOrSymbol isSymbol ifTrue:[
- icon := ToolbarIconLibrary perform:iconOrSymbol.
+ icon := ToolbarIconLibrary perform:iconOrSymbol.
] ifFalse:[
- icon := iconOrSymbol.
+ icon := iconOrSymbol.
].
w := icon width.
h := icon height.
w > 32 ifTrue:[
- magnify := 32 / w.
- h > 32 ifTrue:[ magnify := (32 / h) max:magnify ].
+ magnify := 32 / w.
+ h > 32 ifTrue:[ magnify := (32 / h) max:magnify ].
] ifFalse:[
- h > 32 ifFalse:[^ self].
- magnify := 32 / h.
+ h > 32 ifFalse:[^ self].
+ magnify := 32 / h.
].
icon := icon magnifiedBy: magnify.
@@ -4503,7 +4503,7 @@
|r item|
(aClass notNil and:[aClass isBehavior]) ifFalse:[
- ^ self collapse.
+ ^ self collapse.
].
"/ aClass == selector ifTrue:[
"/ ^ self expand
@@ -4514,24 +4514,24 @@
children := OrderedCollection new.
self application withWaitCursorDo:[
- aClass withAllSuperclassesDo:[:aClass|
- aClass class selectorsAndMethodsDo:[:sel :m|
- (aFilterBlock value:sel) ifTrue:[
- m hasResource ifTrue:[
- r := m resources.
- r notEmptyOrNil ifTrue:[
- ((r includesKey:#image) or:[r includesKey:#programImage]) ifTrue:[
- item := self class new forClass:aClass selector:sel.
- item parent:self.
- children add:item
- ]
- ]
- ]
- ]
- ]
- ].
- children sort:[:a :b | a label < b label ].
- self expand
+ aClass withAllSuperclassesDo:[:aClass|
+ aClass class selectorsAndMethodsDo:[:sel :m|
+ (aFilterBlock value:sel) ifTrue:[
+ m hasResource ifTrue:[
+ r := m resources.
+ r notEmptyOrNil ifTrue:[
+ ((r includesKey:#image) or:[r includesKey:#programImage]) ifTrue:[
+ item := self class new forClass:aClass selector:sel.
+ item parent:self.
+ children add:item
+ ]
+ ]
+ ]
+ ]
+ ]
+ ].
+ children sort:[:a :b | a label < b label ].
+ self expand
].
"Created: / 03-08-2011 / 10:48:10 / cg"
@@ -4546,16 +4546,16 @@
parent := self parent.
parent notNil ifTrue:[
- aClass := parent selector.
- (aClass respondsTo:#visualFor:) ifTrue:[
- image := aClass visualFor:selector.
- image ~~ (aClass perform:selector) ifTrue:[
- self warn:'The image is resolved via #visualFor: from some unknown class'.
- ImageEditor openOnImage:image.
- ^ self.
- ].
- ].
- ImageEditor openOnClass:aClass andSelector:selector.
+ aClass := parent selector.
+ (aClass respondsTo:#visualFor:) ifTrue:[
+ image := aClass visualFor:selector.
+ image ~~ (aClass perform:selector) ifTrue:[
+ self warn:'The image is resolved via #visualFor: from some unknown class'.
+ ImageEditor openOnImage:image.
+ ^ self.
+ ].
+ ].
+ ImageEditor openOnClass:aClass andSelector:selector.
].
! !
@@ -4580,267 +4580,267 @@
<resource: #canvas>
- ^
+ ^
#(FullSpec
- name: basicsEditSpec
- window:
+ name: basicsEditSpec
+ window:
(WindowSpec
- label: 'basicsEditSpec'
- name: 'basicsEditSpec'
- min: (Point 10 10)
- bounds: (Rectangle 0 0 340 340)
- )
- component:
+ label: 'basicsEditSpec'
+ name: 'basicsEditSpec'
+ min: (Point 10 10)
+ bounds: (Rectangle 0 0 340 340)
+ )
+ component:
(SpecCollection
- collection: (
- (LabelSpec
- label: 'Name Key:'
- name: 'nameKeyLabel'
- layout: (AlignmentOrigin 107 0 25 0 1 0.5)
- activeHelpKey: basicsKey
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'nameKeyField'
- layout: (LayoutFrame 110 0 15 0 -5 1.0 37 0)
- activeHelpKey: basicsKey
- tabable: true
- model: nameKey
- group: inputGroup
- type: symbolOrNil
- immediateAccept: false
- acceptOnLeave: false
- acceptOnReturn: true
- acceptOnTab: true
- acceptOnLostFocus: false
- acceptChannel: acceptChannel
- modifiedChannel: modifiedChannel
- acceptOnPointerLeave: false
- )
- (LabelSpec
- label: 'Label:'
- name: 'labelLabel'
- layout: (AlignmentOrigin 107 0 51 0 1 0.5)
- activeHelpKey: basicsLabel
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'labelField'
- layout: (LayoutFrame 110 0 40 0 -5 1.0 62 0)
- activeHelpKey: basicsLabel
- tabable: true
- model: rawLabel
- group: inputGroup
- immediateAccept: false
- acceptOnReturn: true
- acceptOnTab: true
- acceptOnLostFocus: false
- acceptChannel: acceptChannel
- modifiedChannel: modifiedChannel
- acceptOnPointerLeave: false
- )
- (LabelSpec
- label: 'Action:'
- name: 'valueLabel'
- layout: (AlignmentOrigin 107 0 82 0 1 0.5)
- activeHelpKey: basicsAction
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'valueField'
- layout: (LayoutFrame 110 0 71 0 -25 1.0 93 0)
- activeHelpKey: basicsAction
- tabable: true
- model: itemValue
- group: inputGroup
- type: symbolOrNil
- immediateAccept: false
- acceptOnLeave: true
- acceptOnReturn: true
- acceptOnTab: true
- acceptOnLostFocus: true
- acceptChannel: acceptChannel
- modifiedChannel: modifiedChannel
- acceptOnPointerLeave: true
- )
- (ActionButtonSpec
- label: 'browseActionImage'
- name: 'Button1'
- layout: (LayoutFrame -25 1 71 0 -5 1 93 0)
- hasCharacterOrientedLabel: false
- translateLabel: true
- resizeForLabel: true
- tabable: true
- model: doBrowseActionMethod
- activeHelpKey: browseMethod
- )
- (LabelSpec
- label: 'Argument:'
- name: 'argumentLabel'
- layout: (AlignmentOrigin 107 0 107 0 1 0.5)
- activeHelpKey: basicsArgument
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'argumentField'
- layout: (LayoutFrame 110 0 96 0 -5 1.0 118 0)
- activeHelpKey: basicsArgument
- tabable: true
- model: argument
- group: inputGroup
- type: smalltalkObjectOrNil
- immediateAccept: false
- acceptOnReturn: true
- acceptOnTab: true
- acceptOnLostFocus: false
- acceptChannel: acceptChannel
- modifiedChannel: modifiedChannel
- acceptOnPointerLeave: false
- )
- (LabelSpec
- label: 'Indication:'
- name: 'indicationLabel'
- layout: (AlignmentOrigin 107 0 138 0 1 0.5)
- activeHelpKey: basicsIndication
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'indicationField'
- layout: (LayoutFrame 110 0 127 0 -5 1.0 149 0)
- activeHelpKey: basicsIndication
- enableChannel: indicationEnabled
- tabable: true
- model: indication
- group: inputGroup
- type: symbolOrNil
- immediateAccept: true
- acceptOnReturn: false
- acceptOnTab: false
- acceptOnLostFocus: false
- modifiedChannel: modifiedChannel
- acceptOnPointerLeave: false
- )
- (LabelSpec
- label: 'Choice:'
- name: 'choiceLabel'
- layout: (AlignmentOrigin 107 0 163 0 1 0.5)
- activeHelpKey: basicsChoice
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'choiceField'
- layout: (LayoutFrame 110 0 152 0 -5 1.0 174 0)
- activeHelpKey: basicsChoice
- enableChannel: choiceEnabled
- tabable: true
- model: choice
- group: inputGroup
- type: symbolOrNil
- immediateAccept: true
- acceptOnReturn: false
- acceptOnTab: false
- acceptOnLostFocus: false
- modifiedChannel: modifiedChannel
- acceptOnPointerLeave: false
- )
- (LabelSpec
- label: 'Value:'
- name: 'choiceValueLabel'
- layout: (AlignmentOrigin 107 0 188 0 1 0.5)
- activeHelpKey: basicsChoiceValue
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'choiceValueField'
- layout: (LayoutFrame 110 0 177 0 -5 1.0 199 0)
- activeHelpKey: basicsChoiceValue
- enableChannel: choiceValueEnabled
- tabable: true
- model: choiceValue
- group: inputGroup
- type: smalltalkObjectOrNil
- immediateAccept: false
- acceptOnLeave: false
- acceptOnReturn: true
- acceptOnTab: true
- acceptOnLostFocus: false
- acceptChannel: acceptChannel
- modifiedChannel: modifiedChannel
- acceptOnPointerLeave: false
- )
- (CheckBoxSpec
- label: 'Translate Label'
- name: 'translateLabelCheckBox'
- layout: (AlignmentOrigin 7 0 213 0 0 0)
- activeHelpKey: basicsTranslateLabel
- tabable: true
- model: translateLabel
- translateLabel: true
- )
- (CheckBoxSpec
- label: 'Is Button'
- name: 'isButtonCheckBox'
- layout: (AlignmentOrigin 7 0 238 0 0 0)
- activeHelpKey: basicsIsButton
- tabable: true
- model: isButton
- translateLabel: true
- )
- (CheckBoxSpec
- label: 'Hide Menu after Activation'
- name: 'hideMenuOnActivated'
- layout: (AlignmentOrigin 7 0 263 0 0 0)
- activeHelpKey: hideMenuOnActivated
- tabable: true
- model: hideMenuOnActivated
- translateLabel: true
- )
- (CheckBoxSpec
- label: 'BusyCursor while Active'
- name: 'showBusyCursorWhilePerforming'
- layout: (AlignmentOrigin 7 0 288 0 0 0)
- activeHelpKey: showBusyCursorWhilePerforming
- tabable: true
- model: showBusyCursorWhilePerforming
- translateLabel: true
- )
- (CheckBoxSpec
- label: 'Trigger On Down'
- name: 'triggerOnDown'
- layout: (AlignmentOrigin 25 0.5 238 0 0 0)
- activeHelpKey: triggerOnDown
- enableChannel: hasNoDelayedMenuValue
- tabable: true
- model: triggerOnDown
- translateLabel: true
- )
- (CheckBoxSpec
- label: 'Send To Originating Widget'
- name: 'sendToOriginator'
- layout: (AlignmentOrigin 7 0 313 0 0 0)
- activeHelpKey: sendToOriginator
- enableChannel: hasItemValue
- tabable: true
- model: sendToOriginator
- translateLabel: true
- )
- )
-
- )
+ collection: (
+ (LabelSpec
+ label: 'Name Key:'
+ name: 'nameKeyLabel'
+ layout: (AlignmentOrigin 107 0 25 0 1 0.5)
+ activeHelpKey: basicsKey
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'nameKeyField'
+ layout: (LayoutFrame 110 0 15 0 -5 1.0 37 0)
+ activeHelpKey: basicsKey
+ tabable: true
+ model: nameKey
+ group: inputGroup
+ type: symbolOrNil
+ immediateAccept: false
+ acceptOnLeave: false
+ acceptOnReturn: true
+ acceptOnTab: true
+ acceptOnLostFocus: false
+ acceptChannel: acceptChannel
+ modifiedChannel: modifiedChannel
+ acceptOnPointerLeave: false
+ )
+ (LabelSpec
+ label: 'Label:'
+ name: 'labelLabel'
+ layout: (AlignmentOrigin 107 0 51 0 1 0.5)
+ activeHelpKey: basicsLabel
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'labelField'
+ layout: (LayoutFrame 110 0 40 0 -5 1.0 62 0)
+ activeHelpKey: basicsLabel
+ tabable: true
+ model: rawLabel
+ group: inputGroup
+ immediateAccept: false
+ acceptOnReturn: true
+ acceptOnTab: true
+ acceptOnLostFocus: false
+ acceptChannel: acceptChannel
+ modifiedChannel: modifiedChannel
+ acceptOnPointerLeave: false
+ )
+ (LabelSpec
+ label: 'Action:'
+ name: 'valueLabel'
+ layout: (AlignmentOrigin 107 0 82 0 1 0.5)
+ activeHelpKey: basicsAction
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'valueField'
+ layout: (LayoutFrame 110 0 71 0 -25 1.0 93 0)
+ activeHelpKey: basicsAction
+ tabable: true
+ model: itemValue
+ group: inputGroup
+ type: symbolOrNil
+ immediateAccept: false
+ acceptOnLeave: true
+ acceptOnReturn: true
+ acceptOnTab: true
+ acceptOnLostFocus: true
+ acceptChannel: acceptChannel
+ modifiedChannel: modifiedChannel
+ acceptOnPointerLeave: true
+ )
+ (ActionButtonSpec
+ label: 'browseActionImage'
+ name: 'Button1'
+ layout: (LayoutFrame -25 1 71 0 -5 1 93 0)
+ hasCharacterOrientedLabel: false
+ translateLabel: true
+ resizeForLabel: true
+ tabable: true
+ model: doBrowseActionMethod
+ activeHelpKey: browseMethod
+ )
+ (LabelSpec
+ label: 'Argument:'
+ name: 'argumentLabel'
+ layout: (AlignmentOrigin 107 0 107 0 1 0.5)
+ activeHelpKey: basicsArgument
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'argumentField'
+ layout: (LayoutFrame 110 0 96 0 -5 1.0 118 0)
+ activeHelpKey: basicsArgument
+ tabable: true
+ model: argument
+ group: inputGroup
+ type: smalltalkObjectOrNil
+ immediateAccept: false
+ acceptOnReturn: true
+ acceptOnTab: true
+ acceptOnLostFocus: false
+ acceptChannel: acceptChannel
+ modifiedChannel: modifiedChannel
+ acceptOnPointerLeave: false
+ )
+ (LabelSpec
+ label: 'Indication:'
+ name: 'indicationLabel'
+ layout: (AlignmentOrigin 107 0 138 0 1 0.5)
+ activeHelpKey: basicsIndication
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'indicationField'
+ layout: (LayoutFrame 110 0 127 0 -5 1.0 149 0)
+ activeHelpKey: basicsIndication
+ enableChannel: indicationEnabled
+ tabable: true
+ model: indication
+ group: inputGroup
+ type: symbolOrNil
+ immediateAccept: true
+ acceptOnReturn: false
+ acceptOnTab: false
+ acceptOnLostFocus: false
+ modifiedChannel: modifiedChannel
+ acceptOnPointerLeave: false
+ )
+ (LabelSpec
+ label: 'Choice:'
+ name: 'choiceLabel'
+ layout: (AlignmentOrigin 107 0 163 0 1 0.5)
+ activeHelpKey: basicsChoice
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'choiceField'
+ layout: (LayoutFrame 110 0 152 0 -5 1.0 174 0)
+ activeHelpKey: basicsChoice
+ enableChannel: choiceEnabled
+ tabable: true
+ model: choice
+ group: inputGroup
+ type: symbolOrNil
+ immediateAccept: true
+ acceptOnReturn: false
+ acceptOnTab: false
+ acceptOnLostFocus: false
+ modifiedChannel: modifiedChannel
+ acceptOnPointerLeave: false
+ )
+ (LabelSpec
+ label: 'Value:'
+ name: 'choiceValueLabel'
+ layout: (AlignmentOrigin 107 0 188 0 1 0.5)
+ activeHelpKey: basicsChoiceValue
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'choiceValueField'
+ layout: (LayoutFrame 110 0 177 0 -5 1.0 199 0)
+ activeHelpKey: basicsChoiceValue
+ enableChannel: choiceValueEnabled
+ tabable: true
+ model: choiceValue
+ group: inputGroup
+ type: smalltalkObjectOrNil
+ immediateAccept: false
+ acceptOnLeave: false
+ acceptOnReturn: true
+ acceptOnTab: true
+ acceptOnLostFocus: false
+ acceptChannel: acceptChannel
+ modifiedChannel: modifiedChannel
+ acceptOnPointerLeave: false
+ )
+ (CheckBoxSpec
+ label: 'Translate Label'
+ name: 'translateLabelCheckBox'
+ layout: (AlignmentOrigin 7 0 213 0 0 0)
+ activeHelpKey: basicsTranslateLabel
+ tabable: true
+ model: translateLabel
+ translateLabel: true
+ )
+ (CheckBoxSpec
+ label: 'Is Button'
+ name: 'isButtonCheckBox'
+ layout: (AlignmentOrigin 7 0 238 0 0 0)
+ activeHelpKey: basicsIsButton
+ tabable: true
+ model: isButton
+ translateLabel: true
+ )
+ (CheckBoxSpec
+ label: 'Hide Menu after Activation'
+ name: 'hideMenuOnActivated'
+ layout: (AlignmentOrigin 7 0 263 0 0 0)
+ activeHelpKey: hideMenuOnActivated
+ tabable: true
+ model: hideMenuOnActivated
+ translateLabel: true
+ )
+ (CheckBoxSpec
+ label: 'BusyCursor while Active'
+ name: 'showBusyCursorWhilePerforming'
+ layout: (AlignmentOrigin 7 0 288 0 0 0)
+ activeHelpKey: showBusyCursorWhilePerforming
+ tabable: true
+ model: showBusyCursorWhilePerforming
+ translateLabel: true
+ )
+ (CheckBoxSpec
+ label: 'Trigger On Down'
+ name: 'triggerOnDown'
+ layout: (AlignmentOrigin 25 0.5 238 0 0 0)
+ activeHelpKey: triggerOnDown
+ enableChannel: hasNoDelayedMenuValue
+ tabable: true
+ model: triggerOnDown
+ translateLabel: true
+ )
+ (CheckBoxSpec
+ label: 'Send To Originating Widget'
+ name: 'sendToOriginator'
+ layout: (AlignmentOrigin 7 0 313 0 0 0)
+ activeHelpKey: sendToOriginator
+ enableChannel: hasItemValue
+ tabable: true
+ model: sendToOriginator
+ translateLabel: true
+ )
+ )
+
+ )
)
"Modified: / 21-10-2010 / 14:14:49 / cg"
@@ -4851,21 +4851,21 @@
addBindingsTo:aspects for:aMenuEditor
"add additional bindings to the aspects
"
- aspects
- at:#indicationEnabled
- ifAbsentPut:[ BlockValue with:[:a | a size == 0 ] argument:(aspects at:#choice)].
-
- aspects
- at:#choiceEnabled
- ifAbsentPut:[ BlockValue with:[:a | a size == 0 ] argument:(aspects at:#indication)].
-
- aspects
- at:#choiceValueEnabled
- ifAbsentPut:[ BlockValue with:[:a | a size ~~ 0 ] argument:(aspects at:#choice)].
-
- aspects
- at:#hasNoDelayedMenuValue
- ifAbsentPut:[true asValue].
+ aspects
+ at:#indicationEnabled
+ ifAbsentPut:[ BlockValue with:[:a | a size == 0 ] argument:(aspects at:#choice)].
+
+ aspects
+ at:#choiceEnabled
+ ifAbsentPut:[ BlockValue with:[:a | a size == 0 ] argument:(aspects at:#indication)].
+
+ aspects
+ at:#choiceValueEnabled
+ ifAbsentPut:[ BlockValue with:[:a | a size ~~ 0 ] argument:(aspects at:#choice)].
+
+ aspects
+ at:#hasNoDelayedMenuValue
+ ifAbsentPut:[true asValue].
! !
!MenuEditor::ActionItem methodsFor:'accessing'!
@@ -4938,23 +4938,23 @@
"set a specific aspect named aKey to the aValue"
aKey == #argument ifTrue:[
- self hasDelayedMenu ifTrue:[
- children first argument:aValue
- ].
- menuItem argument:aValue.
- ^ self
+ self hasDelayedMenu ifTrue:[
+ children first argument:aValue
+ ].
+ menuItem argument:aValue.
+ ^ self
].
aKey == #triggerOnDown ifTrue:[
- |triggerOnDown|
-
- self hasDelayedMenu ifTrue:[
- triggerOnDown := false
- ] ifFalse:[
- triggerOnDown := aValue
- ].
- menuItem triggerOnDown:triggerOnDown.
- ^ self.
+ |triggerOnDown|
+
+ self hasDelayedMenu ifTrue:[
+ triggerOnDown := false
+ ] ifFalse:[
+ triggerOnDown := aValue
+ ].
+ menuItem triggerOnDown:triggerOnDown.
+ ^ self.
].
super aspectAt:aKey put:aValue.
@@ -5040,163 +5040,163 @@
^
#(FullSpec
- name: basicsEditSpec
- window:
+ name: basicsEditSpec
+ window:
(WindowSpec
- label: 'basicsEditSpec'
- name: 'basicsEditSpec'
- min: (Point 10 10)
- bounds: (Rectangle 0 0 340 340)
- )
- component:
+ label: 'basicsEditSpec'
+ name: 'basicsEditSpec'
+ min: (Point 10 10)
+ bounds: (Rectangle 0 0 340 340)
+ )
+ component:
(SpecCollection
- collection: (
- (LabelSpec
- label: 'Name Key:'
- name: 'nameKeyLabel'
- layout: (AlignmentOrigin 107 0 25 0 1 0.5)
- activeHelpKey: basicsKey
- visibilityChannel: notDelayedMenu
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'nameKeyField'
- layout: (LayoutFrame 110 0 15 0 -5 1.0 37 0)
- activeHelpKey: basicsKey
- visibilityChannel: notDelayedMenu
- tabable: true
- model: nameKey
- group: inputGroup
- type: symbolOrNil
- immediateAccept: false
- acceptOnLeave: false
- acceptOnReturn: true
- acceptOnTab: true
- acceptOnLostFocus: false
- acceptChannel: acceptChannel
- modifiedChannel: modifiedChannel
- acceptOnPointerLeave: false
- )
- (LabelSpec
- label: 'Label:'
- name: 'labelLabel'
- layout: (AlignmentOrigin 107 0 51 0 1 0.5)
- activeHelpKey: basicsLabel
- visibilityChannel: notDelayedMenu
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'labelField'
- layout: (LayoutFrame 110 0 40 0 -5 1.0 62 0)
- activeHelpKey: basicsLabel
- visibilityChannel: notDelayedMenu
- tabable: true
- model: rawLabel
- group: inputGroup
- immediateAccept: false
- acceptOnReturn: true
- acceptOnTab: true
- acceptOnLostFocus: false
- acceptChannel: acceptChannel
- modifiedChannel: modifiedChannel
- acceptOnPointerLeave: false
- )
- (LabelSpec
- label: 'Menu:'
- name: 'menuLabel'
- layout: (AlignmentOrigin 107 0 90 0 1 0.5)
- activeHelpKey: basicsLabel
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'menuField'
- layout: (LayoutFrame 110 0 79 0 -5 1.0 101 0)
- activeHelpKey: basicsMenu
- tabable: true
- model: submenuChannel
- group: inputGroup
- type: symbolOrNil
- immediateAccept: false
- acceptOnReturn: true
- acceptOnTab: true
- acceptOnLostFocus: false
- acceptChannel: acceptChannel
- modifiedChannel: modifiedChannel
- acceptOnPointerLeave: false
- )
- (LabelSpec
- label: 'Argument:'
- name: 'argumentLabel'
- layout: (AlignmentOrigin 107 0 115 0 1 0.5)
- activeHelpKey: basicsLabel
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'argumentField'
- layout: (LayoutFrame 110 0 104 0 -5 1.0 126 0)
- activeHelpKey: basicsMenuArgument
- enableChannel: notDelayedMenu
- tabable: true
- model: argument
- group: inputGroup
- type: smalltalkObjectOrNil
- immediateAccept: false
- acceptOnReturn: true
- acceptOnTab: true
- acceptOnLostFocus: false
- acceptChannel: acceptChannel
- modifiedChannel: modifiedChannel
- acceptOnPointerLeave: false
- )
- (CheckBoxSpec
- label: 'Translate Label'
- name: 'translateLabelCheckBox'
- layout: (Point 20 213)
- activeHelpKey: basicsTranslateLabel
- visibilityChannel: notDelayedMenu
- tabable: true
- model: translateLabel
- translateLabel: true
- )
- (CheckBoxSpec
- label: 'Is Button'
- name: 'isButtonCheckBox'
- layout: (Point 20 238)
- activeHelpKey: basicsIsButton
- visibilityChannel: notDelayedMenu
- tabable: true
- model: isButton
- translateLabel: true
- )
- (CheckBoxSpec
- label: 'Horizontal Layout'
- name: 'horizontalLayout'
- layout: (Point 20 263)
- activeHelpKey: horizontalLayout
- tabable: true
- model: horizontalLayout
- translateLabel: true
- )
- (CheckBoxSpec
- label: 'Do not Destroy Linked Menu'
- name: 'keepLinkedMenu'
- layout: (Point 20 288)
- activeHelpKey: keepLinkedMenu
- tabable: true
- model: keepLinkedMenu
- translateLabel: true
- )
- )
-
- )
+ collection: (
+ (LabelSpec
+ label: 'Name Key:'
+ name: 'nameKeyLabel'
+ layout: (AlignmentOrigin 107 0 25 0 1 0.5)
+ activeHelpKey: basicsKey
+ visibilityChannel: notDelayedMenu
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'nameKeyField'
+ layout: (LayoutFrame 110 0 15 0 -5 1.0 37 0)
+ activeHelpKey: basicsKey
+ visibilityChannel: notDelayedMenu
+ tabable: true
+ model: nameKey
+ group: inputGroup
+ type: symbolOrNil
+ immediateAccept: false
+ acceptOnLeave: false
+ acceptOnReturn: true
+ acceptOnTab: true
+ acceptOnLostFocus: false
+ acceptChannel: acceptChannel
+ modifiedChannel: modifiedChannel
+ acceptOnPointerLeave: false
+ )
+ (LabelSpec
+ label: 'Label:'
+ name: 'labelLabel'
+ layout: (AlignmentOrigin 107 0 51 0 1 0.5)
+ activeHelpKey: basicsLabel
+ visibilityChannel: notDelayedMenu
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'labelField'
+ layout: (LayoutFrame 110 0 40 0 -5 1.0 62 0)
+ activeHelpKey: basicsLabel
+ visibilityChannel: notDelayedMenu
+ tabable: true
+ model: rawLabel
+ group: inputGroup
+ immediateAccept: false
+ acceptOnReturn: true
+ acceptOnTab: true
+ acceptOnLostFocus: false
+ acceptChannel: acceptChannel
+ modifiedChannel: modifiedChannel
+ acceptOnPointerLeave: false
+ )
+ (LabelSpec
+ label: 'Menu:'
+ name: 'menuLabel'
+ layout: (AlignmentOrigin 107 0 90 0 1 0.5)
+ activeHelpKey: basicsLabel
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'menuField'
+ layout: (LayoutFrame 110 0 79 0 -5 1.0 101 0)
+ activeHelpKey: basicsMenu
+ tabable: true
+ model: submenuChannel
+ group: inputGroup
+ type: symbolOrNil
+ immediateAccept: false
+ acceptOnReturn: true
+ acceptOnTab: true
+ acceptOnLostFocus: false
+ acceptChannel: acceptChannel
+ modifiedChannel: modifiedChannel
+ acceptOnPointerLeave: false
+ )
+ (LabelSpec
+ label: 'Argument:'
+ name: 'argumentLabel'
+ layout: (AlignmentOrigin 107 0 115 0 1 0.5)
+ activeHelpKey: basicsLabel
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'argumentField'
+ layout: (LayoutFrame 110 0 104 0 -5 1.0 126 0)
+ activeHelpKey: basicsMenuArgument
+ enableChannel: notDelayedMenu
+ tabable: true
+ model: argument
+ group: inputGroup
+ type: smalltalkObjectOrNil
+ immediateAccept: false
+ acceptOnReturn: true
+ acceptOnTab: true
+ acceptOnLostFocus: false
+ acceptChannel: acceptChannel
+ modifiedChannel: modifiedChannel
+ acceptOnPointerLeave: false
+ )
+ (CheckBoxSpec
+ label: 'Translate Label'
+ name: 'translateLabelCheckBox'
+ layout: (Point 20 213)
+ activeHelpKey: basicsTranslateLabel
+ visibilityChannel: notDelayedMenu
+ tabable: true
+ model: translateLabel
+ translateLabel: true
+ )
+ (CheckBoxSpec
+ label: 'Is Button'
+ name: 'isButtonCheckBox'
+ layout: (Point 20 238)
+ activeHelpKey: basicsIsButton
+ visibilityChannel: notDelayedMenu
+ tabable: true
+ model: isButton
+ translateLabel: true
+ )
+ (CheckBoxSpec
+ label: 'Horizontal Layout'
+ name: 'horizontalLayout'
+ layout: (Point 20 263)
+ activeHelpKey: horizontalLayout
+ tabable: true
+ model: horizontalLayout
+ translateLabel: true
+ )
+ (CheckBoxSpec
+ label: 'Do not Destroy Linked Menu'
+ name: 'keepLinkedMenu'
+ layout: (Point 20 288)
+ activeHelpKey: keepLinkedMenu
+ tabable: true
+ model: keepLinkedMenu
+ translateLabel: true
+ )
+ )
+
+ )
)
! !
@@ -5289,7 +5289,7 @@
"setting default values
"
"/ CG: Thu, 08 May 2008 11:16:54 GMT
- "/ I think having keepLinkedMenu true by default
+ "/ I think having keepLinkedMenu true by default
"/ will confuse newcomers (even me occasionally)
"/ (will search, why the menu is not updated...)
@@ -5326,125 +5326,125 @@
^
#(FullSpec
- name: basicsEditSpec
- window:
+ name: basicsEditSpec
+ window:
(WindowSpec
- label: 'basicsEditSpec'
- name: 'basicsEditSpec'
- min: (Point 10 10)
- bounds: (Rectangle 0 0 344 146)
- )
- component:
+ label: 'basicsEditSpec'
+ name: 'basicsEditSpec'
+ min: (Point 10 10)
+ bounds: (Rectangle 0 0 344 146)
+ )
+ component:
(SpecCollection
- collection: (
- (LabelSpec
- label: 'Name Key:'
- name: 'nameKeyLabel'
- layout: (AlignmentOrigin 107 0 25 0 1 0.5)
- activeHelpKey: basicsKey
- visibilityChannel: notDelayedMenu
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'nameKeyField'
- layout: (LayoutFrame 110 0 15 0 -5 1.0 37 0)
- activeHelpKey: basicsKey
- visibilityChannel: notDelayedMenu
- tabable: true
- model: nameKey
- group: inputGroup
- type: symbolOrNil
- immediateAccept: false
- acceptOnLeave: false
- acceptOnReturn: true
- acceptOnTab: true
- acceptOnLostFocus: false
- acceptChannel: acceptChannel
- modifiedChannel: modifiedChannel
- acceptOnPointerLeave: false
- )
- (LabelSpec
- label: 'Label:'
- name: 'labelLabel'
- layout: (AlignmentOrigin 107 0 51 0 1 0.5)
- activeHelpKey: basicsLabel
- visibilityChannel: notDelayedMenu
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'labelField'
- layout: (LayoutFrame 110 0 40 0 -5 1.0 62 0)
- activeHelpKey: basicsLabel
- visibilityChannel: notDelayedMenu
- tabable: true
- model: rawLabel
- group: inputGroup
- immediateAccept: false
- acceptOnReturn: true
- acceptOnTab: true
- acceptOnLostFocus: false
- acceptChannel: acceptChannel
- modifiedChannel: modifiedChannel
- acceptOnPointerLeave: false
- )
- (LabelSpec
- label: 'Menu:'
- name: 'menuLabel'
- layout: (AlignmentOrigin 107 0 90 0 1 0.5)
- activeHelpKey: basicsLabel
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'menuField'
- layout: (LayoutFrame 110 0 79 0 -5 1.0 101 0)
- activeHelpKey: basicsMenu
- tabable: true
- model: submenuChannel
- group: inputGroup
- type: symbolOrNil
- immediateAccept: false
- acceptOnReturn: true
- acceptOnTab: true
- acceptOnLostFocus: false
- acceptChannel: acceptChannel
- modifiedChannel: modifiedChannel
- acceptOnPointerLeave: false
- )
- (LabelSpec
- label: 'Argument:'
- name: 'argumentLabel'
- layout: (AlignmentOrigin 107 0 115 0 1 0.5)
- activeHelpKey: basicsLabel
- translateLabel: true
- resizeForLabel: true
- adjust: right
- )
- (InputFieldSpec
- name: 'argumentField'
- layout: (LayoutFrame 110 0 104 0 -5 1.0 126 0)
- activeHelpKey: basicsMenuArgument
- enableChannel: notDelayedMenu
- tabable: true
- model: argument
- group: inputGroup
- type: smalltalkObjectOrNil
- immediateAccept: false
- acceptOnReturn: true
- acceptOnTab: true
- acceptOnLostFocus: false
- acceptChannel: acceptChannel
- modifiedChannel: modifiedChannel
- acceptOnPointerLeave: false
- )
- )
-
- )
+ collection: (
+ (LabelSpec
+ label: 'Name Key:'
+ name: 'nameKeyLabel'
+ layout: (AlignmentOrigin 107 0 25 0 1 0.5)
+ activeHelpKey: basicsKey
+ visibilityChannel: notDelayedMenu
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'nameKeyField'
+ layout: (LayoutFrame 110 0 15 0 -5 1.0 37 0)
+ activeHelpKey: basicsKey
+ visibilityChannel: notDelayedMenu
+ tabable: true
+ model: nameKey
+ group: inputGroup
+ type: symbolOrNil
+ immediateAccept: false
+ acceptOnLeave: false
+ acceptOnReturn: true
+ acceptOnTab: true
+ acceptOnLostFocus: false
+ acceptChannel: acceptChannel
+ modifiedChannel: modifiedChannel
+ acceptOnPointerLeave: false
+ )
+ (LabelSpec
+ label: 'Label:'
+ name: 'labelLabel'
+ layout: (AlignmentOrigin 107 0 51 0 1 0.5)
+ activeHelpKey: basicsLabel
+ visibilityChannel: notDelayedMenu
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'labelField'
+ layout: (LayoutFrame 110 0 40 0 -5 1.0 62 0)
+ activeHelpKey: basicsLabel
+ visibilityChannel: notDelayedMenu
+ tabable: true
+ model: rawLabel
+ group: inputGroup
+ immediateAccept: false
+ acceptOnReturn: true
+ acceptOnTab: true
+ acceptOnLostFocus: false
+ acceptChannel: acceptChannel
+ modifiedChannel: modifiedChannel
+ acceptOnPointerLeave: false
+ )
+ (LabelSpec
+ label: 'Menu:'
+ name: 'menuLabel'
+ layout: (AlignmentOrigin 107 0 90 0 1 0.5)
+ activeHelpKey: basicsLabel
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'menuField'
+ layout: (LayoutFrame 110 0 79 0 -5 1.0 101 0)
+ activeHelpKey: basicsMenu
+ tabable: true
+ model: submenuChannel
+ group: inputGroup
+ type: symbolOrNil
+ immediateAccept: false
+ acceptOnReturn: true
+ acceptOnTab: true
+ acceptOnLostFocus: false
+ acceptChannel: acceptChannel
+ modifiedChannel: modifiedChannel
+ acceptOnPointerLeave: false
+ )
+ (LabelSpec
+ label: 'Argument:'
+ name: 'argumentLabel'
+ layout: (AlignmentOrigin 107 0 115 0 1 0.5)
+ activeHelpKey: basicsLabel
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
+ )
+ (InputFieldSpec
+ name: 'argumentField'
+ layout: (LayoutFrame 110 0 104 0 -5 1.0 126 0)
+ activeHelpKey: basicsMenuArgument
+ enableChannel: notDelayedMenu
+ tabable: true
+ model: argument
+ group: inputGroup
+ type: smalltalkObjectOrNil
+ immediateAccept: false
+ acceptOnReturn: true
+ acceptOnTab: true
+ acceptOnLostFocus: false
+ acceptChannel: acceptChannel
+ modifiedChannel: modifiedChannel
+ acceptOnPointerLeave: false
+ )
+ )
+
+ )
)
! !
@@ -5652,36 +5652,36 @@
|expanded item menu|
self criticalDo:[
- self isRootItem ifTrue:[ expanded := true ]
- ifFalse:[ expanded := isExpanded ].
-
- self removeAll.
- self rawLabel:aString.
-
- menu := aMenu value.
-
- (menu isNil or:[menu isString]) ifTrue:[
- menu := nil
- ] ifFalse:[
- aMenu isCollection ifTrue:[ menu := Menu decodeFromLiteralArray:aMenu ]
- ifFalse:[ menu := aMenu ].
-
- menu hasItems ifFalse:[
- menu := nil
- ].
- ].
- menu notNil ifTrue:[
- isExpanded := false. "/ discard change notifications
- children := OrderedCollection new.
-
- menu itemsDo:[:el|
- item := self class menuItem:el.
- item parent:self.
- children add:item.
- ].
- expanded ifTrue:[ self expand ].
- ].
- isExpanded := expanded.
+ self isRootItem ifTrue:[ expanded := true ]
+ ifFalse:[ expanded := isExpanded ].
+
+ self removeAll.
+ self rawLabel:aString.
+
+ menu := aMenu value.
+
+ (menu isNil or:[menu isString]) ifTrue:[
+ menu := nil
+ ] ifFalse:[
+ aMenu isCollection ifTrue:[ menu := Menu decodeFromLiteralArray:aMenu ]
+ ifFalse:[ menu := aMenu ].
+
+ menu hasItems ifFalse:[
+ menu := nil
+ ].
+ ].
+ menu notNil ifTrue:[
+ isExpanded := false. "/ discard change notifications
+ children := OrderedCollection new.
+
+ menu itemsDo:[:el|
+ item := self class menuItem:el.
+ item parent:self.
+ children add:item.
+ ].
+ expanded ifTrue:[ self expand ].
+ ].
+ isExpanded := expanded.
].
self changed
@@ -6114,11 +6114,11 @@
|value|
aValue isString ifTrue:[
- value := aValue withoutSeparators.
-
- (self class separatorTypeOf:value) notNil ifTrue:[
- menuItem rawLabel:value
- ]
+ value := aValue withoutSeparators.
+
+ (self class separatorTypeOf:value) notNil ifTrue:[
+ menuItem rawLabel:value
+ ]
].
"Modified: / 29-11-2011 / 11:28:39 / cg"