You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by mm...@apache.org on 2005/11/10 17:54:20 UTC
svn commit: r332327 - in
/myfaces/share/trunk/src/java/org/apache/myfaces/renderkit/html:
HtmlGridRendererBase.java HtmlLinkRendererBase.java HtmlRenderer.java
HtmlTableRendererBase.java
Author: mmarinschek
Date: Thu Nov 10 08:54:06 2005
New Revision: 332327
URL: http://svn.apache.org/viewcvs?rev=332327&view=rev
Log:
fix for MYFACES-707. Thanks to Simon Kitching.
Modified:
myfaces/share/trunk/src/java/org/apache/myfaces/renderkit/html/HtmlGridRendererBase.java
myfaces/share/trunk/src/java/org/apache/myfaces/renderkit/html/HtmlLinkRendererBase.java
myfaces/share/trunk/src/java/org/apache/myfaces/renderkit/html/HtmlRenderer.java
myfaces/share/trunk/src/java/org/apache/myfaces/renderkit/html/HtmlTableRendererBase.java
Modified: myfaces/share/trunk/src/java/org/apache/myfaces/renderkit/html/HtmlGridRendererBase.java
URL: http://svn.apache.org/viewcvs/myfaces/share/trunk/src/java/org/apache/myfaces/renderkit/html/HtmlGridRendererBase.java?rev=332327&r1=332326&r2=332327&view=diff
==============================================================================
--- myfaces/share/trunk/src/java/org/apache/myfaces/renderkit/html/HtmlGridRendererBase.java (original)
+++ myfaces/share/trunk/src/java/org/apache/myfaces/renderkit/html/HtmlGridRendererBase.java Thu Nov 10 08:54:06 2005
@@ -176,13 +176,13 @@
: StringUtils.trim(StringUtils.splitShortString(rowClasses, ','));
int rowClassesCount = rowClassesArray.length;
- int childCount = component.getChildCount();
+ int childCount = getChildCount(component);
if (childCount > 0)
{
int columnIndex = 0;
int rowClassIndex = 0;
boolean rowStarted = false;
- for (Iterator it = component.getChildren().iterator(); it.hasNext(); )
+ for (Iterator it = getChildren(component).iterator(); it.hasNext(); )
{
UIComponent child = (UIComponent)it.next();
if (child.isRendered())
Modified: myfaces/share/trunk/src/java/org/apache/myfaces/renderkit/html/HtmlLinkRendererBase.java
URL: http://svn.apache.org/viewcvs/myfaces/share/trunk/src/java/org/apache/myfaces/renderkit/html/HtmlLinkRendererBase.java?rev=332327&r1=332326&r2=332327&view=diff
==============================================================================
--- myfaces/share/trunk/src/java/org/apache/myfaces/renderkit/html/HtmlLinkRendererBase.java (original)
+++ myfaces/share/trunk/src/java/org/apache/myfaces/renderkit/html/HtmlLinkRendererBase.java Thu Nov 10 08:54:06 2005
@@ -251,7 +251,7 @@
}
//add child parameters
- for (Iterator it = component.getChildren().iterator(); it.hasNext(); )
+ for (Iterator it = getChildren(component).iterator(); it.hasNext(); )
{
UIComponent child = (UIComponent)it.next();
if (child instanceof UIParameter)
@@ -323,7 +323,7 @@
hrefBuf.append('=');
hrefBuf.append(clientId);
- if (component.getChildCount() > 0)
+ if (getChildCount(component) > 0)
{
addChildParametersToHref(component, hrefBuf,
false, //not the first url parameter
@@ -355,7 +355,7 @@
String charEncoding)
throws IOException
{
- for (Iterator it = linkComponent.getChildren().iterator(); it.hasNext(); )
+ for (Iterator it = getChildren(linkComponent).iterator(); it.hasNext(); )
{
UIComponent child = (UIComponent)it.next();
if (child instanceof UIParameter)
@@ -376,7 +376,7 @@
//calculate href
String href = RendererUtils.getStringValue(facesContext, output);
- if (output.getChildCount() > 0)
+ if (getChildCount(output) > 0)
{
StringBuffer hrefBuf = new StringBuffer(href);
addChildParametersToHref(output, hrefBuf,
Modified: myfaces/share/trunk/src/java/org/apache/myfaces/renderkit/html/HtmlRenderer.java
URL: http://svn.apache.org/viewcvs/myfaces/share/trunk/src/java/org/apache/myfaces/renderkit/html/HtmlRenderer.java?rev=332327&r1=332326&r2=332327&view=diff
==============================================================================
--- myfaces/share/trunk/src/java/org/apache/myfaces/renderkit/html/HtmlRenderer.java (original)
+++ myfaces/share/trunk/src/java/org/apache/myfaces/renderkit/html/HtmlRenderer.java Thu Nov 10 08:54:06 2005
@@ -15,13 +15,15 @@
*/
package org.apache.myfaces.renderkit.html;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
+import java.io.IOException;
+import java.util.List;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.render.Renderer;
-import java.io.IOException;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
/**
@@ -47,5 +49,34 @@
log.warn("Renderer " + getClass().getName() + " does not render its children. Method encodeChildren should not be called.");
}
}
+ }
+
+ /**
+ * Return the list of children of the specified component.
+ * <p>
+ * This default implementation simply returns component.getChildren().
+ * However this method should always be used in order to allow
+ * renderer subclasses to override it and provide filtered or
+ * reordered views of the component children to rendering
+ * methods defined in their ancestor classes.
+ * <p>
+ * Any method that overrides this to "hide" child components
+ * should also override the getChildCount method.
+ *
+ * @return a list of UIComponent objects.
+ */
+ public List getChildren(UIComponent component)
+ {
+ return component.getChildren();
+ }
+
+ /**
+ * Return the number of children of the specified component.
+ * <p>
+ * See {@link #getChildren(UIComponent)} for more information.
+ */
+ public int getChildCount(UIComponent component)
+ {
+ return component.getChildCount();
}
}
Modified: myfaces/share/trunk/src/java/org/apache/myfaces/renderkit/html/HtmlTableRendererBase.java
URL: http://svn.apache.org/viewcvs/myfaces/share/trunk/src/java/org/apache/myfaces/renderkit/html/HtmlTableRendererBase.java?rev=332327&r1=332326&r2=332327&view=diff
==============================================================================
--- myfaces/share/trunk/src/java/org/apache/myfaces/renderkit/html/HtmlTableRendererBase.java (original)
+++ myfaces/share/trunk/src/java/org/apache/myfaces/renderkit/html/HtmlTableRendererBase.java Thu Nov 10 08:54:06 2005
@@ -145,8 +145,8 @@
HtmlRendererUtils.writePrettyLineSeparator(facesContext);
renderRowStart(facesContext, writer, uiData, rowStyleIterator);
- List children = component.getChildren();
- for (int j = 0, size = component.getChildCount(); j < size; j++)
+ List children = getChildren(component);
+ for (int j = 0, size = getChildCount(component); j < size; j++)
{
UIComponent child = (UIComponent) children.get(j);
if(child.isRendered())
@@ -308,7 +308,7 @@
{
int colspan = 0;
boolean hasColumnFacet = false;
- for (Iterator it = component.getChildren().iterator(); it.hasNext();)
+ for (Iterator it = getChildren(component).iterator(); it.hasNext();)
{
UIComponent uiComponent = (UIComponent) it.next();
if(uiComponent.isRendered())
@@ -469,7 +469,7 @@
HtmlRendererUtils.writePrettyLineSeparator(facesContext);
writer.startElement(HTML.TR_ELEM, component);
- for (Iterator it = component.getChildren().iterator(); it.hasNext();)
+ for (Iterator it = getChildren(component).iterator(); it.hasNext();)
{
UIComponent uiComponent = (UIComponent) it.next();
if(uiComponent.isRendered())