T
- the row data typepublic abstract class AbstractCellTableBuilder<T> extends Object implements CellTableBuilder<T>
Modifier and Type | Field and Description |
---|---|
protected AbstractCellTable<T> |
cellTable |
Constructor and Description |
---|
AbstractCellTableBuilder(AbstractCellTable<T> cellTable)
Construct a new table builder.
|
Modifier and Type | Method and Description |
---|---|
protected void |
addRowAttributes(TableRowBuilder row)
Hook for subclasses to add their own attributes to each row in the table.
|
void |
buildRow(T rowValue,
int absRowIndex)
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.
|
Cell.Context |
createContext(int column)
Create the context for a column based on the current table building state.
|
TableSectionBuilder |
finish()
Finish the building and get the
TableSectionBuilder containing the children. |
HasCell<T,?> |
getColumn(Cell.Context context,
T rowValue,
Element elem)
Return the column containing an element.
|
Collection<HasCell<T,?>> |
getColumns()
Return all the columns that this table builder has renderred.
|
int |
getRowValueIndex(TableRowElement row)
Get the index of the row value from the associated
TableRowElement . |
int |
getSubrowValueIndex(TableRowElement row)
Get the index of the subrow value from the associated
TableRowElement . |
boolean |
isColumn(Element elem)
Return if an element contains a cell.
|
<C> void |
renderCell(ElementBuilderBase<?> builder,
Cell.Context context,
HasCell<T,C> column,
T rowValue)
Render the cell into an
ElementBuilderBase . |
void |
start(boolean isRebuildingAllRows)
Start building rows.
|
TableRowBuilder |
startRow()
Start a row and return the
TableRowBuilder for this row. |
protected final AbstractCellTable<T> cellTable
public AbstractCellTableBuilder(AbstractCellTable<T> cellTable)
cellTable
- the table this builder will build rows forpublic final void buildRow(T rowValue, int absRowIndex)
buildRow
in interface CellTableBuilder<T>
rowValue
- the value for the row to renderabsRowIndex
- the absolute row indexpublic final Cell.Context createContext(int column)
column
- the column idpublic final TableSectionBuilder finish()
TableSectionBuilder
containing the children.finish
in interface CellTableBuilder<T>
public final HasCell<T,?> getColumn(Cell.Context context, T rowValue, Element elem)
getColumn
in interface CellTableBuilder<T>
context
- the context for the elementrowValue
- the value for the row corresponding to the elementelem
- the element that the column containspublic final Collection<HasCell<T,?>> getColumns()
getColumns
in interface CellTableBuilder<T>
public final int getRowValueIndex(TableRowElement row)
TableRowElement
.getRowValueIndex
in interface CellTableBuilder<T>
row
- the row elementpublic final int getSubrowValueIndex(TableRowElement row)
TableRowElement
. The sub row value starts at 0 for the first row
that represents a row value.getSubrowValueIndex
in interface CellTableBuilder<T>
row
- the row elementpublic final boolean isColumn(Element elem)
getColumn
.isColumn
in interface CellTableBuilder<T>
elem
- the element of interestpublic final <C> void renderCell(ElementBuilderBase<?> builder, Cell.Context context, HasCell<T,C> column, T rowValue)
ElementBuilderBase
.builder
- the ElementBuilderBase
that cell contents append tocontext
- the context for the elementcolumn
- the column containing the cellrowValue
- the value for the row corresponding to the elementpublic final void start(boolean isRebuildingAllRows)
start
in interface CellTableBuilder<T>
isRebuildingAllRows
- is this start intended for rebuilding all rowspublic final TableRowBuilder startRow()
TableRowBuilder
for this row.protected void addRowAttributes(TableRowBuilder row)
row
- the row elementprotected abstract void buildRowImpl(T rowValue, int absRowIndex)
rowValue
- the value for the row to renderabsRowIndex
- the absolute row indexCopyright © 2018. All rights reserved.