Package org.apache.fop.layoutmgr
Class LayoutContext
java.lang.Object
org.apache.fop.layoutmgr.LayoutContext
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
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final intGenerated break possibility is first in a new areastatic final intstatic final intIf 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
Modifier and TypeMethodDescriptionvoidAdds a border or padding element to the pending list which will be used to generate the right element list for break possibilities.voidAdds a border or padding element to the pending list which will be used to generate the right element list for break possibilities.voidClears both keep-with-previous and keep-with-next strengths.voidClears any pending keep-with-next strength.voidClears any pending keep-with-previous strength.voidClears all pending marks on the LayoutContext.static LayoutContextcopyOf(LayoutContext copy) voidcopyPendingMarksFrom(LayoutContext source) intintReturns the value of the break after the element whoseLayoutManager.getNextKnuthElements(LayoutContext, int)method has just been called.intReturns the value of the break before the element whoseLayoutManager.getNextKnuthElements(LayoutContext, int)method has just been called.intintReturns whether the column balancer should be disabled before a spanning blockdoubleReturns the strength of a keep-with-next currently pending.Returns the strength of a keep-with-previous currently pending.intGet the width to be reserved for border and padding at the end of the line.intGet the width to be reserved for border and padding at the start of the line.intintReturns the inline-progression-dimension of the nearest ancestor reference area.doubleintGet the current amount of space after / endintGet the current amount of space before / startReturns the stack limit in block-progression-dimension.Get the writing mode of the relevant reference area.booleanbooleanIndicates whether a keep-with-next constraint is pending.booleanIndicates whether a keep-with-previous constraint is pending.booleanbooleanisStart()static LayoutContextstatic LayoutContextoffspringOf(LayoutContext parent) Returns a descendant of the given layout context.voidReset alignment context.booleanvoidsetAlignmentContext(AlignmentContext alignmentContext) voidsetBPAlignment(int alignment) Sets the currently applicable alignment in BP direction.voidsetBreakAfter(int breakAfter) Sets the value of the break after the current element.voidsetBreakBefore(int breakBefore) Sets the value of the break before the current element.voidsetDisableColumnBalancing(int disableColumnBalancing) Sets whether the column balancer should be disabled before a spanning blockvoidsetFlags(int flags) voidsetFlags(int flags, boolean bSet) voidsetHyphContext(HyphContext hyph) voidsetIPDAdjust(double ipdA) voidsetLeadingSpace(SpaceSpecifier space) voidsetLineEndBorderAndPaddingWidth(int lineEndBorderAndPaddingWidth) Set the width to be reserved for border and padding at the end of the line.voidsetLineStartBorderAndPaddingWidth(int lineStartBorderAndPaddingWidth) Set the width to be reserved for border and padding at the start of the line.voidsetRefIPD(int ipd) Sets the inline-progression-dimension of the nearest ancestor reference area.voidsetSpaceAdjust(double adjust) voidsetSpaceAfter(int spaceAfter) Set the amount of space after / endvoidsetSpaceBefore(int spaceBefore) Set the amount of space before / startvoidsetStackLimitBP(MinOptMax limit) Sets the stack limit in block-progression-dimension.voidsetTrailingSpace(SpaceSpecifier space) voidsetTreatAsArtifact(boolean treatAsArtifact) voidsetWritingMode(WritingMode writingMode) Set the writing mode.voidsignalSpanChange(int span) Used to signal the PSLM that the element list ends early because of a span change in multi-column layout.booleanbooleantoString()booleanvoidunsetFlags(int flags) voidUpdates the currently pending keep-with-next strength.voidUpdates the currently pending keep-with-previous strength.
-
Field Details
-
NEW_AREA
public static final int NEW_AREAGenerated break possibility is first in a new area- See Also:
-
SUPPRESS_BREAK_BEFORE
public static final int SUPPRESS_BREAK_BEFOREIf 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:
-
FIRST_AREA
public static final int FIRST_AREA- See Also:
-
LAST_AREA
public static final int LAST_AREA- See Also:
-
RESOLVE_LEADING_SPACE
public static final int RESOLVE_LEADING_SPACE- See Also:
-
-
Method Details
-
newInstance
-
copyOf
-
offspringOf
Returns a descendant of the given layout context. The new context is the same as what would have been created bynewInstance(), except for inheritable properties that are passed on by the parent. At the moment, the only inheritable property is the value returned bytreatAsArtifact(). -
copyPendingMarksFrom
- 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 clearbSet- 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
Returns the strength of a keep-with-next currently pending.- Returns:
- the keep-with-next strength
-
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
Updates the currently pending keep-with-next strength.- Parameters:
keep- the new strength to consider
-
updateKeepWithPreviousPending
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
- Parameters:
space- leading space
-
getLeadingSpace
- Returns:
- leading space
-
resolveLeadingSpace
public boolean resolveLeadingSpace()- Returns:
- true if resolve leading space is set
-
setTrailingSpace
- Parameters:
space- trailing space
-
getTrailingSpace
- Returns:
- trailing space
-
addPendingAfterMark
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
- Returns:
- the pending border and padding elements at the after edge
- See Also:
-
clearPendingMarks
public void clearPendingMarks()Clears all pending marks on the LayoutContext. -
addPendingBeforeMark
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
- Returns:
- the pending border and padding elements at the before edge
- See Also:
-
setStackLimitBP
Sets the stack limit in block-progression-dimension.- Parameters:
limit- the stack limit
-
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
- Parameters:
hyph- a hyphenation context
-
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
- Parameters:
alignmentContext- alignment context
-
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_NONEConstants.EN_ALL
-
getCurrentSpan
public int getCurrentSpan()- Returns:
- one of:
Constants.NOT_SET,Constants.EN_NONEConstants.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
Get the writing mode of the relevant reference area.- Returns:
- the applicable writing mode
-
setWritingMode
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 whoseLayoutManager.getNextKnuthElements(LayoutContext, int)method has just been called.- Returns:
- one of
Constants.EN_AUTO,Constants.EN_COLUMN,Constants.EN_PAGE,Constants.EN_EVEN_PAGE, orConstants.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:
-
getBreakAfter
public int getBreakAfter()Returns the value of the break after the element whoseLayoutManager.getNextKnuthElements(LayoutContext, int)method has just been called.- Returns:
- one of
Constants.EN_AUTO,Constants.EN_COLUMN,Constants.EN_PAGE,Constants.EN_EVEN_PAGE, orConstants.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:
-
toString
-
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:
-
treatAsArtifact
public boolean treatAsArtifact() -
setTreatAsArtifact
public void setTreatAsArtifact(boolean treatAsArtifact)
-