Browse Source

set FO on lm as part of interface, simpler and more flexible


git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@195947 13f79535-47bb-0310-9956-ffa450edef68
pull/30/head
Keiron Liddle 21 years ago
parent
commit
de213623b7
49 changed files with 187 additions and 104 deletions
  1. 3
    1
      src/org/apache/fop/fo/FOText.java
  2. 6
    2
      src/org/apache/fop/fo/FObjMixed.java
  3. 3
    2
      src/org/apache/fop/fo/Title.java
  4. 7
    3
      src/org/apache/fop/fo/flow/BasicLink.java
  5. 4
    4
      src/org/apache/fop/fo/flow/BidiOverride.java
  6. 2
    1
      src/org/apache/fop/fo/flow/Block.java
  7. 3
    1
      src/org/apache/fop/fo/flow/BlockContainer.java
  8. 3
    1
      src/org/apache/fop/fo/flow/Character.java
  9. 3
    1
      src/org/apache/fop/fo/flow/ExternalGraphic.java
  10. 2
    1
      src/org/apache/fop/fo/flow/Flow.java
  11. 6
    3
      src/org/apache/fop/fo/flow/InlineContainer.java
  12. 3
    1
      src/org/apache/fop/fo/flow/InstreamForeignObject.java
  13. 6
    3
      src/org/apache/fop/fo/flow/Leader.java
  14. 3
    1
      src/org/apache/fop/fo/flow/ListBlock.java
  15. 3
    1
      src/org/apache/fop/fo/flow/ListItem.java
  16. 3
    1
      src/org/apache/fop/fo/flow/ListItemBody.java
  17. 3
    1
      src/org/apache/fop/fo/flow/ListItemLabel.java
  18. 7
    3
      src/org/apache/fop/fo/flow/PageNumber.java
  19. 6
    3
      src/org/apache/fop/fo/flow/PageNumberCitation.java
  20. 3
    1
      src/org/apache/fop/fo/flow/StaticContent.java
  21. 3
    1
      src/org/apache/fop/fo/flow/Table.java
  22. 3
    1
      src/org/apache/fop/fo/flow/TableBody.java
  23. 3
    1
      src/org/apache/fop/fo/flow/TableCell.java
  24. 4
    1
      src/org/apache/fop/fo/flow/TableColumn.java
  25. 3
    1
      src/org/apache/fop/fo/flow/TableRow.java
  26. 1
    0
      src/org/apache/fop/fo/pagination/PageSequence.java
  27. 14
    14
      src/org/apache/fop/layoutmgr/AbstractLayoutManager.java
  28. 1
    2
      src/org/apache/fop/layoutmgr/BlockContainerLayoutManager.java
  29. 13
    3
      src/org/apache/fop/layoutmgr/BlockLayoutManager.java
  30. 1
    2
      src/org/apache/fop/layoutmgr/BlockStackingLayoutManager.java
  31. 9
    0
      src/org/apache/fop/layoutmgr/ContentLayoutManager.java
  32. 1
    2
      src/org/apache/fop/layoutmgr/FlowLayoutManager.java
  33. 21
    3
      src/org/apache/fop/layoutmgr/InlineStackingLayoutManager.java
  34. 11
    1
      src/org/apache/fop/layoutmgr/LayoutManager.java
  35. 1
    2
      src/org/apache/fop/layoutmgr/LeafNodeLayoutManager.java
  36. 1
    2
      src/org/apache/fop/layoutmgr/LineLayoutManager.java
  37. 0
    1
      src/org/apache/fop/layoutmgr/PageLayoutManager.java
  38. 1
    2
      src/org/apache/fop/layoutmgr/StaticContentLayoutManager.java
  39. 1
    2
      src/org/apache/fop/layoutmgr/TextLayoutManager.java
  40. 1
    2
      src/org/apache/fop/layoutmgr/list/Item.java
  41. 1
    3
      src/org/apache/fop/layoutmgr/list/ListBlockLayoutManager.java
  42. 1
    3
      src/org/apache/fop/layoutmgr/list/ListItemLayoutManager.java
  43. 1
    2
      src/org/apache/fop/layoutmgr/table/Body.java
  44. 1
    3
      src/org/apache/fop/layoutmgr/table/Caption.java
  45. 1
    3
      src/org/apache/fop/layoutmgr/table/Cell.java
  46. 7
    3
      src/org/apache/fop/layoutmgr/table/Column.java
  47. 1
    3
      src/org/apache/fop/layoutmgr/table/Row.java
  48. 1
    3
      src/org/apache/fop/layoutmgr/table/TableAndCaptionLayoutManager.java
  49. 1
    3
      src/org/apache/fop/layoutmgr/table/TableLayoutManager.java

+ 3
- 1
src/org/apache/fop/fo/FOText.java View File

