bckfnn      2004/10/19 14:48:17

  Modified:    src/java/org/apache/fop/layoutmgr/table Body.java Cell.java
                        Column.java Row.java TableLayoutManager.java
  Log:
  Third phase of performance improvement.
  - Use CommonBorderPaddingBackground.
  PR: 31699
  
  Revision  Changes    Path
  1.10      +6 -20     xml-fop/src/java/org/apache/fop/layoutmgr/table/Body.java
  
  Index: Body.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/table/Body.java,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- Body.java 26 May 2004 04:22:40 -0000      1.9
  +++ Body.java 19 Oct 2004 21:48:17 -0000      1.10
  @@ -18,8 +18,7 @@
    
   package org.apache.fop.layoutmgr.table;
   
  -import org.apache.fop.fo.FObj;
  -import org.apache.fop.fo.PropertyManager;
  +import org.apache.fop.fo.flow.TableBody;
   import org.apache.fop.layoutmgr.LayoutManager;
   import org.apache.fop.layoutmgr.BlockStackingLayoutManager;
   import org.apache.fop.layoutmgr.LeafPosition;
  @@ -32,8 +31,6 @@
   import org.apache.fop.area.Area;
   import org.apache.fop.area.Block;
   import org.apache.fop.traits.MinOptMax;
  -import org.apache.fop.fo.properties.CommonBorderAndPadding;
  -import org.apache.fop.fo.properties.CommonBackground;
   
   import java.util.ArrayList;
   import java.util.List;
  @@ -44,9 +41,8 @@
    * Cells are organised into rows.
    */
   public class Body extends BlockStackingLayoutManager {
  -    private CommonBorderAndPadding borderProps = null;
  -    private CommonBackground backgroundProps;
  -
  +    private TableBody fobj;
  +    
       private boolean rows = true;
       private List columns;
   
  @@ -60,17 +56,9 @@
       /**
        * Create a new body layout manager.
        */
  -    public Body(FObj node) {
  +    public Body(TableBody node) {
           super(node);
  -    }
  -
  -    /**
  -     * @see org.apache.fop.layoutmgr.AbstractLayoutManager#initProperties()
  -     */
  -    protected void initProperties() {
  -        PropertyManager pm = fobj.getPropertyManager();
  -        borderProps = pm.getBorderAndPadding();
  -        backgroundProps = pm.getBackgroundProps();
  +        fobj = node;
       }
   
       /**
  @@ -266,9 +254,7 @@
       public Area createColumnArea() {
           Area curBlockArea = new Block();
   
  -        if (backgroundProps != null) {
  -            TraitSetter.addBackground(curBlockArea, backgroundProps);
  -        }
  +        TraitSetter.addBackground(curBlockArea, 
fobj.getCommonBorderPaddingBackground());
           return curBlockArea;
       }
   }
  
  
  
  1.11      +9 -20     xml-fop/src/java/org/apache/fop/layoutmgr/table/Cell.java
  
  Index: Cell.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/table/Cell.java,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- Cell.java 22 Sep 2004 08:25:16 -0000      1.10
  +++ Cell.java 19 Oct 2004 21:48:17 -0000      1.11
  @@ -18,8 +18,7 @@
    
   package org.apache.fop.layoutmgr.table;
   
  -import org.apache.fop.fo.FObj;
  -import org.apache.fop.fo.PropertyManager;
  +import org.apache.fop.fo.flow.TableCell;
   import org.apache.fop.layoutmgr.BlockStackingLayoutManager;
   import org.apache.fop.layoutmgr.LayoutManager;
   import org.apache.fop.layoutmgr.LeafPosition;
  @@ -32,8 +31,6 @@
   import org.apache.fop.area.Area;
   import org.apache.fop.area.Block;
   import org.apache.fop.traits.MinOptMax;
  -import org.apache.fop.fo.properties.CommonBorderAndPadding;
  -import org.apache.fop.fo.properties.CommonBackground;
   
   import java.util.ArrayList;
   import java.util.List;
  @@ -43,10 +40,8 @@
    * A cell contains blocks. These blocks fill the cell.
    */
   public class Cell extends BlockStackingLayoutManager {
  -
  -    private CommonBorderAndPadding borderProps = null;
  -    private CommonBackground backgroundProps;
  -
  +    private TableCell fobj;
  +    
       private Block curBlockArea;
   
       private List childBreaks = new ArrayList();
  @@ -59,17 +54,15 @@
       /**
        * Create a new Cell layout manager.
        */
  -    public Cell(FObj node) {
  +    public Cell(TableCell node) {
           super(node);
  +        fobj = node;
       }
   
       /**
        * @see org.apache.fop.layoutmgr.AbstractLayoutManager#initProperties()
        */
       protected void initProperties() {
  -        PropertyManager pm = fobj.getPropertyManager();
  -        borderProps = pm.getBorderAndPadding();
  -        backgroundProps = pm.getBackgroundProps();
       }
   
       /**
  @@ -187,7 +180,7 @@
       public void addAreas(PositionIterator parentIter,
                            LayoutContext layoutContext) {
           getParentArea(null);
  -        addID();
  +        addID(fobj.getId());
   
           LayoutManager childLM;
           int iStartPos = 0;
  @@ -204,13 +197,9 @@
               }
           }
   
  -        if (borderProps != null) {
  -            TraitSetter.addBorders(curBlockArea, borderProps);
  -        }
  -        if (backgroundProps != null) {
  -            TraitSetter.addBackground(curBlockArea, backgroundProps);
  -        }
  -
  +        TraitSetter.addBorders(curBlockArea, 
fobj.getCommonBorderPaddingBackground());
  +        TraitSetter.addBackground(curBlockArea, 
fobj.getCommonBorderPaddingBackground());
  +        
           curBlockArea.setBPD(height);
   
           flush();
  
  
  
  1.7       +6 -20     xml-fop/src/java/org/apache/fop/layoutmgr/table/Column.java
  
  Index: Column.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/table/Column.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- Column.java       26 May 2004 04:22:40 -0000      1.6
  +++ Column.java       19 Oct 2004 21:48:17 -0000      1.7
  @@ -19,8 +19,6 @@
   package org.apache.fop.layoutmgr.table;
   
   import org.apache.fop.datatypes.Length;
  -import org.apache.fop.fo.FObj;
  -import org.apache.fop.fo.PropertyManager;
   import org.apache.fop.layoutmgr.AbstractLayoutManager;
   import org.apache.fop.layoutmgr.BreakPoss;
   import org.apache.fop.layoutmgr.LayoutContext;
  @@ -29,8 +27,6 @@
   import org.apache.fop.fo.flow.TableColumn;
   import org.apache.fop.area.Area;
   import org.apache.fop.area.Block;
  -import org.apache.fop.fo.properties.CommonBorderAndPadding;
  -import org.apache.fop.fo.properties.CommonBackground;
   
   /**
    * LayoutManager for a table-column FO.
  @@ -39,23 +35,15 @@
    * column properties.
    */
   public class Column extends AbstractLayoutManager {
  -    private CommonBorderAndPadding borderProps = null;
  -    private CommonBackground backgroundProps;
  +    private TableColumn fobj;
  +    
   
       /**
        * Create a new column layout manager.
        */
  -    public Column(FObj node) {
  +    public Column(TableColumn node) {
            super(node);
  -    }
  -
  -    /**
  -     * @see org.apache.fop.layoutmgr.AbstractLayoutManager#initProperties()
  -     */
  -    protected void initProperties() {
  -        PropertyManager pm = fobj.getPropertyManager();
  -        borderProps = pm.getBorderAndPadding();
  -        backgroundProps = pm.getBackgroundProps();
  +         fobj = node;
       }
   
       /**
  @@ -99,7 +87,7 @@
        * @return the width of the column
        */
       public Length getWidth() {
  -        return ((TableColumn)fobj).getColumnWidth();
  +        return fobj.getColumnWidth();
       }
   
       /**
  @@ -112,9 +100,7 @@
       public Area createColumnArea() {
           Area curBlockArea = new Block();
   
  -        if (backgroundProps != null) {
  -            TraitSetter.addBackground(curBlockArea, backgroundProps);
  -        }
  +        TraitSetter.addBackground(curBlockArea, 
fobj.getCommonBorderPaddingBackground());
           return curBlockArea;
       }
   }
  
  
  
  1.14      +6 -20     xml-fop/src/java/org/apache/fop/layoutmgr/table/Row.java
  
  Index: Row.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/table/Row.java,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- Row.java  12 Jun 2004 18:03:47 -0000      1.13
  +++ Row.java  19 Oct 2004 21:48:17 -0000      1.14
  @@ -18,8 +18,7 @@
   
   package org.apache.fop.layoutmgr.table;
   
  -import org.apache.fop.fo.FObj;
  -import org.apache.fop.fo.PropertyManager;
  +import org.apache.fop.fo.flow.TableRow;
   import org.apache.fop.layoutmgr.BlockStackingLayoutManager;
   import org.apache.fop.layoutmgr.LayoutManager;
   import org.apache.fop.layoutmgr.LeafPosition;
  @@ -32,8 +31,6 @@
   import org.apache.fop.area.Area;
   import org.apache.fop.area.Block;
   import org.apache.fop.traits.MinOptMax;
  -import org.apache.fop.fo.properties.CommonBorderAndPadding;
  -import org.apache.fop.fo.properties.CommonBackground;
   
   import java.util.Iterator;
   import java.util.ArrayList;
  @@ -47,13 +44,12 @@
    * but effect the occupied columns of future rows.
    */
   public class Row extends BlockStackingLayoutManager {
  -
  +    private TableRow fobj;
  +    
       private List cellList = null;
       private List columns = null;
       private int rowHeight;
       private int yoffset;
  -    private CommonBorderAndPadding borderProps = null;
  -    private CommonBackground backgroundProps;
   
       private class RowPosition extends LeafPosition {
           protected List cellBreaks;
  @@ -67,17 +63,9 @@
        * Create a new row layout manager.
        *
        */
  -    public Row(FObj node) {
  +    public Row(TableRow node) {
           super(node);
  -    }
  -
  -    /**
  -     * @see org.apache.fop.layoutmgr.AbstractLayoutManager#initProperties()
  -     */
  -    protected void initProperties() {
  -        PropertyManager pm = fobj.getPropertyManager();
  -        borderProps = pm.getBorderAndPadding();
  -        backgroundProps = pm.getBackgroundProps();
  +        fobj = node;
       }
   
       /**
  @@ -376,9 +364,7 @@
        */
       public Area getRowArea() {
           Area block = new Block();
  -        if (backgroundProps != null) {
  -            TraitSetter.addBackground(block, backgroundProps);
  -        }
  +        TraitSetter.addBackground(block, fobj.getCommonBorderPaddingBackground());
           return block;
       }
   }
  
  
  
  1.14      +8 -24     
xml-fop/src/java/org/apache/fop/layoutmgr/table/TableLayoutManager.java
  
  Index: TableLayoutManager.java
  ===================================================================
  RCS file: 
/home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/table/TableLayoutManager.java,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- TableLayoutManager.java   22 Sep 2004 08:25:16 -0000      1.13
  +++ TableLayoutManager.java   19 Oct 2004 21:48:17 -0000      1.14
  @@ -20,8 +20,7 @@
   
   import org.apache.fop.datatypes.Length;
   import org.apache.fop.datatypes.PercentBase;
  -import org.apache.fop.fo.FObj;
  -import org.apache.fop.fo.PropertyManager;
  +import org.apache.fop.fo.flow.Table;
   import org.apache.fop.fo.properties.TableColLength;
   import org.apache.fop.layoutmgr.BlockStackingLayoutManager;
   import org.apache.fop.layoutmgr.LayoutManager;
  @@ -35,8 +34,6 @@
   import org.apache.fop.area.Area;
   import org.apache.fop.area.Block;
   import org.apache.fop.traits.MinOptMax;
  -import org.apache.fop.fo.properties.CommonBorderAndPadding;
  -import org.apache.fop.fo.properties.CommonBackground;
   
   import java.util.ArrayList;
   import java.util.Iterator;
  @@ -51,13 +48,12 @@
    * the render background.
    */
   public class TableLayoutManager extends BlockStackingLayoutManager {
  +    private Table fobj;
  +    
       private List columns = null;
       private Body tableHeader = null;
       private Body tableFooter = null;
   
  -    private CommonBorderAndPadding borderProps = null;
  -    private CommonBackground backgroundProps;
  -
       private Block curBlockArea;
   
       private List bodyBreaks = new ArrayList();
  @@ -76,17 +72,9 @@
        * Create a new table layout manager.
        *
        */
  -    public TableLayoutManager(FObj node) {
  +    public TableLayoutManager(Table node) {
           super(node);
  -    }
  -
  -    /**
  -     * @see org.apache.fop.layoutmgr.AbstractLayoutManager#initProperties()
  -     */
  -    protected void initProperties() {
  -        PropertyManager pm = fobj.getPropertyManager();
  -        borderProps = pm.getBorderAndPadding();
  -        backgroundProps = pm.getBackgroundProps();
  +        fobj = node;
       }
   
       /**
  @@ -284,7 +272,7 @@
       public void addAreas(PositionIterator parentIter,
                            LayoutContext layoutContext) {
           getParentArea(null);
  -        addID();
  +        addID(fobj.getId());
   
           // add column, body then row areas
   
  @@ -332,12 +320,8 @@
   
           curBlockArea.setBPD(tableHeight);
   
  -        if (borderProps != null) {
  -            TraitSetter.addBorders(curBlockArea, borderProps);
  -        }
  -        if (backgroundProps != null) {
  -            TraitSetter.addBackground(curBlockArea, backgroundProps);
  -        }
  +        TraitSetter.addBorders(curBlockArea, 
fobj.getCommonBorderPaddingBackground());
  +        TraitSetter.addBackground(curBlockArea, 
fobj.getCommonBorderPaddingBackground());
   
           flush();
   
  
  
  

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

Reply via email to