On Jan 29, 2010, at 4:59 PM, Mariano Martinez Peck wrote:
> Hi folks. Jannik pointed to me a cycle dependency between ImageSegment and
> Multilingual.
>
> When you create a segment, there is a way to export the complete segment
> (segment in itself but also the outpointers) to a file, using SmartRefStream
> (ImageSegment >> writeForExportOn: )
>
> Now...you can load the that file in another image. When this is done,
> SmartRefStream calls the method comeFullyUpOnReload:
>
> So.... in ImageSegment >> comeFullyUpOnReload: we a bigggggg method, which
> this lines (a part, of course):
>
> importedObject is just one of all the objects that are in the SmartRefStream.
>
>
> (importedObject isKindOf: TTCFontSet) ifTrue: [
> existing := TTCFontSet familyName:
> importedObject familyName
> pointSize:
> importedObject pointSize. "supplies default"
> existing == importedObject ifFalse:
> [importedObject becomeForward: existing].
> ].
>
>
> Does someone know why this piece of code should be necessary ? Of course,
> and I guess all agree, this shouldn't be in the core of ImageSegment but in
> other place. But anyway, I don't see a reason why this should be done. I vote
> for remove it.
>
remove it.
I think this was added years back by Diego to make sure that truetype fonts
would not lose the formatting.... seems to me that some change made truetype
font morphs have
a reference from the outside so that the imagesegment would not serialize them
correctly, and this was the a fix to fix in when loading.
Marcus
--
Marcus Denker -- http://www.marcusdenker.de
INRIA Lille -- Nord Europe. Team RMoD.
_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project