From bd5aaa1fdb2dfb278fdd8ca3713612963500580b Mon Sep 17 00:00:00 2001 From: Peter Bernard West Date: Tue, 6 Jul 2004 14:22:32 +0000 Subject: [PATCH] Set area field. More Javadocs. Override getFrameRelativeDimensions. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/branches/FOP_0-20-0_Alt-Design@197759 13f79535-47bb-0310-9956-ffa450edef68 --- .../org/apache/fop/area/ContentRectangle.java | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/src/java/org/apache/fop/area/ContentRectangle.java b/src/java/org/apache/fop/area/ContentRectangle.java index 8031dfa8e..7247443c0 100644 --- a/src/java/org/apache/fop/area/ContentRectangle.java +++ b/src/java/org/apache/fop/area/ContentRectangle.java @@ -31,11 +31,14 @@ import org.apache.fop.area.Area.AreaGeometry; */ public class ContentRectangle extends AreaGeometry { + private final Area area; + /** * @param writingMode */ public ContentRectangle(Area area) { area.super(area.contentWritingMode); + this.area = area; padding = new PaddingRectangle(area, this); } @@ -50,27 +53,68 @@ public class ContentRectangle extends AreaGeometry { double ipOrigin, double bpOrigin, double ipDim, double bpDim) { area.super(area.contentWritingMode, ipOrigin, bpOrigin, ipDim, bpDim); // Get the padding writing mode + this.area = area; padding = new PaddingRectangle(area, this); } + /** + * Gets the writing-mode applicable to the content-rectangle + * @see org.apache.fop.area.Area.AreaGeometry#getWritingMode() + */ public int getWritingMode() { return getContentWritingMode(); } + /** The PaddingRectangle AreaFrame around + * this */ private PaddingRectangle padding = null; + /** + * Gets the containing PaddingRectangle + * @return the padding-ractangle + */ public PaddingRectangle getPadding() { return padding; } + /** + * Sets the containing PaddingRectangle to the argument + * @param padding the padding-rectangle + */ public void setPadding(PaddingRectangle padding) { this.padding = padding; } + /** + * Sets the offset and dimensions for thiscontent-rectangle, and + * then sets this as the contents of the padding + * AreaFrame + * @param ipOrigin {@inheritDoc} + * @param bpOrigin {@inheritDoc} + * @param ipDim {@inheritDoc} + * @param bpDim {@inheritDoc} + * @see org.apache.fop.area.Area.AreaGeometry#setRect(double, double, double, double) + */ public void setRect( double ipOrigin, double bpOrigin, double ipDim, double bpDim) { super.setRect(ipOrigin, bpOrigin, ipDim, bpDim); padding.setContents(this); } + /* (non-Javadoc) + * @see org.apache.fop.area.Area.AreaGeometry#getFrameRelativeDimensions() + */ + public DimensionDbl getFrameRelativeDimensions() { + switch (getRotationToFrame()) { + case 0: + case 180: + return super.getFrameRelativeDimensions(); + case 90: + case 270: + return new DimensionDbl(getHeight(), getWidth()); + default: + area.log.warning("Illegal rotation: " + getRotationToFrame()); + return super.getFrameRelativeDimensions(); + } + } } -- 2.39.5