fop 2.1

org.apache.fop.layoutmgr
Class LayoutContext

java.lang.Object
  extended by org.apache.fop.layoutmgr.LayoutContext

public final class LayoutContext
extends java.lang.Object

This class is used to pass information to the getNextKnuthElements() method. It is set up by higher level LM and used by lower level LM.


Field Summary
static int FIRST_AREA
           
static int LAST_AREA
           
static int NEW_AREA
          Generated break possibility is first in a new area
static int RESOLVE_LEADING_SPACE
           
static int SUPPRESS_BREAK_BEFORE
          If this flag is set, it indicates that any break-before values other than "auto" should not cause a mandatory break as this break was already handled by a parent layout manager.
 
Method Summary
 void addPendingAfterMark(UnresolvedListElementWithLength element)
          Adds a border or padding element to the pending list which will be used to generate the right element list for break possibilities.
 void addPendingBeforeMark(UnresolvedListElementWithLength element)
          Adds a border or padding element to the pending list which will be used to generate the right element list for break possibilities.
 void clearKeepsPending()
          Clears both keep-with-previous and keep-with-next strengths.
 void clearKeepWithNextPending()
          Clears any pending keep-with-next strength.
 void clearKeepWithPreviousPending()
          Clears any pending keep-with-previous strength.
 void clearPendingMarks()
          Clears all pending marks on the LayoutContext.
static LayoutContext copyOf(LayoutContext copy)
           
 void copyPendingMarksFrom(LayoutContext source)
           
 AlignmentContext getAlignmentContext()
           
 int getBPAlignment()
           
 int getBreakAfter()
          Returns the value of the break after the element whose LayoutManager.getNextKnuthElements(LayoutContext, int) method has just been called.
 int getBreakBefore()
          Returns the value of the break before the element whose LayoutManager.getNextKnuthElements(LayoutContext, int) method has just been called.
 int getCurrentSpan()
           
 int getDisableColumnBalancing()
          Returns whether the column balancer should be disabled before a spanning block
 HyphContext getHyphContext()
           
 double getIPDAdjust()
           
 Keep getKeepWithNextPending()
          Returns the strength of a keep-with-next currently pending.
 Keep getKeepWithPreviousPending()
          Returns the strength of a keep-with-previous currently pending.
 SpaceSpecifier getLeadingSpace()
           
 int getLineEndBorderAndPaddingWidth()
          Get the width to be reserved for border and padding at the end of the line.
 int getLineStartBorderAndPaddingWidth()
          Get the width to be reserved for border and padding at the start of the line.
 int getNextSpan()
           
 java.util.List getPendingAfterMarks()
           
 java.util.List getPendingBeforeMarks()
           
 int getRefIPD()
          Returns the inline-progression-dimension of the nearest ancestor reference area.
 double getSpaceAdjust()
           
 int getSpaceAfter()
          Get the current amount of space after / end
 int getSpaceBefore()
          Get the current amount of space before / start
 MinOptMax getStackLimitBP()
          Returns the stack limit in block-progression-dimension.
 SpaceSpecifier getTrailingSpace()
           
 WritingMode getWritingMode()
          Get the writing mode of the relevant reference area.
 boolean isFirstArea()
           
 boolean isKeepWithNextPending()
          Indicates whether a keep-with-next constraint is pending.
 boolean isKeepWithPreviousPending()
          Indicates whether a keep-with-previous constraint is pending.
 boolean isLastArea()
           
 boolean isStart()
           
static LayoutContext newInstance()
           
