ComboView.st
changeset 4187 b658d1a5ac5d
parent 4186 0087947b1b29
child 4225 565906233a1d
--- a/ComboView.st	Thu Mar 14 14:51:09 2013 +0100
+++ b/ComboView.st	Mon Mar 18 14:27:31 2013 +0100
@@ -13,7 +13,7 @@
 
 View subclass:#ComboView
 	instanceVariableNames:'field pullDownButton list listHolder listMsg action resizableMenu
-		currentIndex'
+		currentIndex comboMenuHolder comboMenuMessage'
 	classVariableNames:'DefaultButtonForm ComboButtonForms'
 	poolDictionaries:''
 	category:'Views-Interactors'
@@ -394,6 +394,22 @@
 
 !ComboView methodsFor:'accessing-mvc'!
 
+comboMenuHolder
+    ^ comboMenuHolder
+!
+
+comboMenuHolder:something
+    comboMenuHolder := something.
+!
+
+comboMenuMessage
+    ^ comboMenuMessage
+!
+
+comboMenuMessage:something
+    comboMenuMessage := something.
+!
+
 listHolder:aValueHolder
     "set the listHolder.
      If not set, the list is supposed to be set explicitely"
@@ -706,8 +722,11 @@
 
     |menu index|
 
-    menuHolder notNil ifTrue:[
-        menu := menuHolder value
+    comboMenuHolder notNil ifTrue:[
+        menu := (comboMenuHolder perform:comboMenuMessage ? #value). 
+        (menu isKindOf:Menu) ifTrue:[
+            menu := MenuPanel new menu:menu.
+        ]
     ] ifFalse:[
         menu := MenuPanel new.
         menu doAccessCharacterTranslation:false.
@@ -888,10 +907,10 @@
 !ComboView class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libwidg2/ComboView.st,v 1.109 2013-03-14 13:51:09 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libwidg2/ComboView.st,v 1.110 2013-03-18 13:27:31 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libwidg2/ComboView.st,v 1.109 2013-03-14 13:51:09 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libwidg2/ComboView.st,v 1.110 2013-03-18 13:27:31 cg Exp $'
 ! !