You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by sv...@apache.org on 2005/09/21 03:06:15 UTC

svn commit: r290595 - in /myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset: ./ Fieldset.java FieldsetRenderer.java FieldsetTag.java

Author: svieujot
Date: Tue Sep 20 18:06:09 2005
New Revision: 290595

URL: http://svn.apache.org/viewcvs?rev=290595&view=rev
Log:
New fieldset component.

Added:
    myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/
    myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java   (with props)
    myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java   (with props)
    myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java   (with props)

Added: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java
URL: http://svn.apache.org/viewcvs/myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java?rev=290595&view=auto
==============================================================================
--- myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java (added)
+++ myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java Tue Sep 20 18:06:09 2005
@@ -0,0 +1,65 @@
+/*
+ * Copyright 2004 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.myfaces.custom.fieldset;
+
+import javax.faces.context.FacesContext;
+import javax.faces.el.ValueBinding;
+
+import org.apache.myfaces.custom.htmlTag.HtmlTag;
+
+/**
+ * @author svieujot (latest modification by $Author$)
+ * @version $Revision$ $Date: 2005-06-09 02:27:56 -0400 (Thu, 09 Jun 2005) $
+ */
+public class Fieldset extends HtmlTag {
+  public static final String COMPONENT_TYPE = "org.apache.myfaces.Fieldset";
+  public static final String COMPONENT_FAMILY = "javax.faces.Output";
+  private static final String DEFAULT_RENDERER_TYPE = FieldsetRenderer.RENDERER_TYPE;
+
+  private String legend = null;
+  
+  public Fieldset(){
+      setRendererType(DEFAULT_RENDERER_TYPE);
+  }
+  
+  public Object getValue() {
+	return "fieldset";
+  }
+  
+  public String getLegend(){
+      if (legend != null)
+          return legend;
+      ValueBinding vb = getValueBinding("legend");
+      return vb != null ? (String) vb.getValue(getFacesContext()) : null;
+  }
+
+  public void setLegend(String legend){
+      this.legend = legend;
+  }
+
+  public void restoreState(FacesContext context, Object state){
+      Object values[] = (Object[]) state;
+      super.restoreState(context, values[0]);
+      legend = (String) values[1];
+  }
+
+  public Object saveState(FacesContext context){
+      Object values[] = new Object[2];
+      values[0] = super.saveState(context);
+      values[1] = legend;
+      return values;
+  }
+}
\ No newline at end of file

Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java
------------------------------------------------------------------------------
    svn:keywords = "LastChangedDate LastChangedBy LastChangedRevision Author Id"

Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java
URL: http://svn.apache.org/viewcvs/myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java?rev=290595&view=auto
==============================================================================
--- myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java (added)
+++ myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java Tue Sep 20 18:06:09 2005
@@ -0,0 +1,54 @@
+/*
+ * Copyright 2004 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.myfaces.custom.fieldset;
+
+import java.io.IOException;
+
+import javax.faces.component.UIComponent;
+import javax.faces.context.FacesContext;
+import javax.faces.context.ResponseWriter;
+
+import org.apache.myfaces.custom.htmlTag.HtmlTagRenderer;
+
+/**
+ * @author svieujot (latest modification by $Author$)
+ * @version $Revision$ $Date: 2005-05-11 11:47:12 -0400 (Wed, 11 May 2005) $
+ */
+public class FieldsetRenderer extends HtmlTagRenderer
+{
+    public static final String RENDERER_TYPE = "org.apache.myfaces.FieldsetRenderer";
+
+    public void encodeBegin(FacesContext context, UIComponent component)
+            throws IOException
+    {
+
+        Fieldset fieldset = (Fieldset) component;
+
+        if (fieldset.isRendered())
+        {
+        	super.encodeBegin(context, component);
+        	String legend = fieldset.getLegend().toString();
+        	if( legend.trim().length() == 0 ) // Don't render the legend
+        		return;
+        	
+            ResponseWriter writer = context.getResponseWriter();
+
+            writer.startElement("legend", fieldset);
+            writer.write( legend );
+            writer.endElement( "legend" );
+        }  
+    }
+}
\ No newline at end of file

Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java
------------------------------------------------------------------------------
    svn:keywords = "LastChangedDate LastChangedBy LastChangedRevision Author Id"

Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java
URL: http://svn.apache.org/viewcvs/myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java?rev=290595&view=auto
==============================================================================
--- myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java (added)
+++ myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java Tue Sep 20 18:06:09 2005
@@ -0,0 +1,54 @@
+/*
+ * Copyright 2004 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.myfaces.custom.fieldset;
+
+import javax.faces.component.UIComponent;
+
+import org.apache.myfaces.custom.htmlTag.HtmlTagTag;
+/**
+ * @author svieujot (latest modification by $Author$)
+ * @version $Revision$ $Date: 2005-06-09 02:27:56 -0400 (Thu, 09 Jun 2005) $
+ */
+public class FieldsetTag extends HtmlTagTag {
+
+	private String legend = null;
+	
+	public FieldsetTag() {
+		super();
+	}
+
+	public String getComponentType() {
+		return Fieldset.COMPONENT_TYPE;
+	}
+	
+	public String getRendererType() {
+		return FieldsetRenderer.RENDERER_TYPE;
+	}
+
+	public void release() {
+		super.release();
+		this.legend = null;
+	}
+
+	protected void setProperties(UIComponent component) {
+		super.setProperties(component);
+		setStringProperty(component, "legend", legend);
+	}
+
+	public void setLegend(String legend) {
+		this.legend = legend;
+	}
+}
\ No newline at end of file

Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java
------------------------------------------------------------------------------
    svn:keywords = "LastChangedDate LastChangedBy LastChangedRevision Author Id"

Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain



