--- Simon Pepping <[EMAIL PROTECTED]> wrote:

> Glen,
> 
> In my view the FO system knows nothing about the LM
> system. 

It appears that you've just made a friend in Colorado.
 ;)

> That is
> how the LM system can be pluggable. 

Not really, it can still be pluggable if you have
addLayoutManager() in each FO, providing you pass in
the LMMaker.  (Minor point though that doesn't detract
from the rest of your response here.)

> The FO system
> sets itself up and
> waits if any subsequent system finds it useful. Its
> only connection
> with the subsequent system is that it sends FO
> events to its
> FOEventHandler.
> 

OK.

> The LM system, OTOH, knows about the FO system,
> because that is its
> input. _This_ LM system chooses not to create a LM
> when it finds that
> the FOText node is empty. Another LM system may do
> otherwise.
> 

True.

> It is true that the use of endIndex and startIndex
> is too
> detailed. Those details may be hidden behind a
> method hasText(),
> similar to FObj.getChildren() returning null or not,
> which is used by
> other LMMakers.
> 

OK.  In the future, we may wish to have a generic
isEmpty() function in each FO, that the LM Maker can
use to determine if a LM should be created.  How
isEmpty() would be implemented would then be up to
each FO.

Thanks,
Glen

Reply via email to