Package org.apache.fop.layoutmgr

Examples of org.apache.fop.layoutmgr.NonLeafPosition


                ListIterator listIter = seq.listIterator();
                while (listIter.hasNext()) {
                    ListElement tempElement;
                    tempElement = (ListElement) listIter.next();
                    if (tempElement.getLayoutManager() != this) {
                        tempElement.setPosition(notifyPos(new NonLeafPosition(this,
                                tempElement.getPosition())));
                    }
                    targetList.add(tempElement);
                }
                returnList.addAll(targetList);
View Full Code Here


        // "wrap" again the Position stored in each element of oldList
        oldListIterator = oldList.listIterator();
        while (oldListIterator.hasNext()) {
            element = (KnuthElement) oldListIterator.next();
            element.setPosition(notifyPos(new NonLeafPosition(this, element.getPosition())));
        }

        return oldList;
    }
View Full Code Here

        // "wrap" again the Positions stored in the elements
        oldListIterator = oldList.listIterator();
        while (oldListIterator.hasNext()) {
            oldElement = (KnuthElement) oldListIterator.next();
            oldElement.setPosition
                (notifyPos(new NonLeafPosition(this, oldElement.getPosition())));
        }
        return bSomethingChanged;
    }
View Full Code Here

        // "wrap" the Position stored in each element of returnedList
        ListIterator listIter = returnedList.listIterator();
        while (listIter.hasNext()) {
            returnedElement = (KnuthElement) listIter.next();
            returnedElement.setPosition
                (notifyPos(new NonLeafPosition(this, returnedElement.getPosition())));
            returnList.add(returnedElement);
        }
        return returnList;
    }
