keiron 2003/02/13 20:15:09 Modified: src/org/apache/fop/fo FOText.java FObjMixed.java Title.java src/org/apache/fop/fo/flow BasicLink.java BidiOverride.java Block.java BlockContainer.java Character.java ExternalGraphic.java Flow.java InlineContainer.java InstreamForeignObject.java Leader.java ListBlock.java ListItem.java ListItemBody.java ListItemLabel.java PageNumber.java PageNumberCitation.java StaticContent.java Table.java TableBody.java TableCell.java TableColumn.java TableRow.java src/org/apache/fop/fo/pagination PageSequence.java src/org/apache/fop/layoutmgr AbstractLayoutManager.java BlockContainerLayoutManager.java BlockLayoutManager.java BlockStackingLayoutManager.java ContentLayoutManager.java FlowLayoutManager.java InlineStackingLayoutManager.java LayoutManager.java LeafNodeLayoutManager.java LineLayoutManager.java PageLayoutManager.java StaticContentLayoutManager.java TextLayoutManager.java src/org/apache/fop/layoutmgr/list Item.java ListBlockLayoutManager.java ListItemLayoutManager.java src/org/apache/fop/layoutmgr/table Body.java Caption.java Cell.java Column.java Row.java TableAndCaptionLayoutManager.java TableLayoutManager.java Log: set FO on lm as part of interface, simpler and more flexible Revision Changes Path 1.42 +4 -2 xml-fop/src/org/apache/fop/fo/FOText.java Index: FOText.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/FOText.java,v retrieving revision 1.41 retrieving revision 1.42 diff -u -r1.41 -r1.42 --- FOText.java 15 Nov 2002 11:56:27 -0000 1.41 +++ FOText.java 14 Feb 2003 04:15:03 -0000 1.42 @@ -85,7 +85,9 @@ ca = new char[length]; System.arraycopy(tmp, 0, ca, 0, length); } - list.add(new TextLayoutManager(this, ca, textInfo)); + LayoutManager lm = new TextLayoutManager(ca, textInfo); + lm.setFObj(this); + list.add(lm); } public CharIterator charIterator() { 1.32 +7 -3 xml-fop/src/org/apache/fop/fo/FObjMixed.java Index: FObjMixed.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/FObjMixed.java,v retrieving revision 1.31 retrieving revision 1.32 diff -u -r1.31 -r1.32 --- FObjMixed.java 15 Nov 2002 11:56:27 -0000 1.31 +++ FObjMixed.java 14 Feb 2003 04:15:03 -0000 1.32 @@ -36,8 +36,12 @@ public void addLayoutManager(List lms) { if (children != null) { - lms.add(new InlineStackingLayoutManager(this, - new LMiter(children.listIterator()))); + InlineStackingLayoutManager lm; + lm = new InlineStackingLayoutManager(); + lm.setUserAgent(getUserAgent()); + lm.setFObj(this); + lm.setLMiter(new LMiter(children.listIterator())); + lms.add(lm); } } 1.13 +4 -3 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.12 retrieving revision 1.13 diff -u -r1.12 -r1.13 --- Title.java 18 Nov 2002 15:54:14 -0000 1.12 +++ Title.java 14 Feb 2003 04:15:03 -0000 1.13 @@ -33,9 +33,10 @@ // use special layout manager to add the inline areas // to the Title. InlineStackingLayoutManager lm; - lm = new InlineStackingLayoutManager(this, - new LMiter(children.listIterator())); + lm = new InlineStackingLayoutManager(); lm.setUserAgent(getUserAgent()); + lm.setFObj(this); + lm.setLMiter(new LMiter(children.listIterator())); lm.init(); // get breaks then add areas to title 1.19 +8 -4 xml-fop/src/org/apache/fop/fo/flow/BasicLink.java Index: BasicLink.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/BasicLink.java,v retrieving revision 1.18 retrieving revision 1.19 diff -u -r1.18 -r1.19 --- BasicLink.java 15 Nov 2002 11:56:28 -0000 1.18 +++ BasicLink.java 14 Feb 2003 04:15:03 -0000 1.19 @@ -44,14 +44,18 @@ // add start and end properties for the link public void addLayoutManager(List lms) { setup(); - lms.add(new InlineStackingLayoutManager(this, - new LMiter(children.listIterator())) { + InlineStackingLayoutManager lm; + lm = new InlineStackingLayoutManager() { protected InlineParent createArea() { InlineParent area = super.createArea(); setupLinkArea(parentLM, area); return area; } - }); + }; + lm.setUserAgent(getUserAgent()); + lm.setFObj(this); + lm.setLMiter(new LMiter(children.listIterator())); + lms.add(lm); } protected void setupLinkArea(LayoutManager parentLM, InlineParent area) { 1.12 +5 -5 xml-fop/src/org/apache/fop/fo/flow/BidiOverride.java Index: BidiOverride.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/BidiOverride.java,v retrieving revision 1.11 retrieving revision 1.12 diff -u -r1.11 -r1.12 --- BidiOverride.java 15 Nov 2002 11:56:28 -0000 1.11 +++ BidiOverride.java 14 Feb 2003 04:15:03 -0000 1.12 @@ -40,8 +40,9 @@ for (int count = childList.size() - 1; count >= 0; count--) { LayoutManager lm = (LayoutManager) childList.get(count); if (lm.generatesInlineAreas()) { - list.add( new BidiLayoutManager(this, - (LeafNodeLayoutManager) lm)); + LayoutManager blm = new BidiLayoutManager((LeafNodeLayoutManager) lm); + blm.setFObj(this); + list.add(blm); } else { list.add(lm); } @@ -86,8 +87,7 @@ class BidiLayoutManager extends LeafNodeLayoutManager { List childs; - BidiLayoutManager(FObj obj, LeafNodeLayoutManager cLM) { - super(obj); + BidiLayoutManager(LeafNodeLayoutManager cLM) { childs = new ArrayList(); /* for (int count = cLM.size() - 1; count >= 0; count--) { InlineArea ia = cLM.get(count); 1.66 +3 -2 xml-fop/src/org/apache/fop/fo/flow/Block.java Index: Block.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/Block.java,v retrieving revision 1.65 retrieving revision 1.66 diff -u -r1.65 -r1.66 --- Block.java 18 Nov 2002 15:54:14 -0000 1.65 +++ Block.java 14 Feb 2003 04:15:03 -0000 1.66 @@ -175,8 +175,9 @@ } public void addLayoutManager(List list) { - BlockLayoutManager blm = new BlockLayoutManager(this); + BlockLayoutManager blm = new BlockLayoutManager(); blm.setUserAgent(getUserAgent()); + blm.setFObj(this); TextInfo ti = propMgr.getTextLayoutProps(fontInfo); blm.setBlockTextInfo(ti); list.add(blm); 1.20 +4 -2 xml-fop/src/org/apache/fop/fo/flow/BlockContainer.java Index: BlockContainer.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/BlockContainer.java,v retrieving revision 1.19 retrieving revision 1.20 diff -u -r1.19 -r1.20 --- BlockContainer.java 15 Nov 2002 11:56:28 -0000 1.19 +++ BlockContainer.java 14 Feb 2003 04:15:03 -0000 1.20 @@ -45,7 +45,9 @@ } public void addLayoutManager(List list) { - BlockContainerLayoutManager blm = new BlockContainerLayoutManager(this); + BlockContainerLayoutManager blm = new BlockContainerLayoutManager(); + blm.setUserAgent(getUserAgent()); + blm.setFObj(this); blm.setOverflow(properties.get("overflow").getEnum()); list.add(blm); } 1.21 +4 -2 xml-fop/src/org/apache/fop/fo/flow/Character.java Index: Character.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/Character.java,v retrieving revision 1.20 retrieving revision 1.21 diff -u -r1.20 -r1.21 --- Character.java 25 Oct 2002 09:29:43 -0000 1.20 +++ Character.java 14 Feb 2003 04:15:03 -0000 1.21 @@ -52,7 +52,9 @@ public void addLayoutManager(List list) { InlineArea inline = getInlineArea(); if (inline != null) { - LeafNodeLayoutManager lm = new LeafNodeLayoutManager(this); + LeafNodeLayoutManager lm = new LeafNodeLayoutManager(); + lm.setUserAgent(getUserAgent()); + lm.setFObj(this); lm.setCurrentArea(inline); list.add(lm); } 1.30 +4 -2 xml-fop/src/org/apache/fop/fo/flow/ExternalGraphic.java Index: ExternalGraphic.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/ExternalGraphic.java,v retrieving revision 1.29 retrieving revision 1.30 diff -u -r1.29 -r1.30 --- ExternalGraphic.java 6 Nov 2002 15:38:12 -0000 1.29 +++ ExternalGraphic.java 14 Feb 2003 04:15:04 -0000 1.30 @@ -72,7 +72,9 @@ InlineArea area = getInlineArea(); if (area != null) { setupID(); - LeafNodeLayoutManager lm = new LeafNodeLayoutManager(this); + LeafNodeLayoutManager lm = new LeafNodeLayoutManager(); + lm.setUserAgent(getUserAgent()); + lm.setFObj(this); lm.setCurrentArea(area); lm.setAlignment(properties.get("vertical-align").getEnum()); lm.setLead(viewHeight); 1.36 +3 -2 xml-fop/src/org/apache/fop/fo/flow/Flow.java Index: Flow.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/Flow.java,v retrieving revision 1.35 retrieving revision 1.36 diff -u -r1.35 -r1.36 --- Flow.java 18 Nov 2002 15:54:14 -0000 1.35 +++ Flow.java 14 Feb 2003 04:15:04 -0000 1.36 @@ -111,8 +111,9 @@ } public void addLayoutManager(List list) { - FlowLayoutManager lm = new FlowLayoutManager(this); + FlowLayoutManager lm = new FlowLayoutManager(); lm.setUserAgent(getUserAgent()); + lm.setFObj(this); list.add(lm); } 1.10 +7 -4 xml-fop/src/org/apache/fop/fo/flow/InlineContainer.java Index: InlineContainer.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/InlineContainer.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- InlineContainer.java 15 Nov 2002 11:56:28 -0000 1.9 +++ InlineContainer.java 14 Feb 2003 04:15:04 -0000 1.10 @@ -13,6 +13,7 @@ import org.apache.fop.fo.properties.*; import org.apache.fop.layout.*; import org.apache.fop.apps.FOPException; +import org.apache.fop.layoutmgr.LayoutManager; import org.apache.fop.layoutmgr.LeafNodeLayoutManager; import org.apache.fop.area.inline.InlineArea; @@ -32,7 +33,10 @@ public void addLayoutManager(List lms) { ArrayList childList = new ArrayList(); super.addLayoutManager(childList); - lms.add(new ICLayoutManager(this, childList)); + LayoutManager lm = new ICLayoutManager(childList); + lm.setUserAgent(getUserAgent()); + lm.setFObj(this); + lms.add(lm); } public void handleAttrs(Attributes attlist) throws FOPException { @@ -81,8 +85,7 @@ class ICLayoutManager extends LeafNodeLayoutManager { List childrenLM; - ICLayoutManager(FObj obj, List childLM) { - super(obj); + ICLayoutManager(List childLM) { childrenLM = childLM; } 1.35 +4 -2 xml-fop/src/org/apache/fop/fo/flow/InstreamForeignObject.java Index: InstreamForeignObject.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/InstreamForeignObject.java,v retrieving revision 1.34 retrieving revision 1.35 diff -u -r1.34 -r1.35 --- InstreamForeignObject.java 30 Aug 2002 08:03:23 -0000 1.34 +++ InstreamForeignObject.java 14 Feb 2003 04:15:04 -0000 1.35 @@ -56,7 +56,9 @@ public void addLayoutManager(List list) { areaCurrent = getInlineArea(); if(areaCurrent != null) { - LeafNodeLayoutManager lm = new LeafNodeLayoutManager(this); + LeafNodeLayoutManager lm = new LeafNodeLayoutManager(); + lm.setUserAgent(getUserAgent()); + lm.setFObj(this); lm.setCurrentArea(areaCurrent); lm.setAlignment(properties.get("vertical-align").getEnum()); lm.setLead(areaCurrent.getHeight()); 1.32 +7 -4 xml-fop/src/org/apache/fop/fo/flow/Leader.java Index: Leader.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/Leader.java,v retrieving revision 1.31 retrieving revision 1.32 diff -u -r1.31 -r1.32 --- Leader.java 13 Feb 2003 04:24:17 -0000 1.31 +++ Leader.java 14 Feb 2003 04:15:04 -0000 1.32 @@ -51,7 +51,7 @@ } public void addLayoutManager(List list) { - LeafNodeLayoutManager lm = new LeafNodeLayoutManager(this) { + LeafNodeLayoutManager lm = new LeafNodeLayoutManager() { public InlineArea get(LayoutContext context) { return getInlineArea(); } @@ -66,6 +66,8 @@ } }*/ }; + lm.setUserAgent(getUserAgent()); + lm.setFObj(this); lm.setAlignment(properties.get("leader-alignment").getEnum()); list.add(lm); } @@ -121,9 +123,10 @@ return; } InlineStackingLayoutManager lm; - lm = new InlineStackingLayoutManager(this, - new LMiter(children.listIterator())); + lm = new InlineStackingLayoutManager(); lm.setUserAgent(getUserAgent()); + lm.setFObj(this); + lm.setLMiter(new LMiter(children.listIterator())); lm.init(); // get breaks then add areas to FilledArea 1.31 +4 -2 xml-fop/src/org/apache/fop/fo/flow/ListBlock.java Index: ListBlock.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/ListBlock.java,v retrieving revision 1.30 retrieving revision 1.31 diff -u -r1.30 -r1.31 --- ListBlock.java 29 Nov 2002 23:18:53 -0000 1.30 +++ ListBlock.java 14 Feb 2003 04:15:04 -0000 1.31 @@ -39,7 +39,9 @@ } public void addLayoutManager(List list) { - ListBlockLayoutManager blm = new ListBlockLayoutManager(this); + ListBlockLayoutManager blm = new ListBlockLayoutManager(); + blm.setUserAgent(getUserAgent()); + blm.setFObj(this); list.add(blm); } 1.28 +4 -2 xml-fop/src/org/apache/fop/fo/flow/ListItem.java Index: ListItem.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/ListItem.java,v retrieving revision 1.27 retrieving revision 1.28 diff -u -r1.27 -r1.28 --- ListItem.java 29 Nov 2002 23:18:53 -0000 1.27 +++ ListItem.java 14 Feb 2003 04:15:04 -0000 1.28 @@ -39,7 +39,9 @@ public void addLayoutManager(List list) { if(label != null && body != null) { - ListItemLayoutManager blm = new ListItemLayoutManager(this); + ListItemLayoutManager blm = new ListItemLayoutManager(); + blm.setUserAgent(getUserAgent()); + blm.setFObj(this); blm.setLabel(label.getItemLayoutManager()); blm.setBody(body.getItemLayoutManager()); list.add(blm); 1.20 +4 -2 xml-fop/src/org/apache/fop/fo/flow/ListItemBody.java Index: ListItemBody.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/ListItemBody.java,v retrieving revision 1.19 retrieving revision 1.20 diff -u -r1.19 -r1.20 --- ListItemBody.java 15 Nov 2002 11:56:28 -0000 1.19 +++ ListItemBody.java 14 Feb 2003 04:15:04 -0000 1.20 @@ -25,7 +25,9 @@ } public Item getItemLayoutManager() { - Item item = new Item(this); + Item item = new Item(); + item.setUserAgent(getUserAgent()); + item.setFObj(this); return item; } 1.20 +4 -2 xml-fop/src/org/apache/fop/fo/flow/ListItemLabel.java Index: ListItemLabel.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/ListItemLabel.java,v retrieving revision 1.19 retrieving revision 1.20 diff -u -r1.19 -r1.20 --- ListItemLabel.java 15 Nov 2002 11:56:28 -0000 1.19 +++ ListItemLabel.java 14 Feb 2003 04:15:04 -0000 1.20 @@ -25,7 +25,9 @@ } public Item getItemLayoutManager() { - Item itemLabel = new Item(this); + Item itemLabel = new Item(); + itemLabel.setUserAgent(getUserAgent()); + itemLabel.setFObj(this); return itemLabel; } 1.29 +8 -4 xml-fop/src/org/apache/fop/fo/flow/PageNumber.java Index: PageNumber.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/PageNumber.java,v retrieving revision 1.28 retrieving revision 1.29 diff -u -r1.28 -r1.29 --- PageNumber.java 9 Sep 2002 10:35:09 -0000 1.28 +++ PageNumber.java 14 Feb 2003 04:15:04 -0000 1.29 @@ -18,6 +18,7 @@ import org.apache.fop.util.CharUtilities; import org.apache.fop.apps.StructureHandler; +import org.apache.fop.layoutmgr.LayoutManager; import org.apache.fop.layoutmgr.LeafNodeLayoutManager; import org.apache.fop.layoutmgr.LayoutContext; import org.apache.fop.area.inline.InlineArea; @@ -49,7 +50,8 @@ public void addLayoutManager(List lms) { setup(); - lms.add(new LeafNodeLayoutManager(this) { + LayoutManager lm; + lm = new LeafNodeLayoutManager() { public InlineArea get(LayoutContext context) { // get page string from parent, build area Word inline = new Word(); @@ -76,8 +78,10 @@ protected void offsetArea(LayoutContext context) { curArea.setOffset(context.getBaseline()); } - } - ); + }; + lm.setUserAgent(getUserAgent()); + lm.setFObj(this); + lms.add(lm); } public void setup() { 1.28 +7 -4 xml-fop/src/org/apache/fop/fo/flow/PageNumberCitation.java Index: PageNumberCitation.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/PageNumberCitation.java,v retrieving revision 1.27 retrieving revision 1.28 diff -u -r1.27 -r1.28 --- PageNumberCitation.java 9 Sep 2002 10:35:09 -0000 1.27 +++ PageNumberCitation.java 14 Feb 2003 04:15:04 -0000 1.28 @@ -62,7 +62,8 @@ public void addLayoutManager(List lms) { setup(); - lms.add(new LeafNodeLayoutManager(this) { + LayoutManager lm; + lm = new LeafNodeLayoutManager() { public InlineArea get(LayoutContext context) { return getInlineArea(parentLM); } @@ -79,8 +80,10 @@ protected void offsetArea(LayoutContext context) { curArea.setOffset(context.getBaseline()); } - } - ); + }; + lm.setUserAgent(getUserAgent()); + lm.setFObj(this); + lms.add(lm); } // if id can be resolved then simply return a word, otherwise 1.25 +4 -2 xml-fop/src/org/apache/fop/fo/flow/StaticContent.java Index: StaticContent.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/StaticContent.java,v retrieving revision 1.24 retrieving revision 1.25 diff -u -r1.24 -r1.25 --- StaticContent.java 17 Aug 2002 23:51:07 -0000 1.24 +++ StaticContent.java 14 Feb 2003 04:15:04 -0000 1.25 @@ -39,7 +39,9 @@ public StaticContentLayoutManager getLayoutManager() { if (lm == null) { - lm = new StaticContentLayoutManager(this); + lm = new StaticContentLayoutManager(); + lm.setUserAgent(getUserAgent()); + lm.setFObj(this); } return lm; } 1.49 +4 -2 xml-fop/src/org/apache/fop/fo/flow/Table.java Index: Table.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/Table.java,v retrieving revision 1.48 retrieving revision 1.49 diff -u -r1.48 -r1.49 --- Table.java 15 Nov 2002 11:56:28 -0000 1.48 +++ Table.java 14 Feb 2003 04:15:04 -0000 1.49 @@ -72,7 +72,9 @@ * Must override in subclasses if their content can be laid out. */ public void addLayoutManager(List list) { - TableLayoutManager tlm = new TableLayoutManager(this); + TableLayoutManager tlm = new TableLayoutManager(); + tlm.setUserAgent(getUserAgent()); + tlm.setFObj(this); tlm.setColumns(columns); if(tableHeader != null) { tlm.setTableHeader(tableHeader.getLayoutManager()); 1.47 +4 -2 xml-fop/src/org/apache/fop/fo/flow/TableBody.java Index: TableBody.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/TableBody.java,v retrieving revision 1.46 retrieving revision 1.47 diff -u -r1.46 -r1.47 --- TableBody.java 15 Nov 2002 11:56:28 -0000 1.46 +++ TableBody.java 14 Feb 2003 04:15:05 -0000 1.47 @@ -40,7 +40,9 @@ } public Body getLayoutManager() { - Body blm = new Body(this); + Body blm = new Body(); + blm.setUserAgent(getUserAgent()); + blm.setFObj(this); return blm; } 1.51 +4 -2 xml-fop/src/org/apache/fop/fo/flow/TableCell.java Index: TableCell.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/TableCell.java,v retrieving revision 1.50 retrieving revision 1.51 diff -u -r1.50 -r1.51 --- TableCell.java 29 Nov 2002 23:18:53 -0000 1.50 +++ TableCell.java 14 Feb 2003 04:15:05 -0000 1.51 @@ -99,7 +99,9 @@ /** */ public void addLayoutManager(List list) { - Cell clm = new Cell(this); + Cell clm = new Cell(); + clm.setUserAgent(getUserAgent()); + clm.setFObj(this); list.add(clm); } 1.28 +5 -2 xml-fop/src/org/apache/fop/fo/flow/TableColumn.java Index: TableColumn.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/TableColumn.java,v retrieving revision 1.27 retrieving revision 1.28 diff -u -r1.27 -r1.28 --- TableColumn.java 25 Oct 2002 09:29:43 -0000 1.27 +++ TableColumn.java 14 Feb 2003 04:15:05 -0000 1.28 @@ -36,7 +36,10 @@ public LayoutManager getLayoutManager() { doSetup(); - return new Column(this); + Column clm = new Column(); + clm.setUserAgent(getUserAgent()); + clm.setFObj(this); + return clm; } public Length getColumnWidthAsLength() { 1.60 +4 -2 xml-fop/src/org/apache/fop/fo/flow/TableRow.java Index: TableRow.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/TableRow.java,v retrieving revision 1.59 retrieving revision 1.60 diff -u -r1.59 -r1.60 --- TableRow.java 29 Nov 2002 23:18:53 -0000 1.59 +++ TableRow.java 14 Feb 2003 04:15:05 -0000 1.60 @@ -41,7 +41,9 @@ /** */ public void addLayoutManager(List list) { - Row rlm = new Row(this); + Row rlm = new Row(); + rlm.setUserAgent(getUserAgent()); + rlm.setFObj(this); list.add(rlm); } 1.60 +2 -1 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.59 retrieving revision 1.60 diff -u -r1.59 -r1.60 --- PageSequence.java 18 Nov 2002 15:54:14 -0000 1.59 +++ PageSequence.java 14 Feb 2003 04:15:06 -0000 1.60 @@ -340,6 +340,7 @@ // This will layout pages and add them to the area tree PageLayoutManager pageLM = new PageLayoutManager(areaTree, this); pageLM.setUserAgent(getUserAgent()); + pageLM.setFObj(this); pageLM.setPageCounting(currentPageNumber, pageNumberGenerator); // For now, skip the threading and just call run directly. 1.20 +15 -15 xml-fop/src/org/apache/fop/layoutmgr/AbstractLayoutManager.java Index: AbstractLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/AbstractLayoutManager.java,v retrieving revision 1.19 retrieving revision 1.20 diff -u -r1.19 -r1.20 --- AbstractLayoutManager.java 29 Nov 2002 23:18:55 -0000 1.19 +++ AbstractLayoutManager.java 14 Feb 2003 04:15:07 -0000 1.20 @@ -1,6 +1,6 @@ /* * $Id$ - * Copyright (C) 2001 The Apache Software Foundation. All rights reserved. + * Copyright (C) 2001-2003 The Apache Software Foundation. All rights reserved. * For details on use and redistribution please refer to the * LICENSE file included with these sources. */ @@ -27,7 +27,7 @@ */ public abstract class AbstractLayoutManager implements LayoutManager { protected FOUserAgent userAgent; - protected LayoutManager parentLM; + protected LayoutManager parentLM = null; protected FObj fobj; protected String foID = null; @@ -37,22 +37,22 @@ protected ListIterator childLMiter; protected boolean bInited = false; - protected LayoutPos curPos = new LayoutPos(); - static class LayoutPos { - int lmIndex = 0; - int subIndex = 0; + /** + * Abstract layout manager. + */ + public AbstractLayoutManager() { } - public AbstractLayoutManager(FObj fobj) { - this(fobj, new LMiter(fobj.getChildren())); - } - - public AbstractLayoutManager(FObj fobj, ListIterator lmIter) { - this.fobj = fobj; + /** + * Set the FO object for this layout manager + * + * @param fo the fo for this layout manager + */ + public void setFObj(FObj fo) { + this.fobj = fo; foID = fobj.getID(); - this.parentLM = null; - childLMiter = lmIter; + childLMiter = new LMiter(fobj.getChildren()); } /** 1.9 +2 -3 xml-fop/src/org/apache/fop/layoutmgr/BlockContainerLayoutManager.java Index: BlockContainerLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/BlockContainerLayoutManager.java,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- BlockContainerLayoutManager.java 13 Feb 2003 04:24:17 -0000 1.8 +++ BlockContainerLayoutManager.java 14 Feb 2003 04:15:07 -0000 1.9 @@ -45,8 +45,7 @@ int overflow; PropertyManager propManager; - public BlockContainerLayoutManager(FObj fobj) { - super(fobj); + public BlockContainerLayoutManager() { } public void setOverflow(int of) { 1.27 +14 -4 xml-fop/src/org/apache/fop/layoutmgr/BlockLayoutManager.java Index: BlockLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/BlockLayoutManager.java,v retrieving revision 1.26 retrieving revision 1.27 diff -u -r1.26 -r1.27 --- BlockLayoutManager.java 13 Feb 2003 04:24:17 -0000 1.26 +++ BlockLayoutManager.java 14 Feb 2003 04:15:07 -0000 1.27 @@ -88,16 +88,26 @@ } } LineLayoutManager child; - child = new LineLayoutManager(fobj, inlines, lineHeight, + child = new LineLayoutManager(lineHeight, lead, follow); child.setUserAgent(getUserAgent()); + child.setFObj(fobj); + child.setLMiter(inlines.listIterator()); return child; } } - public BlockLayoutManager(FObj fobj) { - super(fobj); + public BlockLayoutManager() { + } + + /** + * Set the FO object for this layout manager + * + * @param fo the fo for this layout manager + */ + public void setFObj(FObj fo) { + super.setFObj(fo); childLMiter = new BlockLMiter(childLMiter); } 1.15 +2 -3 xml-fop/src/org/apache/fop/layoutmgr/BlockStackingLayoutManager.java Index: BlockStackingLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/BlockStackingLayoutManager.java,v retrieving revision 1.14 retrieving revision 1.15 diff -u -r1.14 -r1.15 --- BlockStackingLayoutManager.java 13 Feb 2003 04:24:17 -0000 1.14 +++ BlockStackingLayoutManager.java 14 Feb 2003 04:15:07 -0000 1.15 @@ -26,8 +26,7 @@ protected LayoutManager curChildLM = null; protected BlockParent parentArea = null; - public BlockStackingLayoutManager(FObj fobj) { - super(fobj); + public BlockStackingLayoutManager() { } private BreakCost evaluateBreakCost(Area parent, Area child) { 1.13 +10 -1 xml-fop/src/org/apache/fop/layoutmgr/ContentLayoutManager.java Index: ContentLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/ContentLayoutManager.java,v retrieving revision 1.12 retrieving revision 1.13 diff -u -r1.12 -r1.13 --- ContentLayoutManager.java 13 Feb 2003 04:24:17 -0000 1.12 +++ ContentLayoutManager.java 14 Feb 2003 04:15:07 -0000 1.13 @@ -6,6 +6,7 @@ */ package org.apache.fop.layoutmgr; +import org.apache.fop.fo.FObj; import org.apache.fop.fo.FOUserAgent; import org.apache.fop.area.Area; import org.apache.fop.area.Resolveable; @@ -35,6 +36,14 @@ */ public ContentLayoutManager(Area area) { holder = area; + } + + /** + * Set the FO object for this layout manager + * + * @param fo the fo for this layout manager + */ + public void setFObj(FObj fo) { } public void fillArea(LayoutManager curLM) { 1.18 +2 -3 xml-fop/src/org/apache/fop/layoutmgr/FlowLayoutManager.java Index: FlowLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/FlowLayoutManager.java,v retrieving revision 1.17 retrieving revision 1.18 diff -u -r1.17 -r1.18 --- FlowLayoutManager.java 29 Nov 2002 23:18:55 -0000 1.17 +++ FlowLayoutManager.java 14 Feb 2003 04:15:07 -0000 1.18 @@ -32,8 +32,7 @@ * This is the top level layout manager. * It is created by the PageSequence FO. */ - public FlowLayoutManager(FObj fobj) { - super(fobj); + public FlowLayoutManager() { } public BreakPoss getNextBreakPoss(LayoutContext context) { 1.10 +22 -4 xml-fop/src/org/apache/fop/layoutmgr/InlineStackingLayoutManager.java Index: InlineStackingLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/InlineStackingLayoutManager.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- InlineStackingLayoutManager.java 13 Feb 2003 04:24:17 -0000 1.9 +++ InlineStackingLayoutManager.java 14 Feb 2003 04:15:07 -0000 1.10 @@ -79,9 +79,27 @@ * @param fobj the formatting object that creates the area * @param childLMiter the iterator for child areas */ - public InlineStackingLayoutManager(FObj fobj, - ListIterator childLMiter) { - super(fobj, childLMiter); + public InlineStackingLayoutManager() { + } + + /** + * Set the FO object for this layout manager + * + * @param fo the fo for this layout manager + */ + public void setFObj(FObj fo) { + this.fobj = fo; + foID = fobj.getID(); + childLMiter = null; + } + + /** + * Set the iterator. + * + * @param iter the iterator for this LM + */ + public void setLMiter(ListIterator iter) { + childLMiter = iter; } /** 1.14 +12 -2 xml-fop/src/org/apache/fop/layoutmgr/LayoutManager.java Index: LayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/LayoutManager.java,v retrieving revision 1.13 retrieving revision 1.14 diff -u -r1.13 -r1.14 --- LayoutManager.java 18 Nov 2002 15:54:15 -0000 1.13 +++ LayoutManager.java 14 Feb 2003 04:15:07 -0000 1.14 @@ -1,6 +1,6 @@ /* * $Id$ - * Copyright (C) 2001 The Apache Software Foundation. All rights reserved. + * Copyright (C) 2001-2003 The Apache Software Foundation. All rights reserved. * For details on use and redistribution please refer to the * LICENSE file included with these sources. */ @@ -8,6 +8,7 @@ package org.apache.fop.layoutmgr; import org.apache.fop.fo.FOUserAgent; +import org.apache.fop.fo.FObj; import org.apache.fop.area.Area; import org.apache.fop.area.Resolveable; @@ -17,6 +18,15 @@ * The interface for all LayoutManagers. */ public interface LayoutManager { + + /** + * Set the FO object for this layout manager. + * For layout managers that are created without an FO + * this may not be called. + * + * @param obj the FO object for this layout manager + */ + public void setFObj(FObj obj); /** * Set the user agent. 1.21 +2 -3 xml-fop/src/org/apache/fop/layoutmgr/LeafNodeLayoutManager.java Index: LeafNodeLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/LeafNodeLayoutManager.java,v retrieving revision 1.20 retrieving revision 1.21 diff -u -r1.20 -r1.21 --- LeafNodeLayoutManager.java 13 Feb 2003 04:24:17 -0000 1.20 +++ LeafNodeLayoutManager.java 14 Feb 2003 04:15:07 -0000 1.21 @@ -32,8 +32,7 @@ * Create a Leaf node layout mananger. * @param fobj the fo object that created this manager */ - public LeafNodeLayoutManager(FObj fobj) { - super(fobj); + public LeafNodeLayoutManager() { } /** 1.21 +2 -3 xml-fop/src/org/apache/fop/layoutmgr/LineLayoutManager.java Index: LineLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/LineLayoutManager.java,v retrieving revision 1.20 retrieving revision 1.21 diff -u -r1.20 -r1.21 --- LineLayoutManager.java 13 Feb 2003 04:24:17 -0000 1.20 +++ LineLayoutManager.java 14 Feb 2003 04:15:07 -0000 1.21 @@ -98,8 +98,7 @@ * @param l the default lead, from top to baseline * @param f the default follow, from baseline to bottom */ - public LineLayoutManager(FObj fobj, List lms, int lh, int l, int f) { - super(fobj, lms.listIterator()); + public LineLayoutManager(int lh, int l, int f) { lineHeight = lh; lead = l; follow = f; 1.28 +1 -2 xml-fop/src/org/apache/fop/layoutmgr/PageLayoutManager.java Index: PageLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/PageLayoutManager.java,v retrieving revision 1.27 retrieving revision 1.28 diff -u -r1.27 -r1.28 --- PageLayoutManager.java 13 Feb 2003 04:24:17 -0000 1.27 +++ PageLayoutManager.java 14 Feb 2003 04:15:07 -0000 1.28 @@ -85,7 +85,6 @@ * @param pageseq the page sequence fo */ public PageLayoutManager(AreaTree areaTree, PageSequence pageseq) { - super(pageseq); this.areaTree = areaTree; pageSequence = pageseq; } 1.9 +2 -3 xml-fop/src/org/apache/fop/layoutmgr/StaticContentLayoutManager.java Index: StaticContentLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/StaticContentLayoutManager.java,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- StaticContentLayoutManager.java 29 Nov 2002 23:18:55 -0000 1.8 +++ StaticContentLayoutManager.java 14 Feb 2003 04:15:07 -0000 1.9 @@ -26,8 +26,7 @@ private RegionReference region; private List blockBreaks = new ArrayList(); - public StaticContentLayoutManager(FObj fobj) { - super(fobj); + public StaticContentLayoutManager() { } public void setRegionReference(RegionReference region) { 1.19 +2 -3 xml-fop/src/org/apache/fop/layoutmgr/TextLayoutManager.java Index: TextLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/TextLayoutManager.java,v retrieving revision 1.18 retrieving revision 1.19 diff -u -r1.18 -r1.19 --- TextLayoutManager.java 13 Feb 2003 04:24:17 -0000 1.18 +++ TextLayoutManager.java 14 Feb 2003 04:15:07 -0000 1.19 @@ -92,8 +92,7 @@ * @param chars the characters * @param textInfo the text information for doing layout */ - public TextLayoutManager(FObj fobj, char[] chars, TextInfo textInfo) { - super(fobj); + public TextLayoutManager(char[] chars, TextInfo textInfo) { this.chars = chars; this.textInfo = textInfo; this.vecAreaInfo = new ArrayList(); 1.8 +2 -3 xml-fop/src/org/apache/fop/layoutmgr/list/Item.java Index: Item.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/list/Item.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- Item.java 13 Feb 2003 04:24:18 -0000 1.7 +++ Item.java 14 Feb 2003 04:15:08 -0000 1.8 @@ -46,8 +46,7 @@ * Create a new Cell layout manager. * @param fobj the formatting object for the cell */ - public Item(FObj fobj) { - super(fobj); + public Item() { } protected void initProperties(PropertyManager propMgr) { 1.8 +2 -4 xml-fop/src/org/apache/fop/layoutmgr/list/ListBlockLayoutManager.java Index: ListBlockLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/list/ListBlockLayoutManager.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- ListBlockLayoutManager.java 13 Feb 2003 04:24:18 -0000 1.7 +++ ListBlockLayoutManager.java 14 Feb 2003 04:15:08 -0000 1.8 @@ -50,10 +50,8 @@ /** * Create a new table layout manager. * - * @param fobj the table formatting object */ - public ListBlockLayoutManager(FObj fobj) { - super(fobj); + public ListBlockLayoutManager() { } protected void initProperties(PropertyManager propMgr) { 1.9 +2 -4 xml-fop/src/org/apache/fop/layoutmgr/list/ListItemLayoutManager.java Index: ListItemLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/list/ListItemLayoutManager.java,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- ListItemLayoutManager.java 13 Feb 2003 04:24:18 -0000 1.8 +++ ListItemLayoutManager.java 14 Feb 2003 04:15:08 -0000 1.9 @@ -53,10 +53,8 @@ /** * Create a new list item layout manager. * - * @param fobj the list-item formatting object */ - public ListItemLayoutManager(FObj fobj) { - super(fobj); + public ListItemLayoutManager() { } protected void initProperties(PropertyManager propMgr) { 1.10 +2 -3 xml-fop/src/org/apache/fop/layoutmgr/table/Body.java Index: Body.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/table/Body.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- Body.java 13 Feb 2003 04:24:19 -0000 1.9 +++ Body.java 14 Feb 2003 04:15:08 -0000 1.10 @@ -50,8 +50,7 @@ * * @param fobj the formatting object that created this manager */ - public Body(FObj fobj) { - super(fobj); + public Body() { } /** 1.6 +2 -4 xml-fop/src/org/apache/fop/layoutmgr/table/Caption.java Index: Caption.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/table/Caption.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- Caption.java 13 Feb 2003 04:24:19 -0000 1.5 +++ Caption.java 14 Feb 2003 04:15:08 -0000 1.6 @@ -37,10 +37,8 @@ /** * Create a new Caption layout manager. * - * @param fobj the formatting object that created this manager */ - public Caption(FObj fobj) { - super(fobj); + public Caption() { } /** 1.10 +2 -4 xml-fop/src/org/apache/fop/layoutmgr/table/Cell.java Index: Cell.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/table/Cell.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- Cell.java 13 Feb 2003 04:24:19 -0000 1.9 +++ Cell.java 14 Feb 2003 04:15:08 -0000 1.10 @@ -46,10 +46,8 @@ /** * Create a new Cell layout manager. - * @param fobj the formatting object for the cell */ - public Cell(FObj fobj) { - super(fobj); + public Cell() { } protected void initProperties(PropertyManager propMgr) { 1.3 +8 -4 xml-fop/src/org/apache/fop/layoutmgr/table/Column.java Index: Column.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/table/Column.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- Column.java 1 Nov 2002 10:49:34 -0000 1.2 +++ Column.java 14 Feb 2003 04:15:08 -0000 1.3 @@ -7,6 +7,7 @@ package org.apache.fop.layoutmgr.table; +import org.apache.fop.fo.FObj; import org.apache.fop.fo.PropertyManager; import org.apache.fop.layoutmgr.AbstractLayoutManager; import org.apache.fop.layoutmgr.BreakPoss; @@ -34,9 +35,12 @@ * * @param fobj the table-column formatting object */ - public Column(TableColumn fobj) { - super(fobj); - columnWidth = fobj.getColumnWidth(); + public Column() { + } + + public void setFObj(FObj fobj) { + super.setFObj(fobj); + columnWidth = ((TableColumn)fobj).getColumnWidth(); } protected void initProperties(PropertyManager propMgr) { 1.11 +2 -4 xml-fop/src/org/apache/fop/layoutmgr/table/Row.java Index: Row.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/table/Row.java,v retrieving revision 1.10 retrieving revision 1.11 diff -u -r1.10 -r1.11 --- Row.java 13 Feb 2003 04:24:19 -0000 1.10 +++ Row.java 14 Feb 2003 04:15:08 -0000 1.11 @@ -54,10 +54,8 @@ /** * Create a new row layout manager. * - * @param fobj the table-row formatting object */ - public Row(FObj fobj) { - super(fobj); + public Row() { } /** 1.6 +2 -4 xml-fop/src/org/apache/fop/layoutmgr/table/TableAndCaptionLayoutManager.java Index: TableAndCaptionLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/table/TableAndCaptionLayoutManager.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- TableAndCaptionLayoutManager.java 13 Feb 2003 04:24:19 -0000 1.5 +++ TableAndCaptionLayoutManager.java 14 Feb 2003 04:15:08 -0000 1.6 @@ -39,10 +39,8 @@ /** * Create a new table and caption layout manager. * - * @param fobj the table-and-caption formatting object */ - public TableAndCaptionLayoutManager(FObj fobj) { - super(fobj); + public TableAndCaptionLayoutManager() { } /** 1.10 +2 -4 xml-fop/src/org/apache/fop/layoutmgr/table/TableLayoutManager.java Index: TableLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/table/TableLayoutManager.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- TableLayoutManager.java 13 Feb 2003 04:24:19 -0000 1.9 +++ TableLayoutManager.java 14 Feb 2003 04:15:08 -0000 1.10 @@ -59,10 +59,8 @@ /** * Create a new table layout manager. * - * @param fobj the table formatting object */ - public TableLayoutManager(FObj fobj) { - super(fobj); + public TableLayoutManager() { } protected void initProperties(PropertyManager propMgr) {
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]