Package org.apache.fop.fo.flow.table
Class VariableColRowGroupBuilder
- java.lang.Object
-
- org.apache.fop.fo.flow.table.RowGroupBuilder
-
- org.apache.fop.fo.flow.table.VariableColRowGroupBuilder
-
class VariableColRowGroupBuilder extends RowGroupBuilder
A row group builder accommodating a variable number of columns. More flexible, but less efficient.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static interface
VariableColRowGroupBuilder.Event
Each event is recorded and will be played once the table is finished, and the final number of columns known.
-
Field Summary
Fields Modifier and Type Field Description private java.util.List
events
The queue of events sent to this builder.-
Fields inherited from class org.apache.fop.fo.flow.table.RowGroupBuilder
table
-
-
Constructor Summary
Constructors Constructor Description VariableColRowGroupBuilder(Table t)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) void
addTableCell(TableCell cell)
Adds a table-cell to the current row-group, creatingGridUnit
s accordingly.(package private) void
endRow(TablePart part)
Receives notification of the end of the current row, when the source contains no fo:table-row element.(package private) void
endTable()
Receives notification of the end of the table.(package private) void
endTablePart()
Receives notification of the end of a table-header/footer/body.(package private) void
endTableRow()
Receives notification of the end of the current row.(package private) void
startTablePart(TablePart part)
Receives notification of the start of a table-header/footer/body.(package private) void
startTableRow(TableRow tableRow)
Receives notification of the start of an fo:table-row element.
-
-
-
Constructor Detail
-
VariableColRowGroupBuilder
VariableColRowGroupBuilder(Table t)
-
-
Method Detail
-
addTableCell
void addTableCell(TableCell cell)
Adds a table-cell to the current row-group, creatingGridUnit
s accordingly.- Specified by:
addTableCell
in classRowGroupBuilder
- Parameters:
cell
- the cell to add
-
startTableRow
void startTableRow(TableRow tableRow)
Receives notification of the start of an fo:table-row element.- Specified by:
startTableRow
in classRowGroupBuilder
- Parameters:
tableRow
- the row being started
-
endTableRow
void endTableRow()
Receives notification of the end of the current row. If the current row finishes the row group, theTablePart.addRowGroup(List)
method of the parent table part will be called.- Specified by:
endTableRow
in classRowGroupBuilder
-
endRow
void endRow(TablePart part)
Receives notification of the end of the current row, when the source contains no fo:table-row element. If the current row finishes the row group, theTablePart.addRowGroup(List)
method of the given table part will be called.If the source does contain explicit fo:table-row elements, then the
RowGroupBuilder.endTableRow()
method will be called instead.- Specified by:
endRow
in classRowGroupBuilder
- Parameters:
part
- the part containing the current row
-
startTablePart
void startTablePart(TablePart part)
Receives notification of the start of a table-header/footer/body.- Specified by:
startTablePart
in classRowGroupBuilder
- Parameters:
part
- the part being started
-
endTablePart
void endTablePart() throws ValidationException
Receives notification of the end of a table-header/footer/body. The current row-group is checked for emptiness. This row group builder is reset for handling further possible table parts.- Specified by:
endTablePart
in classRowGroupBuilder
- Throws:
ValidationException
- if a row-spanning cell overflows the given table part
-
endTable
void endTable() throws ValidationException
Receives notification of the end of the table.- Specified by:
endTable
in classRowGroupBuilder
- Throws:
ValidationException
- if a row-spanning cell overflows one of the table's parts
-
-