keiron      2002/07/18 02:43:20

  Modified:    src/org/apache/fop/apps LayoutHandler.java
                        StructureHandler.java
               src/org/apache/fop/fo Title.java
               src/org/apache/fop/fo/pagination PageSequence.java
               src/org/apache/fop/mif MIFHandler.java
  Log:
  start page sequence with title
  
  Revision  Changes    Path
  1.2       +9 -0      xml-fop/src/org/apache/fop/apps/LayoutHandler.java
  
  Index: LayoutHandler.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/apps/LayoutHandler.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- LayoutHandler.java        27 May 2002 12:34:18 -0000      1.1
  +++ LayoutHandler.java        18 Jul 2002 09:43:20 -0000      1.2
  @@ -12,6 +12,7 @@
   import org.apache.fop.area.Title;
   import org.apache.fop.render.Renderer;
   import org.apache.fop.fo.pagination.PageSequence;
  +import org.apache.fop.fo.pagination.LayoutMasterSet;
   
   import org.apache.avalon.framework.logger.Logger;
   
  @@ -141,6 +142,14 @@
           log.debug("Total time used: " + timeUsed + "ms");
           log.debug("Pages rendered: " + pageCount);
           //log.debug("Avg render time: " + (timeUsed / pageCount) + "ms/page");
  +    }
  +
  +    public void startPageSequence(PageSequence pageSeq, org.apache.fop.fo.Title 
seqTitle, LayoutMasterSet lms) {
  +        Title title = null;
  +        if(seqTitle != null) {
  +            title = seqTitle.getTitleArea();
  +        }
  +        areaTree.startPageSequence(title);
       }
   
       /**
  
  
  
  1.3       +2 -2      xml-fop/src/org/apache/fop/apps/StructureHandler.java
  
  Index: StructureHandler.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/apps/StructureHandler.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- StructureHandler.java     5 Jun 2002 14:52:27 -0000       1.2
  +++ StructureHandler.java     18 Jul 2002 09:43:20 -0000      1.3
  @@ -54,7 +54,7 @@
   
       }
   
  -    public void startPageSequence(PageSequence pageSeq, LayoutMasterSet lms) {
  +    public void startPageSequence(PageSequence pageSeq, Title seqTitle, 
LayoutMasterSet lms) {
   
       }
   
  
  
  
  1.8       +10 -1     xml-fop/src/org/apache/fop/fo/Title.java
  
  Index: Title.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/Title.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- Title.java        20 Jun 2002 09:14:12 -0000      1.7
  +++ Title.java        18 Jul 2002 09:43:20 -0000      1.8
  @@ -23,6 +23,14 @@
           super(parent);
       }
   
  +    public org.apache.fop.area.Title getTitleArea() {
  +        org.apache.fop.area.Title title =
  +                 new org.apache.fop.area.Title();
  +        // use special layout manager to add the inline areas
  +        // to the Title.
  +        return title;
  +    }
  +
       public void setup() {
   
           // Common Accessibility Properties
  @@ -57,3 +65,4 @@
   
       }
   }
  +
  
  
  
  1.52      +17 -7     xml-fop/src/org/apache/fop/fo/pagination/PageSequence.java
  
  Index: PageSequence.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/pagination/PageSequence.java,v
  retrieving revision 1.51
  retrieving revision 1.52
  diff -u -r1.51 -r1.52
  --- PageSequence.java 20 Jun 2002 09:14:15 -0000      1.51
  +++ PageSequence.java 18 Jul 2002 09:43:20 -0000      1.52
  @@ -77,6 +77,9 @@
       // fo:flow per fo:page-sequence only.
       private boolean isFlowSet = false;
   
  +    // for structure handler
  +    private boolean sequenceStarted = false;
  +
       //
       // state attributes used during layout
       //
  @@ -128,7 +131,7 @@
       /**
        * The fo:title object for this page-sequence.
        */
  -    private FObj titleFO;
  +    private Title titleFO;
   
   
       public PageSequence(FONode parent) {
  @@ -194,8 +197,6 @@
           // this.properties.get("country");
           // this.properties.get("language");
           setupID();
  -
  -        structHandler.startPageSequence(this, layoutMasterSet);
       }
   
   
  @@ -232,8 +233,11 @@
            if (childName.equals("fo:title")) {
                if (this._flowMap.size()>0) {
                    log.warn("fo:title should be first in page-sequence");
  +             } else {
  +                 this.titleFO = (Title)child;
  +                 structHandler.startPageSequence(this, titleFO, layoutMasterSet);
  +                 sequenceStarted = true;
                }
  -             this.titleFO = (FObj)child;
            }
            else if (childName.equals("fo:flow")) {
                if (this.mainFlow != null) {
  @@ -241,6 +245,10 @@
                              + " per fo:page-sequence");
                }
                else {
  +                 if(!sequenceStarted) {
  +                        structHandler.startPageSequence(this, titleFO, 
layoutMasterSet);
  +                        sequenceStarted = true;
  +                    }
                    this.mainFlow = (Flow)child;
                    addFlow(mainFlow);
                    super.addChild(child); // For getChildren
  @@ -252,6 +260,10 @@
                                           " must precede fo:flow; ignoring");
                }
                else {
  +                    if(!sequenceStarted) {
  +                        structHandler.startPageSequence(this, titleFO, 
layoutMasterSet);
  +                        sequenceStarted = true;
  +                    }
                    addFlow((Flow)child);
                }
            }
  @@ -309,8 +321,6 @@
        
        // If no main flow, nothing to layout!
        if (this.mainFlow == null) return;
  -
  -     areaTree.startPageSequence(null);
   
        // Initialize if already used?
           this.layoutMasterSet.resetPageMasters();
  
  
  
  1.2       +2 -2      xml-fop/src/org/apache/fop/mif/MIFHandler.java
  
  Index: MIFHandler.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/mif/MIFHandler.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- MIFHandler.java   5 Jun 2002 14:52:27 -0000       1.1
  +++ MIFHandler.java   18 Jul 2002 09:43:20 -0000      1.2
  @@ -74,7 +74,7 @@
        * This creates the pages in the MIF document that will be used
        * by the following flows and static areas.
        */
  -    public void startPageSequence(PageSequence pageSeq, LayoutMasterSet lms) {
  +    public void startPageSequence(PageSequence pageSeq, Title seqTitle, 
LayoutMasterSet lms) {
           // get the layout master set
           // setup the pages for this sequence
           String name = pageSeq.getProperty("master-reference").getString();
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to