You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fop-commits@xmlgraphics.apache.org by bc...@apache.org on 2004/09/22 10:22:15 UTC
cvs commit: xml-fop/src/java/org/apache/fop/layoutmgr BlockContainerLayoutManager.java BlockLayoutManager.java
bckfnn 2004/09/22 01:22:15
Modified: src/java/org/apache/fop/layoutmgr
BlockContainerLayoutManager.java
BlockLayoutManager.java
Log:
Set content ipd/bpd instead of allocation width/height.
Revision Changes Path
1.23 +15 -20 xml-fop/src/java/org/apache/fop/layoutmgr/BlockContainerLayoutManager.java
Index: BlockContainerLayoutManager.java
===================================================================
RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/BlockContainerLayoutManager.java,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -r1.22 -r1.23
--- BlockContainerLayoutManager.java 7 Sep 2004 20:47:11 -0000 1.22
+++ BlockContainerLayoutManager.java 22 Sep 2004 08:22:14 -0000 1.23
@@ -105,16 +105,13 @@
return getAbsoluteBreakPoss(context);
}
- int bIndents = borderProps.getBPPaddingAndBorder(false);
- int iIndents = marginProps.startIndent + marginProps.endIndent;
-
int ipd = context.getRefIPD();
int bpd = context.getStackLimit().opt;
if (!width.isAuto()) {
- ipd = width.getValue() + iIndents;
+ ipd = width.getValue();
}
if (!height.isAuto()) {
- bpd = height.getValue() + bIndents;
+ bpd = height.getValue();
}
Rectangle2D rect = new Rectangle2D.Double(0, 0, ipd, bpd);
relDims = new FODimension(0, 0);
@@ -122,8 +119,6 @@
propManager.getWritingMode(), rect, relDims);
double[] vals = absoluteCTM.toArray();
- ipd -= iIndents;
-
MinOptMax stackLimit;
boolean rotated = vals[0] == 0.0;
if (rotated) {
@@ -151,9 +146,9 @@
BreakPoss lastPos = null;
fobj.setLayoutDimension(PercentBase.BLOCK_IPD, ipd);
- fobj.setLayoutDimension(PercentBase.BLOCK_BPD, bpd - bIndents);
+ fobj.setLayoutDimension(PercentBase.BLOCK_BPD, bpd);
fobj.setLayoutDimension(PercentBase.REFERENCE_AREA_IPD, ipd);
- fobj.setLayoutDimension(PercentBase.REFERENCE_AREA_BPD, bpd - bIndents);
+ fobj.setLayoutDimension(PercentBase.REFERENCE_AREA_BPD, bpd);
while ((curLM = getChildLM()) != null) {
// Make break positions and return blocks!
@@ -305,8 +300,8 @@
if (abProps.absolutePosition == AbsolutePosition.ABSOLUTE) {
viewportBlockArea.setXOffset(abProps.left);
viewportBlockArea.setYOffset(abProps.top);
- viewportBlockArea.setWidth(abProps.right - abProps.left);
- viewportBlockArea.setHeight(abProps.bottom - abProps.top);
+ viewportBlockArea.setIPD(abProps.right - abProps.left);
+ viewportBlockArea.setBPD(abProps.bottom - abProps.top);
viewportBlockArea.setCTM(absoluteCTM);
viewportBlockArea.setClip(clip);
@@ -315,25 +310,25 @@
double[] vals = absoluteCTM.toArray();
boolean rotated = vals[0] == 0.0;
if (rotated) {
- viewportBlockArea.setWidth(relDims.ipd);
- viewportBlockArea.setHeight(relDims.bpd);
+ viewportBlockArea.setIPD(relDims.ipd);
+ viewportBlockArea.setBPD(relDims.bpd);
viewportBlockArea.setCTM(absoluteCTM);
viewportBlockArea.setClip(clip);
autoHeight = false;
} else if (vals[0] == -1.0) {
// need to set bpd to actual size for rotation
// and stacking
- viewportBlockArea.setWidth(relDims.ipd);
+ viewportBlockArea.setIPD(relDims.ipd);
if (!height.isAuto()) {
- viewportBlockArea.setHeight(relDims.bpd);
+ viewportBlockArea.setBPD(relDims.bpd);
autoHeight = false;
}
viewportBlockArea.setCTM(absoluteCTM);
viewportBlockArea.setClip(clip);
} else {
- viewportBlockArea.setWidth(relDims.ipd);
+ viewportBlockArea.setIPD(relDims.ipd);
if (!height.isAuto()) {
- viewportBlockArea.setHeight(relDims.bpd);
+ viewportBlockArea.setBPD(relDims.bpd);
autoHeight = false;
}
}
@@ -380,14 +375,14 @@
viewportBlockArea.addBlock(curBlockArea, autoHeight);
// Fake a 0 height for absolute positioned blocks.
- int height = viewportBlockArea.getHeight();
+ int height = viewportBlockArea.getBPD();
if (viewportBlockArea.getPositioning() == Block.ABSOLUTE) {
- viewportBlockArea.setHeight(0);
+ viewportBlockArea.setBPD(0);
}
super.flush();
// Restore the right height.
if (viewportBlockArea.getPositioning() == Block.ABSOLUTE) {
- viewportBlockArea.setHeight(height);
+ viewportBlockArea.setBPD(height);
}
}
1.28 +3 -3 xml-fop/src/java/org/apache/fop/layoutmgr/BlockLayoutManager.java
Index: BlockLayoutManager.java
===================================================================
RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/BlockLayoutManager.java,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -r1.27 -r1.28
--- BlockLayoutManager.java 7 Sep 2004 20:47:11 -0000 1.27
+++ BlockLayoutManager.java 22 Sep 2004 08:22:14 -0000 1.28
@@ -303,7 +303,6 @@
}
int bIndents = borderProps.getBPPaddingAndBorder(false);
- curBlockArea.setHeight(curBlockArea.getHeight() + bIndents);
addMarkers(false, true);
@@ -348,12 +347,13 @@
// Need to be careful though, if parent is BC then width may not be set
int parentwidth = 0;
if (parentArea instanceof BlockParent) {
- parentwidth = ((BlockParent) parentArea).getWidth();
+ parentwidth = ((BlockParent) parentArea).getIPD();
}
if (parentwidth == 0) {
parentwidth = referenceIPD;
}
- curBlockArea.setWidth(parentwidth);
+ parentwidth -= marginProps.startIndent + marginProps.endIndent;
+ curBlockArea.setIPD(parentwidth);
setCurrentArea(curBlockArea); // ??? for generic operations
}
return curBlockArea;
---------------------------------------------------------------------
To unsubscribe, e-mail: fop-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: fop-cvs-help@xml.apache.org