@@ -85,7 +85,9 @@ public class FOText extends FObj {
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() {

+ 6
- 2
src/org/apache/fop/fo/FObjMixed.java View File

@@ -36,8 +36,12 @@ public class FObjMixed extends FObj {

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);
}
}


+ 3
- 2
src/org/apache/fop/fo/Title.java View File

@@ -33,9 +33,10 @@ public class Title extends FObjMixed {
// 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

+ 7
- 3
src/org/apache/fop/fo/flow/BasicLink.java View File

@@ -44,14 +44,18 @@ public class BasicLink extends Inline {
// 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) {

+ 4
- 4
src/org/apache/fop/fo/flow/BidiOverride.java View File

@@ -40,8 +40,9 @@ public class BidiOverride extends FObjMixed {
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 @@ public class BidiOverride extends FObjMixed {
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);

+ 2
- 1
src/org/apache/fop/fo/flow/Block.java View File

@@ -175,8 +175,9 @@ public class Block extends FObjMixed {
}

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);

+ 3
- 1
src/org/apache/fop/fo/flow/BlockContainer.java View File

@@ -45,7 +45,9 @@ public class BlockContainer extends FObj {
}

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);
}

+ 3
- 1
src/org/apache/fop/fo/flow/Character.java View File

@@ -52,7 +52,9 @@ public class Character extends FObj {
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);
}

+ 3
- 1
src/org/apache/fop/fo/flow/ExternalGraphic.java View File

@@ -72,7 +72,9 @@ public class ExternalGraphic extends FObj {
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);

+ 2
- 1
src/org/apache/fop/fo/flow/Flow.java View File

@@ -111,8 +111,9 @@ public class Flow extends FObj {
}

public void addLayoutManager(List list) {
FlowLayoutManager lm = new FlowLayoutManager(this);
FlowLayoutManager lm = new FlowLayoutManager();
lm.setUserAgent(getUserAgent());
lm.setFObj(this);
list.add(lm);
}


+ 6
- 3
src/org/apache/fop/fo/flow/InlineContainer.java View File

@@ -13,6 +13,7 @@ import org.apache.fop.fo.flow.*;
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 class InlineContainer extends FObj {
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 @@ public class InlineContainer extends FObj {
class ICLayoutManager extends LeafNodeLayoutManager {
List childrenLM;

ICLayoutManager(FObj obj, List childLM) {
super(obj);
ICLayoutManager(List childLM) {
childrenLM = childLM;
}


+ 3
- 1
src/org/apache/fop/fo/flow/InstreamForeignObject.java View File

@@ -56,7 +56,9 @@ public class InstreamForeignObject extends FObj {
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());

+ 6
- 3
src/org/apache/fop/fo/flow/Leader.java View File

@@ -51,7 +51,7 @@ public class Leader extends FObjMixed {
}

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 @@ public class Leader extends FObjMixed {
}
}*/
};
lm.setUserAgent(getUserAgent());
lm.setFObj(this);
lm.setAlignment(properties.get("leader-alignment").getEnum());
list.add(lm);
}
@@ -121,9 +123,10 @@ public class Leader extends FObjMixed {
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

+ 3
- 1
src/org/apache/fop/fo/flow/ListBlock.java View File

@@ -39,7 +39,9 @@ public class ListBlock extends FObj {
}

public void addLayoutManager(List list) {
ListBlockLayoutManager blm = new ListBlockLayoutManager(this);
ListBlockLayoutManager blm = new ListBlockLayoutManager();
blm.setUserAgent(getUserAgent());
blm.setFObj(this);
list.add(blm);
}


+ 3
- 1
src/org/apache/fop/fo/flow/ListItem.java View File

@@ -39,7 +39,9 @@ public class ListItem extends FObj {

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);

+ 3
- 1
src/org/apache/fop/fo/flow/ListItemBody.java View File

@@ -25,7 +25,9 @@ public class ListItemBody extends FObj {
}

public Item getItemLayoutManager() {
Item item = new Item(this);
Item item = new Item();
item.setUserAgent(getUserAgent());
item.setFObj(this);
return item;
}


+ 3
- 1
src/org/apache/fop/fo/flow/ListItemLabel.java View File

@@ -25,7 +25,9 @@ public class ListItemLabel extends FObj {
}

public Item getItemLayoutManager() {
Item itemLabel = new Item(this);
Item itemLabel = new Item();
itemLabel.setUserAgent(getUserAgent());
itemLabel.setFObj(this);
return itemLabel;
}


+ 7
- 3
src/org/apache/fop/fo/flow/PageNumber.java View File

@@ -18,6 +18,7 @@ import org.apache.fop.apps.FOPException;
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 class PageNumber extends FObj {

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 @@ public class PageNumber extends FObj {
protected void offsetArea(LayoutContext context) {
curArea.setOffset(context.getBaseline());
}
}
);
};
lm.setUserAgent(getUserAgent());
lm.setFObj(this);
lms.add(lm);
}

