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

org.apache.fop.render.rtf.rtflib.tools

## Class TableContext

- java.lang.Object
- - org.apache.fop.render.rtf.rtflib.tools.TableContext

- All Implemented Interfaces:
    ITableColumnsInfo

      public class TableContext
      extends Object
      implements ITableColumnsInfo

  Used when handling fo:table to hold information to build the table.

  This work was authored by Bertrand Delacretaz (bdelacretaz@codeconsult.ch), Ed Trembicki-Guy (guye@dnb.com), Boris Poudérous (boris.pouderous@eads-telecom.com), and Peter Herweg (pherweg@web.de).

  This class was originally developed for the JFOR project and is now integrated into FOP.

- - ### Field Summary

    - ### Fields inherited from interface org.apache.fop.render.rtf.rtflib.rtfdoc.ITableColumnsInfo

      `INVALID_COLUMN_WIDTH`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `TableContext(BuilderContext ctx)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `decreaseRowSpannings()` Added by Peter Herweg on 2002-06-29 This function is called after each finished table-row.
    `int` | `getColumnIndex()`
    `RtfAttributes` | `getColumnRowSpanningAttrs()`
    `Integer` | `getColumnRowSpanningNumber()`
    `float` | `getColumnWidth()` Get current column width according to column iteration index
    `boolean` | `getFirstSpanningCol()`
    `boolean` | `getNextRowBelongsToHeader()`
    `int` | `getNumberOfColumns()`
    `void` | `selectFirstColumn()` Reset the column iteration index, meant to be called when creating a new row The 'public' modifier has been added by Boris Poudérous for 'number-columns-spanned' processing
    `void` | `selectNextColumn()` Increment the column iteration index The 'public' modifier has been added by Boris Poudérous for 'number-columns-spanned' processing
    `void` | `setColumnIndex(int index)` Set current column index.
    `void` | `setCurrentColumnRowSpanning(Integer iRowSpanning, RtfAttributes attrs)`
    `void` | `setCurrentFirstSpanningCol(boolean bFirstSpanningCol)`
    `void` | `setNextColumnRowSpanning(Integer iRowSpanning, RtfAttributes attrs)`
    `void` | `setNextColumnWidth(Float width)` Adds a column and sets its width.
    `void` | `setNextFirstSpanningCol(boolean bFirstSpanningCol)`
    `void` | `setNextRowBelongsToHeader(boolean value)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### TableContext

          public TableContext(BuilderContext ctx)

      Parameters:
        `ctx` - BuilderContext

  - ### Method Detail

    - #### setNextRowBelongsToHeader

          public void setNextRowBelongsToHeader(boolean value)

      Parameters:
        `value` - Specifies, if next row belongs to header

    - #### getNextRowBelongsToHeader

          public boolean getNextRowBelongsToHeader()

      Returns:
        true, if next row belongs to header

    - #### setNextColumnWidth

          public void setNextColumnWidth(Float width)

      Adds a column and sets its width.
      Parameters:
        `width` - Width of next column

    - #### getColumnRowSpanningAttrs

          public RtfAttributes getColumnRowSpanningAttrs()

      Returns:
        RtfAttributes of current row-spanning cell

    - #### getColumnRowSpanningNumber

          public Integer getColumnRowSpanningNumber()

      Returns:
        Number of currently spanned rows

    - #### getFirstSpanningCol

          public boolean getFirstSpanningCol()

      Specified by:
        `getFirstSpanningCol` in interface `ITableColumnsInfo`
      Returns:
        true, if it's the first of multiple spanning columns

    - #### setCurrentColumnRowSpanning

          public void setCurrentColumnRowSpanning(Integer iRowSpanning,
                                                  RtfAttributes attrs)

      Parameters:
        `iRowSpanning` - number of rows to span
        `attrs` - RtfAttributes of row-spanning cell

    - #### setNextColumnRowSpanning

          public void setNextColumnRowSpanning(Integer iRowSpanning,
                                               RtfAttributes attrs)

      Parameters:
        `iRowSpanning` - number of rows to span in next column
        `attrs` - RtfAttributes of row-spanning cell

    - #### setCurrentFirstSpanningCol

          public void setCurrentFirstSpanningCol(boolean bFirstSpanningCol)

      Parameters:
        `bFirstSpanningCol` - specifies, if it's the first of multiple spanned columns

    - #### setNextFirstSpanningCol

          public void setNextFirstSpanningCol(boolean bFirstSpanningCol)

      Parameters:
        `bFirstSpanningCol` - specifies, if it's the first of multiple spanned columns

    - #### decreaseRowSpannings

          public void decreaseRowSpannings()

      Added by Peter Herweg on 2002-06-29 This function is called after each finished table-row. It decreases all values in colRowSpanningNumber by 1. If a value reaches 0 row-spanning is finished, and the value won't be decreased anymore.

    - #### selectFirstColumn

          public void selectFirstColumn()

      Reset the column iteration index, meant to be called when creating a new row The 'public' modifier has been added by Boris Poudérous for 'number-columns-spanned' processing
      Specified by:
        `selectFirstColumn` in interface `ITableColumnsInfo`

    - #### selectNextColumn

          public void selectNextColumn()

      Increment the column iteration index The 'public' modifier has been added by Boris Poudérous for 'number-columns-spanned' processing
      Specified by:
        `selectNextColumn` in interface `ITableColumnsInfo`

    - #### getColumnWidth

          public float getColumnWidth()

      Get current column width according to column iteration index
      Specified by:
        `getColumnWidth` in interface `ITableColumnsInfo`
      Returns:
        INVALID_COLUMN_WIDTH if we cannot find the value The 'public' modifier has been added by Boris Poudérous for 'number-columns-spanned' processing

    - #### setColumnIndex

          public void setColumnIndex(int index)

      Set current column index.
      Parameters:
        `index` - New column index

    - #### getColumnIndex

          public int getColumnIndex()

      Specified by:
        `getColumnIndex` in interface `ITableColumnsInfo`
      Returns:
        Index of current column

    - #### getNumberOfColumns

          public int getNumberOfColumns()

      Specified by:
        `getNumberOfColumns` in interface `ITableColumnsInfo`
      Returns:
        Number of columns

Copyright © 2025 Apache Software Foundation. All rights reserved.