aboutsummaryrefslogtreecommitdiffstats
path: root/src/java/org/apache/fop/layoutmgr/table/Row.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/java/org/apache/fop/layoutmgr/table/Row.java')
-rw-r--r--src/java/org/apache/fop/layoutmgr/table/Row.java19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/java/org/apache/fop/layoutmgr/table/Row.java b/src/java/org/apache/fop/layoutmgr/table/Row.java
index 7233adf27..3b81c6fe7 100644
--- a/src/java/org/apache/fop/layoutmgr/table/Row.java
+++ b/src/java/org/apache/fop/layoutmgr/table/Row.java
@@ -18,6 +18,8 @@
package org.apache.fop.layoutmgr.table;
+import org.apache.fop.fo.FONode;
+import org.apache.fop.fo.flow.Table;
import org.apache.fop.fo.flow.TableRow;
import org.apache.fop.fo.properties.LengthRangeProperty;
import org.apache.fop.layoutmgr.BlockStackingLayoutManager;
@@ -74,6 +76,17 @@ public class Row extends BlockStackingLayoutManager {
}
/**
+ * @return the table owning this row
+ */
+ public Table getTable() {
+ FONode node = fobj.getParent();
+ while (!(node instanceof Table)) {
+ node = node.getParent();
+ }
+ return (Table)node;
+ }
+
+ /**
* Set the columns from the table.
*
* @param cols the list of columns for this table
@@ -337,6 +350,12 @@ public class Row extends BlockStackingLayoutManager {
childLM.addAreas(breakPosIter, lc);
}
x += col.getWidth().getValue();
+
+ //Handle border-separation
+ Table table = getTable();
+ if (table.getBorderCollapse() == EN_SEPARATE) {
+ x += table.getBorderSeparation().getIPD().getLength().getValue();
+ }
}
}