org.apache.fop.render.rtf.rtflib.tools
Class BuilderContext
java.lang.Object
org.apache.fop.render.rtf.rtflib.tools.BuilderContext
public class BuilderContext
extends java.lang.Object
A BuilderContext holds context information when building an RTF document
- Bertrand Delacretaz
- putzi
- Peter Herweg
This class was originally developed by Bertrand Delacretaz bdelacretaz@codeconsult.ch
for the JFOR project and is now integrated into FOP.
BuilderContext
public BuilderContext(IRtfOptions rtfOptions)
getContainer
public RtfContainer getContainer(Class containerClass,
boolean required,
Object forWhichBuilder)
throws RtfException
find the "nearest" container that implements the given interface on our stack
required
- if true, ConverterException is thrown if no container foundforWhichBuilder
- used in error message if container not found
getTableContext
public TableContext getTableContext()
return the current TableContext
popContainer
public void popContainer()
pop the topmost RtfContainer from our stack
popTableContext
public void popTableContext()
pop a TableContext from our stack
pushContainer
public void pushContainer(RtfContainer c)
push an RtfContainer on our stack
pushTableContext
public void pushTableContext(TableContext tc)
push a TableContext to our stack
replaceContainer
public void replaceContainer(RtfContainer oldC,
RtfContainer newC)
throws Exception
In some cases an RtfContainer must be replaced by another one on the
stack. This happens when handling nested fo:blocks for example: after
handling a nested block the enclosing block must switch to a new
paragraph container to handle what follows the nested block.
TODO: what happens to elements that are "more on top" than oldC on the
stack? shouldn't they be closed or something?
Copyright 1999-2007 The Apache Software Foundation. All Rights Reserved.