Subject: [PATCH 06/20] Store new structure tree in area tree --- .../org/apache/fop/fo/pagination/PageSequence.java | 22 +++++++++++++++++++- .../fop/layoutmgr/PageSequenceLayoutManager.java | 1 + 2 files changed, 22 insertions(+), 1 deletions(-) diff --git a/src/java/org/apache/fop/fo/pagination/PageSequence.java b/src/java/org/apache/fop/fo/pagination/PageSequence.java index a22894e..58e0378 100644 --- a/src/java/org/apache/fop/fo/pagination/PageSequence.java +++ b/src/java/org/apache/fop/fo/pagination/PageSequence.java @@ -20,10 +20,13 @@ package org.apache.fop.fo.pagination; // Java +import java.util.Iterator; +import java.util.List; import java.util.Map; import org.xml.sax.Locator; +import org.apache.fop.accessibility.StructureElement; import org.apache.fop.apps.FOPException; import org.apache.fop.fo.FONode; import org.apache.fop.fo.PropertyList; @@ -49,6 +52,8 @@ public class PageSequence extends AbstractPageSequence { /** Map of flows to their flow name (flow-name, Flow) */ private Map flowMap; + private List flowList; + private StructureElement structTree; /** * The currentSimplePageMaster is either the page master for the @@ -97,6 +102,7 @@ public class PageSequence extends AbstractPageSequence { protected void startOfNode() throws FOPException { super.startOfNode(); flowMap = new java.util.HashMap(); + flowList = new java.util.ArrayList(); this.simplePageMaster = getRoot().getLayoutMasterSet().getSimplePageMaster(masterReference); @@ -116,7 +122,13 @@ public class PageSequence extends AbstractPageSequence { if (mainFlow == null) { missingChildElementError("(title?,static-content*,flow)"); } - + if (getUserAgent().isAccessibilityEnabled()) { + structTree = createStructureElement(); + for(int i=0;i