com.lowagie.text

## Class Row

- java.lang.Object
- - com.lowagie.text.Row

All Implemented Interfaces:
  Element

    public class Row
    extends java.lang.Object
    implements Element

A `Row` is part of a `Table` and contains some `Cells`.

All `Row`s are constructed by a `Table`-object. You don't have to construct any `Row` yourself. In fact you can't construct a `Row` outside the package.

Since a `Cell` can span several rows and/or columns a row can contain reserved space without any content.

See Also:
  `Element`, `Cell`, `Table`

### Field Summary

Fields
`static int` `CELL` id of the Cell element in a Row
`protected java.lang.Object[]` `cells` This is the array of Objects (`Cell` or `Table`).
`protected int` `columns` This is the number of columns in the `Row`.
`protected int` `currentColumn` This is a valid position the `Row`.
`protected int` `horizontalAlignment` This is the vertical alignment.
`static int` `NULL` id of a null element in a Row
`protected boolean[]` `reserved` This is the array that keeps track of reserved cells.
`static int` `TABLE` id of the Table element in a Row

### Fields inherited from interface com.lowagie.text.Element

`ALIGN_BASELINE, ALIGN_BOTTOM, ALIGN_CENTER, ALIGN_JUSTIFIED, ALIGN_JUSTIFIED_ALL, ALIGN_LEFT, ALIGN_MIDDLE, ALIGN_RIGHT, ALIGN_TOP, ALIGN_UNDEFINED, ANCHOR, ANNOTATION, AUTHOR, CCITT_BLACKIS1, CCITT_ENCODEDBYTEALIGN, CCITT_ENDOFBLOCK, CCITT_ENDOFLINE, CCITTG3_1D, CCITTG3_2D, CCITTG4, CHAPTER, CHUNK, CREATIONDATE, CREATOR, HEADER, IMGRAW, IMGTEMPLATE, JBIG2, JPEG, JPEG2000, KEYWORDS, LIST, LISTITEM, MARKED, MULTI_COLUMN_TEXT, PARAGRAPH, PHRASE, PRODUCER, PTABLE, RECTANGLE, ROW, SECTION, SUBJECT, TITLE, YMARK`

### Constructor Summary

Constructors
`protected` `Row(int columns)` Constructs a `Row` with a certain number of columns.

### Method Summary

Methods
`(package private) int` `addElement(java.lang.Object element)` Adds a `Cell` to the `Row`.
`(package private) int` `addElement(java.lang.Object element, int column)` Adds an element to the `Row` at the position given.
`(package private) void` `deleteColumn(int column)` Returns a `Row` that is a copy of this `Row` in which a certain column has been deleted.
`java.lang.Object` `getCell(int column)` Gets a `Cell` or `Table` from a certain column.
`java.util.ArrayList` `getChunks()` Gets all the chunks in this element.
`int` `getColumns()` Gets the number of columns.
`(package private) int` `getElementID(int column)` Returns the type-id of the element in a Row.
`int` `getHorizontalAlignment()` Gets the horizontal alignment.
`(package private) int` `getObjectID(java.lang.Object element)` Returns the type-id of an Object.
`boolean` `isContent()` Checks if this element is a content object.
`boolean` `isEmpty()` Checks if the row is empty.
`boolean` `isNestable()` Checks if this element is nestable.
`(package private) boolean` `isReserved(int column)` Returns true/false when this position in the `Row` has been reserved, either filled or through a colspan of an Element.
`boolean` `process(ElementListener listener)` Processes the element by adding it (or the different parts) to a `ElementListener`.
`(package private) boolean` `reserve(int column)` Reserves a `Cell` in the `Row`.
`(package private) boolean` `reserve(int column, int size)` Reserves a `Cell` in the `Row`.
`(package private) void` `setElement(java.lang.Object aElement, int column)` Puts `Cell` to the `Row` at the position given, doesn't reserve colspan.
`void` `setHorizontalAlignment(int value)` Sets the horizontal alignment.
`int` `type()` Gets the type of the text element.

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

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

### Methods inherited from interface com.lowagie.text.Element

`toString`

### Field Detail

#### NULL

    public static final int NULL

id of a null element in a Row

See Also:
  Constant Field Values

#### CELL

    public static final int CELL

id of the Cell element in a Row

See Also:
  Constant Field Values

#### TABLE

    public static final int TABLE

id of the Table element in a Row

See Also:
  Constant Field Values

#### columns

    protected int columns

This is the number of columns in the `Row`.

#### currentColumn

    protected int currentColumn

