cvs commit: xml-fop/src/org/apache/fop/layoutmgr/table Body.java Caption.java Cell.java Row.java TableAndCaptionLayoutManager.java TableLayoutManager.java
keiron 2003/03/03 19:48:09 Modified:src/org/apache/fop/layoutmgr AbstractLayoutManager.java BlockContainerLayoutManager.java BlockLayoutManager.java BlockStackingLayoutManager.java BreakPoss.java BreakPossPosIter.java ContentLayoutManager.java FlowLayoutManager.java InlineStackingLayoutManager.java LayoutManager.java LeafPosition.java LineLayoutManager.java NonLeafPosition.java PageLayoutManager.java Position.java PositionIterator.java RetrieveMarkerLayoutManager.java StaticContentLayoutManager.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 Row.java TableAndCaptionLayoutManager.java TableLayoutManager.java Added: src/org/apache/fop/layoutmgr LayoutProcessor.java Log: split LayoutManager interface so that the new LayoutProcessor interface is the local interface used by the implementation to do the layout Revision ChangesPath 1.23 +9 -9 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.22 retrieving revision 1.23 diff -u -r1.22 -r1.23 --- AbstractLayoutManager.java27 Feb 2003 23:30:48 - 1.22 +++ AbstractLayoutManager.java4 Mar 2003 03:48:08 - 1.23 @@ -23,16 +23,16 @@ /** * The base class for all LayoutManagers. */ -public abstract class AbstractLayoutManager implements LayoutManager { +public abstract class AbstractLayoutManager implements LayoutProcessor { protected FOUserAgent userAgent; -protected LayoutManager parentLM = null; +protected LayoutProcessor parentLM = null; protected FObj fobj; protected String foID = null; protected Map markers = null; /** True if this LayoutManager has handled all of its content. */ private boolean bFinished = false; -protected LayoutManager curChildLM = null; +protected LayoutProcessor curChildLM = null; protected ListIterator childLMiter; protected boolean bInited = false; @@ -76,7 +76,7 @@ return userAgent.getLogger(); } -public void setParentLM(LayoutManager lm) { +public void setParent(LayoutProcessor lm) { this.parentLM = lm; } @@ -128,14 +128,14 @@ * Note: child must implement LayoutManager! If it doesn't, skip it * and print a warning. */ -protected LayoutManager getChildLM() { +protected LayoutProcessor getChildLM() { if (curChildLM != null !curChildLM.isFinished()) { return curChildLM; } while (childLMiter.hasNext()) { -curChildLM = (LayoutManager) childLMiter.next(); +curChildLM = (LayoutProcessor) childLMiter.next(); curChildLM.setUserAgent(getUserAgent()); -curChildLM.setParentLM(this); +curChildLM.setParent(this); curChildLM.init(); return curChildLM; } @@ -172,7 +172,7 @@ } while (curChildLM != lm childLMiter.hasPrevious()) { curChildLM.resetPosition(null); -curChildLM = (LayoutManager) childLMiter.previous(); +curChildLM = (LayoutProcessor) childLMiter.previous(); } // Otherwise next returns same object childLMiter.next(); 1.12 +4 -4 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.11 retrieving revision 1.12 diff -u -r1.11 -r1.12 --- BlockContainerLayoutManager.java 27 Feb 2003 23:30:49 - 1.11 +++ BlockContainerLayoutManager.java 4 Mar 2003 03:48:08 - 1.12 @@ -98,7 +98,7 @@ stackLimit = context.getStackLimit(); } -LayoutManager curLM ; // currently active LM +LayoutProcessor curLM ; // currently active LM MinOptMax stackSize = new MinOptMax(); // if starting add space before @@ -156,7 +156,7 @@ public BreakPoss
cvs commit: xml-fop/src/org/apache/fop/layoutmgr/table Body.java Caption.java Cell.java Row.java TableAndCaptionLayoutManager.java TableLayoutManager.java
keiron 2002/11/18 07:54:16 Modified:src/org/apache/fop/fo FONode.java Title.java src/org/apache/fop/fo/flow Block.java Flow.java Leader.java ListItem.java src/org/apache/fop/fo/pagination PageSequence.java src/org/apache/fop/layoutmgr AbstractLayoutManager.java BlockContainerLayoutManager.java BlockLayoutManager.java BreakPoss.java ContentLayoutManager.java FlowLayoutManager.java InlineStackingLayoutManager.java LayoutManager.java LineLayoutManager.java PageLayoutManager.java StaticContentLayoutManager.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 Row.java TableAndCaptionLayoutManager.java TableLayoutManager.java Log: set user agent on layout managers for values and logging improved break handling so that it breaks before overflow Revision ChangesPath 1.33 +5 -1 xml-fop/src/org/apache/fop/fo/FONode.java Index: FONode.java === RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/FONode.java,v retrieving revision 1.32 retrieving revision 1.33 diff -u -r1.32 -r1.33 --- FONode.java 15 Nov 2002 11:56:27 - 1.32 +++ FONode.java 18 Nov 2002 15:54:13 - 1.33 @@ -45,6 +45,10 @@ userAgent = ua; } +public FOUserAgent getUserAgent() { +return userAgent; +} + public void setStructHandler(StructureHandler st) { } 1.12 +3 -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.11 retrieving revision 1.12 diff -u -r1.11 -r1.12 --- Title.java3 Sep 2002 11:45:13 - 1.11 +++ Title.java18 Nov 2002 15:54:14 - 1.12 @@ -35,11 +35,13 @@ InlineStackingLayoutManager lm; lm = new InlineStackingLayoutManager(this, new LMiter(children.listIterator())); +lm.setUserAgent(getUserAgent()); lm.init(); // get breaks then add areas to title ContentLayoutManager clm = new ContentLayoutManager(title); +clm.setUserAgent(getUserAgent()); lm.setParentLM(clm); clm.fillArea(lm); 1.65 +2 -1 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.64 retrieving revision 1.65 diff -u -r1.64 -r1.65 --- Block.java15 Nov 2002 11:56:28 - 1.64 +++ Block.java18 Nov 2002 15:54:14 - 1.65 @@ -176,6 +176,7 @@ public void addLayoutManager(List list) { BlockLayoutManager blm = new BlockLayoutManager(this); +blm.setUserAgent(getUserAgent()); TextInfo ti = propMgr.getTextLayoutProps(fontInfo); blm.setBlockTextInfo(ti); list.add(blm); 1.35 +4 -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.34 retrieving revision 1.35 diff -u -r1.34 -r1.35 --- Flow.java 20 Jun 2002 09:14:13 - 1.34 +++ Flow.java 18 Nov 2002 15:54:14 - 1.35 @@ -111,7 +111,9 @@ } public void addLayoutManager(List list) { -list.add(new FlowLayoutManager(this)); +FlowLayoutManager lm = new FlowLayoutManager(this); +lm.setUserAgent(getUserAgent()); +list.add(lm); } } 1.30 +3 -1 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.29 retrieving revision 1.30 diff -u -r1.29 -r1.30 --- Leader.java 15 Nov 2002 11:56:28 - 1.29 +++ Leader.java 18 Nov 2002 15:54:14 - 1.30 @@ -123,12 +123,14 @@ InlineStackingLayoutManager lm; lm = new InlineStackingLayoutManager(this, new LMiter(children.listIterator())); +lm.setUserAgent(getUserAgent());
cvs commit: xml-fop/src/org/apache/fop/layoutmgr/table Body.java Caption.java Cell.java Row.java TableAndCaptionLayoutManager.java TableLayoutManager.java
keiron 2002/11/13 02:25:58 Modified:src/org/apache/fop/layoutmgr AbstractLayoutManager.java BlockContainerLayoutManager.java BlockLayoutManager.java BlockStackingLayoutManager.java BreakPoss.java ContentLayoutManager.java FlowLayoutManager.java InlineStackingLayoutManager.java LMiter.java LayoutContext.java LayoutManager.java LeafNodeLayoutManager.java LeafPosition.java LineLayoutManager.java NonLeafPosition.java PageLayoutManager.java Position.java PositionIterator.java SpaceSpecifier.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 Row.java TableAndCaptionLayoutManager.java TableLayoutManager.java Log: cleanup of lms attempt at fixing some block layout problems Revision ChangesPath 1.17 +33 -35xml-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.16 retrieving revision 1.17 diff -u -r1.16 -r1.17 --- AbstractLayoutManager.java6 Nov 2002 15:36:29 - 1.16 +++ AbstractLayoutManager.java13 Nov 2002 10:25:48 - 1.17 @@ -28,10 +28,10 @@ protected String foID = null; /** True if this LayoutManager has handled all of its content. */ -private boolean m_bFinished = false; -protected LayoutManager m_curChildLM = null; -protected ListIterator m_childLMiter; -protected boolean m_bInited = false; +private boolean bFinished = false; +protected LayoutManager curChildLM = null; +protected ListIterator childLMiter; +protected boolean bInited = false; protected LayoutPos curPos = new LayoutPos(); @@ -48,7 +48,7 @@ this.fobj = fobj; foID = fobj.getID(); this.parentLM = null; -m_childLMiter = lmIter; +childLMiter = lmIter; } public void setParentLM(LayoutManager lm) { @@ -104,26 +104,26 @@ * and print a warning. */ protected LayoutManager getChildLM() { -if (m_curChildLM != null !m_curChildLM.isFinished()) { -return m_curChildLM; +if (curChildLM != null !curChildLM.isFinished()) { +return curChildLM; } -while (m_childLMiter.hasNext()) { -m_curChildLM = (LayoutManager) m_childLMiter.next(); -m_curChildLM.setParentLM(this); -m_curChildLM.init(); -return m_curChildLM; +while (childLMiter.hasNext()) { +curChildLM = (LayoutManager) childLMiter.next(); +curChildLM.setParentLM(this); +curChildLM.init(); +return curChildLM; } return null; } protected boolean hasMoreLM(LayoutManager prevLM) { -// prevLM should = m_curChildLM -if (prevLM != m_curChildLM) { +// prevLM should = curChildLM +if (prevLM != curChildLM) { //log.debug(AbstractLayoutManager.peekNextLM: + // passed LM is not current child LM!); return false; } -return !m_childLMiter.hasNext(); +return !childLMiter.hasNext(); } @@ -138,20 +138,20 @@ protected void reset(Position pos) { //if (lm == null) return; LayoutManager lm = (pos != null) ? pos.getLM() : null; -if (m_curChildLM != lm) { -// ASSERT m_curChildLM == (LayoutManager)m_childLMiter.previous() -if (m_childLMiter.hasPrevious() m_curChildLM != -(LayoutManager) m_childLMiter.previous()) { +if (curChildLM != lm) { +// ASSERT curChildLM == (LayoutManager)childLMiter.previous() +if (childLMiter.hasPrevious() curChildLM != +(LayoutManager) childLMiter.previous()) { //log.error(LMiter problem!); } -while (m_curChildLM != lm m_childLMiter.hasPrevious()) { -m_curChildLM.resetPosition(null); -m_curChildLM = (LayoutManager) m_childLMiter.previous(); +while (curChildLM != lm childLMiter.hasPrevious()) { +
cvs commit: xml-fop/src/org/apache/fop/layoutmgr/table Body.java Caption.java Cell.java Row.java TableAndCaptionLayoutManager.java
keiron 2002/11/06 07:46:55 Modified:src/org/apache/fop/layoutmgr BlockContainerLayoutManager.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 Row.java TableAndCaptionLayoutManager.java Log: some minor improvements to make layout work a bit better Revision ChangesPath 1.4 +15 -15 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.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- BlockContainerLayoutManager.java 13 Sep 2002 08:21:54 - 1.3 +++ BlockContainerLayoutManager.java 6 Nov 2002 15:46:55 - 1.4 @@ -58,7 +58,7 @@ propManager = pm; abProps = pm.getAbsolutePositionProps(); -if(abProps.absolutePosition == AbsolutePosition.ABSOLUTE) { +if (abProps.absolutePosition == AbsolutePosition.ABSOLUTE) { Rectangle2D rect = new Rectangle2D.Double(abProps.left, abProps.top, abProps.right - abProps.left, abProps.bottom - abProps.top); @@ -77,7 +77,7 @@ public BreakPoss getNextBreakPoss(LayoutContext context) { -if(abProps.absolutePosition == AbsolutePosition.ABSOLUTE) { +if (abProps.absolutePosition == AbsolutePosition.ABSOLUTE) { return getAbsoluteBreakPoss(context); } @@ -90,13 +90,13 @@ MinOptMax stackLimit; int ipd = context.getRefIPD(); boolean rotated = vals[0] == 0.0; -if(rotated) { +if (rotated) { // rotated 90 degrees stackLimit = new MinOptMax(100); ipd = getRotatedIPD(); absoluteCTM = new CTM(vals[0], vals[1], vals[2], vals[3], 0, 0); } else { -if(vals[0] == -1.0) { +if (vals[0] == -1.0) { absoluteCTM = new CTM(vals[0], vals[1], vals[2], vals[3], 0, 0); } stackLimit = context.getStackLimit(); @@ -123,7 +123,7 @@ while (!curLM.isFinished()) { if ((bp = curLM.getNextBreakPoss(childLC)) != null) { stackSize.add(bp.getStackingSize()); -if (stackSize.min stackLimit.max) { +if (stackSize.opt stackLimit.max) { // reset to last break if (lastPos != null) { reset(lastPos.getPosition()); @@ -139,7 +139,7 @@ stackLimit, stackSize)); } } -if(!rotated) { +if (!rotated) { BreakPoss breakPoss; breakPoss = new BreakPoss(new LeafPosition(this, childBreaks.size() - 1)); @@ -148,7 +148,7 @@ } } setFinished(true); -if(rotated) { +if (rotated) { BreakPoss breakPoss; breakPoss = new BreakPoss(new LeafPosition(this, childBreaks.size() - 1)); @@ -189,10 +189,10 @@ // to the normal stacking breakPoss.setStackingSize(new MinOptMax(0)); -if(stackSize.min relDims.bpd) { -if(overflow == Overflow.HIDDEN) { +if (stackSize.opt relDims.bpd) { +if (overflow == Overflow.HIDDEN) { clip = true; -} else if(overflow == Overflow.ERROR_IF_OVERFLOW) { +} else if (overflow == Overflow.ERROR_IF_OVERFLOW) { //log.error(contents overflows block-container viewport: clipping); clip = true; } @@ -230,7 +230,7 @@ public Area getParentArea(Area childArea) { if (curBlockArea == null) { viewportBlockArea = new BlockViewport(); -if(abProps.absolutePosition == AbsolutePosition.ABSOLUTE) { +if (abProps.absolutePosition == AbsolutePosition.ABSOLUTE) { viewportBlockArea.setXOffset(abProps.left); viewportBlockArea.setYOffset(abProps.top); viewportBlockArea.setWidth(abProps.right - abProps.left); @@ -241,12 +241,12 @@ } else { double[] vals = absoluteCTM.toArray(); boolean rotated = vals[0] == 0.0; -