[squeak-dev] The Trunk: Morphic-mt.2064.mcz

commits at source.squeak.org commits at source.squeak.org
Mon Jan 16 11:46:47 UTC 2023


Marcel Taeumel uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-mt.2064.mcz

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

Name: Morphic-mt.2064
Author: mt
Time: 16 January 2023, 12:46:45.778631 pm
UUID: 1236c57d-9311-9349-97d3-c66d639590cc
Ancestors: Morphic-mt.2063

Fixes icon-scaling-bug in object explorers such as when exploring certain debuggers. The scaled icon for a CursorWithMask could not be created/rendered because of a missing mask.

Complements Graphics-mt.537 by introducing the same "blank-copy-of" idiom to override certain species (and depths).

=============== Diff against Morphic-mt.2063 ===============

Item was added:
+ ----- Method: ColorForm>>blankCopyOf: (in category '*Morphic') -----
+ blankCopyOf: aRectangle
+ 	^Form extent: aRectangle extent depth: 32!

Item was added:
+ ----- Method: CursorWithMask>>blankCopyOf: (in category '*Morphic') -----
+ blankCopyOf: aRectangle
+ 	"Drop the mask for scaling."
+ 	
+ 	^ CursorWithAlpha
+ 		extent: aRectangle extent
+ 		depth: 32!

Item was added:
+ ----- Method: Form>>blankCopyOf: (in category '*Morphic') -----
+ blankCopyOf: aRectangle
+ 	^ self species
+ 		extent: aRectangle extent
+ 		depth: depth!

Item was changed:
  ----- Method: Form>>scaledIntoFormOfSize:smoothing: (in category '*Morphic') -----
  scaledIntoFormOfSize: aNumberOrPoint smoothing: factor
  	"Scale and center the receiver into a form of a given size"
  
  	| extent scaledForm result |
  
  	extent := aNumberOrPoint asPoint.
  	extent = self extent ifTrue: [^ self copy].
  
  	scaledForm := self scaledToSize: extent smoothing: factor.
  
+ 	result := self blankCopyOf: (0 at 0 extent: extent).
- 	result := self species extent: extent depth: self depth.
  	result getCanvas
  		translucentImage: scaledForm
  		at: extent - scaledForm extent // 2.
  
  	^ result
  !



More information about the Squeak-dev mailing list