On Wed, Nov 17, 2004 at 02:25:02PM +0100, Luca Furini wrote:
> Simon Pepping wrote:
> 
> > Marker extends FObjMixed, which adds InlineStackingLM. This is a
> > problem. In the new model there should be a strict separation between
> > LMs implementing InlineLevelLM and those that do not. InlineStackingLM
> > does not, and probably should not do.
> 
> I still have to really understand InlineStackingLM, I find it very
> enigmatic! It generates inline areas, but it has LineLM as a subclass ...

I think it is only there as a common superclass of InlineLM and
LineLM. No FO object should add this LM in its addLM method. Perhaps
it should get a private constructor. Currently FObjMixed and
BiDiOverride use it.
 
> Maybe it should implement both getNextBreakPoss and getNextKnuthElements:
> looking at the retrieve-marker's parent and / or at the marker's children
> should be enough to decide whether to call the one or the other.
> 
> Anyway, I was wondering whether it is really necessary to add a new LM.
> 
> If the fo tree is
> 
>               fo:page-sequence
>           -----------+-----------
>           |                     |
>   fo:static-content          fo:flow
>           |                     |
>          ...                   ...
>           |                     |
>  ret. marker's parent    marker's parent
>           |                     |
>   fo:retrieve-marker        fo:marker
>                              ---+---
>                              |     |
>                            chld1  chld2
> 
> at the moment, RetrieveMarkerLM tries to achieve this (in the LM tree):
> 
>          ...
>           |
>        parentLM
>           |
>   RetrieveMarkerLM
>           |
>   InlineStackingLM
>        ---+---
>        |     |
>   chldLM1   chldLM2
> 
> but, as a marker can only have children which could replace its
> retrieve-marker, wouldn't it be better to have just:
> 
>          ...
>           |
>        parentLM
>        ---+---
>        |     |
>   chldLM1   chldLM2

I have been thinking along the same lines. fo:wrapper does a similar
thing.

Regards, Simon

-- 
Simon Pepping
home page: http://www.leverkruid.nl

Reply via email to