static LayoutContext offspringOf(LayoutContext parent)
          Returns a descendant of the given layout context.
 void resetAlignmentContext()
          Reset alignment context.
 boolean resolveLeadingSpace()
           
 void setAlignmentContext(AlignmentContext alignmentContext)
           
 void setBPAlignment(int alignment)
          Sets the currently applicable alignment in BP direction.
 void setBreakAfter(int breakAfter)
          Sets the value of the break after the current element.
 void setBreakBefore(int breakBefore)
          Sets the value of the break before the current element.
 void setDisableColumnBalancing(int disableColumnBalancing)
          Sets whether the column balancer should be disabled before a spanning block
 void setFlags(int flags)
           
 void setFlags(int flags, boolean bSet)
           
 void setHyphContext(HyphContext hyph)
           
 void setIPDAdjust(double ipdA)
           
 void setLeadingSpace(SpaceSpecifier space)
           
 void setLineEndBorderAndPaddingWidth(int lineEndBorderAndPaddingWidth)
          Set the width to be reserved for border and padding at the end of the line.
 void setLineStartBorderAndPaddingWidth(int lineStartBorderAndPaddingWidth)
          Set the width to be reserved for border and padding at the start of the line.
 void setRefIPD(int ipd)
          Sets the inline-progression-dimension of the nearest ancestor reference area.
 void setSpaceAdjust(double adjust)
           
 void setSpaceAfter(int spaceAfter)
          Set the amount of space after / end
 void setSpaceBefore(int spaceBefore)
          Set the amount of space before / start
 void setStackLimitBP(MinOptMax limit)
          Sets the stack limit in block-progression-dimension.
 void setTrailingSpace(SpaceSpecifier space)
           
 void setTreatAsArtifact(boolean treatAsArtifact)
           
 void setWritingMode(WritingMode writingMode)
          Set the writing mode.
 void signalSpanChange(int span)
          Used to signal the PSLM that the element list ends early because of a span change in multi-column layout.
 boolean startsNewArea()
           
 boolean suppressBreakBefore()
           
 java.lang.String toString()
          
 boolean treatAsArtifact()
           
 void unsetFlags(int flags)
           
 void updateKeepWithNextPending(Keep keep)
          Updates the currently pending keep-with-next strength.
 void updateKeepWithPreviousPending(Keep keep)
          Updates the currently pending keep-with-previous strength.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

NEW_AREA

public static final int NEW_AREA
Generated break possibility is first in a new area

See Also:
Constant Field Values

SUPPRESS_BREAK_BEFORE

public static final int SUPPRESS_BREAK_BEFORE
If this flag is set, it indicates that any break-before values other than "auto" should not cause a mandatory break as this break was already handled by a parent layout manager.

See Also:
Constant Field Values

FIRST_AREA

public static final int FIRST_AREA
See Also:
Constant Field Values

LAST_AREA

public static final int LAST_AREA
See Also:
Constant Field Values

RESOLVE_LEADING_SPACE

public static final int RESOLVE_LEADING_SPACE
See Also:
Constant Field Values
Method Detail

newInstance

public static LayoutContext newInstance()

copyOf

public static LayoutContext copyOf(LayoutContext copy)

offspringOf

public static LayoutContext offspringOf(LayoutContext parent)
Returns a descendant of the given layout context. The new context is the same as what would have been created by newInstance(), except for inheritable properties that are passed on by the parent. At the moment, the only inheritable property is the value returned by treatAsArtifact().


copyPendingMarksFrom

public void copyPendingMarksFrom(LayoutContext source)
Parameters:
source - from which pending marks are copied

setFlags

public void setFlags(int flags)
Parameters:
flags - to set

setFlags

public void setFlags(int flags,
                     boolean bSet)
Parameters:
flags - to set or clear
bSet - true to set, false to clear

unsetFlags

public void unsetFlags(int flags)
Parameters:
flags - to clear

isStart

public boolean isStart()
Returns:
true if new area is set

startsNewArea

public boolean startsNewArea()
Returns:
true if new area is set and leading space is non-null

isFirstArea

public boolean isFirstArea()
Returns:
true if first area is set

isLastArea

public boolean isLastArea()
Returns:
true if last area is set

suppressBreakBefore

public boolean suppressBreakBefore()
Returns:
true if suppress break before is set

getKeepWithNextPending

public Keep getKeepWithNextPending()
Returns the strength of a keep-with-next currently pending.

Returns:
the keep-with-next strength

getKeepWithPreviousPending

public Keep getKeepWithPreviousPending()
Returns the strength of a keep-with-previous currently pending.

Returns:
the keep-with-previous strength

clearKeepWithNextPending

public void clearKeepWithNextPending()
Clears any pending keep-with-next strength.


clearKeepWithPreviousPending

public void clearKeepWithPreviousPending()
Clears any pending keep-with-previous strength.