public void setup() {

+ 6
- 3
src/org/apache/fop/fo/flow/PageNumberCitation.java View File

@@ -62,7 +62,8 @@ public class PageNumberCitation extends FObj {

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 @@ public class PageNumberCitation extends FObj {
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

+ 3
- 1
src/org/apache/fop/fo/flow/StaticContent.java View File

@@ -39,7 +39,9 @@ public class StaticContent extends Flow {

public StaticContentLayoutManager getLayoutManager() {
if (lm == null) {
lm = new StaticContentLayoutManager(this);
lm = new StaticContentLayoutManager();
lm.setUserAgent(getUserAgent());
lm.setFObj(this);
}
return lm;
}

+ 3
- 1
src/org/apache/fop/fo/flow/Table.java View File

@@ -72,7 +72,9 @@ public class Table extends FObj {
* 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());

+ 3
- 1
src/org/apache/fop/fo/flow/TableBody.java View File

@@ -40,7 +40,9 @@ public class TableBody extends FObj {
}

public Body getLayoutManager() {
Body blm = new Body(this);
Body blm = new Body();
blm.setUserAgent(getUserAgent());
blm.setFObj(this);
return blm;
}


+ 3
- 1
src/org/apache/fop/fo/flow/TableCell.java View File

@@ -99,7 +99,9 @@ public class TableCell extends FObj {
/**
*/
public void addLayoutManager(List list) {
Cell clm = new Cell(this);
Cell clm = new Cell();
clm.setUserAgent(getUserAgent());
clm.setFObj(this);
list.add(clm);
}


+ 4
- 1
src/org/apache/fop/fo/flow/TableColumn.java View File

@@ -36,7 +36,10 @@ public class TableColumn extends FObj {

public LayoutManager getLayoutManager() {
doSetup();
return new Column(this);
Column clm = new Column();
clm.setUserAgent(getUserAgent());
clm.setFObj(this);
return clm;
}

public Length getColumnWidthAsLength() {

+ 3
- 1
src/org/apache/fop/fo/flow/TableRow.java View File

@@ -41,7 +41,9 @@ public class TableRow extends FObj {
/**
*/
public void addLayoutManager(List list) {
Row rlm = new Row(this);
Row rlm = new Row();
rlm.setUserAgent(getUserAgent());
rlm.setFObj(this);
list.add(rlm);
}


+ 1
- 0
src/org/apache/fop/fo/pagination/PageSequence.java View File

@@ -340,6 +340,7 @@ public class PageSequence extends FObj {
// 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.

+ 14
- 14
src/org/apache/fop/layoutmgr/AbstractLayoutManager.java View File

@@ -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 @@ import java.util.ListIterator;
*/
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 @@ public abstract class AbstractLayoutManager implements LayoutManager {
protected ListIterator childLMiter;
protected boolean bInited = false;

protected LayoutPos curPos = new LayoutPos();

static class LayoutPos {
int lmIndex = 0;
int subIndex = 0;
}

public AbstractLayoutManager(FObj fobj) {
this(fobj, new LMiter(fobj.getChildren()));
/**
* Abstract layout manager.
*/
public AbstractLayoutManager() {
}

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
- 2
src/org/apache/fop/layoutmgr/BlockContainerLayoutManager.java View File

@@ -45,8 +45,7 @@ public class BlockContainerLayoutManager extends BlockStackingLayoutManager {
int overflow;
PropertyManager propManager;

public BlockContainerLayoutManager(FObj fobj) {
super(fobj);
public BlockContainerLayoutManager() {
}

public void setOverflow(int of) {

+ 13
- 3
src/org/apache/fop/layoutmgr/BlockLayoutManager.java View File

@@ -88,16 +88,26 @@ public class BlockLayoutManager extends BlockStackingLayoutManager {
}
}
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
- 2
src/org/apache/fop/layoutmgr/BlockStackingLayoutManager.java View File

@@ -26,8 +26,7 @@ public abstract class BlockStackingLayoutManager extends AbstractLayoutManager {
protected LayoutManager curChildLM = null;
protected BlockParent parentArea = null;

public BlockStackingLayoutManager(FObj fobj) {
super(fobj);
public BlockStackingLayoutManager() {
}

private BreakCost evaluateBreakCost(Area parent, Area child) {

+ 9
- 0
src/org/apache/fop/layoutmgr/ContentLayoutManager.java View File

@@ -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;
@@ -37,6 +38,14 @@ public class ContentLayoutManager implements LayoutManager {
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) {

List childBreaks = new ArrayList();

+ 1
- 2
src/org/apache/fop/layoutmgr/FlowLayoutManager.java View File

@@ -32,8 +32,7 @@ public class FlowLayoutManager extends BlockStackingLayoutManager {
* 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) {

+ 21
- 3
src/org/apache/fop/layoutmgr/InlineStackingLayoutManager.java View File

@@ -79,9 +79,27 @@ public class InlineStackingLayoutManager extends AbstractLayoutManager {
* @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;
}

/**

+ 11
- 1
src/org/apache/fop/layoutmgr/LayoutManager.java View File

@@ -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;
@@ -18,6 +19,15 @@ import org.apache.fop.area.PageViewport;
*/
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
- 2
src/org/apache/fop/layoutmgr/LeafNodeLayoutManager.java View File

@@ -32,8 +32,7 @@ public class LeafNodeLayoutManager extends AbstractLayoutManager {
* Create a Leaf node layout mananger.
* @param fobj the fo object that created this manager
*/
public LeafNodeLayoutManager(FObj fobj) {
super(fobj);
public LeafNodeLayoutManager() {
}

/**

+ 1
- 2
src/org/apache/fop/layoutmgr/LineLayoutManager.java View File

@@ -98,8 +98,7 @@ public class LineLayoutManager extends InlineStackingLayoutManager {
* @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;

+ 0
- 1
src/org/apache/fop/layoutmgr/PageLayoutManager.java View File

@@ -85,7 +85,6 @@ public class PageLayoutManager extends AbstractLayoutManager implements Runnable
* @param pageseq the page sequence fo
*/
public PageLayoutManager(AreaTree areaTree, PageSequence pageseq) {
super(pageseq);
this.areaTree = areaTree;
pageSequence = pageseq;
}

+ 1
- 2
src/org/apache/fop/layoutmgr/StaticContentLayoutManager.java View File

@@ -26,8 +26,7 @@ public class StaticContentLayoutManager extends BlockStackingLayoutManager {
private RegionReference region;
private List blockBreaks = new ArrayList();

public StaticContentLayoutManager(FObj fobj) {
super(fobj);
public StaticContentLayoutManager() {
}

public void setRegionReference(RegionReference region) {

+ 1
- 2
src/org/apache/fop/layoutmgr/TextLayoutManager.java View File

@@ -92,8 +92,7 @@ public class TextLayoutManager extends AbstractLayoutManager {
* @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
- 2
src/org/apache/fop/layoutmgr/list/Item.java View File

@@ -46,8 +46,7 @@ public class Item extends BlockStackingLayoutManager {
* 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
- 3
src/org/apache/fop/layoutmgr/list/ListBlockLayoutManager.java View File

@@ -50,10 +50,8 @@ public class ListBlockLayoutManager extends BlockStackingLayoutManager {
/**
* 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
- 3
src/org/apache/fop/layoutmgr/list/ListItemLayoutManager.java View File

@@ -53,10 +53,8 @@ public class ListItemLayoutManager extends BlockStackingLayoutManager {
/**
* 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
- 2
src/org/apache/fop/layoutmgr/table/Body.java View File

@@ -50,8 +50,7 @@ public class Body extends BlockStackingLayoutManager {
*
* @param fobj the formatting object that created this manager
*/
public Body(FObj fobj) {
super(fobj);
public Body() {
}

/**

+ 1
- 3
src/org/apache/fop/layoutmgr/table/Caption.java View File

@@ -37,10 +37,8 @@ public class Caption extends BlockStackingLayoutManager {
/**
* Create a new Caption layout manager.
*
* @param fobj the formatting object that created this manager
*/
public Caption(FObj fobj) {
super(fobj);
public Caption() {
}

/**

+ 1
- 3
src/org/apache/fop/layoutmgr/table/Cell.java View File

@@ -46,10 +46,8 @@ public class Cell extends BlockStackingLayoutManager {

/**
* 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) {

+ 7
- 3
src/org/apache/fop/layoutmgr/table/Column.java View File

@@ -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 @@ public class Column extends AbstractLayoutManager {
*
* @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
- 3
src/org/apache/fop/layoutmgr/table/Row.java View File

@@ -54,10 +54,8 @@ public class Row extends BlockStackingLayoutManager {
/**
* Create a new row layout manager.
*
* @param fobj the table-row formatting object
*/
public Row(FObj fobj) {
super(fobj);
public Row() {
}

/**

+ 1
- 3
src/org/apache/fop/layoutmgr/table/TableAndCaptionLayoutManager.java View File

@@ -39,10 +39,8 @@ public class TableAndCaptionLayoutManager extends BlockStackingLayoutManager {
/**
* 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
- 3
src/org/apache/fop/layoutmgr/table/TableLayoutManager.java View File

@@ -59,10 +59,8 @@ public class TableLayoutManager extends BlockStackingLayoutManager {
/**
* 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) {

Loading…
Cancel
Save