diff options
Diffstat (limited to 'src/java/org/apache/fop/fo/flow')
37 files changed, 121 insertions, 64 deletions
diff --git a/src/java/org/apache/fop/fo/flow/AbstractGraphics.java b/src/java/org/apache/fop/fo/flow/AbstractGraphics.java index 3d93eaa8f..2bf0061b0 100644 --- a/src/java/org/apache/fop/fo/flow/AbstractGraphics.java +++ b/src/java/org/apache/fop/fo/flow/AbstractGraphics.java @@ -234,7 +234,7 @@ public abstract class AbstractGraphics extends FObj this.structureTreeElement = structureTreeElement; } - /** {@inheritDoc} */ + @Override public StructureTreeElement getStructureTreeElement() { return structureTreeElement; } diff --git a/src/java/org/apache/fop/fo/flow/AbstractListItemPart.java b/src/java/org/apache/fop/fo/flow/AbstractListItemPart.java index 0e99bfe96..c8e8fc620 100644 --- a/src/java/org/apache/fop/fo/flow/AbstractListItemPart.java +++ b/src/java/org/apache/fop/fo/flow/AbstractListItemPart.java @@ -83,7 +83,7 @@ public abstract class AbstractListItemPart extends FObj implements CommonAccessi } /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { if (!this.blockItemFound) { String contentModel = "marker* (%block;)+"; getFOValidationEventProducer().missingChildElement(this, getName(), diff --git a/src/java/org/apache/fop/fo/flow/AbstractPageNumberCitation.java b/src/java/org/apache/fop/fo/flow/AbstractPageNumberCitation.java index ec3891632..68582a430 100644 --- a/src/java/org/apache/fop/fo/flow/AbstractPageNumberCitation.java +++ b/src/java/org/apache/fop/fo/flow/AbstractPageNumberCitation.java @@ -160,7 +160,7 @@ public abstract class AbstractPageNumberCitation extends FObj this.structureTreeElement = structureTreeElement; } - /** {@inheritDoc} */ + @Override public StructureTreeElement getStructureTreeElement() { return structureTreeElement; } diff --git a/src/java/org/apache/fop/fo/flow/AbstractRetrieveMarker.java b/src/java/org/apache/fop/fo/flow/AbstractRetrieveMarker.java index 636bc04df..018f6bb73 100644 --- a/src/java/org/apache/fop/fo/flow/AbstractRetrieveMarker.java +++ b/src/java/org/apache/fop/fo/flow/AbstractRetrieveMarker.java @@ -23,6 +23,7 @@ import java.util.Iterator; import org.xml.sax.Locator; +import org.apache.fop.accessibility.StructureTreeElement; import org.apache.fop.apps.FOPException; import org.apache.fop.fo.FONode; import org.apache.fop.fo.FOText; @@ -51,6 +52,8 @@ public abstract class AbstractRetrieveMarker extends FObjMixed { private int boundary; private String boundaryLabel; + private StructureTreeElement structureTreeElement; + /** * Create a new AbstractRetrieveMarker instance that * is a child of the given {@link FONode} @@ -86,6 +89,16 @@ public abstract class AbstractRetrieveMarker extends FObjMixed { this.propertyList = pList.getParentPropertyList(); } + @Override + public void setStructureTreeElement(StructureTreeElement structureTreeElement) { + this.structureTreeElement = structureTreeElement; + } + + @Override + public StructureTreeElement getStructureTreeElement() { + return structureTreeElement; + } + private PropertyList createPropertyListFor(FObj fo, PropertyList parent) { return getBuilderContext().getPropertyListMaker().make(fo, parent); } @@ -108,6 +121,7 @@ public abstract class AbstractRetrieveMarker extends FObjMixed { pList, newPropertyList); addChildTo(newChild, newParent); + newChild.startOfNode(); switch ( newChild.getNameId() ) { case FO_TABLE: Table t = (Table) child; @@ -132,17 +146,22 @@ public abstract class AbstractRetrieveMarker extends FObjMixed { newChild, marker, newPropertyList); break; } + newChild.endOfNode(); } else if (child instanceof FOText) { FOText ft = (FOText) newChild; ft.bind(parentPropertyList); addChildTo(newChild, newParent); + if (newParent instanceof AbstractRetrieveMarker) { + /* + * Otherwise the parent of newChild is a cloned FObjMixed that will + * call this FOText's endOfNode when its own endOfNode method is + * called. + */ + newChild.endOfNode(); + } } else if (child instanceof XMLObj) { addChildTo(newChild, newParent); } - - // trigger end-of-node white-space handling - // and finalization for table-FOs - newChild.finalizeNode(); } } @@ -191,6 +210,7 @@ public abstract class AbstractRetrieveMarker extends FObjMixed { } if (marker.getChildNodes() != null) { try { + restoreFOEventHandlerState(); cloneFromMarker(marker); } catch (FOPException exc) { getFOValidationEventProducer().markerCloningFailed(this, @@ -201,6 +221,8 @@ public abstract class AbstractRetrieveMarker extends FObjMixed { } } + protected abstract void restoreFOEventHandlerState(); + /** * Return the value for the <code>retrieve-class-name</code> * property diff --git a/src/java/org/apache/fop/fo/flow/BasicLink.java b/src/java/org/apache/fop/fo/flow/BasicLink.java index 0d6d5d9b4..3394842fb 100644 --- a/src/java/org/apache/fop/fo/flow/BasicLink.java +++ b/src/java/org/apache/fop/fo/flow/BasicLink.java @@ -96,13 +96,13 @@ public class BasicLink extends InlineLevel implements StructureTreeElementHolder } /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); getFOEventHandler().startLink(this); } /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { super.endOfNode(); getFOEventHandler().endLink(this); } @@ -148,7 +148,7 @@ public class BasicLink extends InlineLevel implements StructureTreeElementHolder this.structureTreeElement = structureTreeElement; } - /** {@inheritDoc} */ + @Override public StructureTreeElement getStructureTreeElement() { return structureTreeElement; } diff --git a/src/java/org/apache/fop/fo/flow/Block.java b/src/java/org/apache/fop/fo/flow/Block.java index d93821ca6..13b218b55 100644 --- a/src/java/org/apache/fop/fo/flow/Block.java +++ b/src/java/org/apache/fop/fo/flow/Block.java @@ -140,13 +140,13 @@ public class Block extends FObjMixed implements BreakPropertySet, } /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); getFOEventHandler().startBlock(this); } /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { super.endOfNode(); getFOEventHandler().endBlock(this); } diff --git a/src/java/org/apache/fop/fo/flow/BlockContainer.java b/src/java/org/apache/fop/fo/flow/BlockContainer.java index cdeb99081..005f9289a 100644 --- a/src/java/org/apache/fop/fo/flow/BlockContainer.java +++ b/src/java/org/apache/fop/fo/flow/BlockContainer.java @@ -103,7 +103,7 @@ public class BlockContainer extends FObj implements BreakPropertySet, WritingMod } /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); getFOEventHandler().startBlockContainer(this); } @@ -138,7 +138,7 @@ public class BlockContainer extends FObj implements BreakPropertySet, WritingMod } /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { if (!blockItemFound) { missingChildElementError("marker* (%block;)+"); } diff --git a/src/java/org/apache/fop/fo/flow/Character.java b/src/java/org/apache/fop/fo/flow/Character.java index f48ff289e..2d0814301 100644 --- a/src/java/org/apache/fop/fo/flow/Character.java +++ b/src/java/org/apache/fop/fo/flow/Character.java @@ -116,7 +116,7 @@ public class Character extends FObj implements StructureTreeElementHolder { } /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); getFOEventHandler().character(this); } @@ -217,7 +217,7 @@ public class Character extends FObj implements StructureTreeElementHolder { this.structureTreeElement = structureTreeElement; } - /** {@inheritDoc} */ + @Override public StructureTreeElement getStructureTreeElement() { return structureTreeElement; } diff --git a/src/java/org/apache/fop/fo/flow/ExternalGraphic.java b/src/java/org/apache/fop/fo/flow/ExternalGraphic.java index dc8584abc..b564526b4 100644 --- a/src/java/org/apache/fop/fo/flow/ExternalGraphic.java +++ b/src/java/org/apache/fop/fo/flow/ExternalGraphic.java @@ -104,7 +104,7 @@ public class ExternalGraphic extends AbstractGraphics { } /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); getFOEventHandler().image(this); } diff --git a/src/java/org/apache/fop/fo/flow/Float.java b/src/java/org/apache/fop/fo/flow/Float.java index 5d8fcdc2c..c12998144 100644 --- a/src/java/org/apache/fop/fo/flow/Float.java +++ b/src/java/org/apache/fop/fo/flow/Float.java @@ -74,7 +74,7 @@ public class Float extends FObj { } /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { if (firstChild == null) { missingChildElementError("(%block;)+"); } diff --git a/src/java/org/apache/fop/fo/flow/Footnote.java b/src/java/org/apache/fop/fo/flow/Footnote.java index 5953363ed..3aa2097a2 100644 --- a/src/java/org/apache/fop/fo/flow/Footnote.java +++ b/src/java/org/apache/fop/fo/flow/Footnote.java @@ -56,7 +56,7 @@ public class Footnote extends FObj implements CommonAccessibilityHolder { } /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { getFOEventHandler().startFootnote(this); } @@ -66,7 +66,7 @@ public class Footnote extends FObj implements CommonAccessibilityHolder { * * {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { super.endOfNode(); if (footnoteCitation == null || footnoteBody == null) { missingChildElementError("(inline,footnote-body)"); diff --git a/src/java/org/apache/fop/fo/flow/FootnoteBody.java b/src/java/org/apache/fop/fo/flow/FootnoteBody.java index 1c103b6b5..af2bc2bcf 100644 --- a/src/java/org/apache/fop/fo/flow/FootnoteBody.java +++ b/src/java/org/apache/fop/fo/flow/FootnoteBody.java @@ -54,7 +54,7 @@ public class FootnoteBody extends FObj implements CommonAccessibilityHolder { } /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { getFOEventHandler().startFootnoteBody(this); } @@ -64,7 +64,7 @@ public class FootnoteBody extends FObj implements CommonAccessibilityHolder { * end of the footnote-body. * {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { if (firstChild == null) { missingChildElementError("(%block;)+"); } diff --git a/src/java/org/apache/fop/fo/flow/Inline.java b/src/java/org/apache/fop/fo/flow/Inline.java index 941850cdd..d115f469a 100644 --- a/src/java/org/apache/fop/fo/flow/Inline.java +++ b/src/java/org/apache/fop/fo/flow/Inline.java @@ -69,7 +69,7 @@ public class Inline extends InlineLevel { } /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); /* Check to see if this node can have block-level children. @@ -94,7 +94,7 @@ public class Inline extends InlineLevel { } /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { super.endOfNode(); getFOEventHandler().endInline(this); } diff --git a/src/java/org/apache/fop/fo/flow/InlineContainer.java b/src/java/org/apache/fop/fo/flow/InlineContainer.java index b79d66bb0..b8e9fd09a 100644 --- a/src/java/org/apache/fop/fo/flow/InlineContainer.java +++ b/src/java/org/apache/fop/fo/flow/InlineContainer.java @@ -119,7 +119,7 @@ public class InlineContainer extends FObj { } /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { if (!blockItemFound) { missingChildElementError("marker* (%block;)+"); } diff --git a/src/java/org/apache/fop/fo/flow/InstreamForeignObject.java b/src/java/org/apache/fop/fo/flow/InstreamForeignObject.java index 33164188f..9f88b9478 100644 --- a/src/java/org/apache/fop/fo/flow/InstreamForeignObject.java +++ b/src/java/org/apache/fop/fo/flow/InstreamForeignObject.java @@ -60,7 +60,7 @@ public class InstreamForeignObject extends AbstractGraphics { } @Override - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); getFOEventHandler().startInstreamForeignObject(this); } @@ -71,7 +71,7 @@ public class InstreamForeignObject extends AbstractGraphics { * the end of the instream-foreign-object. * {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { if (firstChild == null) { missingChildElementError("one (1) non-XSL namespace child"); } diff --git a/src/java/org/apache/fop/fo/flow/Leader.java b/src/java/org/apache/fop/fo/flow/Leader.java index 4062d6562..c1fd98002 100644 --- a/src/java/org/apache/fop/fo/flow/Leader.java +++ b/src/java/org/apache/fop/fo/flow/Leader.java @@ -191,13 +191,13 @@ public class Leader extends InlineLevel { } @Override - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); getFOEventHandler().startLeader(this); } @Override - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { super.endOfNode(); getFOEventHandler().endLeader(this); } diff --git a/src/java/org/apache/fop/fo/flow/ListBlock.java b/src/java/org/apache/fop/fo/flow/ListBlock.java index 35288ec80..647891131 100644 --- a/src/java/org/apache/fop/fo/flow/ListBlock.java +++ b/src/java/org/apache/fop/fo/flow/ListBlock.java @@ -89,7 +89,7 @@ public class ListBlock extends FObj implements BreakPropertySet, CommonAccessibi } /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); getFOEventHandler().startList(this); } @@ -100,7 +100,7 @@ public class ListBlock extends FObj implements BreakPropertySet, CommonAccessibi * of the list-block. * {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { if (!hasListItem) { missingChildElementError("marker* (list-item)+"); } diff --git a/src/java/org/apache/fop/fo/flow/ListItem.java b/src/java/org/apache/fop/fo/flow/ListItem.java index f61254874..bfd512f4d 100644 --- a/src/java/org/apache/fop/fo/flow/ListItem.java +++ b/src/java/org/apache/fop/fo/flow/ListItem.java @@ -83,13 +83,13 @@ public class ListItem extends FObj implements BreakPropertySet, CommonAccessibil } /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); getFOEventHandler().startListItem(this); } /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { if (label == null || body == null) { missingChildElementError("marker* (list-item-label,list-item-body)"); } diff --git a/src/java/org/apache/fop/fo/flow/ListItemBody.java b/src/java/org/apache/fop/fo/flow/ListItemBody.java index 3007f9ba3..5b121f53c 100644 --- a/src/java/org/apache/fop/fo/flow/ListItemBody.java +++ b/src/java/org/apache/fop/fo/flow/ListItemBody.java @@ -36,13 +36,13 @@ public class ListItemBody extends AbstractListItemPart { } /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); getFOEventHandler().startListBody(this); } /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { super.endOfNode(); getFOEventHandler().endListBody(this); } diff --git a/src/java/org/apache/fop/fo/flow/ListItemLabel.java b/src/java/org/apache/fop/fo/flow/ListItemLabel.java index 10436afa6..53dfab84e 100644 --- a/src/java/org/apache/fop/fo/flow/ListItemLabel.java +++ b/src/java/org/apache/fop/fo/flow/ListItemLabel.java @@ -38,13 +38,13 @@ public class ListItemLabel extends AbstractListItemPart { } /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); getFOEventHandler().startListLabel(this); } /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { super.endOfNode(); getFOEventHandler().endListLabel(this); } diff --git a/src/java/org/apache/fop/fo/flow/Marker.java b/src/java/org/apache/fop/fo/flow/Marker.java index de806e986..5d525ee8c 100644 --- a/src/java/org/apache/fop/fo/flow/Marker.java +++ b/src/java/org/apache/fop/fo/flow/Marker.java @@ -83,7 +83,7 @@ public class Marker extends FObjMixed { } /** {@inheritDoc} */ - protected void startOfNode() { + public void startOfNode() { FOTreeBuilderContext builderContext = getBuilderContext(); // Push a new property list maker which will make MarkerPropertyLists. savePropertyListMaker = builderContext.getPropertyListMaker(); @@ -97,7 +97,7 @@ public class Marker extends FObjMixed { } /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { super.endOfNode(); // Pop the MarkerPropertyList maker. getBuilderContext().setPropertyListMaker(savePropertyListMaker); diff --git a/src/java/org/apache/fop/fo/flow/MultiProperties.java b/src/java/org/apache/fop/fo/flow/MultiProperties.java index 3e2e57d97..ff8192006 100644 --- a/src/java/org/apache/fop/fo/flow/MultiProperties.java +++ b/src/java/org/apache/fop/fo/flow/MultiProperties.java @@ -59,7 +59,7 @@ public class MultiProperties extends FObj { } /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { if (!hasMultiPropertySet || !hasWrapper) { missingChildElementError("(multi-property-set+, wrapper)"); } diff --git a/src/java/org/apache/fop/fo/flow/MultiSwitch.java b/src/java/org/apache/fop/fo/flow/MultiSwitch.java index aa18d6cdf..d8ebee4cb 100644 --- a/src/java/org/apache/fop/fo/flow/MultiSwitch.java +++ b/src/java/org/apache/fop/fo/flow/MultiSwitch.java @@ -64,7 +64,7 @@ public class MultiSwitch extends FObj { /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { if (firstChild == null) { missingChildElementError("(multi-case+)"); } diff --git a/src/java/org/apache/fop/fo/flow/PageNumber.java b/src/java/org/apache/fop/fo/flow/PageNumber.java index fe3e80a75..33b34e2d5 100644 --- a/src/java/org/apache/fop/fo/flow/PageNumber.java +++ b/src/java/org/apache/fop/fo/flow/PageNumber.java @@ -106,13 +106,13 @@ public class PageNumber extends FObj } /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); getFOEventHandler().startPageNumber(this); } /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { getFOEventHandler().endPageNumber(this); } @@ -182,7 +182,7 @@ public class PageNumber extends FObj this.structureTreeElement = structureTreeElement; } - /** {@inheritDoc} */ + @Override public StructureTreeElement getStructureTreeElement() { return structureTreeElement; } diff --git a/src/java/org/apache/fop/fo/flow/PageNumberCitation.java b/src/java/org/apache/fop/fo/flow/PageNumberCitation.java index 0ebb6eb3d..ee7b59a15 100644 --- a/src/java/org/apache/fop/fo/flow/PageNumberCitation.java +++ b/src/java/org/apache/fop/fo/flow/PageNumberCitation.java @@ -41,13 +41,13 @@ public class PageNumberCitation extends AbstractPageNumberCitation { } /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); getFOEventHandler().startPageNumberCitation(this); } /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { super.endOfNode(); getFOEventHandler().endPageNumberCitation(this); } diff --git a/src/java/org/apache/fop/fo/flow/PageNumberCitationLast.java b/src/java/org/apache/fop/fo/flow/PageNumberCitationLast.java index 6a08568b1..b6e209202 100644 --- a/src/java/org/apache/fop/fo/flow/PageNumberCitationLast.java +++ b/src/java/org/apache/fop/fo/flow/PageNumberCitationLast.java @@ -42,13 +42,13 @@ public class PageNumberCitationLast extends AbstractPageNumberCitation { } /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); getFOEventHandler().startPageNumberCitationLast(this); } /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { super.endOfNode(); getFOEventHandler().endPageNumberCitationLast(this); } diff --git a/src/java/org/apache/fop/fo/flow/RetrieveMarker.java b/src/java/org/apache/fop/fo/flow/RetrieveMarker.java index b001a41ee..2f2b7e5a4 100644 --- a/src/java/org/apache/fop/fo/flow/RetrieveMarker.java +++ b/src/java/org/apache/fop/fo/flow/RetrieveMarker.java @@ -71,6 +71,18 @@ public class RetrieveMarker extends AbstractRetrieveMarker { setBoundaryLabel((String) pList.get(PR_RETRIEVE_BOUNDARY).getObject()); } + @Override + public void startOfNode() throws FOPException { + super.startOfNode(); + getFOEventHandler().startRetrieveMarker(this); + } + + @Override + public void endOfNode() throws FOPException { + super.endOfNode(); + getFOEventHandler().endRetrieveMarker(this); + } + /** * Return the value for the <code>retrieve-position</code> * property @@ -108,4 +120,10 @@ public class RetrieveMarker extends AbstractRetrieveMarker { public int getNameId() { return FO_RETRIEVE_MARKER; } + + @Override + protected void restoreFOEventHandlerState() { + getFOEventHandler().restoreState(this); + } + } diff --git a/src/java/org/apache/fop/fo/flow/RetrieveTableMarker.java b/src/java/org/apache/fop/fo/flow/RetrieveTableMarker.java index efacba864..d4bc7c687 100644 --- a/src/java/org/apache/fop/fo/flow/RetrieveTableMarker.java +++ b/src/java/org/apache/fop/fo/flow/RetrieveTableMarker.java @@ -68,6 +68,18 @@ public class RetrieveTableMarker extends AbstractRetrieveMarker { setBoundaryLabel((String) pList.get(PR_RETRIEVE_BOUNDARY_WITHIN_TABLE).getObject()); } + @Override + public void startOfNode() throws FOPException { + super.startOfNode(); + getFOEventHandler().startRetrieveTableMarker(this); + } + + @Override + public void endOfNode() throws FOPException { + super.endOfNode(); + getFOEventHandler().endRetrieveTableMarker(this); + } + /** * Return the value for the <code>retrieve-position-within-table</code> * property @@ -113,4 +125,9 @@ public class RetrieveTableMarker extends AbstractRetrieveMarker { this.lastFOTextProcessed = null; } + @Override + protected void restoreFOEventHandlerState() { + getFOEventHandler().restoreState(this); + } + } diff --git a/src/java/org/apache/fop/fo/flow/Wrapper.java b/src/java/org/apache/fop/fo/flow/Wrapper.java index 0aec7ce16..dd15187f2 100644 --- a/src/java/org/apache/fop/fo/flow/Wrapper.java +++ b/src/java/org/apache/fop/fo/flow/Wrapper.java @@ -61,13 +61,13 @@ public class Wrapper extends FObjMixed implements CommonAccessibilityHolder { } @Override - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); getFOEventHandler().startWrapper(this); } @Override - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { super.endOfNode(); getFOEventHandler().endWrapper(this); } diff --git a/src/java/org/apache/fop/fo/flow/table/Table.java b/src/java/org/apache/fop/fo/flow/table/Table.java index a574723b1..f23ac1cc4 100644 --- a/src/java/org/apache/fop/fo/flow/table/Table.java +++ b/src/java/org/apache/fop/fo/flow/table/Table.java @@ -179,7 +179,7 @@ public class Table extends TableFObj implements ColumnNumberManagerHolder, Break } /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); getFOEventHandler().startTable(this); } @@ -238,7 +238,7 @@ public class Table extends TableFObj implements ColumnNumberManagerHolder, Break } /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { super.endOfNode(); getFOEventHandler().endTable(this); } diff --git a/src/java/org/apache/fop/fo/flow/table/TableAndCaption.java b/src/java/org/apache/fop/fo/flow/table/TableAndCaption.java index 51db27e4e..667138e00 100644 --- a/src/java/org/apache/fop/fo/flow/table/TableAndCaption.java +++ b/src/java/org/apache/fop/fo/flow/table/TableAndCaption.java @@ -87,7 +87,7 @@ public class TableAndCaption extends FObj implements CommonAccessibilityHolder { * FOEventHandler that we are at the end of the flow. * {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { if (!tableFound) { missingChildElementError("marker* table-caption? table"); } diff --git a/src/java/org/apache/fop/fo/flow/table/TableBody.java b/src/java/org/apache/fop/fo/flow/table/TableBody.java index d69081e48..63e927952 100644 --- a/src/java/org/apache/fop/fo/flow/table/TableBody.java +++ b/src/java/org/apache/fop/fo/flow/table/TableBody.java @@ -38,13 +38,13 @@ public class TableBody extends TablePart { } /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); getFOEventHandler().startBody(this); } /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { super.endOfNode(); getFOEventHandler().endBody(this); } diff --git a/src/java/org/apache/fop/fo/flow/table/TableCaption.java b/src/java/org/apache/fop/fo/flow/table/TableCaption.java index 380b27f34..def1c1093 100644 --- a/src/java/org/apache/fop/fo/flow/table/TableCaption.java +++ b/src/java/org/apache/fop/fo/flow/table/TableCaption.java @@ -78,7 +78,7 @@ public class TableCaption extends FObj implements CommonAccessibilityHolder { } /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { if (firstChild == null) { missingChildElementError("marker* (%block;)"); } diff --git a/src/java/org/apache/fop/fo/flow/table/TableCell.java b/src/java/org/apache/fop/fo/flow/table/TableCell.java index f198f3aad..20a80d135 100644 --- a/src/java/org/apache/fop/fo/flow/table/TableCell.java +++ b/src/java/org/apache/fop/fo/flow/table/TableCell.java @@ -96,7 +96,7 @@ public class TableCell extends TableFObj implements CommonAccessibilityHolder { } /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); getFOEventHandler().startCell(this); } @@ -106,7 +106,7 @@ public class TableCell extends TableFObj implements CommonAccessibilityHolder { * FOEventHandler that we are at the end of the table-cell. * {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { super.endOfNode(); getFOEventHandler().endCell(this); } diff --git a/src/java/org/apache/fop/fo/flow/table/TableFooter.java b/src/java/org/apache/fop/fo/flow/table/TableFooter.java index cfd0136dc..e12b75c5c 100644 --- a/src/java/org/apache/fop/fo/flow/table/TableFooter.java +++ b/src/java/org/apache/fop/fo/flow/table/TableFooter.java @@ -41,13 +41,13 @@ public class TableFooter extends TablePart { } /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); getFOEventHandler().startFooter(this); } /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { super.endOfNode(); getFOEventHandler().endFooter(this); } diff --git a/src/java/org/apache/fop/fo/flow/table/TableHeader.java b/src/java/org/apache/fop/fo/flow/table/TableHeader.java index a0ad40798..73b43f301 100644 --- a/src/java/org/apache/fop/fo/flow/table/TableHeader.java +++ b/src/java/org/apache/fop/fo/flow/table/TableHeader.java @@ -40,13 +40,13 @@ public class TableHeader extends TablePart { } /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); getFOEventHandler().startHeader(this); } /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { super.endOfNode(); getFOEventHandler().endHeader(this); } diff --git a/src/java/org/apache/fop/fo/flow/table/TableRow.java b/src/java/org/apache/fop/fo/flow/table/TableRow.java index dd9f7c6d4..2beaf2f99 100644 --- a/src/java/org/apache/fop/fo/flow/table/TableRow.java +++ b/src/java/org/apache/fop/fo/flow/table/TableRow.java @@ -98,13 +98,13 @@ public class TableRow extends TableCellContainer implements BreakPropertySet { } /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { + public void startOfNode() throws FOPException { super.startOfNode(); getFOEventHandler().startRow(this); } /** {@inheritDoc} */ - protected void endOfNode() throws FOPException { + public void endOfNode() throws FOPException { super.endOfNode(); getFOEventHandler().endRow(this); } |