clearKeepsPending

public void clearKeepsPending()
Clears both keep-with-previous and keep-with-next strengths.


updateKeepWithNextPending

public void updateKeepWithNextPending(Keep keep)
Updates the currently pending keep-with-next strength.

Parameters:
keep - the new strength to consider

updateKeepWithPreviousPending

public void updateKeepWithPreviousPending(Keep keep)
Updates the currently pending keep-with-previous strength.

Parameters:
keep - the new strength to consider

isKeepWithNextPending

public boolean isKeepWithNextPending()
Indicates whether a keep-with-next constraint is pending.

Returns:
true if a keep-with-next constraint is pending

isKeepWithPreviousPending

public boolean isKeepWithPreviousPending()
Indicates whether a keep-with-previous constraint is pending.

Returns:
true if a keep-with-previous constraint is pending

setLeadingSpace

public void setLeadingSpace(SpaceSpecifier space)
Parameters:
space - leading space

getLeadingSpace

public SpaceSpecifier getLeadingSpace()
Returns:
leading space

resolveLeadingSpace

public boolean resolveLeadingSpace()
Returns:
true if resolve leading space is set

setTrailingSpace

public void setTrailingSpace(SpaceSpecifier space)
Parameters:
space - trailing space

getTrailingSpace

public SpaceSpecifier getTrailingSpace()
Returns:
trailing space

addPendingAfterMark

public void addPendingAfterMark(UnresolvedListElementWithLength element)
Adds a border or padding element to the pending list which will be used to generate the right element list for break possibilities. Conditionality resolution will be done elsewhere.

Parameters:
element - the border, padding or space element

getPendingAfterMarks

public java.util.List getPendingAfterMarks()
Returns:
the pending border and padding elements at the after edge
See Also:
addPendingAfterMark(UnresolvedListElementWithLength)

clearPendingMarks

public void clearPendingMarks()
Clears all pending marks on the LayoutContext.


addPendingBeforeMark

public void addPendingBeforeMark(UnresolvedListElementWithLength element)
Adds a border or padding element to the pending list which will be used to generate the right element list for break possibilities. Conditionality resolution will be done elsewhere.

Parameters:
element - the border, padding or space element

getPendingBeforeMarks

public java.util.List getPendingBeforeMarks()
Returns:
the pending border and padding elements at the before edge
See Also:
addPendingBeforeMark(UnresolvedListElementWithLength)

setStackLimitBP

public void setStackLimitBP(MinOptMax limit)
Sets the stack limit in block-progression-dimension.

Parameters:
limit - the stack limit

getStackLimitBP

public MinOptMax getStackLimitBP()
Returns the stack limit in block-progression-dimension.

Returns:
the stack limit

setRefIPD

public void setRefIPD(int ipd)
Sets the inline-progression-dimension of the nearest ancestor reference area.

Parameters:
ipd - of nearest ancestor reference area

getRefIPD

public int getRefIPD()
Returns the inline-progression-dimension of the nearest ancestor reference area.

Returns:
the inline-progression-dimension of the nearest ancestor reference area

setHyphContext

public void setHyphContext(HyphContext hyph)
Parameters:
hyph - a hyphenation context

getHyphContext

public HyphContext getHyphContext()
Returns:
hyphenation context

setBPAlignment

public void setBPAlignment(int alignment)
Sets the currently applicable alignment in BP direction.

Parameters:
alignment - one of EN_START, EN_JUSTIFY etc.

getBPAlignment

public int getBPAlignment()
Returns:
the currently applicable alignment in BP direction (EN_START, EN_JUSTIFY...)

setSpaceAdjust

public void setSpaceAdjust(double adjust)
Parameters:
adjust - space adjustment

getSpaceAdjust

public double getSpaceAdjust()
Returns:
space adjustment

setIPDAdjust

public void setIPDAdjust(double ipdA)
Parameters:
ipdA - ipd adjustment

getIPDAdjust

public double getIPDAdjust()
Returns:
ipd adjustment

setAlignmentContext

public void setAlignmentContext(AlignmentContext alignmentContext)
Parameters:
alignmentContext - alignment context

getAlignmentContext

public AlignmentContext getAlignmentContext()
Returns:
alignment context

