[jboss-cvs] jboss-seam/ui/src/main/java/org/jboss/seam/ui/renderkit ...
Peter Muir
peter at bleepbleep.org.uk
Tue Jun 19 17:57:43 EDT 2007
User: pmuir
Date: 07/06/19 17:57:43
Modified: ui/src/main/java/org/jboss/seam/ui/renderkit
SelectDateRendererBase.java
FormattedTextRendererBase.java
LinkRendererBase.java FragmentRendererBase.java
ValidateAllRendererBase.java
DecorateRendererBase.java CacheRendererBase.java
ButtonRendererBase.java FileUploadRendererBase.java
Added: ui/src/main/java/org/jboss/seam/ui/renderkit
DivRendererBase.java SpanRendererBase.java
StyleRendererBase.java
Log:
JBSEAM-1013 - port seam ui to a4j cdk
Revision Changes Path
1.2 +2 -2 jboss-seam/ui/src/main/java/org/jboss/seam/ui/renderkit/SelectDateRendererBase.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: SelectDateRendererBase.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/ui/src/main/java/org/jboss/seam/ui/renderkit/SelectDateRendererBase.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- SelectDateRendererBase.java 15 Jun 2007 17:06:56 -0000 1.1
+++ SelectDateRendererBase.java 19 Jun 2007 21:57:43 -0000 1.2
@@ -10,11 +10,11 @@
import javax.faces.context.FacesContext;
import javax.faces.context.ResponseWriter;
-import org.ajax4jsf.framework.renderer.AjaxComponentRendererBase;
import org.jboss.seam.ui.component.UISelectDate;
import org.jboss.seam.ui.resource.WebResource;
+import org.jboss.seam.ui.util.cdk.RendererBase;
-public class SelectDateRendererBase extends AjaxComponentRendererBase
+public class SelectDateRendererBase extends RendererBase
{
@Override
1.2 +2 -1 jboss-seam/ui/src/main/java/org/jboss/seam/ui/renderkit/FormattedTextRendererBase.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: FormattedTextRendererBase.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/ui/src/main/java/org/jboss/seam/ui/renderkit/FormattedTextRendererBase.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- FormattedTextRendererBase.java 15 Jun 2007 17:06:56 -0000 1.1
+++ FormattedTextRendererBase.java 19 Jun 2007 21:57:43 -0000 1.2
@@ -7,8 +7,9 @@
import javax.faces.context.ResponseWriter;
import org.jboss.seam.ui.component.UIFormattedText;
+import org.jboss.seam.ui.util.cdk.RendererBase;
-public class FormattedTextRendererBase extends org.ajax4jsf.framework.renderer.ComponentRendererBase
+public class FormattedTextRendererBase extends RendererBase
{
@Override
1.2 +20 -9 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: /cvsroot/jboss/jboss-seam/ui/src/main/java/org/jboss/seam/ui/renderkit/LinkRendererBase.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- LinkRendererBase.java 15 Jun 2007 17:06:56 -0000 1.1
+++ LinkRendererBase.java 19 Jun 2007 21:57:43 -0000 1.2
@@ -2,12 +2,15 @@
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.ui.component.UILink;
+import org.jboss.seam.ui.util.HTML;
+import org.jboss.seam.ui.util.cdk.RendererBase;
-public class LinkRendererBase extends AjaxComponentRendererBase
+public class LinkRendererBase extends RendererBase
{
@Override
@@ -16,19 +19,27 @@
return UILink.class;
}
- public String getHref(FacesContext facesContext, UILink link) throws IOException
+ @Override
+ protected void doEncodeBegin(ResponseWriter writer, FacesContext context, UIComponent component) throws IOException
+ {
+ UILink link = (UILink) component;
+ writer.startElement(HTML.ANCHOR_ELEM, link);
+ if (link.getUrl() != null && !link.isDisabled())
{
- if (!link.isDisabled())
+ writer.writeAttribute(HTML.HREF_ATTR, link.getUrl(), HTML.HREF_ATTR);
+ }
+ HTML.renderHTMLAttributes(writer, link, HTML.ANCHOR_PASSTHROUGH_ATTRIBUTES);
+ if (link.getValue() != null)
{
- return link.getUrl();
+ writer.writeText(link.getValue(), null);
}
- return null;
}
@Override
- public boolean getRendersChildren()
+ protected void doEncodeEnd(ResponseWriter writer, FacesContext context, UIComponent component) throws IOException
{
- return true;
+ writer.endElement(HTML.ANCHOR_ELEM);
}
+
}
1.2 +2 -2 jboss-seam/ui/src/main/java/org/jboss/seam/ui/renderkit/FragmentRendererBase.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: FragmentRendererBase.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/ui/src/main/java/org/jboss/seam/ui/renderkit/FragmentRendererBase.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- FragmentRendererBase.java 15 Jun 2007 17:06:56 -0000 1.1
+++ FragmentRendererBase.java 19 Jun 2007 21:57:43 -0000 1.2
@@ -6,10 +6,10 @@
import javax.faces.context.FacesContext;
import javax.faces.context.ResponseWriter;
-import org.ajax4jsf.framework.renderer.AjaxComponentRendererBase;
import org.jboss.seam.ui.component.UIFragment;
+import org.jboss.seam.ui.util.cdk.RendererBase;
-public class FragmentRendererBase extends AjaxComponentRendererBase
+public class FragmentRendererBase extends RendererBase
{
@Override
protected Class getComponentClass()
1.2 +9 -2 jboss-seam/ui/src/main/java/org/jboss/seam/ui/renderkit/ValidateAllRendererBase.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: ValidateAllRendererBase.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/ui/src/main/java/org/jboss/seam/ui/renderkit/ValidateAllRendererBase.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- ValidateAllRendererBase.java 15 Jun 2007 17:06:56 -0000 1.1
+++ ValidateAllRendererBase.java 19 Jun 2007 21:57:43 -0000 1.2
@@ -8,11 +8,11 @@
import javax.faces.context.FacesContext;
import javax.faces.context.ResponseWriter;
-import org.ajax4jsf.renderkit.AjaxCommandRendererBase;
import org.jboss.seam.ui.component.UIValidateAll;
+import org.jboss.seam.ui.util.cdk.RendererBase;
import org.jboss.seam.ui.validator.ModelValidator;
-public class ValidateAllRendererBase extends AjaxCommandRendererBase
+public class ValidateAllRendererBase extends RendererBase
{
@Override
@@ -52,4 +52,11 @@
}
}
+ @Override
+ public boolean getRendersChildren()
+ {
+ return true;
+ }
+
+
}
1.2 +2 -2 jboss-seam/ui/src/main/java/org/jboss/seam/ui/renderkit/DecorateRendererBase.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: DecorateRendererBase.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/ui/src/main/java/org/jboss/seam/ui/renderkit/DecorateRendererBase.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- DecorateRendererBase.java 15 Jun 2007 17:06:56 -0000 1.1
+++ DecorateRendererBase.java 19 Jun 2007 21:57:43 -0000 1.2
@@ -6,12 +6,12 @@
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;
import org.jboss.seam.ui.util.Decoration;
+import org.jboss.seam.ui.util.cdk.RendererBase;
-public class DecorateRendererBase extends AjaxComponentRendererBase
+public class DecorateRendererBase extends RendererBase
{
@Override
1.2 +2 -2 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/ui/src/main/java/org/jboss/seam/ui/renderkit/CacheRendererBase.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- CacheRendererBase.java 15 Jun 2007 17:06:56 -0000 1.1
+++ CacheRendererBase.java 19 Jun 2007 21:57:43 -0000 1.2
@@ -7,13 +7,13 @@
import javax.faces.context.FacesContext;
import javax.faces.context.ResponseWriter;
-import org.ajax4jsf.framework.renderer.AjaxComponentRendererBase;
import org.jboss.seam.core.PojoCache;
import org.jboss.seam.log.LogProvider;
import org.jboss.seam.log.Logging;
import org.jboss.seam.ui.component.UICache;
+import org.jboss.seam.ui.util.cdk.RendererBase;
-public class CacheRendererBase extends AjaxComponentRendererBase
+public class CacheRendererBase extends RendererBase
{
private static final LogProvider log = Logging.getLogProvider(UICache.class);
1.2 +46 -3 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: /cvsroot/jboss/jboss-seam/ui/src/main/java/org/jboss/seam/ui/renderkit/ButtonRendererBase.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- ButtonRendererBase.java 15 Jun 2007 17:06:56 -0000 1.1
+++ ButtonRendererBase.java 19 Jun 2007 21:57:43 -0000 1.2
@@ -1,13 +1,19 @@
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.ui.component.UIButton;
+import org.jboss.seam.ui.util.HTML;
+import org.jboss.seam.ui.util.JSF;
+import org.jboss.seam.ui.util.cdk.RendererBase;
-public class ButtonRendererBase extends AjaxComponentRendererBase
+public class ButtonRendererBase extends RendererBase
{
@Override
@@ -16,8 +22,17 @@
return UIButton.class;
}
+ private String getType(UIButton button)
+ {
+ if (button.getImage() == null) {
+ return "button";
+ } else {
+ return "image";
+ }
+ }
+
- public String getOnClick(FacesContext facesContext, UIButton button) throws IOException
+ private String getOnClick(UIButton button) throws IOException
{
String onclick = button.getOnclick();
if (onclick == null)
@@ -41,4 +56,32 @@
return true;
}
+ @Override
+ protected void doEncodeBegin(ResponseWriter writer, FacesContext context, UIComponent component) throws IOException
+ {
+ UIButton button = (UIButton) component;
+ writer.startElement(HTML.INPUT_ELEM, button);
+ String onclick = getOnClick(button);
+ if (!("").equals(onclick) && !button.isDisabled())
+ {
+ writer.writeAttribute(HTML.ONCLICK_ATTR, onclick, HTML.ONCLICK_ATTR);
+ }
+ HTML.renderHTMLAttributes(writer, button, HTML.BUTTON_PASSTHROUGH_ATTRIBUTES_WITHOUT_DISABLED_AND_ONCLICK);
+ if (button.getValue() != null)
+ {
+ writer.writeAttribute(HTML.VALUE_ATTR, button.getValue(), HTML.VALUE_ATTR);
+ }
+ if (button.isDisabled())
+ {
+ writer.writeAttribute(HTML.DISABLED_ATTR, true, HTML.DISABLED_ATTR);
+ }
+ writer.writeAttribute(HTML.TYPE_ATTR, getType(button), HTML.TYPE_ATTR);
+ }
+
+ @Override
+ protected void doEncodeEnd(ResponseWriter writer, FacesContext context, UIComponent component) throws IOException
+ {
+ writer.endElement(HTML.INPUT_ELEM);
+ }
+
}
1.2 +39 -4 jboss-seam/ui/src/main/java/org/jboss/seam/ui/renderkit/FileUploadRendererBase.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: FileUploadRendererBase.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/ui/src/main/java/org/jboss/seam/ui/renderkit/FileUploadRendererBase.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- FileUploadRendererBase.java 15 Jun 2007 17:06:56 -0000 1.1
+++ FileUploadRendererBase.java 19 Jun 2007 21:57:43 -0000 1.2
@@ -1,18 +1,22 @@
package org.jboss.seam.ui.renderkit;
-import java.io.InputStream;
+
+import java.io.IOException;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
+import javax.faces.context.ResponseWriter;
import javax.servlet.ServletRequest;
-import org.ajax4jsf.framework.renderer.AjaxComponentRendererBase;
import org.jboss.seam.ui.component.UIFileUpload;
+import org.jboss.seam.ui.util.HTML;
+import org.jboss.seam.ui.util.JSF;
+import org.jboss.seam.ui.util.cdk.RendererBase;
import org.jboss.seam.web.MultipartRequest;
-public class FileUploadRendererBase extends AjaxComponentRendererBase
+public class FileUploadRendererBase extends RendererBase
{
@Override
@@ -22,6 +26,37 @@
}
@Override
+ protected void doEncodeEnd(ResponseWriter writer, FacesContext context, UIComponent component) throws IOException
+ {
+ UIFileUpload fileUpload = (UIFileUpload) component;
+
+ writer.startElement(HTML.INPUT_ELEM, fileUpload);
+ writer.writeAttribute(HTML.TYPE_ATTR, HTML.FILE_ATTR, null);
+
+ String clientId = fileUpload.getClientId(context);
+ writer.writeAttribute(HTML.ID_ATTR, clientId, null);
+ writer.writeAttribute(HTML.NAME_ATTR, clientId, null);
+
+
+ if (fileUpload.getAccept() != null)
+ {
+ writer.writeAttribute(HTML.ACCEPT_ATTR, fileUpload.getAccept(), "accept");
+ }
+
+ if (fileUpload.getStyleClass() != null)
+ {
+ writer.writeAttribute(HTML.CLASS_ATTR, fileUpload.getStyleClass(), JSF.STYLE_CLASS_ATTR);
+ }
+
+ if (fileUpload.getStyle() != null)
+ {
+ writer.writeAttribute(HTML.STYLE_ATTR, fileUpload.getStyle(), "style");
+ }
+
+ writer.endElement(HTML.INPUT_ELEM);
+ }
+
+ @Override
protected void doDecode(FacesContext context, UIComponent component)
{
UIFileUpload fileUpload = (UIFileUpload) component;
@@ -37,7 +72,7 @@
MultipartRequest multipartRequest = (MultipartRequest) request;
String clientId = component.getClientId(context);
-
+ fileUpload.setLocalInputStream(multipartRequest.getFileInputStream(clientId));
fileUpload.setLocalContentType(multipartRequest.getFileContentType(clientId));
fileUpload.setLocalFileName(multipartRequest.getFileName(clientId));
fileUpload.setLocalFileSize(multipartRequest.getFileSize(clientId));
1.1 date: 2007/06/19 21:57:43; author: pmuir; state: Exp;jboss-seam/ui/src/main/java/org/jboss/seam/ui/renderkit/DivRendererBase.java
Index: DivRendererBase.java
===================================================================
package org.jboss.seam.ui.renderkit;
import java.io.IOException;
import javax.faces.context.ResponseWriter;
import org.jboss.seam.ui.component.UIDiv;
import org.jboss.seam.ui.component.UIStyle;
public class DivRendererBase extends StyleRendererBase
{
@Override
protected Class getComponentClass()
{
return UIDiv.class;
}
@Override
public void endElement(ResponseWriter writer) throws IOException
{
writer.endElement("div");
}
@Override
public void startElement(ResponseWriter writer, UIStyle style) throws IOException
{
writer.startElement("div", style);
}
}
1.1 date: 2007/06/19 21:57:43; author: pmuir; state: Exp;jboss-seam/ui/src/main/java/org/jboss/seam/ui/renderkit/SpanRendererBase.java
Index: SpanRendererBase.java
===================================================================
package org.jboss.seam.ui.renderkit;
import java.io.IOException;
import javax.faces.context.ResponseWriter;
import org.jboss.seam.ui.component.UIDiv;
import org.jboss.seam.ui.component.UISpan;
import org.jboss.seam.ui.component.UIStyle;
public class SpanRendererBase extends StyleRendererBase
{
@Override
protected Class getComponentClass()
{
return UISpan.class;
}
@Override
public void endElement(ResponseWriter writer) throws IOException
{
writer.endElement("span");
}
@Override
public void startElement(ResponseWriter writer, UIStyle style) throws IOException
{
writer.startElement("span", style);
}
}
1.1 date: 2007/06/19 21:57:43; author: pmuir; state: Exp;jboss-seam/ui/src/main/java/org/jboss/seam/ui/renderkit/StyleRendererBase.java
Index: StyleRendererBase.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.jboss.seam.ui.component.UIStyle;
import org.jboss.seam.ui.util.cdk.RendererBase;
public abstract class StyleRendererBase extends RendererBase
{
@Override
protected void doEncodeBegin(ResponseWriter writer, FacesContext context, UIComponent component) throws IOException
{
UIStyle style = (UIStyle) component;
startElement(writer, style);
writer.writeAttribute("id", component.getClientId(context), "id");
if (style.getStyleClass() != null)
{
writer.writeAttribute("class", style.getStyleClass(), "styleClass");
}
if (style.getStyle() != null)
{
writer.writeAttribute("style", style.getStyle(), "style");
}
}
@Override
protected void doEncodeEnd(ResponseWriter writer, FacesContext context, UIComponent component) throws IOException
{
endElement(writer);
}
public abstract void startElement(ResponseWriter writer, UIStyle style) throws IOException;
public abstract void endElement(ResponseWriter writer) throws IOException;
}
More information about the jboss-cvs-commits
mailing list