#FEATURE by cg
class: DisplaySurface
changed: #activateMenu
allow for block to be returned from middleButtonMenu
--- a/DisplaySurface.st Fri Apr 27 13:42:06 2018 +0200
+++ b/DisplaySurface.st Tue May 01 10:39:51 2018 +0200
@@ -1,3 +1,5 @@
+"{ Encoding: utf8 }"
+
"
COPYRIGHT (c) 1992 by Claus Gittinger
All Rights Reserved
@@ -14,11 +16,11 @@
"{ NameSpace: Smalltalk }"
GraphicsMedium subclass:#DisplaySurface
- instanceVariableNames:'viewBackground cursor eventMask moreAttributes renderer uuid
- backed flags delegate updateRegion'
- classVariableNames:'GotExposeFlagMask SaveUnderFlagMask'
- poolDictionaries:''
- category:'Graphics-Support'
+ instanceVariableNames:'viewBackground cursor eventMask moreAttributes renderer uuid
+ backed flags delegate updateRegion'
+ classVariableNames:'GotExposeFlagMask SaveUnderFlagMask'
+ poolDictionaries:''
+ category:'Graphics-Support'
!
!DisplaySurface class methodsFor:'documentation'!
@@ -1816,10 +1818,11 @@
|menu|
(menu := self middleButtonMenu) notNil ifTrue:[
+ menu isBlock ifTrue:[ menu := menu value ].
menu isArray ifTrue:[
"/ a spec array
menu := menu decodeAsLiteralArray.
- menu findGuiResourcesIn:(self application ? self).
+ menu findGuiResourcesIn:(self application ? self) for:self.
menu receiver:self.
].
menu showAtPointer