diff -r 1f0a0d241ff8 -r 24748704c741 MenuEditor.st --- a/MenuEditor.st Thu Oct 24 22:21:49 2002 +0200 +++ b/MenuEditor.st Fri Oct 25 13:12:25 2002 +0200 @@ -42,7 +42,7 @@ privateIn:MenuEditor ! -MenuEditor::Item subclass:#MenuItem +MenuEditor::Item subclass:#RegularMenuItem instanceVariableNames:'' classVariableNames:'' poolDictionaries:'' @@ -64,7 +64,7 @@ privateIn:MenuEditor ! -MenuEditor::MenuItem subclass:#RootItem +MenuEditor::RegularMenuItem subclass:#RootItem instanceVariableNames:'' classVariableNames:'' poolDictionaries:'' @@ -1955,7 +1955,7 @@ "/ test whether all objects are dropable (kind of MenuItem) objects do:[:el| - el theObject class == MenuItem ifFalse:[ + (el theObject askFor:#isMenuItem) ifFalse:[ "/ contains none-dropable objects ^ self ]. @@ -2443,7 +2443,7 @@ selectedItem canAddDelayedMenu ifFalse:[ ^ self ]. self askForItemModification ifFalse:[ ^ self ]. - what == #menu ifTrue:[ delayedItem := MenuItem new ] + what == #menu ifTrue:[ delayedItem := RegularMenuItem new ] ifFalse:[ delayedItem := LinkedMenuItem new ]. delayedItem setExpanded:true. @@ -2470,7 +2470,7 @@ "create a new Menu " self addAndSelect:[ |item| - item := MenuItem new. + item := RegularMenuItem new. item expand. item ]. @@ -2486,7 +2486,7 @@ "create a standart edit menu " self addAndSelect:[ - MenuItem menu:(self class standardEditMenu) labeled:'Edit' translateLabel:true + RegularMenuItem menu:(self class standardEditMenu) labeled:'Edit' translateLabel:true ]. ! @@ -2494,7 +2494,7 @@ "create a standart file menu " self addAndSelect:[ - MenuItem menu:(self class standardFileMenu) labeled:'File' translateLabel:true + RegularMenuItem menu:(self class standardFileMenu) labeled:'File' translateLabel:true ]. ! @@ -2504,7 +2504,7 @@ |item| self addAndSelect:[ - item := MenuItem menu:(self class standardHelpMenu) labeled:'Help' translateLabel:true. + item := RegularMenuItem menu:(self class standardHelpMenu) labeled:'Help' translateLabel:true. item aspectAt:#startGroup put:#right. item ]. @@ -2592,12 +2592,12 @@ loMenuItems := OrderedCollection new. aCollection do:[:el| - el class == MenuItem ifTrue:[ loMenuItems add:el ]. + (el askFor:#isMenuItem) ifTrue:[ loMenuItems add:el ]. ]. loMenuItems isEmpty ifTrue:[ ^ self ]. self addAndSelect:[ - loMenuItems collect:[:el| Item menuItem:el ] + loMenuItems collect:[:el| Item menuItem:el ] ]. ! ! @@ -2830,7 +2830,7 @@ aMenuItem isNil ifTrue:[ ^ nil ]. aMenuItem itemValue isNil ifTrue:[ - aMenuItem submenu notNil ifTrue:[ ^ MenuEditor::MenuItem ]. + aMenuItem submenu notNil ifTrue:[ ^ MenuEditor::RegularMenuItem ]. aMenuItem submenuChannel notNil ifTrue:[ ^ MenuEditor::LinkedMenuItem ]. (self separatorTypeOf:(aMenuItem rawLabel)) notNil ifTrue:[ @@ -3089,8 +3089,8 @@ menuItem := MenuItem labeled:(self rawLabel). MenuEditor aspects do:[:aKey| - value := aMenuItem perform:aKey. - value ifNotNil:[ self aspectAt:aKey put:value ] + value := aMenuItem perform:aKey. + value ifNotNil:[ self aspectAt:aKey put:value ] ]. ! @@ -3228,6 +3228,10 @@ ^ false ! +isMenuEditItem + ^ true +! + isRootItem "returns true if the item is the root item " @@ -3620,7 +3624,7 @@ submenu := anItem submenu. submenu notNil ifTrue:[ - item := MenuEditor::MenuItem new + item := MenuEditor::RegularMenuItem new ] ifFalse:[ anItem submenuChannel isNil ifTrue:[ ^ self @@ -3998,7 +4002,7 @@ ^ true ! ! -!MenuEditor::MenuItem class methodsFor:'defaults'! +!MenuEditor::RegularMenuItem class methodsFor:'defaults'! defaultDelayedLabel ^ 'delayed' @@ -4008,7 +4012,7 @@ ^ 'Menu' ! ! -!MenuEditor::MenuItem class methodsFor:'instance creation'! +!MenuEditor::RegularMenuItem class methodsFor:'instance creation'! menu:aMenu labeled:aString |item| @@ -4027,7 +4031,7 @@ ^ item ! ! -!MenuEditor::MenuItem class methodsFor:'interface - specs'! +!MenuEditor::RegularMenuItem class methodsFor:'interface - specs'! basicsEditSpec "This resource specification was automatically generated @@ -4140,7 +4144,7 @@ ) ! ! -!MenuEditor::MenuItem methodsFor:'accessing'! +!MenuEditor::RegularMenuItem methodsFor:'accessing'! argument:aValue "/ ignorred. @@ -4222,7 +4226,7 @@ ^ menu ! ! -!MenuEditor::MenuItem methodsFor:'aspects'! +!MenuEditor::RegularMenuItem methodsFor:'aspects'! getDelayedAttributesFrom:aMenuItem @@ -4235,7 +4239,7 @@ aMenuItem horizontalLayout:(menuItem horizontalLayout). ! ! -!MenuEditor::MenuItem methodsFor:'displaying'! +!MenuEditor::RegularMenuItem methodsFor:'displaying'! displayLabel "returns the label dependent on is delayed or not @@ -4249,7 +4253,7 @@ ^ self class iconMenu ! ! -!MenuEditor::MenuItem methodsFor:'queries'! +!MenuEditor::RegularMenuItem methodsFor:'queries'! canAddChildren "children can be added