Re: svn commit: r290595 - in /myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset: ./ Fieldset.java FieldsetRenderer.java FieldsetTag.java

Posted by Sylvain Vieujot <sv...@apache.org>.
Yes, this is it.
I just close the bug.
Thanks for the notice.

Sylvain.

On Wed, 2005-09-21 at 17:49 -0400, Sean Schofield wrote:

> Cool.  There is an old JIRA issue on this (MYFACES-380.)  Does this
> basically implement that?
> 
> sean
> 
> On 9/20/05, svieujot@apache.org <sv...@apache.org> wrote:
> > Author: svieujot
> > Date: Tue Sep 20 18:06:09 2005
> > New Revision: 290595
> >
> > URL: http://svn.apache.org/viewcvs?rev=290595&view=rev
> > Log:
> > New fieldset component.
> >
> > Added:
> >     myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/
> >     myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java   (with props)
> >     myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java   (with props)
> >     myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java   (with props)
> >
> > Added: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java
> > URL: http://svn.apache.org/viewcvs/myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java?rev=290595&view=auto
> > ==============================================================================
> > --- myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java (added)
> > +++ myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java Tue Sep 20 18:06:09 2005
> > @@ -0,0 +1,65 @@
> > +/*
> > + * Copyright 2004 The Apache Software Foundation.
> > + *
> > + * Licensed under the Apache License, Version 2.0 (the "License");
> > + * you may not use this file except in compliance with the License.
> > + * You may obtain a copy of the License at
> > + *
> > + *      http://www.apache.org/licenses/LICENSE-2.0
> > + *
> > + * Unless required by applicable law or agreed to in writing, software
> > + * distributed under the License is distributed on an "AS IS" BASIS,
> > + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
> > + * See the License for the specific language governing permissions and
> > + * limitations under the License.
> > + */
> > +package org.apache.myfaces.custom.fieldset;
> > +
> > +import javax.faces.context.FacesContext;
> > +import javax.faces.el.ValueBinding;
> > +
> > +import org.apache.myfaces.custom.htmlTag.HtmlTag;
> > +
> > +/**
> > + * @author svieujot (latest modification by $Author$)
> > + * @version $Revision$ $Date: 2005-06-09 02:27:56 -0400 (Thu, 09 Jun 2005) $
> > + */
> > +public class Fieldset extends HtmlTag {
> > +  public static final String COMPONENT_TYPE = "org.apache.myfaces.Fieldset";
> > +  public static final String COMPONENT_FAMILY = "javax.faces.Output";
> > +  private static final String DEFAULT_RENDERER_TYPE = FieldsetRenderer.RENDERER_TYPE;
> > +
> > +  private String legend = null;
> > +
> > +  public Fieldset(){
> > +      setRendererType(DEFAULT_RENDERER_TYPE);
> > +  }
> > +
> > +  public Object getValue() {
> > +       return "fieldset";
> > +  }
> > +
> > +  public String getLegend(){
> > +      if (legend != null)
> > +          return legend;
> > +      ValueBinding vb = getValueBinding("legend");
> > +      return vb != null ? (String) vb.getValue(getFacesContext()) : null;
> > +  }
> > +
> > +  public void setLegend(String legend){
> > +      this.legend = legend;
> > +  }
> > +
> > +  public void restoreState(FacesContext context, Object state){
> > +      Object values[] = (Object[]) state;
> > +      super.restoreState(context, values[0]);
> > +      legend = (String) values[1];
> > +  }
> > +
> > +  public Object saveState(FacesContext context){
> > +      Object values[] = new Object[2];
> > +      values[0] = super.saveState(context);
> > +      values[1] = legend;
> > +      return values;
> > +  }
> > +}
> > \ No newline at end of file
> >
> > Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java
> > ------------------------------------------------------------------------------
> >     svn:eol-style = native
> >
> > Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java
> > ------------------------------------------------------------------------------
> >     svn:keywords = "LastChangedDate LastChangedBy LastChangedRevision Author Id"
> >
> > Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java
> > ------------------------------------------------------------------------------
> >     svn:mime-type = text/plain
> >
> > Added: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java
> > URL: http://svn.apache.org/viewcvs/myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java?rev=290595&view=auto
> > ==============================================================================
> > --- myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java (added)
> > +++ myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java Tue Sep 20 18:06:09 2005
> > @@ -0,0 +1,54 @@
> > +/*
> > + * Copyright 2004 The Apache Software Foundation.
> > + *
> > + * Licensed under the Apache License, Version 2.0 (the "License");
> > + * you may not use this file except in compliance with the License.
> > + * You may obtain a copy of the License at
> > + *
> > + *      http://www.apache.org/licenses/LICENSE-2.0
> > + *
> > + * Unless required by applicable law or agreed to in writing, software
> > + * distributed under the License is distributed on an "AS IS" BASIS,
> > + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
> > + * See the License for the specific language governing permissions and
> > + * limitations under the License.
> > + */
> > +package org.apache.myfaces.custom.fieldset;
> > +
> > +import java.io.IOException;
> > +
> > +import javax.faces.component.UIComponent;
> > +import javax.faces.context.FacesContext;
> > +import javax.faces.context.ResponseWriter;
> > +
> > +import org.apache.myfaces.custom.htmlTag.HtmlTagRenderer;
> > +
> > +/**
> > + * @author svieujot (latest modification by $Author$)
> > + * @version $Revision$ $Date: 2005-05-11 11:47:12 -0400 (Wed, 11 May 2005) $
> > + */
> > +public class FieldsetRenderer extends HtmlTagRenderer
> > +{
> > +    public static final String RENDERER_TYPE = "org.apache.myfaces.FieldsetRenderer";
> > +
> > +    public void encodeBegin(FacesContext context, UIComponent component)
> > +            throws IOException
> > +    {
> > +
> > +        Fieldset fieldset = (Fieldset) component;
> > +
> > +        if (fieldset.isRendered())
> > +        {
> > +               super.encodeBegin(context, component);
> > +               String legend = fieldset.getLegend().toString();
> > +               if( legend.trim().length() == 0 ) // Don't render the legend
> > +                       return;
> > +
> > +            ResponseWriter writer = context.getResponseWriter();
> > +
> > +            writer.startElement("legend", fieldset);
> > +            writer.write( legend );
> > +            writer.endElement( "legend" );
> > +        }
> > +    }
> > +}
> > \ No newline at end of file
> >
> > Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java
> > ------------------------------------------------------------------------------
> >     svn:eol-style = native
> >
> > Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java
> > ------------------------------------------------------------------------------
> >     svn:keywords = "LastChangedDate LastChangedBy LastChangedRevision Author Id"
> >
> > Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java
> > ------------------------------------------------------------------------------
> >     svn:mime-type = text/plain
> >
> > Added: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java
> > URL: http://svn.apache.org/viewcvs/myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java?rev=290595&view=auto
> > ==============================================================================
> > --- myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java (added)
> > +++ myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java Tue Sep 20 18:06:09 2005
> > @@ -0,0 +1,54 @@
> > +/*
> > + * Copyright 2004 The Apache Software Foundation.
> > + *
> > + * Licensed under the Apache License, Version 2.0 (the "License");
> > + * you may not use this file except in compliance with the License.
> > + * You may obtain a copy of the License at
> > + *
> > + *      http://www.apache.org/licenses/LICENSE-2.0
> > + *
> > + * Unless required by applicable law or agreed to in writing, software
> > + * distributed under the License is distributed on an "AS IS" BASIS,
> > + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
> > + * See the License for the specific language governing permissions and
> > + * limitations under the License.
> > + */
> > +package org.apache.myfaces.custom.fieldset;
> > +
> > +import javax.faces.component.UIComponent;
> > +
> > +import org.apache.myfaces.custom.htmlTag.HtmlTagTag;
> > +/**
> > + * @author svieujot (latest modification by $Author$)
> > + * @version $Revision$ $Date: 2005-06-09 02:27:56 -0400 (Thu, 09 Jun 2005) $
> > + */
> > +public class FieldsetTag extends HtmlTagTag {
> > +
> > +       private String legend = null;
> > +
> > +       public FieldsetTag() {
> > +               super();
> > +       }
> > +
> > +       public String getComponentType() {
> > +               return Fieldset.COMPONENT_TYPE;
> > +       }
> > +
> > +       public String getRendererType() {
> > +               return FieldsetRenderer.RENDERER_TYPE;
> > +       }
> > +
> > +       public void release() {
> > +               super.release();
> > +               this.legend = null;
> > +       }
> > +
> > +       protected void setProperties(UIComponent component) {
> > +               super.setProperties(component);
> > +               setStringProperty(component, "legend", legend);
> > +       }
> > +
> > +       public void setLegend(String legend) {
> > +               this.legend = legend;
> > +       }
> > +}
> > \ No newline at end of file
> >
> > Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java
> > ------------------------------------------------------------------------------
> >     svn:eol-style = native
> >
> > Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java
> > ------------------------------------------------------------------------------
> >     svn:keywords = "LastChangedDate LastChangedBy LastChangedRevision Author Id"
> >
> > Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java
> > ------------------------------------------------------------------------------
> >     svn:mime-type = text/plain
> >
> >
> >

