org.apache.fop.fo.flow.table

## Class GridUnit

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

Direct Known Subclasses:
  EmptyGridUnit, PrimaryGridUnit

    public class GridUnit
    extends Object

This class represents one grid unit inside a table.

### Field Summary

Fields
`protected TableCell` `cell` Table cell which occupies this grid unit
`protected CollapsingBorderModel` `collapsingBorderModel` The border model helper associated with the table
`static int` `FIRST_IN_PART` Indicates that the grid unit is in the first row of the table part (header, footer, body).
`static int` `KEEP_WITH_NEXT_PENDING` Indicates that the primary grid unit has a pending keep-with-next.
`static int` `KEEP_WITH_PREVIOUS_PENDING` Indicates that the primary grid unit has a pending keep-with-previous.
`static int` `LAST_IN_PART` Indicates that the grid unit is in the last row of the table part (header, footer, body).

### Constructor Summary

Constructors
`protected` `GridUnit(TableCell cell, int colSpanIndex, int rowSpanIndex)` Creates a new grid unit.
`protected` `GridUnit(Table table, int colSpanIndex, int rowSpanIndex)` Creates a new grid unit.

### Method Summary

All Methods Instance Methods Concrete Methods
`CommonBorderPaddingBackground.BorderInfo` `getBorderAfter(int which)` Returns the resolved border-after of this grid unit, in the collapsing-border model.
`CommonBorderPaddingBackground.BorderInfo` `getBorderBefore(int which)` Returns the resolved border-before of this grid unit, in the collapsing-border model.
`CommonBorderPaddingBackground.BorderInfo` `getBorderEnd()` Returns the resolved border-end of this grid unit, in the collapsing-border model.
`CommonBorderPaddingBackground.BorderInfo` `getBorderStart()` Returns the resolved border-start of this grid unit, in the collapsing-border model.
`TableCell` `getCell()` Returns the table cell associated with this grid unit.
`int` `getColSpanIndex()`
`boolean` `getFlag(int which)` Returns a flag for this GridUnit.
`PrimaryGridUnit` `getPrimary()` Returns the before-start grid unit of the cell containing this grid unit.
`TableRow` `getRow()` Returns the fo:table-row element (if any) this grid unit belongs to.
`int` `getRowSpanIndex()`
`boolean` `isEmpty()` Does this grid unit belong to an empty cell?
`boolean` `isLastGridUnitColSpan()`
`boolean` `isLastGridUnitRowSpan()`
`boolean` `isPrimary()` Is this grid unit the before-start grid unit of the cell?
`protected void` `setBordersFromCell()` Prepares the borders of this grid unit for upcoming resolution, in the collapsing model.
`void` `setFlag(int which)` Sets the given flag on this grid unit.
`void` `setFlag(int which, boolean value)` Sets a flag on a GridUnit.
`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 grid unit is in the first row of the table part (header, footer, body).

See Also:
  Constant Field Values

#### LAST_IN_PART

    public static final int LAST_IN_PART

Indicates that the grid unit is in the last row of the table part (header, footer, body).

See Also:
  Constant Field Values

#### KEEP_WITH_NEXT_PENDING

    public static final int KEEP_WITH_NEXT_PENDING

Indicates that the primary grid unit has a pending keep-with-next.

See Also:
  Constant Field Values

#### KEEP_WITH_PREVIOUS_PENDING

    public static final int KEEP_WITH_PREVIOUS_PENDING

Indicates that the primary grid unit has a pending keep-with-previous.

See Also:
  Constant Field Values

#### cell

    protected TableCell cell

Table cell which occupies this grid unit

#### collapsingBorderModel

    protected CollapsingBorderModel collapsingBorderModel

The border model helper associated with the table

### Constructor Detail

#### GridUnit

    protected GridUnit(Table table,
                       int colSpanIndex,
                       int rowSpanIndex)

Creates a new grid unit.

Parameters:
  `table` - the containing table
  `colSpanIndex` - index of this grid unit in the span, in column direction
  `rowSpanIndex` - index of this grid unit in the span, in row direction

#### GridUnit

    protected GridUnit(TableCell cell,
                       int colSpanIndex,
                       int rowSpanIndex)

Creates a new grid unit.

Parameters:
  `cell` - table cell which occupies this grid unit
  `colSpanIndex` - index of this grid unit in the span, in column direction
  `rowSpanIndex` - index of this grid unit in the span, in row direction

### Method Detail

#### setBordersFromCell

    protected void setBordersFromCell()

Prepares the borders of this grid unit for upcoming resolution, in the collapsing model.

#### getCell

    public TableCell getCell()

Returns the table cell associated with this grid unit.

Returns:
  the table cell

#### getRow

    public TableRow getRow()

Returns the fo:table-row element (if any) this grid unit belongs to.

Returns:
  the row containing this grid unit, or null if there is no fo:table-row element in the corresponding table-part

#### getPrimary

    public PrimaryGridUnit getPrimary()

Returns the before-start grid unit of the cell containing this grid unit.

Returns:
  the before-start grid unit of the cell containing this grid unit.

#### isPrimary

    public boolean isPrimary()

Is this grid unit the before-start grid unit of the cell?

Returns:
  true if this grid unit is the before-start grid unit of the cell

#### isEmpty

    public boolean isEmpty()

Does this grid unit belong to an empty cell?

Returns:
  true if this grid unit belongs to an empty cell

#### isLastGridUnitColSpan

    public boolean isLastGridUnitColSpan()

Returns:
  true if the grid unit is the last in column spanning direction

#### isLastGridUnitRowSpan

    public boolean isLastGridUnitRowSpan()

Returns:
  true if the grid unit is the last in row spanning direction

#### getRowSpanIndex

    public int getRowSpanIndex()

Returns:
  the index of the grid unit inside a cell in row direction

#### getColSpanIndex

    public int getColSpanIndex()

Returns:
  the index of the grid unit inside a cell in column direction

#### getBorderBefore

    public CommonBorderPaddingBackground.BorderInfo getBorderBefore(int which)

Returns the resolved border-before of this grid unit, in the collapsing-border model.

Parameters:
  `which` - one of `ConditionalBorder.NORMAL`, `ConditionalBorder.LEADING_TRAILING` or `ConditionalBorder.REST`
Returns:
  the corresponding border

#### getBorderAfter

    public CommonBorderPaddingBackground.BorderInfo getBorderAfter(int which)

Returns the resolved border-after of this grid unit, in the collapsing-border model.

Parameters:
  `which` - one of `ConditionalBorder.NORMAL`, `ConditionalBorder.LEADING_TRAILING` or `ConditionalBorder.REST`
Returns:
  the corresponding border

#### getBorderStart

    public CommonBorderPaddingBackground.BorderInfo getBorderStart()

Returns the resolved border-start of this grid unit, in the collapsing-border model.

Returns:
  the corresponding border

#### getBorderEnd

    public CommonBorderPaddingBackground.BorderInfo getBorderEnd()

Returns the resolved border-end of this grid unit, in the collapsing-border model.

Returns:
  the corresponding border

#### getFlag

    public boolean getFlag(int which)

Returns a flag for this GridUnit.

Parameters:
  `which` - the requested flag
Returns:
  the value of the flag

#### setFlag

    public void setFlag(int which,
                        boolean value)

Sets a flag on a GridUnit.

Parameters:
  `which` - the flag to set
  `value` - the new value for the flag

#### setFlag

    public void setFlag(int which)

Sets the given flag on this grid unit.

Parameters:
  `which` - the flag to set

#### toString

    public String toString()

Overrides:
  `toString` in class `Object`