--- 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