MenuEditor.st
changeset 1633 24748704c741
parent 1632 1f0a0d241ff8
child 1634 1dd4cd7ea43b
--- 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