Class DefaultContentGenerator
- java.lang.Object
-
- org.jfree.layouting.normalizer.generator.DefaultContentGenerator
-
- All Implemented Interfaces:
ContentGenerator,StatefullComponent
public class DefaultContentGenerator extends java.lang.Object implements ContentGenerator
The default content generator produces CSS-compliant content structures (also known as DOM-Trees). This model explicitly allows block elements to contain other block elements and to do all kinds of weird mixing of elements. The content generator already has all knowledge to compute the manual pagebreaks. So this class could already fire pagebreaks. The next element in the layouting chain will be the Layouter itself. The renderer computes the element positions,knows about the page sizes (and whether we have pages anyway) and more important - keeps track of the current page and the page fill state. The content generator is conceptionally a part of the normalizer step, and thererfore has access to the raw display model. The renderer receives a more generic view with no object hierarchies at all - if that whould be needed, it has to be rebuilt. (This simplifies serialization, so that most remote calls are now self-contained and do not supply a possibly contradictionary context (in terms of object-identity)).- Author:
- Thomas Morgner
-
-
Constructor Summary
Constructors Modifier Constructor Description DefaultContentGenerator(LayoutProcess layoutProcess)protectedDefaultContentGenerator(Renderer renderer)
-
Method Summary
-
-
-
Constructor Detail
-
DefaultContentGenerator
public DefaultContentGenerator(LayoutProcess layoutProcess)
-
DefaultContentGenerator
protected DefaultContentGenerator(Renderer renderer)
-
-
Method Detail
-
startedDocument
public void startedDocument(PageContext pageContext)
Receives the information, that the document processing has been started. This is fired only once.- Specified by:
startedDocumentin interfaceContentGenerator- Parameters:
pageContext- the page context for the default page.
-
startedFlow
public void startedFlow(LayoutContext element) throws NormalizationException
- Specified by:
startedFlowin interfaceContentGenerator- Throws:
NormalizationException
-
startedTable
public void startedTable(LayoutContext element) throws NormalizationException
- Specified by:
startedTablein interfaceContentGenerator- Throws:
NormalizationException
-
startedTableColumnGroup
public void startedTableColumnGroup(LayoutContext element) throws NormalizationException
- Specified by:
startedTableColumnGroupin interfaceContentGenerator- Throws:
NormalizationException
-
startedTableColumn
public void startedTableColumn(LayoutContext element) throws NormalizationException
- Specified by:
startedTableColumnin interfaceContentGenerator- Throws:
NormalizationException
-
startedTableSection
public void startedTableSection(LayoutContext element) throws NormalizationException
- Specified by:
startedTableSectionin interfaceContentGenerator- Throws:
NormalizationException
-
startedTableRow
public void startedTableRow(LayoutContext element) throws NormalizationException
- Specified by:
startedTableRowin interfaceContentGenerator- Throws:
NormalizationException
-
startedTableCell
public void startedTableCell(LayoutContext element) throws NormalizationException
- Specified by:
startedTableCellin interfaceContentGenerator- Throws:
NormalizationException
-
startedBlock
public void startedBlock(LayoutContext element) throws NormalizationException
- Specified by:
startedBlockin interfaceContentGenerator- Throws:
NormalizationException
-
startedMarker
public void startedMarker(LayoutContext element) throws NormalizationException
- Specified by:
startedMarkerin interfaceContentGenerator- Throws:
NormalizationException
-
startedRootInline
public void startedRootInline(LayoutContext element) throws NormalizationException
- Specified by:
startedRootInlinein interfaceContentGenerator- Throws:
NormalizationException
-
startedInline
public void startedInline(LayoutContext element) throws NormalizationException
- Specified by:
startedInlinein interfaceContentGenerator- Throws:
NormalizationException
-
addContent
public void addContent(LayoutContext node, ContentToken contentToken) throws NormalizationException
- Specified by:
addContentin interfaceContentGenerator- Throws:
NormalizationException
-
finishedInline
public void finishedInline() throws NormalizationException- Specified by:
finishedInlinein interfaceContentGenerator- Throws:
NormalizationException
-
finishedMarker
public void finishedMarker() throws NormalizationException- Specified by:
finishedMarkerin interfaceContentGenerator- Throws:
NormalizationException
-
finishedRootInline
public void finishedRootInline() throws NormalizationException- Specified by:
finishedRootInlinein interfaceContentGenerator- Throws:
NormalizationException
-
finishedBlock
public void finishedBlock() throws NormalizationException- Specified by:
finishedBlockin interfaceContentGenerator- Throws:
NormalizationException
-
finishedTableCell
public void finishedTableCell() throws NormalizationException- Specified by:
finishedTableCellin interfaceContentGenerator- Throws:
NormalizationException
-
finishedTableRow
public void finishedTableRow() throws NormalizationException- Specified by:
finishedTableRowin interfaceContentGenerator- Throws:
NormalizationException
-
finishedTableSection
public void finishedTableSection() throws NormalizationException- Specified by:
finishedTableSectionin interfaceContentGenerator- Throws:
NormalizationException
-
finishedTableColumn
public void finishedTableColumn() throws NormalizationException- Specified by:
finishedTableColumnin interfaceContentGenerator- Throws:
NormalizationException
-
finishedTableColumnGroup
public void finishedTableColumnGroup() throws NormalizationException- Specified by:
finishedTableColumnGroupin interfaceContentGenerator- Throws:
NormalizationException
-
finishedTable
public void finishedTable() throws NormalizationException- Specified by:
finishedTablein interfaceContentGenerator- Throws:
NormalizationException
-
finishedFlow
public void finishedFlow() throws NormalizationException- Specified by:
finishedFlowin interfaceContentGenerator- Throws:
NormalizationException
-
finishedDocument
public void finishedDocument() throws NormalizationExceptionReceives notification, that a new flow has started. A new flow is started for each flowing or absolutly positioned element.- Specified by:
finishedDocumentin interfaceContentGenerator- Parameters:
box-- Throws:
NormalizationException
-
handlePageBreak
public void handlePageBreak(PageContext pageContext)
Description copied from interface:ContentGeneratorThis event handler is triggered by 'LayoutProcess.pageBreakEncountered()'.- Specified by:
handlePageBreakin interfaceContentGenerator
-
startedPassThrough
public void startedPassThrough(LayoutContext element) throws NormalizationException
- Specified by:
startedPassThroughin interfaceContentGenerator- Throws:
NormalizationException
-
addPassThroughContent
public void addPassThroughContent(LayoutContext node, ContentToken token) throws NormalizationException
- Specified by:
addPassThroughContentin interfaceContentGenerator- Throws:
NormalizationException
-
finishedPassThrough
public void finishedPassThrough() throws NormalizationException- Specified by:
finishedPassThroughin interfaceContentGenerator- Throws:
NormalizationException
-
saveState
public State saveState() throws StateException
- Specified by:
saveStatein interfaceStatefullComponent- Throws:
StateException
-
startedTableCaption
public void startedTableCaption(LayoutContext context) throws NormalizationException
- Specified by:
startedTableCaptionin interfaceContentGenerator- Throws:
NormalizationException
-
finishedTableCaption
public void finishedTableCaption() throws NormalizationException- Specified by:
finishedTableCaptionin interfaceContentGenerator- Throws:
NormalizationException
-
getRenderer
public Renderer getRenderer()
- Specified by:
getRendererin interfaceContentGenerator
-
-