--- a/MenuEditor.st Mon Jul 21 09:02:20 1997 +0200
+++ b/MenuEditor.st Mon Jul 21 10:49:25 1997 +0200
@@ -1609,8 +1609,15 @@
specClass isAssociation ifTrue:[
cls := specClass key.
sel := specClass value.
+
+ specClass := nil.
+
+ (sel isKindOf:Menu) ifTrue:[
+ self buildFrom:cls andSelector:nil.
+ ^ self painter buildFromMenu:sel.
+ ]
+
].
- specClass := nil.
self buildFrom:cls andSelector:sel.
! !
@@ -1747,39 +1754,17 @@
doPickAMenu
- |view menu|
+ |view|
view := Screen current viewFromUser.
(view isNil or:[view == Screen current rootView]) ifTrue:[
^ self
].
- (view isKindOf:MenuPanel) ifTrue:[
+ view specClass == MenuPanelSpec ifTrue:[
^ self painter buildFromMenu:(view asMenu)
].
- (view isKindOf:PullDownMenu) ifTrue:[
- ^ self painter buildFromMenu:(self doPickPopupMenu:view)
- ].
-!
-
-doPickPopupMenu:aMenu
- "pick a popup menu
- "
- |menu label values item subM|
-
- menu := Menu new.
- values := aMenu selectors.
-
- aMenu labels keysAndValuesDo:[:anIndex :aLabel|
- item := MenuItem labeled:(aLabel printString).
- subM := aMenu subMenuAt:anIndex.
-
- subM notNil ifTrue:[
- item submenu:(self doPickPopupMenu:subM)
- ].
- menu addItem:item value:(values at:anIndex).
- ].
- ^ menu
+ ^ nil
!
doStepDown