org.apache.fop.fo.flow.table

Class PrimaryGridUnit


public class PrimaryGridUnit
extends GridUnit

This class represents a primary grid unit of a spanned cell. This is the "before-start" (top-left, usually) grid unit of the span.

Field Summary

Fields inherited from class org.apache.fop.fo.flow.table.GridUnit

FIRST_IN_PART, KEEP_WITH_NEXT_PENDING, KEEP_WITH_PREVIOUS_PENDING, LAST_IN_PART, cell, collapsingBorderModel

Method Summary

void
addRow(GridUnit[] row)
void
createCellLM()
Creates a cellLM for the corresponding table-cell.
int
getAfterBorderWidth(int which)
Returns the width of the before-after for the last row-span of this cell.
int
getAfterBorderWidth(int rowIndex, int which)
Returns the width of the before-after for the given row-span of this cell.
int
getBeforeAfterBorderWidth()
Returns the widths of the border-before and -after for this cell.
int
getBeforeBorderWidth(int rowIndex, int which)
Returns the width of the before-border for the given row-span of this cell.
int
getBreakAfter()
Returns the class of the before after for the last child element of this cell.
int
getBreakBefore()
Returns the class of the before break for the first child element of this cell.
TableCellLayoutManager
getCellLM()
int
getColIndex()
Returns the index of the column this grid unit belongs to.
int
getContentLength()
LinkedList
getElements()
PrimaryGridUnit
getPrimary()
int
getRowIndex()
Returns the index of the row this grid unit belongs to.
List
getRows()
Returns the grid units belonging to the same span as this one.
int[]
getStartEndBorderWidths()
Returns the widths of the start- and end-borders of the span this grid unit belongs to.
TableBody
getTableBody()
Returns the fo:table-header/footer/body element containing this cell.
boolean
hasSpanning()
boolean
isPrimary()
boolean
mustKeepWithNext()
Returns true if the last child block (or its descendants) of this cell has keep-with-next.
boolean
mustKeepWithPrevious()
Returns true if the first child block (or its descendants) of this cell has keep-with-previous.
void
setBreakAfter(int breakAfter)
Don't use, reserved for TableCellLM.
void
setBreakBefore(int breakBefore)
Don't use, reserved for TableCellLM.
void
setElements(LinkedList elements)
Sets the Knuth elements for the table cell containing this grid unit.
void
setKeepWithNext()
Don't use, reserved for TableCellLM.
void
setKeepWithPrevious()
Don't use, reserved for TableCellLM.
String
toString()

Methods inherited from class org.apache.fop.fo.flow.table.GridUnit

getBorderAfter, getBorderBefore, getBorderEnd, getBorderStart, getCell, getColSpanIndex, getFlag, getPrimary, getRow, getRowSpanIndex, isEmpty, isLastGridUnitColSpan, isLastGridUnitRowSpan, isPrimary, setBordersFromCell, setFlag, setFlag, toString

Method Details

addRow

public void addRow(GridUnit[] row)

createCellLM

public void createCellLM()
Creates a cellLM for the corresponding table-cell. A new one must be created for each new static-content (TODO).

getAfterBorderWidth

public int getAfterBorderWidth(int which)
Returns:
the after border width

getAfterBorderWidth

public int getAfterBorderWidth(int rowIndex,
                               int which)
Returns the width of the before-after for the given row-span of this cell. In the separate border model half of the border-separation is included. In the collapsing model only half of the border is counted, since the other half belongs to the following cell; also, the returned value is the maximum of the segments of each applicable grid unit.
Returns:
the after border width

getBeforeAfterBorderWidth

public int getBeforeAfterBorderWidth()
Returns the widths of the border-before and -after for this cell. In the separate border model the border-separation is included. In the collapsing model only half of them is counted, since the other halves belong to the neighbouring cells; also, the returned value is the maximum of the segments of each applicable grid unit.
Returns:
the sum of the before and after border widths

getBeforeBorderWidth

public int getBeforeBorderWidth(int rowIndex,
                                int which)
Returns the width of the before-border for the given row-span of this cell. In the separate border model half of the border-separation is included. In the collapsing model only half of the border is counted, since the other half belongs to the preceding cell; also, the returned value is the maximum of the segments of each applicable grid unit.
Returns:
the before border width

getBreakAfter

public int getBreakAfter()
Returns the class of the before after for the last child element of this cell.

getBreakBefore

public int getBreakBefore()
Returns the class of the before break for the first child element of this cell.

getCellLM

public TableCellLayoutManager getCellLM()

getColIndex

public int getColIndex()
Returns the index of the column this grid unit belongs to.
Returns:
the column index, 0-based

getContentLength

public int getContentLength()
Returns:
the length of the cell content.

getElements

public LinkedList getElements()

getPrimary

public PrimaryGridUnit getPrimary()
Overrides:
getPrimary in interface GridUnit

getRowIndex

public int getRowIndex()
Returns the index of the row this grid unit belongs to. This is the index, in the enclosing table part, of the first row spanned by the cell. Note that if the table has several table-body children, then the index grows continuously across them; they are considered to form one single part, the "body of the table".
Returns:
the index of the row this grid unit belongs to, 0-based.

getRows

public List getRows()
Returns the grid units belonging to the same span as this one.
Returns:
a list of GridUnit[], each array corresponds to a row

getStartEndBorderWidths

public int[] getStartEndBorderWidths()
Returns the widths of the start- and end-borders of the span this grid unit belongs to.
Returns:
a two-element array containing the widths of the start-border then the end-border

getTableBody

public TableBody getTableBody()
Returns the fo:table-header/footer/body element containing this cell.
Returns:
the enclosing table part

hasSpanning

public boolean hasSpanning()
Returns:
true if this cell spans over more than one grid unit.

isPrimary

public boolean isPrimary()
Overrides:
isPrimary in interface GridUnit

mustKeepWithNext

public boolean mustKeepWithNext()
Returns true if the last child block (or its descendants) of this cell has keep-with-next.
Returns:
the value of keep-with-next

mustKeepWithPrevious

public boolean mustKeepWithPrevious()
Returns true if the first child block (or its descendants) of this cell has keep-with-previous.
Returns:
the value of keep-with-previous

setBreakAfter

public void setBreakAfter(int breakAfter)
Don't use, reserved for TableCellLM. TODO
Parameters:
breakAfter - the breakAfter to set

setBreakBefore

public void setBreakBefore(int breakBefore)
Don't use, reserved for TableCellLM. TODO
Parameters:
breakBefore - the breakBefore to set

setElements

public void setElements(LinkedList elements)
Sets the Knuth elements for the table cell containing this grid unit.
Parameters:
elements - a list of ListElement (?)

setKeepWithNext

public void setKeepWithNext()
Don't use, reserved for TableCellLM. TODO

setKeepWithPrevious

public void setKeepWithPrevious()
Don't use, reserved for TableCellLM. TODO

toString

public String toString()
Overrides:
toString in interface GridUnit

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