[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