Marcel Taeumel uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-mt.1105.mcz ==================== Summary ==================== Name: Morphic-mt.1105 Author: mt Time: 11 April 2016, 10:19:30.423264 am UUID: ea97f6eb-ebd3-f34a-b7ea-f6b0fb77b730 Ancestors: Morphic-cmm.1104 Fixes deferred balloon tips that showed up at the hand but the hand has already moved above another morph. =============== Diff against Morphic-cmm.1104 =============== Item was changed: ----- Method: NewBalloonMorph>>popUpAt: (in category 'initialization') ----- popUpAt: point "Do not remove other balloon helps." | w h | self balloonOwner ifNil: [^ self]. self balloonOwner isInWorld ifFalse: [^ self]. w := self balloonOwner world. h := w activeHand. + + self hasTail: true. #(bottomLeft topLeft bottomRight topRight) detect: [:nextOrientation | | pointWithOffset | self orientation: nextOrientation. pointWithOffset := point + self tailOffset. self move: pointWithOffset. self bounds: (self bounds translatedToBeWithin: w bounds). (self bounds perform: self orientation) = pointWithOffset] ifNone: ["Keep last try."]. w activeHand addBalloonHelp: self. self openInWorld.! Item was changed: ----- Method: NewBalloonMorph>>popUpFor:hand: (in category 'initialization') ----- popUpFor: aMorph hand: aHand + "Pop up the receiver as balloon help for the given hand. Ignore if the hand does not touch the morph." - "Pop up the receiver as balloon help for the given hand" + (aMorph boundsInWorld containsPoint: aHand position) + ifFalse: [^ self "Ignore"]. + self balloonOwner: aMorph. self popUpForHand: aHand.! |
In reply to this post by commits-2
Why hasTail: true? It's not actually "pointing" at anything other
than where the Hand is already pointing, so its two "arrows" pionting at each other, which is redundant and even somewhat confusing. I don't think you will find any other UI which does that. Strangely, I can't seem to turn it off myself -- if I specify "hasTail: false" right there, it has no effect, the tail still appears... On Mon, Apr 11, 2016 at 3:19 AM, <[hidden email]> wrote: > Marcel Taeumel uploaded a new version of Morphic to project The Trunk: > http://source.squeak.org/trunk/Morphic-mt.1105.mcz > > ==================== Summary ==================== > > Name: Morphic-mt.1105 > Author: mt > Time: 11 April 2016, 10:19:30.423264 am > UUID: ea97f6eb-ebd3-f34a-b7ea-f6b0fb77b730 > Ancestors: Morphic-cmm.1104 > > Fixes deferred balloon tips that showed up at the hand but the hand has already moved above another morph. > > =============== Diff against Morphic-cmm.1104 =============== > > Item was changed: > ----- Method: NewBalloonMorph>>popUpAt: (in category 'initialization') ----- > popUpAt: point > "Do not remove other balloon helps." > > | w h | > self balloonOwner ifNil: [^ self]. > self balloonOwner isInWorld ifFalse: [^ self]. > > w := self balloonOwner world. > h := w activeHand. > + > + self hasTail: true. > > #(bottomLeft topLeft bottomRight topRight) detect: [:nextOrientation | > | pointWithOffset | > self orientation: nextOrientation. > pointWithOffset := point + self tailOffset. > self move: pointWithOffset. > self bounds: (self bounds translatedToBeWithin: w bounds). > (self bounds perform: self orientation) = pointWithOffset] ifNone: ["Keep last try."]. > > w activeHand addBalloonHelp: self. > self openInWorld.! > > Item was changed: > ----- Method: NewBalloonMorph>>popUpFor:hand: (in category 'initialization') ----- > popUpFor: aMorph hand: aHand > + "Pop up the receiver as balloon help for the given hand. Ignore if the hand does not touch the morph." > - "Pop up the receiver as balloon help for the given hand" > > + (aMorph boundsInWorld containsPoint: aHand position) > + ifFalse: [^ self "Ignore"]. > + > self balloonOwner: aMorph. > self popUpForHand: aHand.! > > |
Free forum by Nabble | Edit this page |