[jboss-cvs] jboss-seam/src/ui/org/jboss/seam/ui ...
Gavin King
gavin.king at jboss.com
Sun Mar 18 15:38:18 EDT 2007
User: gavin
Date: 07/03/18 15:38:18
Modified: src/ui/org/jboss/seam/ui UIAbstractDecorate.java
UIDecorateAll.java
Log:
nice behavior for ui:decorate inside ui:decorateAll
Revision Changes Path
1.2 +27 -1 jboss-seam/src/ui/org/jboss/seam/ui/UIAbstractDecorate.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: UIAbstractDecorate.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/src/ui/org/jboss/seam/ui/UIAbstractDecorate.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- UIAbstractDecorate.java 18 Mar 2007 04:22:28 -0000 1.1
+++ UIAbstractDecorate.java 18 Mar 2007 19:38:18 -0000 1.2
@@ -24,6 +24,23 @@
return getDecoration( name, component.getParent() );
}
+ protected static UIDecorateAll getDecorateAll(UIComponent component)
+ {
+ UIComponent parent = component.getParent();
+ if (parent==null)
+ {
+ return null;
+ }
+ else if ( parent instanceof UIDecorateAll )
+ {
+ return (UIDecorateAll) parent;
+ }
+ else
+ {
+ return getDecorateAll( parent );
+ }
+ }
+
/**
* A depth-first search for an EditableValueHolder
*/
@@ -121,6 +138,15 @@
ResponseWriter writer = context.getResponseWriter();
boolean hasMessage = hasMessage(child, context);
+ UIDecorateAll parent = getDecorateAll(this);
+ if (parent!=null)
+ {
+ if (labelColumnClass==null) labelColumnClass = parent.getLabelColumnClass();
+ if (fieldColumnClass==null) fieldColumnClass = parent.getFieldColumnClass();
+ if (messageColumnClass==null) messageColumnClass = parent.getMessageColumnClass();
+ if (descriptionColumnClass==null) descriptionColumnClass = parent.getDescriptionColumnClass();
+ }
+
UIComponent label = child.getFacet("label");
if (label!=null)
{
1.2 +8 -1 jboss-seam/src/ui/org/jboss/seam/ui/UIDecorateAll.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: UIDecorateAll.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/src/ui/org/jboss/seam/ui/UIDecorateAll.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- UIDecorateAll.java 18 Mar 2007 04:22:28 -0000 1.1
+++ UIDecorateAll.java 18 Mar 2007 19:38:18 -0000 1.2
@@ -53,7 +53,14 @@
String rowClasses = hasMessage(component, context) && rowErrorClass!=null ?
rowClass + ' ' + rowErrorClass : rowClass;
writer.writeAttribute("class", rowClasses, "rowClass");
+ if (child instanceof UIDecorate)
+ {
+ renderContent(context, component);
+ }
+ else
+ {
renderChildAndDecorations(context, component);
+ }
writer.endElement("div");
}
}
More information about the jboss-cvs-commits
mailing list