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 sp...@apache.org on 2008/05/19 21:02:18 UTC

svn commit: r657921 - in /xmlgraphics/fop/trunk/src/java/org/apache/fop: events/EventFormatter.xml fo/flow/table/TableEventProducer.java fo/flow/table/TableFObj.java

Author: spepping
Date: Mon May 19 12:02:18 2008
New Revision: 657921

URL: http://svn.apache.org/viewvc?rev=657921&view=rev
Log:
Added event TableEventProducer.forceNextColumnNumber when
TableFObj.ColumnNumberPropertyMaker forces a zero or negative
column-number property to the next available column, because this is a
FOP extension. Fixed TableFObj.ColumnNumberPropertyMaker.make to
really report a cell overlap event.

Modified:
    xmlgraphics/fop/trunk/src/java/org/apache/fop/events/EventFormatter.xml
    xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/table/TableEventProducer.java
    xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/table/TableFObj.java

Modified: xmlgraphics/fop/trunk/src/java/org/apache/fop/events/EventFormatter.xml
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/events/EventFormatter.xml?rev=657921&r1=657920&r2=657921&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/events/EventFormatter.xml (original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/events/EventFormatter.xml Mon May 19 12:02:18 2008
@@ -65,6 +65,7 @@
   <message key="org.apache.fop.fo.flow.table.TableEventProducer.warnImplicitColumns">table-layout=\"fixed\" and column-width unspecified =&gt; falling back to proportional-column-width(1){{locator}}</message>
   <message key="org.apache.fop.fo.flow.table.TableEventProducer.paddingNotApplicable">padding-* properties are not applicable to {elementName}, but a non-zero value for padding was found.{{locator}}</message>
   <message key="org.apache.fop.fo.flow.table.TableEventProducer.cellOverlap">{elementName} overlaps in column {column}.<!-- no locator here, exception will be wrapped --></message>
+  <message key="org.apache.fop.fo.flow.table.TableEventProducer.forceNextColumnNumber">Negative value {propValue} of property column-number of element {elementName} forced into the next available column number {columnNumber}.{{locator}}</message>
   <message key="org.apache.fop.fo.flow.table.TableEventProducer.breakIgnoredDueToRowSpanning">{breakBefore,if,break-before,break-after} ignored on {elementName} because of row spanning in progress (See XSL 1.1, {breakBefore,if,7.20.2,7.20.1}){{locator}}</message>
   <message key="org.apache.fop.events.ResourceEventProducer.imageNotFound">Image not found.[ URI: {uri}.]{{locator}}</message>
   <message key="org.apache.fop.events.ResourceEventProducer.imageError">Image not available.[ URI: {uri}.] Reason:[ {reason}][ {e}]{{locator}}</message>

Modified: xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/table/TableEventProducer.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/table/TableEventProducer.java?rev=657921&r1=657920&r2=657921&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/table/TableEventProducer.java (original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/table/TableEventProducer.java Mon May 19 12:02:18 2008
@@ -145,6 +145,17 @@
             Locator loc) throws PropertyException;
 
     /**
+     * @param source the event source
+     * @param elementName the name of the context node
+     * @param propValue the user-specified value of the column-number property
+     * @param columnNumber the generated value for the column-number property
+     * @param loc the location of the error or null
+     * @event.severity WARN
+     */
+    void forceNextColumnNumber(Object source, String elementName, Number propValue,
+                               int columnNumber, Locator loc);
+
+    /**
      * Break ignored due to row spanning.
      * @param source the event source
      * @param elementName the name of the context node

Modified: xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/table/TableFObj.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/table/TableFObj.java?rev=657921&r1=657920&r2=657921&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/table/TableFObj.java (original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/table/TableFObj.java Mon May 19 12:02:18 2008
@@ -159,9 +159,8 @@
             int colSpan = propertyList.get(Constants.PR_NUMBER_COLUMNS_SPANNED)
                                 .getNumeric().getValue();
             
-            int i = columnIndex - 1;
-            int lastIndex = (columnIndex + colSpan) - 1;
-            while (++i < lastIndex) {
+            int lastIndex = columnIndex - 1 + colSpan;
+            for (int i = columnIndex; i <= lastIndex; ++i) {
                 if (columnIndexManager.isColumnNumberUsed(i)) {
                     /* if column-number is already in use by another
                      * cell/column => error!
@@ -195,6 +194,10 @@
                         (ColumnNumberManagerHolder) propertyList.getParentFObj();
                     ColumnNumberManager columnIndexManager =  parent.getColumnNumberManager();
                     i = columnIndexManager.getCurrentColumnNumber();
+                    TableEventProducer eventProducer =
+                        TableEventProducer.Provider.get(fo.getUserAgent().getEventBroadcaster());
+                    eventProducer.forceNextColumnNumber(this, propertyList.getFObj().getName(),
+                                                        val, i, fo.getLocator());
                 }
                 return NumberProperty.getInstance(i);
             }



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