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

Reply via email to