You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lu...@apache.org on 2008/06/14 02:31:16 UTC

svn commit: r667703 - in /myfaces/tomahawk/trunk: core/src/main/java/org/apache/myfaces/renderkit/html/ext/HtmlTableRenderer.java core12/src/main/java/org/apache/myfaces/renderkit/html/ext/HtmlTableRenderer.java

Author: lu4242
Date: Fri Jun 13 17:31:16 2008
New Revision: 667703

URL: http://svn.apache.org/viewvc?rev=667703&view=rev
Log:
TOMAHAWK-1087 datatable dont renders a detail correct if a UIColumns is used

Modified:
    myfaces/tomahawk/trunk/core/src/main/java/org/apache/myfaces/renderkit/html/ext/HtmlTableRenderer.java
    myfaces/tomahawk/trunk/core12/src/main/java/org/apache/myfaces/renderkit/html/ext/HtmlTableRenderer.java

Modified: myfaces/tomahawk/trunk/core/src/main/java/org/apache/myfaces/renderkit/html/ext/HtmlTableRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/core/src/main/java/org/apache/myfaces/renderkit/html/ext/HtmlTableRenderer.java?rev=667703&r1=667702&r2=667703&view=diff
==============================================================================
--- myfaces/tomahawk/trunk/core/src/main/java/org/apache/myfaces/renderkit/html/ext/HtmlTableRenderer.java (original)
+++ myfaces/tomahawk/trunk/core/src/main/java/org/apache/myfaces/renderkit/html/ext/HtmlTableRenderer.java Fri Jun 13 17:31:16 2008
@@ -219,7 +219,28 @@
                 if (!embedded) {
                     writer.startElement(HTML.TR_ELEM, uiData);
                     writer.startElement(HTML.TD_ELEM, uiData);
-                    writer.writeAttribute(HTML.COLSPAN_ATTR, new Integer(uiData.getChildren().size()), null);
+                    //TOMAHAWK-1087 datatable dont renders a detail correct 
+                    //if a UIColumns is used we have to count UIColumns 
+                    //elements as component.getRowCount()
+                    //instead of just get the number of children available,
+                    //so the colspan could be assigned correctly.
+                    int childCount = 0;
+                    for (Iterator childIter = uiData.getChildren().iterator();
+                        childIter.hasNext();)
+                    {
+                        UIComponent childComp = (UIComponent) childIter.next();
+                        if (childComp instanceof UIColumns)
+                        {
+                            UIColumns v = (UIColumns) childComp;
+                            childCount += v.getRowCount();
+                        }
+                        else
+                        {
+                            childCount++;
+                        }
+                    }
+                    writer.writeAttribute(HTML.COLSPAN_ATTR, new Integer(
+                            childCount), null);
                 }
 
                 if (detailStampFacet != null) {

Modified: myfaces/tomahawk/trunk/core12/src/main/java/org/apache/myfaces/renderkit/html/ext/HtmlTableRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/core12/src/main/java/org/apache/myfaces/renderkit/html/ext/HtmlTableRenderer.java?rev=667703&r1=667702&r2=667703&view=diff
==============================================================================
--- myfaces/tomahawk/trunk/core12/src/main/java/org/apache/myfaces/renderkit/html/ext/HtmlTableRenderer.java (original)
+++ myfaces/tomahawk/trunk/core12/src/main/java/org/apache/myfaces/renderkit/html/ext/HtmlTableRenderer.java Fri Jun 13 17:31:16 2008
@@ -219,7 +219,28 @@
                 if (!embedded) {
                     writer.startElement(HTML.TR_ELEM, uiData);
                     writer.startElement(HTML.TD_ELEM, uiData);
-                    writer.writeAttribute(HTML.COLSPAN_ATTR, new Integer(uiData.getChildren().size()), null);
+                    //TOMAHAWK-1087 datatable dont renders a detail correct 
+                    //if a UIColumns is used we have to count UIColumns 
+                    //elements as component.getRowCount()
+                    //instead of just get the number of children available,
+                    //so the colspan could be assigned correctly.
+                    int childCount = 0;
+                    for (Iterator childIter = uiData.getChildren().iterator();
+                        childIter.hasNext();)
+                    {
+                        UIComponent childComp = (UIComponent) childIter.next();
+                        if (childComp instanceof UIColumns)
+                        {
+                            UIColumns v = (UIColumns) childComp;
+                            childCount += v.getRowCount();
+                        }
+                        else
+                        {
+                            childCount++;
+                        }
+                    }
+                    writer.writeAttribute(HTML.COLSPAN_ATTR, new Integer(
+                            childCount), null);
                 }
 
                 if (detailStampFacet != null) {