[squeak-dev] The Inbox: Morphic-ct.1632.mcz

commits at source.squeak.org commits at source.squeak.org
Sat Feb 29 10:29:33 UTC 2020


Christoph Thiede uploaded a new version of Morphic to project The Inbox:
http://source.squeak.org/inbox/Morphic-ct.1632.mcz

==================== Summary ====================

Name: Morphic-ct.1632
Author: ct
Time: 29 February 2020, 11:29:22.475896 am
UUID: 2d941b38-6604-cb43-bfbb-b7751aa2d55c
Ancestors: Morphic-mt.1631

Proposal: In Morph>>#balloonText, also try to invoke balloonSelector on model.

=============== Diff against Morphic-mt.1631 ===============

Item was changed:
  ----- Method: Morph>>balloonText (in category 'accessing') -----
  balloonText
+ 	"Answer balloon help text or nil, if no help is available."
+ 	"NB: subclasses may override such that they programatically construct the text, for economy's sake, such as model phrases in a Viewer."
- 	"Answer balloon help text or nil, if no help is available.  
- 	NB: subclasses may override such that they programatically  
- 	construct the text, for economy's sake, such as model phrases in 
- 	a Viewer"
  
+ 	| balloonSelector |
+ 	extension ifNil: [^ nil].
- 	| result |
- 	extension ifNil: [^nil].
  	
  	extension balloonText
+ 		ifNotNil: [:balloonText | ^ balloonText].
+ 	balloonSelector := extension balloonTextSelector
+ 		ifNil: [^ nil].
+ 	(ScriptingSystem helpStringOrNilFor: balloonSelector)
+ 		ifNotNil: [:result | ^ result].
+ 	balloonSelector == #methodComment
+ 		ifTrue: [^ self methodCommentAsBalloonHelp].
+ 	balloonSelector isUnary
+ 		ifTrue: [
+ 			(self respondsTo: balloonSelector)
+ 				ifTrue: [^ self perform: balloonSelector].
+ 			(self model respondsTo: balloonSelector)
+ 				ifTrue: [^ self model perform: balloonSelector]].
+ 	^ nil!
- 		ifNotNil: [:balloonText | result := balloonText]
- 		ifNil: [extension balloonTextSelector
- 			ifNotNil: [:balloonSelector |
- 				result := ScriptingSystem helpStringOrNilFor: balloonSelector.
- 				(result isNil and: [balloonSelector == #methodComment]) 
- 					ifTrue: [result := self methodCommentAsBalloonHelp].
- 				((result isNil and: [balloonSelector numArgs = 0]) 
- 					and: [self respondsTo: balloonSelector]) 
- 						ifTrue: [result := self perform: balloonSelector]]].
- 	^ result!



More information about the Squeak-dev mailing list