View Full Code Here

                    KnuthSequence sequence = (KnuthSequence) seqIter.next();
                    ListIterator listIter = sequence.listIterator();
                    while (listIter.hasNext()) {
                        returnedElement = (KnuthElement) listIter.next();
                        returnedElement.setPosition
                        (notifyPos(new NonLeafPosition(this,
                                returnedElement.getPosition())));
                    }
                    if (!sequence.isInlineSequence()) {
                        if (lastSequence != null && lastSequence.isInlineSequence()) {
                            // log.error("Last inline sequence should be closed before"
                            //                + " a block sequence");
                            lastSequence.add(new KnuthPenalty(0, -KnuthElement.INFINITE,
                                                   false, null, false));
                            lastSequence = null;
                            if (log.isTraceEnabled()) {
                                trace.append(" ]");
                            }
                        }
                        returnList.add(sequence);
                        if (log.isTraceEnabled()) {
                            trace.append(" B");
                        }
                    } else {
                        if (lastSequence == null) {
                            lastSequence = new KnuthSequence(true);
                            returnList.add(lastSequence);
                            if (!borderAdded) {
                                addKnuthElementsForBorderPaddingStart(lastSequence);
                                borderAdded = true;
                            }
                            if (log.isTraceEnabled()) {
                                trace.append(" [");
                            }
                        } else {
                            if (log.isTraceEnabled()) {
                                trace.append(" +");
                            }
                        }
                        lastSequence.addAll(sequence);
                        if (log.isTraceEnabled()) {
                            trace.append(" I");
                        }
                       // finish last paragraph if it was closed with a linefeed
                        KnuthElement lastElement = (KnuthElement) sequence.getLast();
                        if (lastElement.isPenalty()
                                && ((KnuthPenalty) lastElement).getP()
                                == -KnuthPenalty.INFINITE) {
                            // a penalty item whose value is -inf
                            // represents a preserved linefeed,
                            // wich forces a line break
                            lastSequence = null;
                            if (log.isTraceEnabled()) {
                                trace.append(" ]");
                            }
                        }
                    }
                }
            } else { // A block LM
                // close the last inline sequence
                if (lastSequence != null && lastSequence.isInlineSequence()) {
                    lastSequence.add(new KnuthPenalty(0, -KnuthElement.INFINITE,
                                           false, null, false));
                    lastSequence = null;
                    if (log.isTraceEnabled()) {
                        trace.append(" ]");
                    }
                }
                if (curLM != lastLM) {
                    // close the last block sequence
                    if (lastSequence != null && !lastSequence.isInlineSequence()) {
                        lastSequence = null;
                        if (log.isTraceEnabled()) {
                            trace.append(" ]");
                        }
                    }
                    lastLM = curLM;
                }
                if (lastSequence == null) {
                    lastSequence = new KnuthSequence(false);
                    returnList.add(lastSequence);
                    if (log.isTraceEnabled()) {
                        trace.append(" [");
                    }
                    if (!borderAdded) {
                        addKnuthElementsForBorderPaddingStart(lastSequence);
                        borderAdded = true;
                    }
                } else {
                    if (log.isTraceEnabled()) {
                        trace.append(" +");
                    }
                }
                ListIterator iter = returnedList.listIterator();
                while (iter.hasNext()) {
                    KnuthElement element = (KnuthElement) iter.next();
                    element.setPosition
                        (notifyPos(new NonLeafPosition(this,
                                element.getPosition())));
                }
                lastSequence.addAll(returnedList);
                if (log.isTraceEnabled()) {
                    trace.append(" L");
View Full Code Here

        // which created the last Position: if the LAST_AREA flag is
        // set in the layout context, it must be also set in the
        // layout context given to lastLM, but must be cleared in the
        // layout context given to the other LMs.
        LinkedList positionList = new LinkedList();
        NonLeafPosition pos = null;
        LayoutManager lastLM = null; // last child LM in this iterator
        while (parentIter.hasNext()) {
            pos = (NonLeafPosition) parentIter.next();
            if (pos != null && pos.getPosition() != null) {
                positionList.add(pos.getPosition());
                lastLM = pos.getPosition().getLM();
                lastPos = pos;
            }
        }
        /*if (pos != null) {
            lastLM = pos.getPosition().getLM();
View Full Code Here

    /** @return a cached auxiliary Position instance used for things like spaces. */
    protected Position getAuxiliaryPosition() {
        //if (this.auxiliaryPosition == null) {
            //this.auxiliaryPosition = new NonLeafPosition(this, new LeafPosition(this, -1));
            this.auxiliaryPosition = new NonLeafPosition(this, null);
        //}
        return this.auxiliaryPosition;
    }
View Full Code Here

        KnuthElement tempElement;
        returnedList = new LinkedList();
        ListIterator listIter = tempList.listIterator();
        while (listIter.hasNext()) {
            tempElement = (KnuthElement)listIter.next();
            tempElement.setPosition(new NonLeafPosition(this, tempElement.getPosition()));
            returnedList.add(tempElement);
        }

        return returnedList;
    }
View Full Code Here

                ListIterator listIter = seq.listIterator();
                while (listIter.hasNext()) {
                    KnuthElement tempElement;
                    tempElement = (KnuthElement) listIter.next();
                    if (tempElement.getLayoutManager() != this) {
                        tempElement.setPosition(notifyPos(new NonLeafPosition(this,
                                tempElement.getPosition())));
                    }
                    targetList.add(tempElement);
                }
                returnList.addAll(targetList);
View Full Code Here

                    KnuthSequence sequence = (KnuthSequence) seqIter.next();
                    ListIterator listIter = sequence.listIterator();
                    while (listIter.hasNext()) {
                        returnedElement = (KnuthElement) listIter.next();
                        returnedElement.setPosition
                        (notifyPos(new NonLeafPosition(this,
                                returnedElement.getPosition())));
                    }
                    if (!sequence.isInlineSequence()) {
                        if (lastSequence != null && lastSequence.isInlineSequence()) {
                            // log.error("Last inline sequence should be closed before"
                            //                + " a block sequence");
                            lastSequence.add(new KnuthPenalty(0, -KnuthElement.INFINITE,
                                                   false, null, false));
                            lastSequence = null;
                            if (log.isTraceEnabled()) {
                                trace.append(" ]");
                            }
                        }
                        returnList.add(sequence);
                        if (log.isTraceEnabled()) {
                            trace.append(" B");
                        }
                    } else {
                        if (lastSequence == null) {
                            lastSequence = new KnuthSequence(true);
                            returnList.add(lastSequence);
                            if (!borderAdded) {
                                addKnuthElementsForBorderPaddingStart(lastSequence);
                                borderAdded = true;
                            }
                            if (log.isTraceEnabled()) {
                                trace.append(" [");
                            }
                        } else {
                            if (log.isTraceEnabled()) {
                                trace.append(" +");
                            }
                        }
                        lastSequence.addAll(sequence);
                        if (log.isTraceEnabled()) {
                            trace.append(" I");
                        }
                       // finish last paragraph if it was closed with a linefeed
                        KnuthElement lastElement = (KnuthElement) sequence.getLast();
                        if (lastElement.isPenalty()
                                && ((KnuthPenalty) lastElement).getP()
                                == -KnuthPenalty.INFINITE) {
                            // a penalty item whose value is -inf
                            // represents a preserved linefeed,
                            // wich forces a line break
                            lastSequence = null;
                            if (log.isTraceEnabled()) {
                                trace.append(" ]");
                            }
                        }
                    }
                }
            } else { // A block LM
                // close the last inline sequence
                if (lastSequence != null && lastSequence.isInlineSequence()) {
                    lastSequence.add(new KnuthPenalty(0, -KnuthElement.INFINITE,
                                           false, null, false));
                    lastSequence = null;
                    if (log.isTraceEnabled()) {
                        trace.append(" ]");
                    }
                }
                if (curLM != lastLM) {
                    // close the last block sequence
                    if (lastSequence != null && !lastSequence.isInlineSequence()) {
                        lastSequence = null;
                        if (log.isTraceEnabled()) {
                            trace.append(" ]");
                        }
                    }
                    lastLM = curLM;
                }
                if (lastSequence == null) {
                    lastSequence = new KnuthSequence(false);
                    returnList.add(lastSequence);
                    if (log.isTraceEnabled()) {
                        trace.append(" [");
                    }
                    if (!borderAdded) {
                        addKnuthElementsForBorderPaddingStart(lastSequence);
                        borderAdded = true;
                    }
                } else {
                    if (log.isTraceEnabled()) {
                        trace.append(" +");
                    }
                }
                ListIterator iter = returnedList.listIterator();
                while (iter.hasNext()) {
                    KnuthElement element = (KnuthElement) iter.next();
                    element.setPosition
                        (notifyPos(new NonLeafPosition(this,
                                element.getPosition())));
                }
                lastSequence.addAll(returnedList);
                if (log.isTraceEnabled()) {
                    trace.append(" L");
View Full Code Here

TOP

Related Classes of org.apache.fop.layoutmgr.NonLeafPosition

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.