bckfnn 2004/10/20 06:19:25 Modified: src/java/org/apache/fop/fo FObj.java src/java/org/apache/fop/fo/expr BodyStartFunction.java LabelEndFunction.java src/java/org/apache/fop/fo/flow Character.java ExternalGraphic.java InstreamForeignObject.java TableCell.java src/java/org/apache/fop/fo/pagination ColorProfile.java LayoutMasterSet.java PageSequence.java RegionBA.java RegionSE.java RepeatablePageMasterReference.java SimplePageMaster.java SinglePageMasterReference.java src/java/org/apache/fop/fo/properties LineHeightPropertyMaker.java src/java/org/apache/fop/layoutmgr AbstractLayoutManager.java CharacterLayoutManager.java ExternalGraphicLayoutManager.java ICLayoutManager.java InstreamForeignObjectLM.java LeaderLayoutManager.java LeafNodeLayoutManager.java PageNumberCitationLayoutManager.java PageNumberLayoutManager.java PageSequenceLayoutManager.java RetrieveMarkerLayoutManager.java src/java/org/apache/fop/layoutmgr/list ListBlockLayoutManager.java ListItemLayoutManager.java src/java/org/apache/fop/layoutmgr/table Body.java Caption.java Column.java Row.java TableAndCaptionLayoutManager.java src/java/org/apache/fop/render/mif MIFHandler.java Log: Fourth phase of performance improvement. - Get rid of calls to FObj.getProperty() and its friends. Replace them with the property getters on the FO nodes. PR: 31699 Revision Changes Path 1.82 +1 -1 xml-fop/src/java/org/apache/fop/fo/FObj.java Index: FObj.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/FObj.java,v retrieving revision 1.81 retrieving revision 1.82 diff -u -r1.81 -r1.82 --- FObj.java 20 Oct 2004 11:58:53 -0000 1.81 +++ FObj.java 20 Oct 2004 13:19:23 -0000 1.82 @@ -316,7 +316,7 @@ * @param marker Marker to add. */ protected void addMarker(Marker marker) { - String mcname = marker.getPropString(PR_MARKER_CLASS_NAME); + String mcname = marker.getMarkerClassName(); if (childNodes != null) { // check for empty childNodes for (Iterator iter = childNodes.iterator(); iter.hasNext();) { 1.10 +6 -7 xml-fop/src/java/org/apache/fop/fo/expr/BodyStartFunction.java Index: BodyStartFunction.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/expr/BodyStartFunction.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- BodyStartFunction.java 22 May 2004 21:44:37 -0000 1.9 +++ BodyStartFunction.java 20 Oct 2004 13:19:23 -0000 1.10 @@ -20,7 +20,7 @@ import org.apache.fop.datatypes.Numeric; import org.apache.fop.fo.Constants; -import org.apache.fop.fo.FONode; +import org.apache.fop.fo.PropertyList; import org.apache.fop.fo.flow.ListItem; import org.apache.fop.fo.properties.Property; @@ -49,16 +49,15 @@ Numeric distance = pInfo.getPropertyList().get(Constants.PR_PROVISIONAL_DISTANCE_BETWEEN_STARTS).getNumeric(); - FONode item = pInfo.getFO(); - while (item != null && !(item instanceof ListItem)) { - item = item.getParent(); + PropertyList pList = pInfo.getPropertyList(); + while (pList != null && !(pList.getFObj() instanceof ListItem)) { + pList = pList.getParentPropertyList(); } - if (item == null) { + if (pList == null) { throw new PropertyException("body-start() called from outside an fo:list-item"); } - Numeric startIndent = - ((ListItem)item).getProperty(Constants.PR_START_INDENT).getNumeric(); + Numeric startIndent = pList.get(Constants.PR_START_INDENT).getNumeric(); return (Property) NumericOp.addition(distance, startIndent); } 1.11 +7 -7 xml-fop/src/java/org/apache/fop/fo/expr/LabelEndFunction.java Index: LabelEndFunction.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/expr/LabelEndFunction.java,v retrieving revision 1.10 retrieving revision 1.11 diff -u -r1.10 -r1.11 --- LabelEndFunction.java 22 May 2004 21:44:37 -0000 1.10 +++ LabelEndFunction.java 20 Oct 2004 13:19:23 -0000 1.11 @@ -22,7 +22,7 @@ import org.apache.fop.datatypes.Length; import org.apache.fop.datatypes.LengthBase; import org.apache.fop.fo.Constants; -import org.apache.fop.fo.FONode; +import org.apache.fop.fo.PropertyList; import org.apache.fop.fo.flow.ListItem; import org.apache.fop.fo.properties.PercentLength; import org.apache.fop.fo.properties.Property; @@ -56,17 +56,17 @@ Length separation = pInfo.getPropertyList().getNearestSpecified(Constants.PR_PROVISIONAL_LABEL_SEPARATION).getLength(); - FONode item = pInfo.getFO(); - while (item != null && !(item instanceof ListItem)) { - item = item.getParent(); + PropertyList pList = pInfo.getPropertyList(); + while (pList != null && !(pList.getFObj() instanceof ListItem)) { + pList = pList.getParentPropertyList(); } - if (item == null) { + if (pList == null) { throw new PropertyException("label-end() called from outside an fo:list-item"); } - Length startIndent = ((ListItem)item).getProperty(Constants.PR_START_INDENT).getLength(); + Length startIndent = pList.get(Constants.PR_START_INDENT).getLength(); // Should be CONTAINING_REFAREA but that doesn't work - LengthBase base = new LengthBase((ListItem)item, pInfo.getPropertyList(), + LengthBase base = new LengthBase(pList.getFObj(), pInfo.getPropertyList(), LengthBase.CONTAINING_BOX); PercentLength refWidth = new PercentLength(1.0, base); 1.26 +2 -5 xml-fop/src/java/org/apache/fop/fo/flow/Character.java Index: Character.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/flow/Character.java,v retrieving revision 1.25 retrieving revision 1.26 diff -u -r1.25 -r1.26 --- Character.java 19 Oct 2004 13:45:36 -0000 1.25 +++ Character.java 20 Oct 2004 13:19:23 -0000 1.26 @@ -229,11 +229,8 @@ * @see org.apache.fop.fo.FONode#addLayoutManager(List) */ public void addLayoutManager(List list) { - String str = getPropString(PR_CHARACTER); - if (str.length() == 1) { - CharacterLayoutManager lm = new CharacterLayoutManager(this); - list.add(lm); - } + CharacterLayoutManager lm = new CharacterLayoutManager(this); + list.add(lm); } /** 1.45 +1 -1 xml-fop/src/java/org/apache/fop/fo/flow/ExternalGraphic.java Index: ExternalGraphic.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/flow/ExternalGraphic.java,v retrieving revision 1.44 retrieving revision 1.45 diff -u -r1.44 -r1.45 --- ExternalGraphic.java 19 Oct 2004 13:45:36 -0000 1.44 +++ ExternalGraphic.java 20 Oct 2004 13:19:24 -0000 1.45 @@ -245,7 +245,7 @@ * @see org.apache.fop.fo.FONode#addLayoutManager(List) */ public void addLayoutManager(List list) { - if (getPropString(PR_SRC) != null) { + if (!src.equals("")) { ExternalGraphicLayoutManager lm = new ExternalGraphicLayoutManager(this); list.add(lm); } 1.31 +2 -4 xml-fop/src/java/org/apache/fop/fo/flow/InstreamForeignObject.java Index: InstreamForeignObject.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/flow/InstreamForeignObject.java,v retrieving revision 1.30 retrieving revision 1.31 diff -u -r1.30 -r1.31 --- InstreamForeignObject.java 19 Oct 2004 08:53:50 -0000 1.30 +++ InstreamForeignObject.java 20 Oct 2004 13:19:24 -0000 1.31 @@ -150,8 +150,7 @@ public int computeXOffset (int ipd, int cwidth) { int xoffset = 0; - int ta = getPropEnum(PR_TEXT_ALIGN); - switch (ta) { + switch (textAlign) { case TextAlign.CENTER: xoffset = (ipd - cwidth) / 2; break; @@ -169,8 +168,7 @@ public int computeYOffset(int bpd, int cheight) { int yoffset = 0; - int da = getPropEnum(PR_DISPLAY_ALIGN); - switch (da) { + switch (displayAlign) { case DisplayAlign.BEFORE: break; case DisplayAlign.AFTER: 1.38 +2 -4 xml-fop/src/java/org/apache/fop/fo/flow/TableCell.java Index: TableCell.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/flow/TableCell.java,v retrieving revision 1.37 retrieving revision 1.38 diff -u -r1.37 -r1.38 --- TableCell.java 19 Oct 2004 21:47:15 -0000 1.37 +++ TableCell.java 20 Oct 2004 13:19:24 -0000 1.38 @@ -202,8 +202,7 @@ * border-separate should only be specified on the table object, * but it inherits. */ - int iSep = getPropLength(PR_BORDER_SEPARATION | - CP_INLINE_PROGRESSION_DIRECTION); + int iSep = borderSeparation.getIPD().getLength().getValue(); this.startAdjust = iSep / 2 + bp.getBorderStartWidth(false) + bp.getPaddingStart(false); @@ -212,8 +211,7 @@ + bp.getPaddingEnd(false); // Offset of content rectangle in the block-progression direction - int bSep = getPropLength(PR_BORDER_SEPARATION | - CP_BLOCK_PROGRESSION_DIRECTION); + int bSep = borderSeparation.getBPD().getLength().getValue(); this.beforeOffset = bSep / 2 + bp.getBorderBeforeWidth(false) + bp.getPaddingBefore(false); 1.18 +1 -13 xml-fop/src/java/org/apache/fop/fo/pagination/ColorProfile.java Index: ColorProfile.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/pagination/ColorProfile.java,v retrieving revision 1.17 retrieving revision 1.18 diff -u -r1.17 -r1.18 --- ColorProfile.java 19 Oct 2004 08:53:51 -0000 1.17 +++ ColorProfile.java 20 Oct 2004 13:19:24 -0000 1.18 @@ -67,18 +67,6 @@ } /** - * Special processing for the end of parsing an ColorProfile object. - * Extract instance variables from the collection of properties for this - * object. - */ - protected void endOfNode() throws SAXParseException { - src = getPropString(PR_SRC); - profileName = getPropString(PR_COLOR_PROFILE_NAME); - intent = getPropEnum(PR_RENDERING_INTENT); - this.propertyList = null; - } - - /** * @see org.apache.fop.fo.FONode#validateChildNode(Locator, String, String) XSL 1.0/FOP: EMPTY (no child nodes permitted) */ 1.27 +1 -1 xml-fop/src/java/org/apache/fop/fo/pagination/LayoutMasterSet.java Index: LayoutMasterSet.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/pagination/LayoutMasterSet.java,v retrieving revision 1.26 retrieving revision 1.27 diff -u -r1.26 -r1.27 --- LayoutMasterSet.java 19 Oct 2004 13:45:37 -0000 1.26 +++ LayoutMasterSet.java 20 Oct 2004 13:19:24 -0000 1.27 @@ -145,7 +145,7 @@ throws SAXParseException { // check for duplication of master-name - String masterName = sPM.getPropString(PR_MASTER_NAME); + String masterName = sPM.getMasterName(); if (existsName(masterName)) { throw new SAXParseException("'master-name' (" + masterName 1.50 +2 -2 xml-fop/src/java/org/apache/fop/fo/pagination/PageSequence.java Index: PageSequence.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/pagination/PageSequence.java,v retrieving revision 1.49 retrieving revision 1.50 diff -u -r1.49 -r1.50 --- PageSequence.java 19 Oct 2004 13:45:37 -0000 1.49 +++ PageSequence.java 20 Oct 2004 13:19:24 -0000 1.50 @@ -251,7 +251,7 @@ super.addChildNode(child); // For getChildren } else if (childId == FO_STATIC_CONTENT) { addFlow((StaticContent) child); - String flowName = ((StaticContent) child).getPropString(PR_FLOW_NAME); + String flowName = ((StaticContent) child).getFlowName(); flowMap.put(flowName, child); startStructuredPageSequence(); } @@ -264,7 +264,7 @@ * used to generate that page. */ private void addFlow(Flow flow) throws SAXParseException { - String flowName = flow.getPropString(PR_FLOW_NAME); + String flowName = flow.getFlowName(); if (hasFlowName(flowName)) { throw new SAXParseException ("duplicate flow-name \"" 1.23 +4 -4 xml-fop/src/java/org/apache/fop/fo/pagination/RegionBA.java Index: RegionBA.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/pagination/RegionBA.java,v retrieving revision 1.22 retrieving revision 1.23 diff -u -r1.22 -r1.23 --- RegionBA.java 19 Oct 2004 13:45:37 -0000 1.22 +++ RegionBA.java 20 Oct 2004 13:19:24 -0000 1.23 @@ -79,14 +79,14 @@ */ protected void adjustIPD(Rectangle vpRefRect, int wm) { int offset = 0; - Region start = getSiblingRegion(FO_REGION_START); + RegionStart start = (RegionStart) getSiblingRegion(FO_REGION_START); if (start != null) { - offset = start.getPropLength(PR_EXTENT); + offset = start.getExtent().getValue(); vpRefRect.translate(offset, 0); // move (x, y) units } - Region end = getSiblingRegion(FO_REGION_END); + RegionEnd end = (RegionEnd) getSiblingRegion(FO_REGION_END); if (end != null) { - offset += end.getPropLength(PR_EXTENT); + offset += end.getExtent().getValue(); } if (offset > 0) { if (wm == WritingMode.LR_TB || wm == WritingMode.RL_TB) { 1.17 +2 -2 xml-fop/src/java/org/apache/fop/fo/pagination/RegionSE.java Index: RegionSE.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/pagination/RegionSE.java,v retrieving revision 1.16 retrieving revision 1.17 diff -u -r1.16 -r1.17 --- RegionSE.java 19 Oct 2004 13:45:37 -0000 1.16 +++ RegionSE.java 20 Oct 2004 13:19:24 -0000 1.17 @@ -73,12 +73,12 @@ int offset = 0; RegionBefore before = (RegionBefore) getSiblingRegion(FO_REGION_BEFORE); if (before != null && before.getPrecedence() == TRUE) { - offset = before.getPropLength(PR_EXTENT); + offset = before.getExtent().getValue(); vpRefRect.translate(0, offset); } RegionAfter after = (RegionAfter) getSiblingRegion(FO_REGION_AFTER); if (after != null && after.getPrecedence() == TRUE) { - offset += after.getPropLength(PR_EXTENT); + offset += after.getExtent().getValue(); } if (offset > 0) { if (wm == WritingMode.LR_TB || wm == WritingMode.RL_TB) { 1.22 +1 -1 xml-fop/src/java/org/apache/fop/fo/pagination/RepeatablePageMasterReference.java Index: RepeatablePageMasterReference.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/pagination/RepeatablePageMasterReference.java,v retrieving revision 1.21 retrieving revision 1.22 diff -u -r1.21 -r1.22 --- RepeatablePageMasterReference.java 19 Oct 2004 13:45:37 -0000 1.21 +++ RepeatablePageMasterReference.java 20 Oct 2004 13:19:24 -0000 1.22 @@ -96,7 +96,7 @@ return null; } } - return getPropString(PR_MASTER_REFERENCE); + return masterReference; } /** 1.29 +1 -1 xml-fop/src/java/org/apache/fop/fo/pagination/SimplePageMaster.java Index: SimplePageMaster.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/pagination/SimplePageMaster.java,v retrieving revision 1.28 retrieving revision 1.29 diff -u -r1.28 -r1.29 --- SimplePageMaster.java 19 Oct 2004 13:45:38 -0000 1.28 +++ SimplePageMaster.java 20 Oct 2004 13:19:24 -0000 1.29 @@ -237,7 +237,7 @@ * Return "master-name" property. */ public String getMasterName() { - return getPropString(PR_MASTER_NAME); + return masterName; } /** 1.16 +1 -1 xml-fop/src/java/org/apache/fop/fo/pagination/SinglePageMasterReference.java Index: SinglePageMasterReference.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/pagination/SinglePageMasterReference.java,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- SinglePageMasterReference.java 19 Oct 2004 13:45:38 -0000 1.15 +++ SinglePageMasterReference.java 20 Oct 2004 13:19:24 -0000 1.16 @@ -88,7 +88,7 @@ boolean isEmptyPage) { if (this.state == FIRST) { this.state = DONE; - return getPropString(PR_MASTER_REFERENCE); + return masterReference; } else { return null; } 1.7 +1 -13 xml-fop/src/java/org/apache/fop/fo/properties/LineHeightPropertyMaker.java Index: LineHeightPropertyMaker.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/properties/LineHeightPropertyMaker.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- LineHeightPropertyMaker.java 19 Oct 2004 18:42:43 -0000 1.6 +++ LineHeightPropertyMaker.java 20 Oct 2004 13:19:24 -0000 1.7 @@ -92,16 +92,4 @@ } return super.convertProperty(p, propertyList, fo); } - - /* - protected Property convertPropertyDatatype(Property p, - PropertyList propertyList, - FObj fo) { - Number numval = p.getNumber(); - if (numval != null) { - return new PercentLength(numval.doubleValue(), getPercentBase(fo,propertyList)); - } - return super.convertPropertyDatatype(p, propertyList, fo); - } - */ } 1.28 +0 -12 xml-fop/src/java/org/apache/fop/layoutmgr/AbstractLayoutManager.java Index: AbstractLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/AbstractLayoutManager.java,v retrieving revision 1.27 retrieving revision 1.28 diff -u -r1.27 -r1.28 --- AbstractLayoutManager.java 19 Oct 2004 21:41:46 -0000 1.27 +++ AbstractLayoutManager.java 20 Oct 2004 13:19:24 -0000 1.28 @@ -42,7 +42,6 @@ protected LayoutManager parentLM = null; protected List childLMs = new ArrayList(10); protected FObj fobj; - protected String foID = null; protected ListIterator fobjIter = null; protected Map markers = null; @@ -84,7 +83,6 @@ */ public void setFObj(FObj fo) { this.fobj = fo; - foID = fobj.getPropString(PR_ID); markers = fobj.getMarkers(); fobjIter = fobj.getChildNodes(); childLMiter = new LMiter(this); @@ -342,16 +340,6 @@ */ public PageViewport resolveRefID(String ref) { return parentLM.resolveRefID(ref); - } - - /** - * Add the id to the page. - * If the id string is not null then add the id to the current page. - */ - protected void addID() { - if (foID != null) { - addIDToPage(foID); - } } /** 1.7 +5 -3 xml-fop/src/java/org/apache/fop/layoutmgr/CharacterLayoutManager.java Index: CharacterLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/CharacterLayoutManager.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- CharacterLayoutManager.java 20 Oct 2004 11:55:32 -0000 1.6 +++ CharacterLayoutManager.java 20 Oct 2004 13:19:24 -0000 1.7 @@ -56,9 +56,8 @@ } private InlineArea getCharacterInlineArea(Character node) { - String str = node.getProperty(Character.PR_CHARACTER).getString(); org.apache.fop.area.inline.Character ch = - new org.apache.fop.area.inline.Character(str.charAt(0)); + new org.apache.fop.area.inline.Character(node.getCharacter()); return ch; } @@ -255,5 +254,8 @@ return returnList; } + protected void addId() { + addID(fobj.getId()); + } } 1.9 +12 -10 xml-fop/src/java/org/apache/fop/layoutmgr/ExternalGraphicLayoutManager.java Index: ExternalGraphicLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/ExternalGraphicLayoutManager.java,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- ExternalGraphicLayoutManager.java 19 Oct 2004 21:47:15 -0000 1.8 +++ ExternalGraphicLayoutManager.java 20 Oct 2004 13:19:24 -0000 1.9 @@ -62,7 +62,7 @@ setup(); InlineArea area = getExternalGraphicInlineArea(); setCurrentArea(area); - setAlignment(graphic.getPropEnum(PR_VERTICAL_ALIGN)); + setAlignment(graphic.getVerticalAlign()); setLead(viewHeight); } @@ -72,7 +72,7 @@ * @todo see if can simplify property handling logic */ private void setup() { - url = ImageFactory.getURL(graphic.getPropString(PR_SRC)); + url = ImageFactory.getURL(graphic.getSrc()); // assume lr-tb for now and just use the .optimum value of the range Length ipd = graphic.getPropertyList().get(PR_INLINE_PROGRESSION_DIMENSION). @@ -119,7 +119,7 @@ cwidth = cw.getValue(); } - int scaling = graphic.getPropEnum(PR_SCALING); + int scaling = graphic.getScaling(); if ((scaling == Scaling.UNIFORM) || (cwidth == -1) || cheight == -1) { ImageFactory fact = ImageFactory.getInstance(); fopimage = fact.getImage(url, graphic.getUserAgent()); @@ -162,7 +162,7 @@ } if (cwidth > viewWidth || cheight > viewHeight) { - int overflow = graphic.getPropEnum(PR_OVERFLOW); + int overflow = graphic.getOverflow(); if (overflow == Overflow.HIDDEN) { clip = true; } else if (overflow == Overflow.ERROR_IF_OVERFLOW) { @@ -174,8 +174,7 @@ int xoffset = 0; int yoffset = 0; - int da = graphic.getPropEnum(PR_DISPLAY_ALIGN); - switch(da) { + switch(graphic.getDisplayAlign()) { case DisplayAlign.BEFORE: break; case DisplayAlign.AFTER: @@ -189,8 +188,7 @@ break; } - int ta = graphic.getPropEnum(PR_TEXT_ALIGN); - switch(ta) { + switch(graphic.getTextAlign()) { case TextAlign.CENTER: xoffset = (viewWidth - cwidth) / 2; break; @@ -213,7 +211,7 @@ * @return the viewport containing the image area */ public InlineArea getExternalGraphicInlineArea() { - Image imArea = new Image(graphic.getPropString(PR_SRC)); + Image imArea = new Image(graphic.getSrc()); Viewport vp = new Viewport(imArea); vp.setIPD(viewWidth); vp.setBPD(viewHeight); @@ -226,6 +224,10 @@ TraitSetter.addBackground(vp, graphic.getCommonBorderPaddingBackground()); return vp; + } + + protected void addId() { + addID(graphic.getId()); } } 1.5 +8 -5 xml-fop/src/java/org/apache/fop/layoutmgr/ICLayoutManager.java Index: ICLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/ICLayoutManager.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- ICLayoutManager.java 6 Aug 2004 04:22:18 -0000 1.4 +++ ICLayoutManager.java 20 Oct 2004 13:19:24 -0000 1.5 @@ -23,19 +23,19 @@ // FOP import org.apache.fop.area.inline.InlineArea; -import org.apache.fop.fo.FObj; - +import org.apache.fop.fo.flow.InlineContainer; /** * This creates a single inline container area after * laying out the child block areas. All footnotes, floats * and id areas are maintained for later retrieval. */ public class ICLayoutManager extends LeafNodeLayoutManager { - + private InlineContainer fobj; private List childrenLM; - public ICLayoutManager(FObj node, List childLM) { + public ICLayoutManager(InlineContainer node, List childLM) { super(node); + fobj = node; childrenLM = childLM; } @@ -43,4 +43,7 @@ return null; } + protected void addId() { + addID(fobj.getId()); + } } 1.7 +15 -11 xml-fop/src/java/org/apache/fop/layoutmgr/InstreamForeignObjectLM.java Index: InstreamForeignObjectLM.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/InstreamForeignObjectLM.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- InstreamForeignObjectLM.java 19 Oct 2004 13:36:46 -0000 1.6 +++ InstreamForeignObjectLM.java 20 Oct 2004 13:19:24 -0000 1.7 @@ -45,7 +45,7 @@ ifoNode = node; Viewport areaCurrent = getInlineArea(); setCurrentArea(areaCurrent); - setAlignment(node.getPropEnum(PR_VERTICAL_ALIGN)); + setAlignment(node.getVerticalAlign()); setLead(areaCurrent.getBPD()); } @@ -72,27 +72,27 @@ int ipd = -1; boolean bpdauto = false; if (hasLH) { - bpd = ifoNode.getPropLength(PR_LINE_HEIGHT); + bpd = ifoNode.getLineHeight().getValue(); } else { // this property does not apply when the line-height applies // isn't the block-progression-dimension always in the same // direction as the line height? - len = ifoNode.getProperty(PR_BLOCK_PROGRESSION_DIMENSION).getLengthRange().getOptimum().getLength(); + len = ifoNode.getBlockProgressionDimension().getOptimum().getLength(); if (!len.isAuto()) { bpd = len.getValue(); } else { - len = ifoNode.getProperty(PR_HEIGHT).getLength(); + len = ifoNode.getHeight(); if (!len.isAuto()) { bpd = len.getValue(); } } } - len = ifoNode.getProperty(PR_INLINE_PROGRESSION_DIMENSION).getLengthRange().getOptimum().getLength(); + len = ifoNode.getInlineProgressionDimension().getOptimum().getLength(); if (!len.isAuto()) { ipd = len.getValue(); } else { - len = ifoNode.getProperty(PR_WIDTH).getLength(); + len = ifoNode.getWidth(); if (!len.isAuto()) { ipd = len.getValue(); } @@ -102,7 +102,7 @@ // to the content-height and content-width int cwidth = -1; int cheight = -1; - len = ifoNode.getProperty(PR_CONTENT_WIDTH).getLength(); + len = ifoNode.getContentWidth(); if (!len.isAuto()) { /*if(len.scaleToFit()) { if(ipd != -1) { @@ -111,7 +111,7 @@ } else {*/ cwidth = len.getValue(); } - len = ifoNode.getProperty(PR_CONTENT_HEIGHT).getLength(); + len = ifoNode.getContentHeight(); if (!len.isAuto()) { /*if(len.scaleToFit()) { if(bpd != -1) { @@ -134,7 +134,7 @@ if (cheight == -1) { cheight = (int)size.getY() * 1000; } - int scaling = ifoNode.getPropEnum(PR_SCALING); + int scaling = ifoNode.getScaling(); if (scaling == Scaling.UNIFORM) { // adjust the larger double rat1 = cwidth / (size.getX() * 1000f); @@ -156,7 +156,7 @@ boolean clip = false; if (cwidth > ipd || cheight > bpd) { - int overflow = ifoNode.getPropEnum(PR_OVERFLOW); + int overflow = ifoNode.getOverflow(); if (overflow == Overflow.HIDDEN) { clip = true; } else if (overflow == Overflow.ERROR_IF_OVERFLOW) { @@ -184,6 +184,10 @@ areaCurrent.setOffset(0); return areaCurrent; + } + + protected void addId() { + addID(ifoNode.getId()); } } 1.8 +10 -5 xml-fop/src/java/org/apache/fop/layoutmgr/LeaderLayoutManager.java Index: LeaderLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/LeaderLayoutManager.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- LeaderLayoutManager.java 19 Oct 2004 13:36:46 -0000 1.7 +++ LeaderLayoutManager.java 20 Oct 2004 13:19:24 -0000 1.8 @@ -23,6 +23,7 @@ import org.apache.fop.area.inline.InlineArea; import org.apache.fop.area.inline.Space; import org.apache.fop.area.inline.TextArea; +import org.apache.fop.datatypes.PercentBase; import org.apache.fop.fo.flow.Leader; import org.apache.fop.fonts.Font; import org.apache.fop.traits.MinOptMax; @@ -48,7 +49,7 @@ super(node); ldrNode = node; font = node.getFontState(); - setAlignment(node.getPropEnum(PR_LEADER_ALIGNMENT)); + setAlignment(node.getLeaderAlignment()); } public InlineArea get(LayoutContext context) { @@ -61,9 +62,10 @@ private MinOptMax getLeaderAllocIPD(int ipd) { // length of the leader - int opt = ldrNode.getLength(ldrNode.getProperty(PR_LEADER_LENGTH).getLengthRange().getOptimum().getLength(), ipd); - int min = ldrNode.getLength(ldrNode.getProperty(PR_LEADER_LENGTH).getLengthRange().getMinimum().getLength(), ipd); - int max = ldrNode.getLength(ldrNode.getProperty(PR_LEADER_LENGTH).getLengthRange().getMaximum().getLength(), ipd); + fobj.setLayoutDimension(PercentBase.BLOCK_IPD, ipd); + int opt = ldrNode.getLeaderLength().getOptimum().getLength().getValue(); + int min = ldrNode.getLeaderLength().getMinimum().getLength().getValue(); + int max = ldrNode.getLeaderLength().getMaximum().getLength().getValue(); return new MinOptMax(min, opt, max); } @@ -238,4 +240,7 @@ return returnList; } + protected void addId() { + addID(ldrNode.getId()); + } } 1.9 +5 -1 xml-fop/src/java/org/apache/fop/layoutmgr/LeafNodeLayoutManager.java Index: LeafNodeLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/LeafNodeLayoutManager.java,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- LeafNodeLayoutManager.java 22 Sep 2004 08:24:32 -0000 1.8 +++ LeafNodeLayoutManager.java 20 Oct 2004 13:19:24 -0000 1.9 @@ -225,7 +225,7 @@ * @param context the layout context for adding the area */ public void addAreas(PositionIterator posIter, LayoutContext context) { - addID(); + addId(); offsetArea(context); widthAdjustArea(context); @@ -236,6 +236,10 @@ } } + protected void addId() { + // Do nothing here, overriden in subclasses that has a 'id' property. + } + /** * Offset this area. * Offset the inline area in the bpd direction when adding the 1.8 +5 -1 xml-fop/src/java/org/apache/fop/layoutmgr/PageNumberCitationLayoutManager.java Index: PageNumberCitationLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/PageNumberCitationLayoutManager.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- PageNumberCitationLayoutManager.java 20 Oct 2004 11:55:32 -0000 1.7 +++ PageNumberCitationLayoutManager.java 20 Oct 2004 13:19:24 -0000 1.8 @@ -114,5 +114,9 @@ } return width; } + + protected void addId() { + addID(fobj.getId()); + } } 1.4 +7 -2 xml-fop/src/java/org/apache/fop/layoutmgr/PageNumberLayoutManager.java Index: PageNumberLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/PageNumberLayoutManager.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- PageNumberLayoutManager.java 22 Sep 2004 08:24:32 -0000 1.3 +++ PageNumberLayoutManager.java 20 Oct 2004 13:19:24 -0000 1.4 @@ -28,7 +28,7 @@ * LayoutManager for the fo:page-number formatting object */ public class PageNumberLayoutManager extends LeafNodeLayoutManager { - + private PageNumber fobj; Font font = null; /** @@ -39,6 +39,7 @@ */ public PageNumberLayoutManager(PageNumber node) { super(node); + fobj = node; font = node.getFontState(); } @@ -63,6 +64,10 @@ protected void offsetArea(LayoutContext context) { curArea.setOffset(context.getBaseline()); + } + + protected void addId() { + addID(fobj.getId()); } } 1.8 +12 -12 xml-fop/src/java/org/apache/fop/layoutmgr/PageSequenceLayoutManager.java Index: PageSequenceLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/PageSequenceLayoutManager.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- PageSequenceLayoutManager.java 20 Oct 2004 11:55:32 -0000 1.7 +++ PageSequenceLayoutManager.java 20 Oct 2004 13:19:24 -0000 1.8 @@ -47,6 +47,7 @@ import org.apache.fop.fo.pagination.PageNumberGenerator; import org.apache.fop.fo.pagination.PageSequence; import org.apache.fop.fo.pagination.Region; +import org.apache.fop.fo.pagination.RegionBody; import org.apache.fop.fo.pagination.SimplePageMaster; import org.apache.fop.fo.pagination.StaticContent; import org.apache.fop.fo.pagination.Title; @@ -743,8 +744,8 @@ throws FOPException { currentSimplePageMaster = getSimplePageMasterToUse(bIsBlank); Region body = currentSimplePageMaster.getRegion(FO_REGION_BODY); - if (!pageSequence.getMainFlow().getPropString(PR_FLOW_NAME).equals(body.getRegionName())) { - throw new FOPException("Flow '" + pageSequence.getMainFlow().getPropString(PR_FLOW_NAME) + if (!pageSequence.getMainFlow().getFlowName().equals(body.getRegionName())) { + throw new FOPException("Flow '" + pageSequence.getMainFlow().getFlowName() + "' does not map to the region-body in page-master '" + currentSimplePageMaster.getMasterName() + "'"); } @@ -773,8 +774,8 @@ } private PageViewport createPageAreas(SimplePageMaster spm) { - int pageWidth = spm.getPropLength(PR_PAGE_WIDTH); - int pageHeight = spm.getPropLength(PR_PAGE_HEIGHT); + int pageWidth = spm.getPageWidth().getValue(); + int pageHeight = spm.getPageHeight().getValue(); // Set the page dimension as the toplevel containing block for margin. ((FObj) fobj.getParent()).setLayoutDimension(PercentBase.BLOCK_IPD, pageWidth); @@ -809,7 +810,7 @@ r.setLayoutDimension(PercentBase.BLOCK_BPD, pageHeight); RegionViewport rvp = makeRegionViewport(r, reldims, pageCTM); if (r.getNameId() == FO_REGION_BODY) { - rvp.setRegion(makeRegionBodyReferenceArea(r, rvp.getViewArea())); + rvp.setRegion(makeRegionBodyReferenceArea((RegionBody) r, rvp.getViewArea())); } else { rvp.setRegion(makeRegionReferenceArea(r, rvp.getViewArea())); } @@ -848,13 +849,12 @@ TraitSetter.addBackground(rv, r.getCommonBorderPaddingBackground()); } - private RegionReference makeRegionBodyReferenceArea(Region r, + private RegionReference makeRegionBodyReferenceArea(RegionBody r, Rectangle2D absRegVPRect) { // Should set some column stuff here I think, or put it elsewhere BodyRegion body = new BodyRegion(); setRegionPosition(r, body, absRegVPRect); - int columnCount = - r.getProperty(PR_COLUMN_COUNT).getNumber().intValue(); + int columnCount = r.getColumnCount(); if ((columnCount > 1) && (r.getOverflow() == Overflow.SCROLL)) { // recover by setting 'column-count' to 1. This is allowed but // not required by the spec. @@ -864,7 +864,7 @@ } body.setColumnCount(columnCount); - int columnGap = r.getPropLength(PR_COLUMN_GAP); + int columnGap = r.getColumnGap(); body.setColumnGap(columnGap); return body; } @@ -905,13 +905,13 @@ */ private StaticContentLayoutManager getStaticContentLayoutManager(StaticContent sc) { StaticContentLayoutManager lm = - (StaticContentLayoutManager)staticContentLMs.get(sc.getPropString(PR_FLOW_NAME)); + (StaticContentLayoutManager)staticContentLMs.get(sc.getFlowName()); if (lm != null) { return lm; } lm = new StaticContentLayoutManager(); lm.setFObj(sc); - staticContentLMs.put(sc.getPropString(PR_FLOW_NAME), lm); + staticContentLMs.put(sc.getFlowName(), lm); return lm; } } 1.12 +3 -1 xml-fop/src/java/org/apache/fop/layoutmgr/RetrieveMarkerLayoutManager.java Index: RetrieveMarkerLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/RetrieveMarkerLayoutManager.java,v retrieving revision 1.11 retrieving revision 1.12 diff -u -r1.11 -r1.12 --- RetrieveMarkerLayoutManager.java 10 Oct 2004 20:24:16 -0000 1.11 +++ RetrieveMarkerLayoutManager.java 20 Oct 2004 13:19:24 -0000 1.12 @@ -30,6 +30,8 @@ * LayoutManager for a block FO. */ public class RetrieveMarkerLayoutManager extends AbstractLayoutManager { + private RetrieveMarker fobj; + private LayoutManager replaceLM = null; private boolean loaded = false; private String name; @@ -42,6 +44,7 @@ */ public RetrieveMarkerLayoutManager(RetrieveMarker node) { super(node); + fobj = node; name = node.getRetrieveClassName(); position = node.getRetrievePosition(); boundary = node.getRetrieveBoundary(); @@ -76,7 +79,6 @@ LayoutContext layoutContext) { loadLM(); - addID(); replaceLM.addAreas(parentIter, layoutContext); } 1.9 +1 -1 xml-fop/src/java/org/apache/fop/layoutmgr/list/ListBlockLayoutManager.java Index: ListBlockLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/list/ListBlockLayoutManager.java,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- ListBlockLayoutManager.java 19 Oct 2004 21:47:15 -0000 1.8 +++ ListBlockLayoutManager.java 20 Oct 2004 13:19:25 -0000 1.9 @@ -145,7 +145,7 @@ public void addAreas(PositionIterator parentIter, LayoutContext layoutContext) { getParentArea(null); - addID(); + addID(fobj.getId()); // the list block contains areas stacked from each list item 1.16 +4 -1 xml-fop/src/java/org/apache/fop/layoutmgr/list/ListItemLayoutManager.java Index: ListItemLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/list/ListItemLayoutManager.java,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- ListItemLayoutManager.java 19 Oct 2004 21:47:15 -0000 1.15 +++ ListItemLayoutManager.java 20 Oct 2004 13:19:25 -0000 1.16 @@ -42,6 +42,8 @@ * The list item contains a list item label and a list item body. */ public class ListItemLayoutManager extends BlockStackingLayoutManager { + private ListItem fobj; + private Item label; private Item body; @@ -64,6 +66,7 @@ */ public ListItemLayoutManager(ListItem node) { super(node); + fobj = node; setLabel(node.getLabel()); setBody(node.getBody()); } @@ -203,7 +206,7 @@ public void addAreas(PositionIterator parentIter, LayoutContext layoutContext) { getParentArea(null); - addID(); + addID(fobj.getId()); Item childLM; LayoutContext lc = new LayoutContext(0); 1.11 +0 -1 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.10 retrieving revision 1.11 diff -u -r1.10 -r1.11 --- Body.java 19 Oct 2004 21:48:17 -0000 1.10 +++ Body.java 20 Oct 2004 13:19:25 -0000 1.11 @@ -167,7 +167,6 @@ public void addAreas(PositionIterator parentIter, LayoutContext layoutContext) { getParentArea(null); - addID(); Row childLM; int iStartPos = 0; 1.5 +6 -2 xml-fop/src/java/org/apache/fop/layoutmgr/table/Caption.java Index: Caption.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/table/Caption.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- Caption.java 21 Mar 2004 12:03:08 -0000 1.4 +++ Caption.java 20 Oct 2004 13:19:25 -0000 1.5 @@ -18,6 +18,7 @@ package org.apache.fop.layoutmgr.table; +import org.apache.fop.fo.flow.TableCaption; import org.apache.fop.layoutmgr.BlockStackingLayoutManager; import org.apache.fop.layoutmgr.LayoutManager; import org.apache.fop.layoutmgr.LeafPosition; @@ -39,6 +40,7 @@ * table. */ public class Caption extends BlockStackingLayoutManager { + private TableCaption fobj; private Block curBlockArea; @@ -48,7 +50,9 @@ * Create a new Caption layout manager. * */ - public Caption() { + public Caption(TableCaption node) { + super(node); + fobj = node; } /** @@ -134,7 +138,7 @@ public void addAreas(PositionIterator parentIter, LayoutContext layoutContext) { getParentArea(null); - addID(); + addID(fobj.getId()); LayoutManager childLM; int iStartPos = 0; 1.8 +0 -1 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.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- Column.java 19 Oct 2004 21:48:17 -0000 1.7 +++ Column.java 20 Oct 2004 13:19:25 -0000 1.8 @@ -67,7 +67,6 @@ */ public void addAreas(PositionIterator parentIter, LayoutContext layoutContext) { - addID(); } /** 1.15 +1 -1 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.14 retrieving revision 1.15 diff -u -r1.14 -r1.15 --- Row.java 19 Oct 2004 21:48:17 -0000 1.14 +++ Row.java 20 Oct 2004 13:19:25 -0000 1.15 @@ -267,7 +267,7 @@ public void addAreas(PositionIterator parentIter, LayoutContext layoutContext) { getParentArea(null); - addID(); + addID(fobj.getId()); Cell childLM; int iStartPos = 0; 1.5 +7 -3 xml-fop/src/java/org/apache/fop/layoutmgr/table/TableAndCaptionLayoutManager.java Index: TableAndCaptionLayoutManager.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/table/TableAndCaptionLayoutManager.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- TableAndCaptionLayoutManager.java 21 Mar 2004 12:03:08 -0000 1.4 +++ TableAndCaptionLayoutManager.java 20 Oct 2004 13:19:25 -0000 1.5 @@ -18,6 +18,7 @@ package org.apache.fop.layoutmgr.table; +import org.apache.fop.fo.flow.TableAndCaption; import org.apache.fop.layoutmgr.BlockStackingLayoutManager; import org.apache.fop.layoutmgr.LayoutManager; import org.apache.fop.layoutmgr.LeafPosition; @@ -41,7 +42,8 @@ * The caption blocks have an implicit keep with the table. */ public class TableAndCaptionLayoutManager extends BlockStackingLayoutManager { - + private TableAndCaption fobj; + private Block curBlockArea; private List childBreaks = new ArrayList(); @@ -50,7 +52,9 @@ * Create a new table and caption layout manager. * */ - public TableAndCaptionLayoutManager() { + public TableAndCaptionLayoutManager(TableAndCaption node) { + super(node); + fobj = node; } /** @@ -135,7 +139,7 @@ public void addAreas(PositionIterator parentIter, LayoutContext layoutContext) { getParentArea(null); - addID(); + addID(fobj.getId()); LayoutManager childLM; int iStartPos = 0; 1.15 +2 -3 xml-fop/src/java/org/apache/fop/render/mif/MIFHandler.java Index: MIFHandler.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/render/mif/MIFHandler.java,v retrieving revision 1.14 retrieving revision 1.15 diff -u -r1.14 -r1.15 --- MIFHandler.java 9 Sep 2004 07:29:40 -0000 1.14 +++ MIFHandler.java 20 Oct 2004 13:19:25 -0000 1.15 @@ -23,7 +23,6 @@ import java.io.OutputStream; import org.apache.fop.apps.FOUserAgent; -import org.apache.fop.fo.Constants; import org.apache.fop.fo.FOEventHandler; import org.apache.fop.fo.flow.BasicLink; import org.apache.fop.fo.flow.Block; @@ -114,7 +113,7 @@ public void startPageSequence(PageSequence pageSeq) { // get the layout master set // setup the pages for this sequence - String name = pageSeq.getPropString(Constants.PR_MASTER_REFERENCE); + String name = pageSeq.getMasterReference(); SimplePageMaster spm = pageSeq.getRoot().getLayoutMasterSet().getSimplePageMaster(name); if (spm == null) { PageSequenceMaster psm = pageSeq.getRoot().getLayoutMasterSet().getPageSequenceMaster(name);
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]