This is a valid position the `Row`.

#### reserved

    protected boolean[] reserved

This is the array that keeps track of reserved cells.

#### cells

    protected java.lang.Object[] cells

This is the array of Objects (`Cell` or `Table`).

#### horizontalAlignment

    protected int horizontalAlignment

This is the vertical alignment.

### Constructor Detail

#### Row

    protected Row(int columns)

Constructs a `Row` with a certain number of columns.

Parameters:
  `columns` - a number of columns

### Method Detail

#### process

    public boolean process(ElementListener listener)

Processes the element by adding it (or the different parts) to a `ElementListener`.

Specified by:
  `process` in interface `Element`
Parameters:
  `listener` - an `ElementListener`
Returns:
  `true` if the element was processed successfully

#### type

    public int type()

Gets the type of the text element.

Specified by:
  `type` in interface `Element`
Returns:
  a type

#### getChunks

    public java.util.ArrayList getChunks()

Gets all the chunks in this element.

Specified by:
  `getChunks` in interface `Element`
Returns:
  an `ArrayList`

#### isContent

    public boolean isContent()

Description copied from interface: `Element`
Checks if this element is a content object. If not, it's a metadata object.

Specified by:
  `isContent` in interface `Element`
Returns:
  true if this is a 'content' element; false if this is a 'metadata' element
Since:
  iText 2.0.8
See Also:
  `Element.isContent()`

#### isNestable

    public boolean isNestable()

Description copied from interface: `Element`
Checks if this element is nestable.

Specified by:
  `isNestable` in interface `Element`
Returns:
  true if this element can be nested inside other elements.
Since:
  iText 2.0.8
See Also:
  `Element.isNestable()`

#### deleteColumn

    void deleteColumn(int column)

Returns a `Row` that is a copy of this `Row` in which a certain column has been deleted.

Parameters:
  `column` - the number of the column to delete

#### addElement

    int addElement(java.lang.Object element)

Adds a `Cell` to the `Row`.

Parameters:
  `element` - the element to add (currently only Cells and Tables supported)
Returns:
  the column position the `Cell` was added, or `-1` if the `element` couldn't be added.

#### addElement

    int addElement(java.lang.Object element,
                 int column)

Adds an element to the `Row` at the position given.

Parameters:
  `element` - the element to add. (currently only Cells and Tables supported
  `column` - the position where to add the cell.
Returns:
  the column position the `Cell` was added, or `-1` if the `Cell` couldn't be added.

#### setElement

    void setElement(java.lang.Object aElement,
                  int column)

Puts `Cell` to the `Row` at the position given, doesn't reserve colspan.

Parameters:
  `aElement` - the cell to add.
  `column` - the position where to add the cell.

#### reserve

    boolean reserve(int column)

Reserves a `Cell` in the `Row`.

Parameters:
  `column` - the column that has to be reserved.
Returns:
  `true` if the column was reserved, `false` if not.

#### reserve

    boolean reserve(int column,
                  int size)

Reserves a `Cell` in the `Row`.

Parameters:
  `column` - the column that has to be reserved.
  `size` - the number of columns
Returns:
  `true` if the column was reserved, `false` if not.

#### isReserved

    boolean isReserved(int column)

Returns true/false when this position in the `Row` has been reserved, either filled or through a colspan of an Element.

Parameters:
  `column` - the column.
Returns:
  `true` if the column was reserved, `false` if not.

#### getElementID

    int getElementID(int column)

Returns the type-id of the element in a Row.

Parameters:
  `column` - the column of which you'd like to know the type
Returns:
  the type-id of the element in the row

#### getObjectID

    int getObjectID(java.lang.Object element)

Returns the type-id of an Object.

Parameters:
  `element` - the object of which you'd like to know the type-id, -1 if invalid
Returns:
  the type-id of an object

#### getCell

    public java.lang.Object getCell(int column)

Gets a `Cell` or `Table` from a certain column.

Parameters:
  `column` - the column the `Cell/Table` is in.
Returns:
  the `Cell`,`Table` or Object if the column was reserved or null if empty.

#### isEmpty

    public boolean isEmpty()

Checks if the row is empty.

Returns:
  `true` if none of the columns is reserved.

#### getColumns

    public int getColumns()

Gets the number of columns.

Returns:
  a value

#### setHorizontalAlignment

    public void setHorizontalAlignment(int value)

Sets the horizontal alignment.

Parameters:
  `value` - the new value

#### getHorizontalAlignment

    public int getHorizontalAlignment()

Gets the horizontal alignment.

Returns:
  a value