[squeak-dev] The Trunk: Graphics-pre.424.mcz

commits at source.squeak.org commits at source.squeak.org
Thu Nov 14 15:33:15 UTC 2019


Patrick Rein uploaded a new version of Graphics to project The Trunk:
http://source.squeak.org/trunk/Graphics-pre.424.mcz

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

Name: Graphics-pre.424
Author: pre
Time: 14 November 2019, 4:32:50.472053 pm
UUID: bbaa1a3d-78d0-0c42-ba47-0c1949e20cca
Ancestors: Graphics-pre.423

Refactors the embedded object callback to allow for handling cases in which several TextAnchors are attached to the same character. Also allows TextAnchors to change the style of the text by letting TextAnchors work on the scanner (as other TextAttributes are allowed to do).

=============== Diff against Graphics-pre.423 ===============

Item was changed:
  ----- Method: CharacterScanner>>embeddedObject (in category 'stop conditions') -----
  embeddedObject
  
  	pendingKernX := 0.
  	((text attributesAt: lastIndex) reject: [:each | each anchoredMorph isNil])
+ 		ifNotEmpty: [:attributes | self placeEmbeddedObjectsFrom: attributes].
+ 	self setFont.
- 		ifNotEmpty: [:attributes | attributes do: [:attr |
- 			"Try to placeEmbeddedObject: - if it answers false, then there's no place left"
- 			(self placeEmbeddedObjectFrom: attr) ifFalse: [^ self crossedX]]].
   
  	"Note: if ever several objects are embedded on same character, only indent lastIndex once"
  	lastIndex := lastIndex + 1.
  	^false!

Item was changed:
+ ----- Method: CharacterScanner>>placeEmbeddedObjectFrom: (in category 'private-text-anchor') -----
- ----- Method: CharacterScanner>>placeEmbeddedObjectFrom: (in category 'private') -----
  placeEmbeddedObjectFrom: aTextAttribute
  	"Place the anchoredMorph or return false if it cannot be placed"
  	^ true!

Item was added:
+ ----- Method: CharacterScanner>>placeEmbeddedObjectsFrom: (in category 'private-text-anchor') -----
+ placeEmbeddedObjectsFrom: textAttributes
+ 	textAttributes do: [:attr |
+ 		"Try to placeEmbeddedObject: - if it answers false, then there's no place left"
+ 		(self placeEmbeddedObjectFrom: attr) ifFalse: [^ self crossedX]]!



More information about the Squeak-dev mailing list