xmlgraphics-fop-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From gad...@apache.org
Subject svn commit: r1327244 - in /xmlgraphics/fop/trunk: ./ src/java/org/apache/fop/fo/flow/table/ test/java/org/apache/fop/fo/properties/ test/layoutengine/standard-testcases/
Date Tue, 17 Apr 2012 19:49:33 GMT
Author: gadams
Date: Tue Apr 17 19:49:33 2012
New Revision: 1327244

URL: http://svn.apache.org/viewvc?rev=1327244&view=rev
Log:
Bugzilla #53097: Ensure writing-mode specified on fo:table is used to determine writing mode
of table and its descendants.

Added:
    xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/table-column_column-progression-rl_1.xml
      - copied, changed from r1327157, xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/table-column_column-progression-rl.xml
    xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/table-column_column-progression-rl_2.xml
      - copied, changed from r1327157, xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/table-column_column-progression-rl.xml
Removed:
    xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/table-column_column-progression-rl.xml
Modified:
    xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/table/Table.java
    xmlgraphics/fop/trunk/status.xml
    xmlgraphics/fop/trunk/test/java/org/apache/fop/fo/properties/PropertyListMocks.java

Modified: xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/table/Table.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/table/Table.java?rev=1327244&r1=1327243&r2=1327244&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/table/Table.java (original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/table/Table.java Tue Apr 17 19:49:33
2012
@@ -40,12 +40,16 @@ import org.apache.fop.fo.properties.Keep
 import org.apache.fop.fo.properties.LengthPairProperty;
 import org.apache.fop.fo.properties.LengthRangeProperty;
 import org.apache.fop.fo.properties.TableColLength;
+import org.apache.fop.traits.Direction;
+import org.apache.fop.traits.WritingMode;
+import org.apache.fop.traits.WritingModeTraits;
+import org.apache.fop.traits.WritingModeTraitsGetter;
 
 /**
  * Class modelling the <a href="http://www.w3.org/TR/xsl/#fo_table">
  * <code>fo:table</code></a> object.
  */
-public class Table extends TableFObj implements ColumnNumberManagerHolder, BreakPropertySet,
+public class Table extends TableFObj implements ColumnNumberManagerHolder, BreakPropertySet,
WritingModeTraitsGetter,
         CommonAccessibilityHolder {
 
     // The value of FO traits (refined properties) that apply to fo:table.
@@ -64,7 +68,7 @@ public class Table extends TableFObj imp
     private int tableLayout;
     private int tableOmitFooterAtBreak;
     private int tableOmitHeaderAtBreak;
-    private int writingMode;
+    private WritingModeTraits writingModeTraits;
     // Unused but valid items, commented out for performance:
     //     private CommonAural commonAural;
     //     private CommonRelativePosition commonRelativePosition;
@@ -131,7 +135,8 @@ public class Table extends TableFObj imp
         tableLayout = pList.get(PR_TABLE_LAYOUT).getEnum();
         tableOmitFooterAtBreak = pList.get(PR_TABLE_OMIT_FOOTER_AT_BREAK).getEnum();
         tableOmitHeaderAtBreak = pList.get(PR_TABLE_OMIT_HEADER_AT_BREAK).getEnum();
-        writingMode = pList.get(PR_WRITING_MODE).getEnum();
+        writingModeTraits = new WritingModeTraits
+            ( WritingMode.valueOf(pList.get(PR_WRITING_MODE).getEnum()) );
 
         //Bind extension properties
         widowContentLimit = pList.get(PR_X_WIDOW_CONTENT_LIMIT).getLength();
@@ -516,9 +521,34 @@ public class Table extends TableFObj imp
         return borderSeparation;
     }
 
-    /** @return the "writing-mode" FO trait */
-    public int getWritingMode() {
-        return writingMode;
+    /** {@inheritDoc} */
+    public Direction getInlineProgressionDirection() {
+        return writingModeTraits.getInlineProgressionDirection();
+    }
+
+    /** {@inheritDoc} */
+    public Direction getBlockProgressionDirection() {
+        return writingModeTraits.getBlockProgressionDirection();
+    }
+
+    /** {@inheritDoc} */
+    public Direction getColumnProgressionDirection() {
+        return writingModeTraits.getColumnProgressionDirection();
+    }
+
+    /** {@inheritDoc} */
+    public Direction getRowProgressionDirection() {
+        return writingModeTraits.getRowProgressionDirection();
+    }
+
+    /** {@inheritDoc} */
+    public Direction getShiftDirection() {
+        return writingModeTraits.getShiftDirection();
+    }
+
+    /** {@inheritDoc} */
+    public WritingMode getWritingMode() {
+        return writingModeTraits.getWritingMode();
     }
 
     /** @return the "fox:widow-content-limit" extension FO trait */

Modified: xmlgraphics/fop/trunk/status.xml
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/status.xml?rev=1327244&r1=1327243&r2=1327244&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/status.xml (original)
+++ xmlgraphics/fop/trunk/status.xml Tue Apr 17 19:49:33 2012
@@ -62,7 +62,10 @@
       documents. Example: the fix of marks layering will be such a case when it's done.
     -->
     <release version="FOP Trunk" date="TBD">
-      <action context="Code" dev="GA" type="update" fixes-bug="53094" due-to="Luis Bernardo">
+      <action context="Code" dev="GA" type="fix" fixes-bug="53097">
+        Ensure writing-mode specified on fo:table is used to determine writing mode of table
and its descendants.
+      </action>
+      <action context="Code" dev="GA" type="fix" fixes-bug="53094" due-to="Luis Bernardo">
         Convert block container overflow exception to event model, improving overflow property
behavior.
       </action>
       <action context="Code" dev="GA" type="update" fixes-bug="51617">

Modified: xmlgraphics/fop/trunk/test/java/org/apache/fop/fo/properties/PropertyListMocks.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/test/java/org/apache/fop/fo/properties/PropertyListMocks.java?rev=1327244&r1=1327243&r2=1327244&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/test/java/org/apache/fop/fo/properties/PropertyListMocks.java (original)
+++ xmlgraphics/fop/trunk/test/java/org/apache/fop/fo/properties/PropertyListMocks.java Tue
Apr 17 19:49:33 2012
@@ -69,6 +69,10 @@ public final class PropertyListMocks {
             final Property borderCollapseProperty = mock(Property.class);
             when(borderCollapseProperty.getEnum()).thenReturn(Constants.EN_SEPARATE);
             when(mockPList.get(Constants.PR_BORDER_COLLAPSE)).thenReturn(borderCollapseProperty);
+
+            final Property writingModeProperty = mock(Property.class);
+            when(writingModeProperty.getEnum()).thenReturn(Constants.EN_LR_TB);
+            when(mockPList.get(Constants.PR_WRITING_MODE)).thenReturn(writingModeProperty);
         } catch (PropertyException e) {
             throw new RuntimeException(e);
         }

Copied: xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/table-column_column-progression-rl_1.xml
(from r1327157, xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/table-column_column-progression-rl.xml)
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/table-column_column-progression-rl_1.xml?p2=xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/table-column_column-progression-rl_1.xml&p1=xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/table-column_column-progression-rl.xml&r1=1327157&r2=1327244&rev=1327244&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/table-column_column-progression-rl.xml
(original)
+++ xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/table-column_column-progression-rl_1.xml
Tue Apr 17 19:49:33 2012
@@ -19,9 +19,10 @@
 <testcase>
   <info>
     <p>
-      This test checks table column progression with right-to-left writing mode. The first
column
-      should be to the right of the second column; the second column should be to the right
of the
-      third column. The columns should be colored red, yellow, orange from right to left.
+      This test checks table column progression with right-to-left writing mode when writing-mode
+      is specified on fo:page-sequence. The first column should be to the right of the second
column; the
+      second column should be to the right of the third column. The columns should be colored
red,
+      yellow, orange from right to left.
     </p>
   </info>
   <fo>

Copied: xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/table-column_column-progression-rl_2.xml
(from r1327157, xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/table-column_column-progression-rl.xml)
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/table-column_column-progression-rl_2.xml?p2=xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/table-column_column-progression-rl_2.xml&p1=xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/table-column_column-progression-rl.xml&r1=1327157&r2=1327244&rev=1327244&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/table-column_column-progression-rl.xml
(original)
+++ xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/table-column_column-progression-rl_2.xml
Tue Apr 17 19:49:33 2012
@@ -19,9 +19,10 @@
 <testcase>
   <info>
     <p>
-      This test checks table column progression with right-to-left writing mode. The first
column
-      should be to the right of the second column; the second column should be to the right
of the
-      third column. The columns should be colored red, yellow, orange from right to left.
+      This test checks table column progression with right-to-left writing mode when writing-mode
+      is specified on fo:table. The first column should be to the right of the second column;
the
+      second column should be to the right of the third column. The columns should be colored
red,
+      yellow, orange from right to left.
     </p>
   </info>
   <fo>
@@ -31,9 +32,9 @@
           <fo:region-body/>
         </fo:simple-page-master>
       </fo:layout-master-set>
-      <fo:page-sequence master-reference="normal" writing-mode="rl">
+      <fo:page-sequence master-reference="normal">
         <fo:flow flow-name="xsl-region-body">
-          <fo:table table-layout="fixed" width="100%">
+          <fo:table table-layout="fixed" width="100%" writing-mode="rl">
             <fo:table-column column-width="1in" background-color="red"/>
             <fo:table-column column-width="1in" background-color="yellow"/>
             <fo:table-column column-width="2in" background-color="orange"/>



---------------------------------------------------------------------
To unsubscribe, e-mail: fop-commits-unsubscribe@xmlgraphics.apache.org
For additional commands, e-mail: fop-commits-help@xmlgraphics.apache.org


Mime
View raw message