Marcel Taeumel uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-mt.791.mcz==================== Summary ====================
Name: Morphic-mt.791
Author: mt
Time: 30 March 2015, 11:15:05.11 am
UUID: 2477a56b-ef43-7746-a965-0fbd71e8cb99
Ancestors: Morphic-mt.790
Defer line-breaking in balloon-texts until actual display time. Having this, even text objects can be stored as balloon-texts and an appropriate renderer may display that.
=============== Diff against Morphic-mt.790 ===============
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"
| result |
extension ifNil: [^nil].
extension balloonText
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!
-
- ^ result ifNotNil: [:balloonText |
- balloonText asString withNoLineLongerThan: Preferences maxBalloonHelpLineLength]!
Item was changed:
----- Method: Morph>>setBalloonText: (in category 'halos and balloon help') -----
setBalloonText: stringOrText
"Set receiver's balloon help text. Pass nil to remove the help."
self flag: #deprecated. "mt: Use #balloonText:."
+ self balloonText: stringOrText.!
- self setBalloonText: stringOrText maxLineLength: Preferences maxBalloonHelpLineLength!
Item was changed:
----- Method: Morph>>showBalloon:hand: (in category 'halos and balloon help') -----
showBalloon: msgString hand: aHand
"Pop up a balloon containing the given string,
first removing any existing BalloonMorphs in the world."
| w balloon h |
(w := self world) ifNil: [^ self].
h := aHand.
h ifNil:[
h := w activeHand].
+ balloon := BalloonMorph
+ string: (msgString asString withNoLineLongerThan: Preferences maxBalloonHelpLineLength)
+ for: self balloonHelpAligner.
- balloon := BalloonMorph string: msgString for: self balloonHelpAligner.
balloon popUpFor: self hand: h.!