[jboss-cvs] jboss-seam/seam-ui-cdk/jboss-seam-ui/src/main/java/org/jboss/seam/ui/renderkit ...
Peter Muir
peter at bleepbleep.org.uk
Wed Mar 28 08:52:14 EDT 2007
User: pmuir
Date: 07/03/28 08:52:14
Modified: seam-ui-cdk/jboss-seam-ui/src/main/java/org/jboss/seam/ui/renderkit
CacheRendererBase.java
Added: seam-ui-cdk/jboss-seam-ui/src/main/java/org/jboss/seam/ui/renderkit
DecorateRendererBase.java LinkRendererBase.java
ButtonRendererBase.java
Log:
More ui examples, better ant integration for cdk, lots of fixes to button and link
Revision Changes Path
1.3 +1 -1 jboss-seam/seam-ui-cdk/jboss-seam-ui/src/main/java/org/jboss/seam/ui/renderkit/CacheRendererBase.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: CacheRendererBase.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/seam-ui-cdk/jboss-seam-ui/src/main/java/org/jboss/seam/ui/renderkit/CacheRendererBase.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- CacheRendererBase.java 23 Mar 2007 14:31:42 -0000 1.2
+++ CacheRendererBase.java 28 Mar 2007 12:52:14 -0000 1.3
@@ -28,7 +28,7 @@
protected void doEncodeChildren(ResponseWriter writer, FacesContext context, UIComponent component) throws IOException
{
UICache cache = (UICache) component;
- if (cache.getEnabled())
+ if (cache.isEnabled())
{
String key = cache.getKey();
String cachedContent = getFromCache(key, cache.getRegion());
1.1 date: 2007/03/28 12:52:14; author: pmuir; state: Exp;jboss-seam/seam-ui-cdk/jboss-seam-ui/src/main/java/org/jboss/seam/ui/renderkit/DecorateRendererBase.java
Index: DecorateRendererBase.java
===================================================================
package org.jboss.seam.ui.renderkit;
import java.io.IOException;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.context.ResponseWriter;
import org.ajax4jsf.framework.renderer.AjaxComponentRendererBase;
import org.jboss.seam.contexts.Contexts;
import org.jboss.seam.ui.component.UIDecorate;
public class DecorateRendererBase extends AjaxComponentRendererBase
{
@Override
protected Class getComponentClass()
{
return UIDecorate.class;
}
@Override
protected void doEncodeBegin(ResponseWriter writer, FacesContext context, UIComponent component) throws IOException
{
UIDecorate decorate = (UIDecorate) component;
Contexts.getEventContext().set("invalid", UIDecorate.hasMessage(component, context));
Contexts.getEventContext().set("required", UIDecorate.hasRequired(component, context));
writer.startElement("span", component);
writer.writeAttribute("id", component.getClientId(context), "id");
boolean hasMessage = decorate.hasMessage();
UIComponent aroundDecoration = decorate.getDecoration("aroundField");
UIComponent aroundInvalidDecoration = decorate.getDecoration("aroundInvalidField");
if (aroundDecoration!=null && !hasMessage)
{
aroundDecoration.setParent(decorate);
aroundDecoration.encodeBegin(context);
}
if (aroundInvalidDecoration!=null && hasMessage)
{
aroundInvalidDecoration.setParent(decorate);
aroundInvalidDecoration.encodeBegin(context);
}
}
@Override
protected void doEncodeEnd(ResponseWriter writer, FacesContext context, UIComponent component) throws IOException
{
UIDecorate decorate = (UIDecorate) component;
boolean hasMessage = decorate.hasMessage();
UIComponent aroundDecoration = decorate.getDecoration("aroundField");
UIComponent aroundInvalidDecoration = decorate.getDecoration("aroundInvalidField");
if (aroundDecoration!=null && !hasMessage)
{
aroundDecoration.setParent(decorate);
aroundDecoration.encodeEnd(context);
}
if (aroundInvalidDecoration!=null && hasMessage)
{
aroundInvalidDecoration.setParent(decorate);
aroundInvalidDecoration.encodeEnd(context);
}
context.getResponseWriter().endElement("span");
Contexts.getEventContext().remove("invalid");
Contexts.getEventContext().remove("required");
}
@Override
protected void doEncodeChildren(ResponseWriter writer, FacesContext context, UIComponent component) throws IOException
{
UIDecorate decorate = (UIDecorate) component;
boolean hasMessage = decorate.hasMessage();
UIComponent beforeDecoration = decorate.getDecoration("beforeField");
UIComponent beforeInvalidDecoration = decorate.getDecoration("beforeInvalidField");
if ( beforeDecoration!=null && !hasMessage )
{
beforeDecoration.setParent(decorate);
renderChild(context, beforeDecoration);
}
if ( beforeInvalidDecoration!=null && hasMessage )
{
beforeInvalidDecoration.setParent(decorate);
renderChild(context, beforeInvalidDecoration);
}
renderChildren(context, decorate);
UIComponent afterDecoration = decorate.getDecoration("afterField");
UIComponent afterInvalidDecoration = decorate.getDecoration("afterInvalidField");
if ( afterDecoration!=null && !hasMessage )
{
afterDecoration.setParent(decorate);
renderChild(context, afterDecoration);
}
if ( afterInvalidDecoration!=null && hasMessage )
{
afterInvalidDecoration.setParent(decorate);
renderChild(context, afterInvalidDecoration);
}
}
@Override
public boolean getRendersChildren()
{
return true;
}
}
1.3 +11 -18 jboss-seam/seam-ui-cdk/jboss-seam-ui/src/main/java/org/jboss/seam/ui/renderkit/LinkRendererBase.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: LinkRendererBase.java
===================================================================
RCS file: LinkRendererBase.java
diff -N LinkRendererBase.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ LinkRendererBase.java 28 Mar 2007 12:52:14 -0000 1.3
@@ -0,0 +1,28 @@
+package org.jboss.seam.ui.renderkit;
+
+import java.io.IOException;
+
+import javax.faces.context.FacesContext;
+
+import org.ajax4jsf.framework.renderer.AjaxComponentRendererBase;
+import org.jboss.seam.ui.component.UILink;
+
+public class LinkRendererBase extends AjaxComponentRendererBase
+{
+
+ @Override
+ protected Class getComponentClass()
+ {
+ return UILink.class;
+ }
+
+ public String getHref(FacesContext facesContext, UILink link) throws IOException
+ {
+ if (!link.isDisabled())
+ {
+ return link.getUrl();
+ }
+ return null;
+ }
+
+}
1.3 +20 -31 jboss-seam/seam-ui-cdk/jboss-seam-ui/src/main/java/org/jboss/seam/ui/renderkit/ButtonRendererBase.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: ButtonRendererBase.java
===================================================================
RCS file: ButtonRendererBase.java
diff -N ButtonRendererBase.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ ButtonRendererBase.java 28 Mar 2007 12:52:14 -0000 1.3
@@ -0,0 +1,38 @@
+package org.jboss.seam.ui.renderkit;
+
+import java.io.IOException;
+
+import javax.faces.context.FacesContext;
+
+import org.ajax4jsf.framework.renderer.AjaxComponentRendererBase;
+import org.jboss.seam.ui.component.UIButton;
+
+public class ButtonRendererBase extends AjaxComponentRendererBase
+{
+
+ @Override
+ protected Class getComponentClass()
+ {
+ return UIButton.class;
+ }
+
+
+ public String getOnClick(FacesContext facesContext, UIButton button) throws IOException
+ {
+ String onclick = button.getOnclick();
+ if (onclick == null)
+ {
+ onclick = "";
+ }
+ else if (onclick.length() > 0 && !onclick.endsWith(";"))
+ {
+ onclick += ";";
+ }
+ if (!button.isDisabled())
+ {
+ onclick += "location.href='" + button.getUrl() + "'";
+ }
+ return onclick;
+ }
+
+}
More information about the jboss-cvs-commits
mailing list