resetAlignmentContext

public void resetAlignmentContext()
Reset alignment context.


getLineStartBorderAndPaddingWidth

public int getLineStartBorderAndPaddingWidth()
Get the width to be reserved for border and padding at the start of the line.

Returns:
the width to be reserved

setLineStartBorderAndPaddingWidth

public void setLineStartBorderAndPaddingWidth(int lineStartBorderAndPaddingWidth)
Set the width to be reserved for border and padding at the start of the line.

Parameters:
lineStartBorderAndPaddingWidth - the width to be reserved

getLineEndBorderAndPaddingWidth

public int getLineEndBorderAndPaddingWidth()
Get the width to be reserved for border and padding at the end of the line.

Returns:
the width to be reserved

setLineEndBorderAndPaddingWidth

public void setLineEndBorderAndPaddingWidth(int lineEndBorderAndPaddingWidth)
Set the width to be reserved for border and padding at the end of the line.

Parameters:
lineEndBorderAndPaddingWidth - the width to be reserved

getNextSpan

public int getNextSpan()
Returns:
one of: Constants.NOT_SET, Constants.EN_NONE Constants.EN_ALL

getCurrentSpan

public int getCurrentSpan()
Returns:
one of: Constants.NOT_SET, Constants.EN_NONE Constants.EN_ALL

signalSpanChange

public void signalSpanChange(int span)
Used to signal the PSLM that the element list ends early because of a span change in multi-column layout.

Parameters:
span - the new span value (legal values: NOT_SET, EN_NONE, EN_ALL)

getWritingMode

public WritingMode getWritingMode()
Get the writing mode of the relevant reference area.

Returns:
the applicable writing mode

setWritingMode

public void setWritingMode(WritingMode writingMode)
Set the writing mode.

Parameters:
writingMode - the writing mode

getSpaceBefore

public int getSpaceBefore()
Get the current amount of space before / start

Returns:
the space before / start amount

setSpaceBefore

public void setSpaceBefore(int spaceBefore)
Set the amount of space before / start

Parameters:
spaceBefore - the amount of space before / start

getSpaceAfter

public int getSpaceAfter()
Get the current amount of space after / end

Returns:
the space after / end amount

setSpaceAfter

public void setSpaceAfter(int spaceAfter)
Set the amount of space after / end

Parameters:
spaceAfter - the amount of space after / end

getBreakBefore

public int getBreakBefore()
Returns the value of the break before the element whose LayoutManager.getNextKnuthElements(LayoutContext, int) method has just been called.

Returns:
one of Constants.EN_AUTO, Constants.EN_COLUMN, Constants.EN_PAGE, Constants.EN_EVEN_PAGE, or Constants.EN_ODD_PAGE

setBreakBefore

public void setBreakBefore(int breakBefore)
Sets the value of the break before the current element.

Parameters:
breakBefore - the value of the break-before
See Also:
getBreakBefore()

getBreakAfter

public int getBreakAfter()
Returns the value of the break after the element whose LayoutManager.getNextKnuthElements(LayoutContext, int) method has just been called.

Returns:
one of Constants.EN_AUTO, Constants.EN_COLUMN, Constants.EN_PAGE, Constants.EN_EVEN_PAGE, or Constants.EN_ODD_PAGE

setBreakAfter

public void setBreakAfter(int breakAfter)
Sets the value of the break after the current element.

Parameters:
breakAfter - the value of the break-after
See Also:
getBreakAfter()

toString

public java.lang.String toString()

Overrides:
toString in class java.lang.Object

getDisableColumnBalancing

public int getDisableColumnBalancing()
Returns whether the column balancer should be disabled before a spanning block

Returns:
one of Constants.EN_TRUE, Constants.EN_FALSE

setDisableColumnBalancing

public void setDisableColumnBalancing(int disableColumnBalancing)
Sets whether the column balancer should be disabled before a spanning block

Parameters:
disableColumnBalancing - the value of the fox:disable-column-balancing property
See Also:
getDisableColumnBalancing()

treatAsArtifact

public boolean treatAsArtifact()

setTreatAsArtifact

public void setTreatAsArtifact(boolean treatAsArtifact)

fop 2.1

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