org.apache.fop.layoutmgr

Class KnuthSequence

Known Direct Subclasses:
BlockKnuthSequence, InlineKnuthSequence

public abstract class KnuthSequence
extends ArrayList

Constructor Summary

KnuthSequence()
Creates a new and empty list.
KnuthSequence(List list)
Creates a new list from an existing list.

Method Summary

abstract boolean
appendSequence(KnuthSequence sequence)
Append sequence to this sequence if it can be appended.
abstract boolean
appendSequence(KnuthSequence sequence, boolean keepTogether, BreakElement breakElement)
Append sequence to this sequence if it can be appended.
boolean
appendSequenceOrClose(KnuthSequence sequence)
Append sequence to this sequence if it can be appended.
boolean
appendSequenceOrClose(KnuthSequence sequence, boolean keepTogether, BreakElement breakElement)
Append sequence to this sequence if it can be appended.
abstract boolean
canAppendSequence(KnuthSequence sequence)
Can sequence be appended to this sequence?
abstract KnuthSequence
endSequence()
Finalizes a Knuth sequence.
ListElement
getElement(int index)
ListElement
getLast()
abstract boolean
isInlineSequence()
Is this an inline or a block sequence?
ListElement
removeLast()
Remove the last element of this sequence.
void
startSequence()
Marks the start of the sequence.
void
wrapPositions(LayoutManager lm)
Wrap the Positions of the elements of this sequence in a Position for LayoutManager lm.

Constructor Details

KnuthSequence

public KnuthSequence()
Creates a new and empty list.

KnuthSequence

public KnuthSequence(List list)
Creates a new list from an existing list.
Parameters:
list - The list from which to create the new list.

Method Details

appendSequence

public abstract boolean appendSequence(KnuthSequence sequence)
Append sequence to this sequence if it can be appended.
Parameters:
sequence - The sequence that is to be appended.
Returns:
whether the sequence was succesfully appended to this sequence.

appendSequence

public abstract boolean appendSequence(KnuthSequence sequence,
                                       boolean keepTogether,
                                       BreakElement breakElement)
Append sequence to this sequence if it can be appended.
Parameters:
sequence - The sequence that is to be appended.
keepTogether - Whether the two sequences must be kept together.
breakElement - The BreakElement that may be inserted between the two sequences.
Returns:
whether the sequence was succesfully appended to this sequence.

appendSequenceOrClose

public boolean appendSequenceOrClose(KnuthSequence sequence)
Append sequence to this sequence if it can be appended. If that is not possible, close this sequence.
Parameters:
sequence - The sequence that is to be appended.
Returns:
whether the sequence was succesfully appended to this sequence.

appendSequenceOrClose

public boolean appendSequenceOrClose(KnuthSequence sequence,
                                     boolean keepTogether,
                                     BreakElement breakElement)
Append sequence to this sequence if it can be appended. If that is not possible, close this sequence.
Parameters:
sequence - The sequence that is to be appended.
keepTogether - Whether the two sequences must be kept together.
breakElement - The BreakElement that may be inserted between the two sequences.
Returns:
whether the sequence was succesfully appended to this sequence.

canAppendSequence

public abstract boolean canAppendSequence(KnuthSequence sequence)
Can sequence be appended to this sequence?
Parameters:
sequence - The sequence that may be appended.
Returns:
whether the sequence can be appended to this sequence.

endSequence

public abstract KnuthSequence endSequence()
Finalizes a Knuth sequence.
Returns:
a finalized sequence.

getElement

public ListElement getElement(int index)
Parameters:
index - The index of the element to be returned
Returns:
the element at index index.

getLast

public ListElement getLast()
Returns:
the last element of this sequence.

isInlineSequence

public abstract boolean isInlineSequence()
Is this an inline or a block sequence?
Returns:
true if this is an inline sequence

removeLast

public ListElement removeLast()
Remove the last element of this sequence.
Returns:
the removed element.

startSequence

public void startSequence()
Marks the start of the sequence.

wrapPositions

public void wrapPositions(LayoutManager lm)
Wrap the Positions of the elements of this sequence in a Position for LayoutManager lm.
Parameters:
lm - The LayoutManager for the Positions that will be created.

Copyright 1999-2008 The Apache Software Foundation. All Rights Reserved.