fop 0.95

org.apache.fop.fo.flow.table
Class EffRow

java.lang.Object
  extended by org.apache.fop.fo.flow.table.EffRow

public class EffRow
extends java.lang.Object

This class represents an effective row in a table and holds a list of grid units occupying the row as well as some additional values.


Field Summary
static int FIRST_IN_PART
          Indicates that the row is the first in a table-body
static int LAST_IN_PART
          Indicates that the row is the last in a table-body
 
Constructor Summary
EffRow(int index, int bodyType, java.util.List gridUnits)
          Creates a new effective row instance.
 
Method Summary
 int getBodyType()
           
 int getBreakAfter()
          Returns the break class for this row.
 int getBreakBefore()
          Returns the break class for this row.
 MinOptMax getExplicitHeight()
           
 boolean getFlag(int which)
          Returns a flag for this effective row.
 GridUnit getGridUnit(int column)
          Returns the grid unit at a given position.
 java.util.List getGridUnits()
           
 MinOptMax getHeight()
          Returns the calculated height for this EffRow, including the cells' bpds/paddings/borders, and the table's border-separation.
 int getIndex()
           
 TableRow getTableRow()
           
 boolean mustKeepTogether()
          Returns true if this row is enclosed by an fo:table-row element that has keep-together set.
 boolean mustKeepWithNext()
          Returns true if the enclosing (if any) fo:table-row element of this row, or if any of the cells ending on this row, have keep-with-next set.
 boolean mustKeepWithPrevious()
          Returns true if the enclosing (if any) fo:table-row element of this row, or if any of the cells starting on this row, have keep-with-previous set.
 GridUnit safelyGetGridUnit(int column)
          Returns the grid unit at a given position.
 void setExplicitHeight(MinOptMax mom)
          Sets the height for this row that resulted from the explicit height properties specified by the user.
 void setHeight(MinOptMax mom)
          Sets the calculated height for this EffRow, including everything (cells' bpds, paddings, borders, and border-separation).
 java.lang.String toString()
          
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

FIRST_IN_PART

public static final int FIRST_IN_PART
Indicates that the row is the first in a table-body

See Also:
Constant Field Values

LAST_IN_PART

public static final int LAST_IN_PART
Indicates that the row is the last in a table-body

See Also:
Constant Field Values
Constructor Detail

EffRow

public EffRow(int index,
              int bodyType,
              java.util.List gridUnits)
Creates a new effective row instance.

Parameters:
index - index of the row
bodyType - type of body (one of HEADER, FOOTER, BODY as found on TableRowIterator)
gridUnits - the grid units this row is made of
Method Detail

getIndex

public int getIndex()
Returns:
the index of the EffRow in the sequence of rows

getBodyType

public int getBodyType()
Returns:
an indicator what type of body this EffRow is in (one of HEADER, FOOTER, BODY as found on TableRowIterator)

getTableRow

public TableRow getTableRow()
Returns:
the table-row FO for this EffRow, or null if there is no table-row.

getHeight

public MinOptMax getHeight()
Returns the calculated height for this EffRow, including the cells' bpds/paddings/borders, and the table's border-separation.

Returns:
the row's height

setHeight

public void setHeight(MinOptMax mom)
Sets the calculated height for this EffRow, including everything (cells' bpds, paddings, borders, and border-separation).

Parameters:
mom - the calculated height

getExplicitHeight

public MinOptMax getExplicitHeight()
Returns:
the explicit height of the EffRow (as specified through properties)

setExplicitHeight

public void setExplicitHeight(MinOptMax mom)
Sets the height for this row that resulted from the explicit height properties specified by the user.

Parameters:
mom - the height

getGridUnits

public java.util.List getGridUnits()
Returns:
the list of GridUnits for this EffRow

getGridUnit

public GridUnit getGridUnit(int column)
Returns the grid unit at a given position.

Parameters:
column - index of the grid unit in the row (zero based)
Returns:
the requested grid unit.

safelyGetGridUnit

public GridUnit safelyGetGridUnit(int column)
Returns the grid unit at a given position. In contrast to getGridUnit() this method returns null if there's no grid unit at the given position. The number of grid units for row x can be smaller than the number of grid units for row x-1.

Parameters:
column - index of the grid unit in the row (zero based)
Returns:
the requested grid unit or null if there's no grid unit at this position.

getFlag

public boolean getFlag(int which)
Returns a flag for this effective row. Only a subset of the flags on GridUnit is supported. The flag is determined by inspecting flags on the EffRow's GridUnits.

Parameters:
which - the requested flag (one of FIRST_IN_PART or LAST_IN_PART)
Returns:
true if the flag is set

mustKeepWithPrevious

public boolean mustKeepWithPrevious()
Returns true if the enclosing (if any) fo:table-row element of this row, or if any of the cells starting on this row, have keep-with-previous set.

Returns:
true if this row must be kept with the previous content

mustKeepWithNext

public boolean mustKeepWithNext()
Returns true if the enclosing (if any) fo:table-row element of this row, or if any of the cells ending on this row, have keep-with-next set.

Returns:
true if this row must be kept with the next content

mustKeepTogether

public boolean mustKeepTogether()
Returns true if this row is enclosed by an fo:table-row element that has keep-together set.

Returns:
true if this row must be kept together

getBreakBefore

public int getBreakBefore()
Returns the break class for this row. This is a combination of break-before set on the first children of any cells starting on this row.

Note: this method doesn't take into account break-before set on the enclosing fo:table-row element, if any, as it must be ignored if the row belongs to a group of spanned rows (see XSL-FO 1.1, 7.20.2).

Note: this works only after getNextKuthElements on the corresponding TableCellLM have been called!

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

getBreakAfter

public int getBreakAfter()
Returns the break class for this row. This is a combination of break-after set on the last children of any cells ending on this row.

Note: this method doesn't take into account break-after set on the enclosing fo:table-row element, if any, as it must be ignored if the row belongs to a group of spanned rows (see XSL-FO 1.1, 7.20.1).

Note: this works only after getNextKuthElements on the corresponding TableCellLM have been called!

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

toString

public java.lang.String toString()

Overrides:
toString in class java.lang.Object

fop 0.95

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