Your change tries to undo my change as soon as possible. In trunk the
paragraphs were broken into lines by the LineLM. Now that happens by
the ListItemContentLM, which is only a little bit higher up.

It still leaves it impossible to break a list item over a page, and
let the next page have a different IPD. For that to be possible, the
list item must be broken into lines as late as possible, when the page
breaker needs them for a specific page.

Simon

On Thu, Oct 04, 2007 at 07:32:19PM +0200, Andreas L Delmelle wrote:
>
> Hi
>
>
> Just played a bit more with Simon's (cool!) branch, and tried overriding 
> ListItemContentLM.getNextKnuthElements() to the following:
>
>     public LinkedList getNextKnuthElements(LayoutContext context, int 
> alignment) {
>         LinkedList baseList = super.getNextKnuthElements(context, 
> alignment);
>         ListElement el;
>         LinkedList resultList = new LinkedList();
>         LinkedList tmpList;
>         for (Iterator i = baseList.iterator(); i.hasNext();) {
>             el = (ListElement) i.next();
>             if (el instanceof ParagraphListElement) {
>                 tmpList = ((ParagraphListElement) el).doLineBreaking();
>                 resultList.addAll(tmpList);
>             } else {
>                 resultList.add(el);
>             }
>         }
>         return resultList;
>     }
>
> I am unsure as to whether this is 'in the spirit of the algorithm' so to 
> speak, but the result is that all list-related tests now pass.
>
> End-result: 246 out of 368 tests pass on my end.

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

Reply via email to