You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fop-commits@xmlgraphics.apache.org by pb...@apache.org on 2004/02/28 03:06:44 UTC

cvs commit: xml-fop/src/java/org/apache/fop/area NormalFlowRefArea.java ViewportI.java AbstractViewport.java Viewport.java BlockArea.java ReferenceArea.java RegionBeforeVport.java MainReferenceArea.java RegionAfterVport.java RegionBodyVport.java RegionBodyRefArea.java RegionEndRefArea.java Area.java AbstractReferenceArea.java BlockContainer.java FootnoteRefArea.java RegionStartVport.java BeforeFloatRefArea.java RegionEndVport.java RegionStartRefArea.java Span.java RegionRefArea.java PageViewport.java PageRefArea.java RegionAfterRefArea.java RegionViewport.java RegionBeforeRefArea.java

pbwest      2004/02/27 18:06:44

  Modified:    src/java/org/apache/fop/area Tag: FOP_0-20-0_Alt-Design
                        Viewport.java BlockArea.java ReferenceArea.java
                        RegionBeforeVport.java MainReferenceArea.java
                        RegionAfterVport.java RegionBodyVport.java
                        RegionBodyRefArea.java RegionEndRefArea.java
                        Area.java AbstractReferenceArea.java
                        BlockContainer.java FootnoteRefArea.java
                        RegionStartVport.java BeforeFloatRefArea.java
                        RegionEndVport.java RegionStartRefArea.java
                        Span.java RegionRefArea.java PageViewport.java
                        PageRefArea.java RegionAfterRefArea.java
                        RegionViewport.java RegionBeforeRefArea.java
  Added:       src/java/org/apache/fop/area Tag: FOP_0-20-0_Alt-Design
                        NormalFlowRefArea.java ViewportI.java
                        AbstractViewport.java
  Log:
  Added page-sequence and generated-by args to Area constructor.
  Modified Viewport and ReferenceArea classes to handle appropriate functions.
  Constructor modifications to match superclasses.
  Some synchronization of unsynchronized methods.
  
  Revision  Changes    Path
  No                   revision
  No                   revision
  1.1.2.2   +35 -3     xml-fop/src/java/org/apache/fop/area/Attic/Viewport.java
  
  Index: Viewport.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/Viewport.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- Viewport.java	24 Feb 2004 07:54:00 -0000	1.1.2.1
  +++ Viewport.java	28 Feb 2004 02:06:44 -0000	1.1.2.2
  @@ -19,10 +19,42 @@
    */
   package org.apache.fop.area;
   
  +import java.awt.geom.Rectangle2D;
  +
   /**
    * @author pbw
    * @version $Revision$ $Name$
    */
  -public interface Viewport {
  +public interface Viewport extends Cloneable {
  +    
  +    /**
  +     * @return the view area rectangle for this viewport
  +     */
  +    public abstract Rectangle2D getViewArea();
  +
  +    /**
  +     * @param viewArea to set
  +     */
  +    public abstract void setViewArea(Rectangle2D viewArea);
  +    
  +    /**
  +     * Sets the reference-area of this viewport/reference pair
  +     * @param ref
  +     */
  +    public abstract void setReferenceArea(ReferenceArea ref);
  +    
  +    /**
  +     * @return the reference-area of this viewport/reference pair
  +     */
  +    public abstract ReferenceArea getReferenceArea();
   
  +    /**
  +     * @param clip does this viewport clip its reference area?
  +     */
  +    public abstract void setClip(boolean clip);
  +    
  +    /**
  +     * @return whether this viewport clips its reference area
  +     */
  +    public abstract boolean getClip();
   }
  
  
  
  1.1.2.5   +10 -17    xml-fop/src/java/org/apache/fop/area/Attic/BlockArea.java
  
  Index: BlockArea.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/BlockArea.java,v
  retrieving revision 1.1.2.4
  retrieving revision 1.1.2.5
  diff -u -r1.1.2.4 -r1.1.2.5
  --- BlockArea.java	16 Feb 2004 00:15:29 -0000	1.1.2.4
  +++ BlockArea.java	28 Feb 2004 02:06:44 -0000	1.1.2.5
  @@ -20,6 +20,8 @@
   package org.apache.fop.area;
   
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * @author pbw
  @@ -29,22 +31,13 @@
   
       /**
        * @param parent of this node
  -     * @param index of this in children of parent
  -     * @throws IndexOutOfBoundsException
        */
  -    public BlockArea(Node parent, int index, Object areaSync)
  -    throws IndexOutOfBoundsException {
  -        super(parent, index, areaSync);
  -        // TODO Auto-generated constructor stub
  -    }
  -
  -    /**
  -     * @param parent of this node
  -     * @throws IndexOutOfBoundsException
  -     */
  -    public BlockArea(Node parent, Object areaSync)
  -    throws IndexOutOfBoundsException {
  -        super(parent, areaSync);
  +    public BlockArea(
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object sync) {
  +        super(pageSeq, generatedBy, parent, sync);
           // TODO Auto-generated constructor stub
       }
   
  
  
  
  1.1.2.4   +4 -2      xml-fop/src/java/org/apache/fop/area/Attic/ReferenceArea.java
  
  Index: ReferenceArea.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/ReferenceArea.java,v
  retrieving revision 1.1.2.3
  retrieving revision 1.1.2.4
  diff -u -r1.1.2.3 -r1.1.2.4
  --- ReferenceArea.java	23 Feb 2004 13:18:37 -0000	1.1.2.3
  +++ ReferenceArea.java	28 Feb 2004 02:06:44 -0000	1.1.2.4
  @@ -42,5 +42,7 @@
        * @return the current transformer to position this reference area.
        */
       public CoordTransformer getCoordTransformer();
  +    
  +    public Object clone();
           
   }
  
  
  
  1.1.2.2   +11 -4     xml-fop/src/java/org/apache/fop/area/Attic/RegionBeforeVport.java
  
  Index: RegionBeforeVport.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/RegionBeforeVport.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- RegionBeforeVport.java	24 Feb 2004 07:54:00 -0000	1.1.2.1
  +++ RegionBeforeVport.java	28 Feb 2004 02:06:44 -0000	1.1.2.2
  @@ -22,6 +22,8 @@
   import java.awt.geom.Rectangle2D;
   
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * @author pbw
  @@ -34,8 +36,13 @@
        * @param sync
        * @param viewArea
        */
  -    public RegionBeforeVport(Node parent, Object sync, Rectangle2D viewArea) {
  -        super(parent, sync, viewArea);
  +    public RegionBeforeVport(
  +            Rectangle2D viewArea,
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object sync) {
  +        super(viewArea, pageSeq, generatedBy, parent, sync);
           // TODO Auto-generated constructor stub
       }
   
  
  
  
  1.1.2.2   +9 -25     xml-fop/src/java/org/apache/fop/area/Attic/MainReferenceArea.java
  
  Index: MainReferenceArea.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/MainReferenceArea.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- MainReferenceArea.java	24 Feb 2004 07:54:00 -0000	1.1.2.1
  +++ MainReferenceArea.java	28 Feb 2004 02:06:44 -0000	1.1.2.2
  @@ -20,6 +20,8 @@
   import java.util.List;
   
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * The main body reference area.
  @@ -32,18 +34,18 @@
   extends AbstractReferenceArea
   implements ReferenceArea {
       private List spanAreas = new java.util.ArrayList();
  -    private int columnGap;
  -    private int width;
   
       /**
        * @param parent
        * @param areaSync
        * @throws IndexOutOfBoundsException
        */
  -    public MainReferenceArea(Node parent, Object areaSync)
  -    throws IndexOutOfBoundsException {
  -        super(parent, areaSync);
  -        // TODO Auto-generated constructor stub
  +    public MainReferenceArea(
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object areaSync) {
  +        super(pageSeq, generatedBy, parent, areaSync);
       }
       
       /**
  @@ -62,24 +64,6 @@
        */
       public List getSpans() {
           return spanAreas;
  -    }
  -
  -    /**
  -     * Get the column gap in millipoints.
  -     *
  -     * @return the column gap in millioints
  -     */
  -    public int getColumnGap() {
  -        return columnGap;
  -    }
  -
  -    /**
  -     * Get the width of this reference area.
  -     *
  -     * @return the width
  -     */
  -    public int getWidth() {
  -        return width;
       }
   
   }
  
  
  
  1.1.2.2   +11 -5     xml-fop/src/java/org/apache/fop/area/Attic/RegionAfterVport.java
  
  Index: RegionAfterVport.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/RegionAfterVport.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- RegionAfterVport.java	24 Feb 2004 07:54:00 -0000	1.1.2.1
  +++ RegionAfterVport.java	28 Feb 2004 02:06:44 -0000	1.1.2.2
  @@ -22,6 +22,8 @@
   import java.awt.geom.Rectangle2D;
   
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * @author pbw
  @@ -34,9 +36,13 @@
        * @param sync
        * @param viewArea
        */
  -    public RegionAfterVport(Node parent, Object sync, Rectangle2D viewArea) {
  -        super(parent, sync, viewArea);
  -        // TODO Auto-generated constructor stub
  +    public RegionAfterVport(
  +            Rectangle2D viewArea,
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object sync) {
  +        super(viewArea, pageSeq, generatedBy, parent, sync);
       }
   
   }
  
  
  
  1.1.2.2   +11 -5     xml-fop/src/java/org/apache/fop/area/Attic/RegionBodyVport.java
  
  Index: RegionBodyVport.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/RegionBodyVport.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- RegionBodyVport.java	24 Feb 2004 07:54:00 -0000	1.1.2.1
  +++ RegionBodyVport.java	28 Feb 2004 02:06:44 -0000	1.1.2.2
  @@ -22,6 +22,8 @@
   import java.awt.geom.Rectangle2D;
   
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * @author pbw
  @@ -34,9 +36,13 @@
        * @param sync
        * @param viewArea
        */
  -    public RegionBodyVport(Node parent, Object sync, Rectangle2D viewArea) {
  -        super(parent, sync, viewArea);
  -        // TODO Auto-generated constructor stub
  +    public RegionBodyVport(
  +            Rectangle2D viewArea,
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object sync) {
  +        super(viewArea, pageSeq, generatedBy, parent, sync);
       }
   
   }
  
  
  
  1.1.2.3   +57 -15    xml-fop/src/java/org/apache/fop/area/Attic/RegionBodyRefArea.java
  
  Index: RegionBodyRefArea.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/RegionBodyRefArea.java,v
  retrieving revision 1.1.2.2
  retrieving revision 1.1.2.3
  diff -u -r1.1.2.2 -r1.1.2.3
  --- RegionBodyRefArea.java	24 Feb 2004 08:53:03 -0000	1.1.2.2
  +++ RegionBodyRefArea.java	28 Feb 2004 02:06:44 -0000	1.1.2.3
  @@ -18,6 +18,8 @@
   package org.apache.fop.area;
   
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * The body region area.
  @@ -37,8 +39,28 @@
        * Create a new body region area.
        * This sets the region reference area class to BODY.
        */
  -    public RegionBodyRefArea(Node parent, Object sync) {
  -        super(parent, sync);
  +    public RegionBodyRefArea(
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object sync) {
  +        super(pageSeq, generatedBy, parent, sync);
  +    }
  +
  +    /**
  +     * Create a new body region area.
  +     * This sets the region reference area class to BODY.
  +     */
  +    public RegionBodyRefArea(
  +            int columnCount,
  +            int columnGap,
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object sync) {
  +        super(pageSeq, generatedBy, parent, sync);
  +        this.columnCount = columnCount;
  +        this.columnGap = columnGap;
       }
   
       /**
  @@ -47,7 +69,9 @@
        * @param colCount the number of columns
        */
       public void setColumnCount(int colCount) {
  -        this.columnCount = colCount;
  +        synchronized (sync) {
  +            this.columnCount = colCount;
  +        }
       }
   
       /**
  @@ -56,7 +80,9 @@
        * @return the number of columns
        */
       public int getColumnCount() {
  -        return this.columnCount;
  +        synchronized (sync) {
  +            return this.columnCount;
  +        }
       }
   
       /**
  @@ -66,10 +92,20 @@
        * @param colGap the column gap in millipoints
        */
       public void setColumnGap(int colGap) {
  -        this.columnGap = colGap;
  +        synchronized (sync) {
  +            this.columnGap = colGap;
  +        }
       }
   
       /**
  +     * @return the columnGap
  +     */
  +    public int getColumnGap() {
  +        synchronized (sync) {
  +            return columnGap;
  +        }
  +    }
  +    /**
        * Set the before float area.
        *
        * @param bf the before float area
  @@ -84,7 +120,9 @@
        * @param mr the main reference area
        */
       public void setMainReference(MainReferenceArea mr) {
  -        mainReference = mr;
  +        synchronized (sync) {
  +            mainReference = mr;
  +        }
       }
   
       /**
  @@ -111,7 +149,9 @@
        * @return the main reference area
        */
       public MainReferenceArea getMainReference() {
  -        return mainReference;
  +        synchronized (sync) {
  +            return mainReference;
  +        }
       }
   
       /**
  @@ -129,12 +169,14 @@
        * @return a shallow copy of this object
        */
       public Object clone() {
  -        RegionBodyRefArea br = (RegionBodyRefArea)(super.clone());
  -        br.columnGap = columnGap;
  -        br.columnCount = columnCount;
  -        //br.beforeFloat = beforeFloat;
  -        br.mainReference = mainReference;
  -        //br.footnote = footnote;
  -        return br;
  +        synchronized (sync) {
  +            RegionBodyRefArea br = (RegionBodyRefArea)(super.clone());
  +            br.columnGap = columnGap;
  +            br.columnCount = columnCount;
  +            //br.beforeFloat = beforeFloat;
  +            br.mainReference = mainReference;
  +            //br.footnote = footnote;
  +            return br;
  +        }
       }
   }
  
  
  
  1.1.2.2   +13 -6     xml-fop/src/java/org/apache/fop/area/Attic/RegionEndRefArea.java
  
  Index: RegionEndRefArea.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/RegionEndRefArea.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- RegionEndRefArea.java	24 Feb 2004 07:54:00 -0000	1.1.2.1
  +++ RegionEndRefArea.java	28 Feb 2004 02:06:44 -0000	1.1.2.2
  @@ -20,20 +20,27 @@
   package org.apache.fop.area;
   
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * @author pbw
    * @version $Revision$ $Name$
    */
  -public class RegionEndRefArea extends RegionRefArea implements ReferenceArea {
  +public class RegionEndRefArea
  +extends RegionRefArea
  +implements ReferenceArea {
   
       /**
        * @param parent
        * @param sync
        */
  -    public RegionEndRefArea(Node parent, Object sync) {
  -        super(parent, sync);
  -        // TODO Auto-generated constructor stub
  +    public RegionEndRefArea(
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object sync) {
  +        super(pageSeq, generatedBy, parent, sync);
       }
   
   }
  
  
  
  1.1.2.7   +89 -20    xml-fop/src/java/org/apache/fop/area/Area.java
  
  Index: Area.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Area.java,v
  retrieving revision 1.1.2.6
  retrieving revision 1.1.2.7
  diff -u -r1.1.2.6 -r1.1.2.7
  --- Area.java	25 Feb 2004 12:28:58 -0000	1.1.2.6
  +++ Area.java	28 Feb 2004 02:06:44 -0000	1.1.2.7
  @@ -20,6 +20,8 @@
   
   import org.apache.fop.datastructs.Node;
   import org.apache.fop.datastructs.SyncedNode;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * @author pbw
  @@ -37,6 +39,10 @@
    */
   public class Area extends SyncedNode implements Cloneable  {
   
  +    /** The page-sequence which generated this area. */
  +    protected FoPageSequence pageSeq = null;
  +    /** The FO node that generated this node. */
  +    protected FONode generatedBy = null;
       /** Current inline progression dimension.  May be unknown. */
       protected Integer iPDim = null;
       /** Maximum required inline progression dimension.  May be unknown. */
  @@ -51,115 +57,178 @@
       protected Integer bPDimMin = null;
       
       /**
  +     * @param pageSeq through which this area was generated
  +     * @param generatedBy the given <code>FONode</code> generated this
        * @param parent <code>Node</code> of this
        * @param index of this in children of parent
  +     * @param sync the object on which this area is synchronized
        * @throws IndexOutOfBoundsException
        */
  -    public Area(Node parent, int index, Object areaSync)
  +    public Area(
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            int index,
  +            Object sync)
           throws IndexOutOfBoundsException {
  -        super(parent, index, areaSync);
  -        // TODO Auto-generated constructor stub
  +        super(parent, index, sync);
  +        this.pageSeq = pageSeq;
  +        this.generatedBy = generatedBy;
       }
   
       /**
  +     * @param pageSeq through which this area was generated
  +     * @param generatedBy the given <code>FONode</code> generated this
        * @param parent <code>Node</code> of this
  +     * @param sync the object on which this area is synchronized
        * @throws IndexOutOfBoundsException
        */
  -    public Area(Node parent, Object areaSync)
  -        throws IndexOutOfBoundsException {
  -        super(parent, areaSync);
  -        // TODO Auto-generated constructor stub
  +    public Area(
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object sync) {
  +        super(parent, sync);
  +        this.pageSeq = pageSeq;
  +        this.generatedBy = generatedBy;
       }
   
       /**
        * Construct an <code>Area</code> which is the root of a tree, and is
        * synchronized on itself
  +     * @param pageSeq through which this area was generated
  +     * @param generatedBy the given <code>FONode</code> generated this
        */
  -    public Area() {
  +    public Area(
  +            FoPageSequence pageSeq,
  +            FONode generatedBy) {
           super();
  +        this.pageSeq = pageSeq;
  +        this.generatedBy = generatedBy;
  +    }
  +
  +    /**
  +     * @return the generatedBy
  +     */
  +    public FONode getGeneratedBy() {
  +        synchronized (sync) {
  +            return generatedBy;
  +        }
  +    }
  +    /**
  +     * @param generatedBy to set
  +     */
  +    public void setGeneratedBy(FONode generatedBy) {
  +        synchronized (sync) {
  +            this.generatedBy = generatedBy;
  +        }
       }
       /**
        * @return the bPDim
        */
       public Integer getBPDim() {
  -        return bPDim;
  +        synchronized (sync) {
  +            return bPDim;
  +        }
       }
   
       /**
        * @param dim to set
        */
       public void setBPDim(Integer dim) {
  -        bPDim = dim;
  +        synchronized (sync) {
  +            bPDim = dim;
  +        }
       }
   
       /**
        * @return the bPDimMax
        */
       public Integer getBPDimMax() {
  -        return bPDimMax;
  +        synchronized (sync) {
  +            return bPDimMax;
  +        }
       }
   
       /**
        * @param dimMax to set
        */
       public void setBPDimMax(Integer dimMax) {
  -        bPDimMax = dimMax;
  +        synchronized (sync) {
  +            bPDimMax = dimMax;
  +        }
       }
   
       /**
        * @return the bPDimMin
        */
       public Integer getBPDimMin() {
  -        return bPDimMin;
  +        synchronized (sync) {
  +            return bPDimMin;
  +        }
       }
   
       /**
        * @param dimMin to set
        */
       public void setBPDimMin(Integer dimMin) {
  -        bPDimMin = dimMin;
  +        synchronized (sync) {
  +            bPDimMin = dimMin;
  +        }
       }
   
       /**
        * @return the iPDim
        */
       public Integer getIPDim() {
  -        return iPDim;
  +        synchronized (sync) {
  +            return iPDim;
  +        }
       }
   
       /**
        * @param dim to set
        */
       public void setIPDim(Integer dim) {
  -        iPDim = dim;
  +        synchronized (sync) {
  +            iPDim = dim;
  +        }
       }
   
       /**
        * @return the iPDimMax
        */
       public Integer getIPDimMax() {
  -        return iPDimMax;
  +        synchronized(sync) {
  +            return iPDimMax;
  +        }
       }
   
       /**
        * @param dimMax to set
        */
       public void setIPDimMax(Integer dimMax) {
  -        iPDimMax = dimMax;
  +        synchronized (sync) {
  +            iPDimMax = dimMax;
  +        }
       }
   
       /**
        * @return the iPDimMin
        */
       public Integer getIPDimMin() {
  -        return iPDimMin;
  +        synchronized (sync) {
  +            return iPDimMin;
  +        }
       }
   
       /**
        * @param dimMin to set
        */
       public void setIPDimMin(Integer dimMin) {
  -        iPDimMin = dimMin;
  +        synchronized (sync) {
  +            iPDimMin = dimMin;
  +        }
       }
   
   }
  
  
  
  1.1.2.2   +20 -22    xml-fop/src/java/org/apache/fop/area/Attic/AbstractReferenceArea.java
  
  Index: AbstractReferenceArea.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/AbstractReferenceArea.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- AbstractReferenceArea.java	24 Feb 2004 07:54:00 -0000	1.1.2.1
  +++ AbstractReferenceArea.java	28 Feb 2004 02:06:44 -0000	1.1.2.2
  @@ -19,6 +19,8 @@
   package org.apache.fop.area;
   
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * @author pbw
  @@ -32,25 +34,17 @@
       protected CoordTransformer transformer = new CoordTransformer();
   
       /**
  -     * @param parent
  -     * @param index
  -     * @param areaSync
  -     * @throws IndexOutOfBoundsException
  +     * @param pageSeq through which this area was generated
  +     * @param generatedBy the given <code>FONode</code> generated this
  +     * @param parent area of this
  +     * @param sync object on which operations in this are synchronized
        */
  -    public AbstractReferenceArea(Node parent, int index, Object areaSync)
  -        throws IndexOutOfBoundsException {
  -        super(parent, index, areaSync);
  -        // TODO Auto-generated constructor stub
  -    }
  -
  -    /**
  -     * @param parent
  -     * @param areaSync
  -     * @throws IndexOutOfBoundsException
  -     */
  -    public AbstractReferenceArea(Node parent, Object areaSync)
  -        throws IndexOutOfBoundsException {
  -        super(parent, areaSync);
  +    public AbstractReferenceArea(
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object sync) {
  +        super(pageSeq, generatedBy, parent, sync);
           // TODO Auto-generated constructor stub
       }
   
  @@ -64,7 +58,9 @@
        * @param transformer to position this reference area
        */
       public void setCoordTransformer(CoordTransformer transformer) {
  -        this.transformer = transformer;
  +        synchronized (sync) {
  +            this.transformer = transformer;
  +        }
       }
   
       /**
  @@ -73,7 +69,9 @@
        * @return the current transformer to position this reference area
        */
       public CoordTransformer getCoordTransformer() {
  -        return this.transformer;
  +        synchronized (sync) {
  +            return this.transformer;
  +        }
       }
   
       /**
  
  
  
  1.1.2.5   +10 -17    xml-fop/src/java/org/apache/fop/area/Attic/BlockContainer.java
  
  Index: BlockContainer.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/BlockContainer.java,v
  retrieving revision 1.1.2.4
  retrieving revision 1.1.2.5
  diff -u -r1.1.2.4 -r1.1.2.5
  --- BlockContainer.java	23 Feb 2004 13:18:37 -0000	1.1.2.4
  +++ BlockContainer.java	28 Feb 2004 02:06:44 -0000	1.1.2.5
  @@ -20,6 +20,8 @@
   package org.apache.fop.area;
   
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * @author pbw
  @@ -31,22 +33,13 @@
   
       /**
        * @param parent
  -     * @param index
  -     * @throws IndexOutOfBoundsException
        */
  -    public BlockContainer(Node parent, int index, Object areaSync)
  -        throws IndexOutOfBoundsException {
  -        super(parent, index, areaSync);
  -        // TODO Auto-generated constructor stub
  -    }
  -
  -    /**
  -     * @param parent
  -     * @throws IndexOutOfBoundsException
  -     */
  -    public BlockContainer(Node parent, Object areaSync)
  -    throws IndexOutOfBoundsException {
  -        super(parent, areaSync);
  +    public BlockContainer(
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object areaSync) {
  +        super(pageSeq, generatedBy, parent, areaSync);
           // TODO Auto-generated constructor stub
       }
   
  
  
  
  1.1.2.2   +10 -17    xml-fop/src/java/org/apache/fop/area/Attic/FootnoteRefArea.java
  
  Index: FootnoteRefArea.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/FootnoteRefArea.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- FootnoteRefArea.java	24 Feb 2004 13:41:27 -0000	1.1.2.1
  +++ FootnoteRefArea.java	28 Feb 2004 02:06:44 -0000	1.1.2.2
  @@ -20,6 +20,8 @@
   package org.apache.fop.area;
   
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * @author pbw
  @@ -31,25 +33,16 @@
   
       /**
        * @param parent
  -     * @param index
        * @param areaSync
        * @throws IndexOutOfBoundsException
        */
  -    public FootnoteRefArea(Node parent, int index, Object areaSync)
  +    public FootnoteRefArea(
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object areaSync)
           throws IndexOutOfBoundsException {
  -        super(parent, index, areaSync);
  -        // TODO Auto-generated constructor stub
  -    }
  -
  -    /**
  -     * @param parent
  -     * @param areaSync
  -     * @throws IndexOutOfBoundsException
  -     */
  -    public FootnoteRefArea(Node parent, Object areaSync)
  -        throws IndexOutOfBoundsException {
  -        super(parent, areaSync);
  -        // TODO Auto-generated constructor stub
  +        super(pageSeq, generatedBy, parent, areaSync);
       }
   
   }
  
  
  
  1.1.2.2   +11 -5     xml-fop/src/java/org/apache/fop/area/Attic/RegionStartVport.java
  
  Index: RegionStartVport.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/RegionStartVport.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- RegionStartVport.java	24 Feb 2004 07:54:00 -0000	1.1.2.1
  +++ RegionStartVport.java	28 Feb 2004 02:06:44 -0000	1.1.2.2
  @@ -22,6 +22,8 @@
   import java.awt.geom.Rectangle2D;
   
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * @author pbw
  @@ -34,9 +36,13 @@
        * @param sync
        * @param viewArea
        */
  -    public RegionStartVport(Node parent, Object sync, Rectangle2D viewArea) {
  -        super(parent, sync, viewArea);
  -        // TODO Auto-generated constructor stub
  +    public RegionStartVport(
  +            Rectangle2D viewArea,
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object sync) {
  +        super(viewArea, pageSeq, generatedBy, parent, sync);
       }
   
   }
  
  
  
  1.1.2.2   +11 -18    xml-fop/src/java/org/apache/fop/area/Attic/BeforeFloatRefArea.java
  
  Index: BeforeFloatRefArea.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/BeforeFloatRefArea.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- BeforeFloatRefArea.java	24 Feb 2004 13:41:27 -0000	1.1.2.1
  +++ BeforeFloatRefArea.java	28 Feb 2004 02:06:44 -0000	1.1.2.2
  @@ -20,6 +20,8 @@
   package org.apache.fop.area;
   
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * @author pbw
  @@ -30,26 +32,17 @@
       implements ReferenceArea {
   
       /**
  +     * @param pageSeq through which this area was generated
        * @param parent
  -     * @param index
        * @param areaSync
        * @throws IndexOutOfBoundsException
        */
  -    public BeforeFloatRefArea(Node parent, int index, Object areaSync)
  -        throws IndexOutOfBoundsException {
  -        super(parent, index, areaSync);
  -        // TODO Auto-generated constructor stub
  -    }
  -
  -    /**
  -     * @param parent
  -     * @param areaSync
  -     * @throws IndexOutOfBoundsException
  -     */
  -    public BeforeFloatRefArea(Node parent, Object areaSync)
  -        throws IndexOutOfBoundsException {
  -        super(parent, areaSync);
  -        // TODO Auto-generated constructor stub
  +    public BeforeFloatRefArea(
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object areaSync) {
  +        super(pageSeq, generatedBy, parent, areaSync);
       }
   
   }
  
  
  
  1.1.2.2   +11 -5     xml-fop/src/java/org/apache/fop/area/Attic/RegionEndVport.java
  
  Index: RegionEndVport.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/RegionEndVport.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- RegionEndVport.java	24 Feb 2004 07:54:00 -0000	1.1.2.1
  +++ RegionEndVport.java	28 Feb 2004 02:06:44 -0000	1.1.2.2
  @@ -22,6 +22,8 @@
   import java.awt.geom.Rectangle2D;
   
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * @author pbw
  @@ -34,9 +36,13 @@
        * @param sync
        * @param viewArea
        */
  -    public RegionEndVport(Node parent, Object sync, Rectangle2D viewArea) {
  -        super(parent, sync, viewArea);
  -        // TODO Auto-generated constructor stub
  +    public RegionEndVport(
  +            Rectangle2D viewArea,
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object sync) {
  +        super(viewArea, pageSeq, generatedBy, parent, sync);
       }
   
   }
  
  
  
  1.1.2.2   +10 -4     xml-fop/src/java/org/apache/fop/area/Attic/RegionStartRefArea.java
  
  Index: RegionStartRefArea.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/RegionStartRefArea.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- RegionStartRefArea.java	24 Feb 2004 07:54:00 -0000	1.1.2.1
  +++ RegionStartRefArea.java	28 Feb 2004 02:06:44 -0000	1.1.2.2
  @@ -20,6 +20,8 @@
   package org.apache.fop.area;
   
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * @author pbw
  @@ -33,8 +35,12 @@
        * @param parent
        * @param sync
        */
  -    public RegionStartRefArea(Node parent, Object sync) {
  -        super(parent, sync);
  +    public RegionStartRefArea(
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object sync) {
  +        super(pageSeq, generatedBy, parent, sync);
           // TODO Auto-generated constructor stub
       }
   
  
  
  
  1.1.2.2   +56 -13    xml-fop/src/java/org/apache/fop/area/Span.java
  
  Index: Span.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Span.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- Span.java	24 Feb 2004 07:54:00 -0000	1.1.2.1
  +++ Span.java	28 Feb 2004 02:06:44 -0000	1.1.2.2
  @@ -20,7 +20,10 @@
   import java.io.Serializable;
   import java.util.List;
   
  +import org.apache.fop.apps.FOPException;
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * The span reference areas are children of the main-reference-area
  @@ -30,29 +33,69 @@
   public class Span
   extends AbstractReferenceArea
   implements ReferenceArea, Serializable {
  -    // the list of flow reference areas in this span area
  +    // the list of normal-flow-reference-areas in this span area
       private List flowAreas;
       
  -    private Integer cols;
  +    private NormalFlowRefArea currentFlowArea = null;
  +    
  +    /**
  +     * Number of columns in this span.  Derived from the <code>span</code>
  +     * property on the fo:flow and the column-count prooperty on the
  +     * region-body-reference-area.  Defaults to 1.
  +     */
  +    private int columnCount = 1;
   
       /**
  -     * Create a span area with the number of columns for this span area.
  -     *
  -     * @param cols the number of columns in the span
  +     * Create a span area with the number of columns for .
  +     * Span-reference-areas are children of main-reference-areas.
        */
  -    public Span(Node parent, Object sync, Integer cols) {
  -        super(parent, sync);
  -        this.cols = cols;
  +    public Span(
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object sync) {
  +        super(pageSeq, generatedBy, parent, sync);
       }
   
       /**
  -     * Get the column count for this span area.
  -     *
  -     * @return the number of columns in this span area
  +     * Create a span area with the number of columns for .
  +     * Span-reference-areas are children of main-reference-areas.
        */
  -    public Integer getColumnCount() {
  -        return cols;
  +    public Span(
  +            int columnCount,
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object sync) {
  +        super(pageSeq, generatedBy, parent, sync);
  +        this.columnCount =  columnCount;
       }
   
  +    /**
  +     * @return the column count
  +     */
  +    public int getColumnCount() {
  +        synchronized (sync) {
  +            return columnCount;
  +        }
  +    }
  +    /**
  +     * Set spanning condition, only if no main-reference-area exists
  +     */
  +    public void setColumnCount(int columnCount) throws FOPException {
  +        if (flowAreas == null) {
  +            this.columnCount = columnCount;
  +        }
  +        else {
  +            throw new FOPException("normal-flow-reference-areas exist");
  +        }
  +    }
  +    
  +    public boolean activeFlowRefAreas() {
  +        if (flowAreas == null && currentFlowArea == null) {
  +            return false;
  +        }
  +        return true;
  +    }
   }
   
  
  
  
  1.1.2.2   +9 -3      xml-fop/src/java/org/apache/fop/area/Attic/RegionRefArea.java
  
  Index: RegionRefArea.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/RegionRefArea.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- RegionRefArea.java	24 Feb 2004 07:54:00 -0000	1.1.2.1
  +++ RegionRefArea.java	28 Feb 2004 02:06:44 -0000	1.1.2.2
  @@ -21,6 +21,8 @@
   import java.util.List;
   
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * This is an abstract reference area for the page regions - currently
  @@ -37,8 +39,12 @@
       /**
        * Create a new region reference area.
        */
  -    public RegionRefArea(Node parent, Object sync) {
  -        super(parent, sync);
  +    public RegionRefArea(
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object sync) {
  +        super(pageSeq, generatedBy, parent, sync);
       }
   
       /**
  
  
  
  1.2.2.3   +196 -146  xml-fop/src/java/org/apache/fop/area/PageViewport.java
  
  Index: PageViewport.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/PageViewport.java,v
  retrieving revision 1.2.2.2
  retrieving revision 1.2.2.3
  diff -u -r1.2.2.2 -r1.2.2.3
  --- PageViewport.java	25 Feb 2004 22:02:25 -0000	1.2.2.2
  +++ PageViewport.java	28 Feb 2004 02:06:44 -0000	1.2.2.3
  @@ -18,6 +18,7 @@
   package org.apache.fop.area;
   
   import java.awt.geom.Rectangle2D;
  +import java.io.IOException;
   import java.io.ObjectOutputStream;
   import java.io.ObjectInputStream;
   import java.util.ArrayList;
  @@ -27,6 +28,8 @@
   import java.util.Iterator;
   
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   import org.apache.fop.fo.properties.RetrievePosition;
   
   /**
  @@ -39,13 +42,12 @@
    * The page reference area is then rendered inside the PageRefArea object
    */
   public class PageViewport
  -extends Area
  -implements Viewport, Resolveable, Cloneable {
  +extends AbstractViewport
  +implements Viewport, Resolveable {
   
  +    /** Unique ID for this page.  0 is an invalid ID.  */
       private long pageId = 0;
  -    private PageRefArea pageRefArea;
  -    private Rectangle2D viewArea;
  -    private boolean clip = false;
  +    /** The formatted page number */
       private String pageNumber = null;
   
       // list of id references and the rectangle on the page
  @@ -73,11 +75,15 @@
        * @param p the page reference area for the contents of this page
        * @param bounds the dimensions of the viewport
        */
  -    public PageViewport(long pageId, PageRefArea p, Rectangle2D bounds) {
  -        super();
  +    public PageViewport(
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            long pageId,
  +            Rectangle2D bounds,
  +            PageRefArea p) {
  +        super(bounds, pageSeq, generatedBy);
           this.pageId = pageId;
  -        pageRefArea = p;
  -        viewArea = bounds;
  +        refArea = p;
       }
   
       /**
  @@ -89,12 +95,16 @@
        * @param bounds the dimensions of the viewport
        */
       public PageViewport(
  -            Node parent, Object sync, long pageId,
  -            PageRefArea p, Rectangle2D bounds) {
  -        super(parent, sync);
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            long pageId,
  +            Rectangle2D bounds,
  +            PageRefArea p,
  +            Node parent,
  +            Object sync) {
  +        super(bounds, pageSeq, generatedBy, parent, sync);
           this.pageId = pageId;
  -        pageRefArea = p;
  -        viewArea = bounds;
  +        refArea = p;
       }
   
       /**
  @@ -103,35 +113,44 @@
        * @param sync
        * @param pageId
        */
  -    public PageViewport(Node parent, Object sync, long pageId) {
  -        super(parent, sync);
  +    public PageViewport(
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            long pageId,
  +            Node parent,
  +            Object sync) {
  +        super(pageSeq, generatedBy, parent, sync);
           this.pageId = pageId;
  -        pageRefArea = null;
  +        refArea = null;
           viewArea = null;
       }
  -    
  +
       /**
  -     * Set if this viewport should clip.
  -     * @param c true if this viewport should clip
  +     * @return the pageId
        */
  -    public void setClip(boolean c) {
  -        clip = c;
  +    public long getPageId() {
  +        synchronized (sync) {
  +            return pageId;
  +        }
       }
   
       /**
  -     * Get the view area rectangle of this viewport.
  -     * @return the rectangle for this viewport
  +     * @param pageId to set
        */
  -    public Rectangle2D getViewArea() {
  -        return viewArea;
  +    public void setPageId(long pageId) {
  +        synchronized (sync) {
  +            this.pageId = pageId;
  +        }
       }
  -
  +    
       /**
        * Get the page reference area with the contents.
        * @return the page reference area
        */
       public PageRefArea getPageRefArea() {
  -        return pageRefArea;
  +        synchronized (sync) {
  +            return (PageRefArea)getReferenceArea();
  +        }
       }
   
       /**
  @@ -139,7 +158,9 @@
        * @param num the string representing the page number
        */
       public void setPageNumber(String num) {
  -        pageNumber = num;
  +        synchronized (sync) {
  +            pageNumber = num;
  +        }
       }
   
       /**
  @@ -147,7 +168,9 @@
        * @return the string that represents this page
        */
       public String getPageNumber() {
  -        return pageNumber;
  +        synchronized (sync) {
  +            return pageNumber;
  +        }
       }
   
       /**
  @@ -159,15 +182,17 @@
        * @param res the resolver of the reference
        */
       public void addUnresolvedID(String id, Resolveable res) {
  -        if (unresolved == null) {
  -            unresolved = new HashMap();
  -        }
  -        List list = (List)unresolved.get(id);
  -        if (list == null) {
  -            list = new ArrayList();
  -            unresolved.put(id, list);
  +        synchronized (sync) {
  +            if (unresolved == null) {
  +                unresolved = new HashMap();
  +            }
  +            List list = (List)unresolved.get(id);
  +            if (list == null) {
  +                list = new ArrayList();
  +                unresolved.put(id, list);
  +            }
  +            list.add(res);
           }
  -        list.add(res);
       }
   
       /**
  @@ -175,7 +200,9 @@
        * @return true if the page is resolved and can be rendered
        */
       public boolean isResolved() {
  -        return unresolved == null;
  +        synchronized (sync) {
  +            return unresolved == null;
  +        }
       }
   
       /**
  @@ -194,26 +221,28 @@
        *              may be null if not found
        */
       public void resolve(String id, List pages) {
  -        if (pageRefArea == null) {
  -            if (pendingResolved == null) {
  -                pendingResolved = new HashMap();
  -            }
  -            pendingResolved.put(id, pages);
  -        } else {
  -            if (unresolved != null) {
  -                List todo = (List)unresolved.get(id);
  -                if (todo != null) {
  -                    for (int count = 0; count < todo.size(); count++) {
  -                        Resolveable res = (Resolveable)todo.get(count);
  -                        res.resolve(id, pages);
  +        synchronized (sync) {
  +            if (refArea == null) {
  +                if (pendingResolved == null) {
  +                    pendingResolved = new HashMap();
  +                }
  +                pendingResolved.put(id, pages);
  +            } else {
  +                if (unresolved != null) {
  +                    List todo = (List)unresolved.get(id);
  +                    if (todo != null) {
  +                        for (int count = 0; count < todo.size(); count++) {
  +                            Resolveable res = (Resolveable)todo.get(count);
  +                            res.resolve(id, pages);
  +                        }
                       }
                   }
               }
  -        }
  -        if (unresolved != null) {
  -            unresolved.remove(id);
  -            if (unresolved.isEmpty()) {
  -                unresolved = null;
  +            if (unresolved != null) {
  +                unresolved.remove(id);
  +                if (unresolved.isEmpty()) {
  +                    unresolved = null;
  +                }
               }
           }
       }
  @@ -238,55 +267,60 @@
        * @param isfirst isfirst or islast flag
        */
       public void addMarkers(Map marks, boolean start, boolean isfirst) {
  -        if (start) {
  -            if (isfirst) {
  -                if (markerFirstStart == null) {
  -                    markerFirstStart = new HashMap();
  -                }
  -                if (markerFirstAny == null) {
  -                    markerFirstAny = new HashMap();
  -                }
  -                // only put in new values, leave current
  -                for (Iterator iter = marks.keySet().iterator(); iter.hasNext();) {
  -                    Object key = iter.next();
  -                    if (!markerFirstStart.containsKey(key)) {
  -                        markerFirstStart.put(key, marks.get(key));
  +        synchronized (sync) {
  +            if (start) {
  +                if (isfirst) {
  +                    if (markerFirstStart == null) {
  +                        markerFirstStart = new HashMap();
                       }
  -                    if (!markerFirstAny.containsKey(key)) {
  -                        markerFirstAny.put(key, marks.get(key));
  +                    if (markerFirstAny == null) {
  +                        markerFirstAny = new HashMap();
  +                    }
  +                    // only put in new values, leave current
  +                    for (
  +                            Iterator iter = marks.keySet().iterator();
  +                            iter.hasNext();
  +                            ) {
  +                        Object key = iter.next();
  +                        if (!markerFirstStart.containsKey(key)) {
  +                            markerFirstStart.put(key, marks.get(key));
  +                        }
  +                        if (!markerFirstAny.containsKey(key)) {
  +                            markerFirstAny.put(key, marks.get(key));
  +                        }
  +                    }
  +                    if (markerLastStart == null) {
  +                        markerLastStart = new HashMap();
  +                    }
  +                    // replace all
  +                    markerLastStart.putAll(marks);
  +                    
  +                } else {
  +                    if (markerFirstAny == null) {
  +                        markerFirstAny = new HashMap();
  +                    }
  +                    // only put in new values, leave current
  +                    for (Iterator iter = marks.keySet().iterator(); iter.hasNext();) {
  +                        Object key = iter.next();
  +                        if (!markerFirstAny.containsKey(key)) {
  +                            markerFirstAny.put(key, marks.get(key));
  +                        }
                       }
                   }
  -                if (markerLastStart == null) {
  -                    markerLastStart = new HashMap();
  -                }
  -                // replace all
  -                markerLastStart.putAll(marks);
  -
               } else {
  -                if (markerFirstAny == null) {
  -                    markerFirstAny = new HashMap();
  -                }
  -                // only put in new values, leave current
  -                for (Iterator iter = marks.keySet().iterator(); iter.hasNext();) {
  -                    Object key = iter.next();
  -                    if (!markerFirstAny.containsKey(key)) {
  -                        markerFirstAny.put(key, marks.get(key));
  +                if (!isfirst) {
  +                    if (markerLastEnd == null) {
  +                        markerLastEnd = new HashMap();
                       }
  +                    // replace all
  +                    markerLastEnd.putAll(marks);
                   }
  -            }
  -        } else {
  -            if (!isfirst) {
  -                if (markerLastEnd == null) {
  -                    markerLastEnd = new HashMap();
  +                if (markerLastAny == null) {
  +                    markerLastAny = new HashMap();
                   }
                   // replace all
  -                markerLastEnd.putAll(marks);
  +                markerLastAny.putAll(marks);
               }
  -            if (markerLastAny == null) {
  -                markerLastAny = new HashMap();
  -            }
  -            // replace all
  -            markerLastAny.putAll(marks);
           }
       }
   
  @@ -300,39 +334,41 @@
        * @return Object the marker found or null
        */
       public Object getMarker(String name, int pos) {
  -        Object mark = null;
  -        switch (pos) {
  -            case RetrievePosition.FIRST_STARTING_WITHIN_PAGE:
  -                if (markerFirstStart != null) {
  -                    mark = markerFirstStart.get(name);
  -                }
  +        synchronized (sync) {
  +            Object mark = null;
  +            switch (pos) {
  +                case RetrievePosition.FIRST_STARTING_WITHIN_PAGE:
  +                    if (markerFirstStart != null) {
  +                        mark = markerFirstStart.get(name);
  +                    }
                   if (mark == null && markerFirstAny != null) {
                       mark = markerFirstAny.get(name);
                   }
  -            break;
  -            case RetrievePosition.FIRST_INCLUDING_CARRYOVER:
  -                if (markerFirstAny != null) {
  -                    mark = markerFirstAny.get(name);
  -                }
  -            break;
  -            case RetrievePosition.LAST_STARTING_WITHIN_PAGE:
  -                if (markerLastStart != null) {
  -                    mark = markerLastStart.get(name);
  -                }
  +                break;
  +                case RetrievePosition.FIRST_INCLUDING_CARRYOVER:
  +                    if (markerFirstAny != null) {
  +                        mark = markerFirstAny.get(name);
  +                    }
  +                break;
  +                case RetrievePosition.LAST_STARTING_WITHIN_PAGE:
  +                    if (markerLastStart != null) {
  +                        mark = markerLastStart.get(name);
  +                    }
                   if (mark == null && markerLastAny != null) {
                       mark = markerLastAny.get(name);
                   }
  -            break;
  -            case RetrievePosition.LAST_ENDING_WITHIN_PAGE:
  -                if (markerLastEnd != null) {
  -                    mark = markerLastEnd.get(name);
  -                }
  +                break;
  +                case RetrievePosition.LAST_ENDING_WITHIN_PAGE:
  +                    if (markerLastEnd != null) {
  +                        mark = markerLastEnd.get(name);
  +                    }
                   if (mark == null && markerLastAny != null) {
                       mark = markerLastAny.get(name);
                   }
  -            break;
  +                break;
  +            }
  +            return mark;
           }
  -        return mark;
       }
   
       /**
  @@ -340,13 +376,18 @@
        * The map of unresolved references are set on the pageRefArea so that
        * the resolvers can be properly serialized and reloaded.
        * @param out the object output stream to write the contents
  -     * @throws Exception if there is a problem saving the pageRefArea
        */
  -    public void savePage(ObjectOutputStream out) throws Exception {
  +    public void savePage(ObjectOutputStream out) {
           // set the unresolved references so they are serialized
  -        pageRefArea.setUnresolvedReferences(unresolved);
  -        out.writeObject(pageRefArea);
  -        pageRefArea = null;
  +        synchronized (sync) {
  +            ((PageRefArea)refArea).setUnresolvedReferences(unresolved);
  +            try {
  +                out.writeObject(refArea);
  +            } catch (IOException e) {
  +                throw new RuntimeException(e);
  +            }
  +            refArea = null;
  +        }
       }
   
       /**
  @@ -358,15 +399,18 @@
        * @throws Exception if there is an error loading the pageRefArea
        */
       public void loadPage(ObjectInputStream in) throws Exception {
  -        pageRefArea = (PageRefArea) in.readObject();
  -        unresolved = pageRefArea.getUnresolvedReferences();
  -        if (unresolved != null && pendingResolved != null) {
  -            for (Iterator iter = pendingResolved.keySet().iterator();
  -                         iter.hasNext();) {
  -                String id = (String) iter.next();
  -                resolve(id, (List)pendingResolved.get(id));
  +        synchronized (sync) {
  +            PageRefArea pageRefArea = (PageRefArea) in.readObject();
  +            refArea = pageRefArea;
  +            unresolved = pageRefArea.getUnresolvedReferences();
  +            if (unresolved != null && pendingResolved != null) {
  +                for (Iterator iter = pendingResolved.keySet().iterator();
  +                iter.hasNext();) {
  +                    String id = (String) iter.next();
  +                    resolve(id, (List)pendingResolved.get(id));
  +                }
  +                pendingResolved = null;
               }
  -            pendingResolved = null;
           }
       }
   
  @@ -376,15 +420,17 @@
        * @return a copy of this page and associated viewports
        */
       public Object clone() {
  -        PageViewport pv;
  -        try {
  -            pv = (PageViewport)(super.clone());
  -        } catch (CloneNotSupportedException e) {
  -            throw new RuntimeException(e);
  -        }
  -        pageId = 0;  // N.B. This invalidates the page id
  -        pv.pageRefArea = (PageRefArea)pageRefArea.clone();
  -        return pv;
  +        synchronized (sync) {
  +            PageViewport pv;
  +            try {
  +                pv = (PageViewport)(super.clone());
  +            } catch (CloneNotSupportedException e) {
  +                throw new RuntimeException(e);
  +            }
  +            pageId = 0;  // N.B. This invalidates the page id
  +            pv.refArea = (PageRefArea)(refArea.clone());
  +            return pv;
  +        }
       }
   
       /**
  @@ -393,16 +439,20 @@
        * it holds id and marker information and is used as a key.
        */
       public void clear() {
  -        pageRefArea = null;
  +        synchronized (sync) {
  +            refArea = null;
  +        }
       }
       
       /**
        * @see java.lang.Object#toString()
        */
       public String toString() {
  -        StringBuffer sb = new StringBuffer(64);
  -        sb.append("PageViewport: page=");
  -        sb.append(getPageNumber());
  -        return sb.toString();
  +        synchronized (sync) {
  +            StringBuffer sb = new StringBuffer(64);
  +            sb.append("PageViewport: page=");
  +            sb.append(getPageNumber());
  +            return sb.toString();
  +        }
       }
   }
  
  
  
  1.1.2.2   +23 -46    xml-fop/src/java/org/apache/fop/area/Attic/PageRefArea.java
  
  Index: PageRefArea.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/PageRefArea.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- PageRefArea.java	24 Feb 2004 07:54:00 -0000	1.1.2.1
  +++ PageRefArea.java	28 Feb 2004 02:06:44 -0000	1.1.2.2
  @@ -1,52 +1,19 @@
   /*
  - * $Id$
  - * ============================================================================
  - *                    The Apache Software License, Version 1.1
  - * ============================================================================
  - *
  - * Copyright (C) 1999-2003 The Apache Software Foundation. All rights reserved.
  - *
  - * Redistribution and use in source and binary forms, with or without modifica-
  - * tion, are permitted provided that the following conditions are met:
  - *
  - * 1. Redistributions of source code must retain the above copyright notice,
  - *    this list of conditions and the following disclaimer.
  - *
  - * 2. Redistributions in binary form must reproduce the above copyright notice,
  - *    this list of conditions and the following disclaimer in the documentation
  - *    and/or other materials provided with the distribution.
  + * Copyright 1999-2004 The Apache Software Foundation.
    *
  - * 3. The end-user documentation included with the redistribution, if any, must
  - *    include the following acknowledgment: "This product includes software
  - *    developed by the Apache Software Foundation (http://www.apache.org/)."
  - *    Alternately, this acknowledgment may appear in the software itself, if
  - *    and wherever such third-party acknowledgments normally appear.
  + * Licensed under the Apache License, Version 2.0 (the "License");
  + * you may not use this file except in compliance with the License.
  + * You may obtain a copy of the License at
  + *
  + *     http://www.apache.org/licenses/LICENSE-2.0
  + *
  + * Unless required by applicable law or agreed to in writing, software
  + * distributed under the License is distributed on an "AS IS" BASIS,
  + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  + * See the License for the specific language governing permissions and
  + * limitations under the License.
    *
  - * 4. The names "FOP" and "Apache Software Foundation" must not be used to
  - *    endorse or promote products derived from this software without prior
  - *    written permission. For written permission, please contact
  - *    apache@apache.org.
  - *
  - * 5. Products derived from this software may not be called "Apache", nor may
  - *    "Apache" appear in their name, without prior written permission of the
  - *    Apache Software Foundation.
  - *
  - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
  - * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
  - * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
  - * APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
  - * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU-
  - * DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
  - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
  - * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  - * ============================================================================
  - *
  - * This software consists of voluntary contributions made by many individuals
  - * on behalf of the Apache Software Foundation and was originally created by
  - * James Tauber <jt...@jtauber.com>. For more information on the Apache
  - * Software Foundation, please see <http://www.apache.org/>.
  + * $Id$
    */
   package org.apache.fop.area;
   
  @@ -54,6 +21,8 @@
   import java.util.Map;
   
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * The page.
  @@ -65,6 +34,10 @@
    * memory if there are forward references.
    * The page is cloneable so the page master can make copies of
    * the top level page and regions.
  + * 
  + * @author The Apache XML-FOP sub-project
  + * @author pbw
  + * @version $Revision$ $Name$
    */
   public class PageRefArea
   extends AbstractReferenceArea
  @@ -79,8 +52,12 @@
       // temporary map of unresolved objects used when serializing the page
       private Map unresolved = null;
       
  -    public PageRefArea(Node parent, Object sync) {
  -        super(parent, sync);
  +    public PageRefArea(
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object sync) {
  +        super(pageSeq, generatedBy, parent, sync);
       }
   
       /**
  
  
  
  1.1.2.2   +10 -4     xml-fop/src/java/org/apache/fop/area/Attic/RegionAfterRefArea.java
  
  Index: RegionAfterRefArea.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/RegionAfterRefArea.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- RegionAfterRefArea.java	24 Feb 2004 07:54:00 -0000	1.1.2.1
  +++ RegionAfterRefArea.java	28 Feb 2004 02:06:44 -0000	1.1.2.2
  @@ -20,6 +20,8 @@
   package org.apache.fop.area;
   
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * @author pbw
  @@ -33,8 +35,12 @@
        * @param parent
        * @param sync
        */
  -    public RegionAfterRefArea(Node parent, Object sync) {
  -        super(parent, sync);
  +    public RegionAfterRefArea(
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object sync) {
  +        super(pageSeq, generatedBy, parent, sync);
           // TODO Auto-generated constructor stub
       }
   
  
  
  
  1.3.2.2   +44 -85    xml-fop/src/java/org/apache/fop/area/RegionViewport.java
  
  Index: RegionViewport.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/RegionViewport.java,v
  retrieving revision 1.3.2.1
  retrieving revision 1.3.2.2
  diff -u -r1.3.2.1 -r1.3.2.2
  --- RegionViewport.java	24 Feb 2004 07:54:00 -0000	1.3.2.1
  +++ RegionViewport.java	28 Feb 2004 02:06:44 -0000	1.3.2.2
  @@ -1,86 +1,58 @@
   /*
  + * Copyright 1999-2004 The Apache Software Foundation.
  + *
  + * Licensed under the Apache License, Version 2.0 (the "License");
  + * you may not use this file except in compliance with the License.
  + * You may obtain a copy of the License at
  + *
  + *     http://www.apache.org/licenses/LICENSE-2.0
  + *
  + * Unless required by applicable law or agreed to in writing, software
  + * distributed under the License is distributed on an "AS IS" BASIS,
  + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  + * See the License for the specific language governing permissions and
  + * limitations under the License.
  + *
    * $Id$
  - * ============================================================================
  - *                    The Apache Software License, Version 1.1
  - * ============================================================================
  - * 
  - * Copyright (C) 1999-2003 The Apache Software Foundation. All rights reserved.
  - * 
  - * Redistribution and use in source and binary forms, with or without modifica-
  - * tion, are permitted provided that the following conditions are met:
  - * 
  - * 1. Redistributions of source code must retain the above copyright notice,
  - *    this list of conditions and the following disclaimer.
  - * 
  - * 2. Redistributions in binary form must reproduce the above copyright notice,
  - *    this list of conditions and the following disclaimer in the documentation
  - *    and/or other materials provided with the distribution.
  - * 
  - * 3. The end-user documentation included with the redistribution, if any, must
  - *    include the following acknowledgment: "This product includes software
  - *    developed by the Apache Software Foundation (http://www.apache.org/)."
  - *    Alternately, this acknowledgment may appear in the software itself, if
  - *    and wherever such third-party acknowledgments normally appear.
  - * 
  - * 4. The names "FOP" and "Apache Software Foundation" must not be used to
  - *    endorse or promote products derived from this software without prior
  - *    written permission. For written permission, please contact
  - *    apache@apache.org.
  - * 
  - * 5. Products derived from this software may not be called "Apache", nor may
  - *    "Apache" appear in their name, without prior written permission of the
  - *    Apache Software Foundation.
  - * 
  - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
  - * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
  - * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
  - * APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
  - * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU-
  - * DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
  - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
  - * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  - * ============================================================================
  - * 
  - * This software consists of voluntary contributions made by many individuals
  - * on behalf of the Apache Software Foundation and was originally created by
  - * James Tauber <jt...@jtauber.com>. For more information on the Apache
  - * Software Foundation, please see <http://www.apache.org/>.
    */ 
   package org.apache.fop.area;
   
   import java.awt.geom.Rectangle2D;
   import java.io.IOException;
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * Region Viewport reference area.
    * This area is the viewport for a region and contains a region area.
    */
  -public class RegionViewport extends Area implements Viewport, Cloneable {
  +public class RegionViewport
  +extends AbstractViewport
  +implements Viewport, Cloneable {
       // this rectangle is relative to the page
  -    private RegionRefArea region;
  -    private Rectangle2D viewArea;
  -    private boolean clip = false;
   
       /**
        * Create a new region viewport.
        *
        * @param viewArea the view area of this viewport
        */
  -    public RegionViewport(Node parent, Object sync, Rectangle2D viewArea) {
  -        super(parent, sync);
  -        this.viewArea = viewArea;
  +    public RegionViewport(
  +            Rectangle2D viewArea,
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object sync) {
  +        super(viewArea, pageSeq, generatedBy, parent, sync);
       }
   
       /**
  -     * Set the region for this region viewport.
  +     * Set the region-regerence-area for this region viewport.
        *
  -     * @param reg the child region inside this viewport
  +     * @param regRef the child region inside this viewport
        */
  -    public void setRegion(RegionRefArea reg) {
  -        region = reg;
  +    public void setRegion(RegionRefArea regRef) {
  +        setReferenceArea(regRef);
       }
   
       /**
  @@ -89,25 +61,7 @@
        * @return the child region inside this viewport
        */
       public RegionRefArea getRegion() {
  -        return region;
  -    }
  -
  -    /**
  -     * Set the clipping for this region viewport.
  -     *
  -     * @param c the clipping value
  -     */
  -    public void setClip(boolean c) {
  -        clip = c;
  -    }
  -
  -    /**
  -     * Get the view area of this viewport.
  -     *
  -     * @return the viewport rectangle area
  -     */
  -    public Rectangle2D getViewArea() {
  -        return viewArea;
  +        return (RegionRefArea)(getReferenceArea());
       }
   
       /**
  @@ -203,7 +157,7 @@
           out.writeFloat((float) viewArea.getHeight());
           out.writeBoolean(clip);
           //out.writeObject(props);
  -        out.writeObject(region);
  +        out.writeObject(refArea);
       }
   
       private void readObject(java.io.ObjectInputStream in)
  @@ -222,13 +176,18 @@
        * @return a new copy of this region viewport
        */
       public Object clone() {
  -        RegionViewport rv =
  -            new RegionViewport(parent, sync, (Rectangle2D)viewArea.clone());
  -        rv.region = (RegionRefArea)region.clone();
  -//        if (props != null) {
  -//            rv.props = (HashMap)props.clone();
  -//        }
  -        return rv;
  +        synchronized (sync) {
  +            RegionViewport rv;
  +            try {
  +                rv = (RegionViewport)(super.clone());
  +            } catch (CloneNotSupportedException e) {
  +                throw new RuntimeException(e);
  +            }
  +            rv.viewArea = (Rectangle2D)(viewArea.clone());
  +            rv.refArea = (PageRefArea)(refArea.clone());
  +            return rv;
  +        }
       }
  +
   }
   
  
  
  
  1.1.2.2   +10 -5     xml-fop/src/java/org/apache/fop/area/Attic/RegionBeforeRefArea.java
  
  Index: RegionBeforeRefArea.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/RegionBeforeRefArea.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- RegionBeforeRefArea.java	24 Feb 2004 07:54:00 -0000	1.1.2.1
  +++ RegionBeforeRefArea.java	28 Feb 2004 02:06:44 -0000	1.1.2.2
  @@ -20,6 +20,8 @@
   package org.apache.fop.area;
   
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * @author pbw
  @@ -33,9 +35,12 @@
        * @param parent
        * @param sync
        */
  -    public RegionBeforeRefArea(Node parent, Object sync) {
  -        super(parent, sync);
  -        // TODO Auto-generated constructor stub
  +    public RegionBeforeRefArea(
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object sync) {
  +        super(pageSeq, generatedBy, parent, sync);
       }
   
   }
  
  
  
  No                   revision
  
  Index: RegionBeforeRefArea.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/RegionBeforeRefArea.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- RegionBeforeRefArea.java	24 Feb 2004 07:54:00 -0000	1.1.2.1
  +++ RegionBeforeRefArea.java	28 Feb 2004 02:06:44 -0000	1.1.2.2
  @@ -20,6 +20,8 @@
   package org.apache.fop.area;
   
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * @author pbw
  @@ -33,9 +35,12 @@
        * @param parent
        * @param sync
        */
  -    public RegionBeforeRefArea(Node parent, Object sync) {
  -        super(parent, sync);
  -        // TODO Auto-generated constructor stub
  +    public RegionBeforeRefArea(
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object sync) {
  +        super(pageSeq, generatedBy, parent, sync);
       }
   
   }
  
  
  
  No                   revision
  
  Index: RegionBeforeRefArea.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/area/Attic/RegionBeforeRefArea.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- RegionBeforeRefArea.java	24 Feb 2004 07:54:00 -0000	1.1.2.1
  +++ RegionBeforeRefArea.java	28 Feb 2004 02:06:44 -0000	1.1.2.2
  @@ -20,6 +20,8 @@
   package org.apache.fop.area;
   
   import org.apache.fop.datastructs.Node;
  +import org.apache.fop.fo.FONode;
  +import org.apache.fop.fo.flow.FoPageSequence;
   
   /**
    * @author pbw
  @@ -33,9 +35,12 @@
        * @param parent
        * @param sync
        */
  -    public RegionBeforeRefArea(Node parent, Object sync) {
  -        super(parent, sync);
  -        // TODO Auto-generated constructor stub
  +    public RegionBeforeRefArea(
  +            FoPageSequence pageSeq,
  +            FONode generatedBy,
  +            Node parent,
  +            Object sync) {
  +        super(pageSeq, generatedBy, parent, sync);
       }
   
   }
  
  
  
  1.1.2.1   +44 -0     xml-fop/src/java/org/apache/fop/area/Attic/NormalFlowRefArea.java
  
  
  
  
  1.1.2.1   +48 -0     xml-fop/src/java/org/apache/fop/area/Attic/ViewportI.java
  
  
  
  
  1.1.2.1   +139 -0    xml-fop/src/java/org/apache/fop/area/Attic/AbstractViewport.java
  
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: fop-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: fop-cvs-help@xml.apache.org