Class AbstractCellTableBuilder<T>
java.lang.Object
com.google.gwt.user.cellview.client.AbstractCellTableBuilder<T>
- Type Parameters:
T
- the row data type
- All Implemented Interfaces:
CellTableBuilder<T>
- Direct Known Subclasses:
DefaultCellTableBuilder
Builder used to construct a CellTable.
-
Field Summary
-
Constructor Summary
ConstructorDescriptionAbstractCellTableBuilder
(AbstractCellTable<T> cellTable) Construct a new table builder. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
Hook for subclasses to add their own attributes to each row in the table.protected void
addRowAttributes
(TableRowBuilder row, T rowValue) Hook for subclasses to add their own attributes to each row in the table.final void
Build zero or more table rows for the specified row value.protected abstract void
buildRowImpl
(T rowValue, int absRowIndex) Build zero or more table rows for the specified row value.final Cell.Context
createContext
(int column) Create the context for a column based on the current table building state.final TableSectionBuilder
finish()
Finish the building and get theTableSectionBuilder
containing the children.getColumn
(Cell.Context context, T rowValue, Element elem) Return the column containing an element.final Collection
<HasCell<T, ?>> Return all the columns that this table builder has renderred.final int
Get the index of the row value from the associatedTableRowElement
.final int
Get the index of the subrow value from the associatedTableRowElement
.final boolean
Return if an element contains a cell.final <C> void
renderCell
(ElementBuilderBase<?> builder, Cell.Context context, HasCell<T, C> column, T rowValue) Render the cell into anElementBuilderBase
.final void
start
(boolean isRebuildingAllRows) Start building rows.final TableRowBuilder
startRow()
Start a row and return theTableRowBuilder
for this row.final TableRowBuilder
Start a row and return theTableRowBuilder
for this row.
-
Field Details
-
cellTable
-
-
Constructor Details
-
AbstractCellTableBuilder
Construct a new table builder.- Parameters:
cellTable
- the table this builder will build rows for
-
-
Method Details
-
buildRow
Build zero or more table rows for the specified row value.- Specified by:
buildRow
in interfaceCellTableBuilder<T>
- Parameters:
rowValue
- the value for the row to renderabsRowIndex
- the absolute row index
-
createContext
Create the context for a column based on the current table building state.- Parameters:
column
- the column id- Returns:
- the context that contains the column index, row/subrow indexes, and the row value key
-
finish
Finish the building and get theTableSectionBuilder
containing the children.- Specified by:
finish
in interfaceCellTableBuilder<T>
-
getColumn
Return the column containing an element.- Specified by:
getColumn
in interfaceCellTableBuilder<T>
- Parameters:
context
- the context for the elementrowValue
- the value for the row corresponding to the elementelem
- the element that the column contains- Returns:
- the immediate column containing the element
-
getColumns
Return all the columns that this table builder has renderred.- Specified by:
getColumns
in interfaceCellTableBuilder<T>
-
getRowValueIndex
Get the index of the row value from the associatedTableRowElement
.- Specified by:
getRowValueIndex
in interfaceCellTableBuilder<T>
- Parameters:
row
- the row element- Returns:
- the row value index
-
getSubrowValueIndex
Get the index of the subrow value from the associatedTableRowElement
. The sub row value starts at 0 for the first row that represents a row value.- Specified by:
getSubrowValueIndex
in interfaceCellTableBuilder<T>
- Parameters:
row
- the row element- Returns:
- the subrow value index, or 0 if not found
-
isColumn
Return if an element contains a cell. This may be faster to execute thangetColumn(Element)
.- Specified by:
isColumn
in interfaceCellTableBuilder<T>
- Parameters:
elem
- the element of interest
-
start
public final void start(boolean isRebuildingAllRows) Start building rows. Reset the internal table section builder. If the table builder is going to re-build all rows, the internal the maps associating the cells and ids will be cleared.- Specified by:
start
in interfaceCellTableBuilder<T>
- Parameters:
isRebuildingAllRows
- is this start intended for rebuilding all rows
-
startRow
Start a row and return theTableRowBuilder
for this row. -
startRow
Start a row and return theTableRowBuilder
for this row. The row can be initialized according to its corresponding value.- Parameters:
rowValue
- the value for the row corresponding to the element. Can be null.
-
buildRowImpl
Build zero or more table rows for the specified row value.- Parameters:
rowValue
- the value for the row to renderabsRowIndex
- the absolute row index
-