EffRow (Apache FOP Core 2.11 API)
Date: 2025-04-24

org.apache.fop.fo.flow.table

## Class EffRow

- java.lang.Object
- - org.apache.fop.fo.flow.table.EffRow

-     public class EffRow
      extends 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

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `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

    Constructors
    Constructor and Description
    `EffRow(int index, int bodyType, List gridUnits)` Creates a new effective row instance.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `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.
    `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()`
    `Keep` | `getKeepTogether()` Returns the keep-together strength for this element.
    `Keep` | `getKeepWithNext()` Returns the strength of the keep constraint 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.
    `Keep` | `getKeepWithPrevious()` Returns the strength of the keep constraint 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.
    `TableRow` | `getTableRow()`
    `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).
    `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,
                        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 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

    - #### getKeepWithPrevious

          public Keep getKeepWithPrevious()

      Returns the strength of the keep constraint 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:
        the strength of the keep-with-previous constraint

    - #### getKeepWithNext

          public Keep getKeepWithNext()

      Returns the strength of the keep constraint 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:
        the strength of the keep-with-next constraint

    - #### getKeepTogether

          public Keep getKeepTogether()

      Returns the keep-together strength for this element. Note: The keep strength returned does not take the parent table's keeps into account!
      Returns:
        the keep-together strength

    - #### 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 String toString()

      Overrides:
        `toString` in class `Object`

Copyright © 2025 Apache Software Foundation. All rights reserved.