org.apache.fop.layout
Class BodyAreaContainer

org.apache.fop.layout.Box
  |
  +--org.apache.fop.layout.Area
        |
        +--org.apache.fop.layout.BodyAreaContainer

public class BodyAreaContainer
extends Area


Fields inherited from class org.apache.fop.layout.Area
borderColorBottom, borderColorLeft, borderColorRight, borderColorTop, borderStyleBottom, borderStyleLeft, borderStyleRight, borderStyleTop, borderWidthBottom, borderWidthLeft, borderWidthRight, borderWidthTop

Constructor Summary
BodyAreaContainer(FontState fontState, int xPosition, int yPosition, int allocationWidth, int maxHeight, int position, int columnCount, int columnGap)
           

Method Summary
 AreaContainergetBeforeFloatReferenceArea()
           
 AreaContainergetFootnoteReferenceArea()
           
 IDReferencesgetIDReferences()
           
 AreaContainergetMainReferenceArea()
           
 AreaContainergetNextArea(FObj fo)
           
 intgetPosition()
           
 intgetRemainingHeight()
          Determine remaining height for new span area.
 intgetXPosition()
           
 intgetYPosition()
           
 booleanisBalancingRequired(FObj fo)
          This almost does what getNewArea() does, without actually returning an area.
 booleanisLastColumn()
          Used in Flow when layout returns incomplete.
 booleanisNewSpanArea()
          This variable is unset by getNextArea(), is set by addSpanArea(), and may be set by resetSpanArea().
 voidrender(Renderer renderer)
           
 voidresetSpanArea()
          This is where the balancing algorithm lives, or gets called.
 voidsetIDReferences(IDReferences idReferences)
           
 voidsetXPosition(int value)
           
 voidsetYPosition(int value)
           

Methods inherited from class org.apache.fop.layout.Area
addChild, addChildAtStart, addDisplaySpace, end, getAbsoluteHeight, getAllocationWidth, getBackgroundColor, getChildren, getContentHeight, getContentWidth, getFontInfo, getFontState, getHeight, getMaxHeight, getPaddingBottom, getPaddingLeft, getPaddingRight, getPaddingTop, getPage, getParent, getTableCellXOffset, increaseAbsoluteHeight, increaseHeight, remove, removeChild, removeChild, setAbsoluteHeight, setBackgroundColor, setBorderColor, setBorderStyle, setBorderWidth, setHeight, setMaxHeight, setPadding, setPage, setTableCellXOffset, spaceLeft, start

Constructor Detail

BodyAreaContainer

public BodyAreaContainer(FontState fontState, int xPosition, int yPosition, int allocationWidth, int maxHeight, int position, int columnCount, int columnGap)
Method Detail

getBeforeFloatReferenceArea

public AreaContainer getBeforeFloatReferenceArea()

getFootnoteReferenceArea

public AreaContainer getFootnoteReferenceArea()

getIDReferences

public IDReferences getIDReferences()

getMainReferenceArea

public AreaContainer getMainReferenceArea()

getNextArea

public AreaContainer getNextArea(FObj fo)
throws org.apache.fop.apps.FOPException

getPosition

public int getPosition()

getRemainingHeight

public int getRemainingHeight()
Determine remaining height for new span area. Needs to be modified for footnote and before-float reference areas when those are supported.
returns int The remaining available height in millipoints.

getXPosition

public int getXPosition()

getYPosition

public int getYPosition()

isBalancingRequired

public boolean isBalancingRequired(FObj fo)
This almost does what getNewArea() does, without actually returning an area. These 2 methods can be reworked.
Parameters:
fo - The next formatting object
returns boolean True if we need to balance.

isLastColumn

public boolean isLastColumn()
Used in Flow when layout returns incomplete.
returns boolean Is this the last column in this span?

isNewSpanArea

public boolean isNewSpanArea()
This variable is unset by getNextArea(), is set by addSpanArea(), and may be set by resetSpanArea().
returns boolean Is the span area new or not?

render

public void render(Renderer renderer)

resetSpanArea

public void resetSpanArea()
This is where the balancing algorithm lives, or gets called. Right now it's primitive: get the total content height in all columns, divide by the column count, and add a heuristic safety factor. Then the previous (unbalanced) span area is removed, and a new one added with the computed max height.

setIDReferences

public void setIDReferences(IDReferences idReferences)

setXPosition

public void setXPosition(int value)

setYPosition

public void setYPosition(int value)

Association Links

to Class org.apache.fop.layout.AreaContainer

to Class org.apache.fop.layout.AreaContainer

to Class org.apache.fop.layout.AreaContainer

to Class org.apache.fop.fo.FObj