Re: svn commit: r290595 - in /myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset: ./ Fieldset.java FieldsetRenderer.java FieldsetTag.java

Posted by Sean Schofield <se...@gmail.com>.
Cool.  There is an old JIRA issue on this (MYFACES-380.)  Does this
basically implement that?

sean

On 9/20/05, svieujot@apache.org <sv...@apache.org> wrote:
> Author: svieujot
> Date: Tue Sep 20 18:06:09 2005
> New Revision: 290595
>
> URL: http://svn.apache.org/viewcvs?rev=290595&view=rev
> Log:
> New fieldset component.
>
> Added:
>     myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/
>     myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java   (with props)
>     myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java   (with props)
>     myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java   (with props)
>
> Added: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java
> URL: http://svn.apache.org/viewcvs/myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java?rev=290595&view=auto
> ==============================================================================
> --- myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java (added)
> +++ myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java Tue Sep 20 18:06:09 2005
> @@ -0,0 +1,65 @@
> +/*
> + * Copyright 2004 The Apache Software Foundation.
> + *
> + * Licensed under the Apache License, Version 2.0 (the "License");
> + * you may not use this file except in compliance with the License.
> + * You may obtain a copy of the License at
> + *
> + *      http://www.apache.org/licenses/LICENSE-2.0
> + *
> + * Unless required by applicable law or agreed to in writing, software
> + * distributed under the License is distributed on an "AS IS" BASIS,
> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
> + * See the License for the specific language governing permissions and
> + * limitations under the License.
> + */
> +package org.apache.myfaces.custom.fieldset;
> +
> +import javax.faces.context.FacesContext;
> +import javax.faces.el.ValueBinding;
> +
> +import org.apache.myfaces.custom.htmlTag.HtmlTag;
> +
> +/**
> + * @author svieujot (latest modification by $Author$)
> + * @version $Revision$ $Date: 2005-06-09 02:27:56 -0400 (Thu, 09 Jun 2005) $
> + */
> +public class Fieldset extends HtmlTag {
> +  public static final String COMPONENT_TYPE = "org.apache.myfaces.Fieldset";
> +  public static final String COMPONENT_FAMILY = "javax.faces.Output";
> +  private static final String DEFAULT_RENDERER_TYPE = FieldsetRenderer.RENDERER_TYPE;
> +
> +  private String legend = null;
> +
> +  public Fieldset(){
> +      setRendererType(DEFAULT_RENDERER_TYPE);
> +  }
> +
> +  public Object getValue() {
> +       return "fieldset";
> +  }
> +
> +  public String getLegend(){
> +      if (legend != null)
> +          return legend;
> +      ValueBinding vb = getValueBinding("legend");
> +      return vb != null ? (String) vb.getValue(getFacesContext()) : null;
> +  }
> +
> +  public void setLegend(String legend){
> +      this.legend = legend;
> +  }
> +
> +  public void restoreState(FacesContext context, Object state){
> +      Object values[] = (Object[]) state;
> +      super.restoreState(context, values[0]);
> +      legend = (String) values[1];
> +  }
> +
> +  public Object saveState(FacesContext context){
> +      Object values[] = new Object[2];
> +      values[0] = super.saveState(context);
> +      values[1] = legend;
> +      return values;
> +  }
> +}
> \ No newline at end of file
>
> Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java
> ------------------------------------------------------------------------------
>     svn:eol-style = native
>
> Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java
> ------------------------------------------------------------------------------
>     svn:keywords = "LastChangedDate LastChangedBy LastChangedRevision Author Id"
>
> Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/Fieldset.java
> ------------------------------------------------------------------------------
>     svn:mime-type = text/plain
>
> Added: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java
> URL: http://svn.apache.org/viewcvs/myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java?rev=290595&view=auto
> ==============================================================================
> --- myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java (added)
> +++ myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java Tue Sep 20 18:06:09 2005
> @@ -0,0 +1,54 @@
> +/*
> + * Copyright 2004 The Apache Software Foundation.
> + *
> + * Licensed under the Apache License, Version 2.0 (the "License");
> + * you may not use this file except in compliance with the License.
> + * You may obtain a copy of the License at
> + *
> + *      http://www.apache.org/licenses/LICENSE-2.0
> + *
> + * Unless required by applicable law or agreed to in writing, software
> + * distributed under the License is distributed on an "AS IS" BASIS,
> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
> + * See the License for the specific language governing permissions and
> + * limitations under the License.
> + */
> +package org.apache.myfaces.custom.fieldset;
> +
> +import java.io.IOException;
> +
> +import javax.faces.component.UIComponent;
> +import javax.faces.context.FacesContext;
> +import javax.faces.context.ResponseWriter;
> +
> +import org.apache.myfaces.custom.htmlTag.HtmlTagRenderer;
> +
> +/**
> + * @author svieujot (latest modification by $Author$)
> + * @version $Revision$ $Date: 2005-05-11 11:47:12 -0400 (Wed, 11 May 2005) $
> + */
> +public class FieldsetRenderer extends HtmlTagRenderer
> +{
> +    public static final String RENDERER_TYPE = "org.apache.myfaces.FieldsetRenderer";
> +
> +    public void encodeBegin(FacesContext context, UIComponent component)
> +            throws IOException
> +    {
> +
> +        Fieldset fieldset = (Fieldset) component;
> +
> +        if (fieldset.isRendered())
> +        {
> +               super.encodeBegin(context, component);
> +               String legend = fieldset.getLegend().toString();
> +               if( legend.trim().length() == 0 ) // Don't render the legend
> +                       return;
> +
> +            ResponseWriter writer = context.getResponseWriter();
> +
> +            writer.startElement("legend", fieldset);
> +            writer.write( legend );
> +            writer.endElement( "legend" );
> +        }
> +    }
> +}
> \ No newline at end of file
>
> Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java
> ------------------------------------------------------------------------------
>     svn:eol-style = native
>
> Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java
> ------------------------------------------------------------------------------
>     svn:keywords = "LastChangedDate LastChangedBy LastChangedRevision Author Id"
>
> Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetRenderer.java
> ------------------------------------------------------------------------------
>     svn:mime-type = text/plain
>
> Added: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java
> URL: http://svn.apache.org/viewcvs/myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java?rev=290595&view=auto
> ==============================================================================
> --- myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java (added)
> +++ myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java Tue Sep 20 18:06:09 2005
> @@ -0,0 +1,54 @@
> +/*
> + * Copyright 2004 The Apache Software Foundation.
> + *
> + * Licensed under the Apache License, Version 2.0 (the "License");
> + * you may not use this file except in compliance with the License.
> + * You may obtain a copy of the License at
> + *
> + *      http://www.apache.org/licenses/LICENSE-2.0
> + *
> + * Unless required by applicable law or agreed to in writing, software
> + * distributed under the License is distributed on an "AS IS" BASIS,
> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
> + * See the License for the specific language governing permissions and
> + * limitations under the License.
> + */
> +package org.apache.myfaces.custom.fieldset;
> +
> +import javax.faces.component.UIComponent;
> +
> +import org.apache.myfaces.custom.htmlTag.HtmlTagTag;
> +/**
> + * @author svieujot (latest modification by $Author$)
> + * @version $Revision$ $Date: 2005-06-09 02:27:56 -0400 (Thu, 09 Jun 2005) $
> + */
> +public class FieldsetTag extends HtmlTagTag {
> +
> +       private String legend = null;
> +
> +       public FieldsetTag() {
> +               super();
> +       }
> +
> +       public String getComponentType() {
> +               return Fieldset.COMPONENT_TYPE;
> +       }
> +
> +       public String getRendererType() {
> +               return FieldsetRenderer.RENDERER_TYPE;
> +       }
> +
> +       public void release() {
> +               super.release();
> +               this.legend = null;
> +       }
> +
> +       protected void setProperties(UIComponent component) {
> +               super.setProperties(component);
> +               setStringProperty(component, "legend", legend);
> +       }
> +
> +       public void setLegend(String legend) {
> +               this.legend = legend;
> +       }
> +}
> \ No newline at end of file
>
> Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java
> ------------------------------------------------------------------------------
>     svn:eol-style = native
>
> Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java
> ------------------------------------------------------------------------------
>     svn:keywords = "LastChangedDate LastChangedBy LastChangedRevision Author Id"
>
> Propchange: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/fieldset/FieldsetTag.java
> ------------------------------------------------------------------------------
>     svn:mime-type = text/plain
>
>
>