You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by bo...@apache.org on 2011/10/16 17:31:34 UTC

svn commit: r1184849 - in /myfaces/tobago/trunk: tobago-extension/tobago-facelets/src/main/java/org/apache/myfaces/tobago/facelets/extension/ tobago-extension/tobago-taglib-extension/src/main/java-jsf-1.1/org/apache/myfaces/tobago/internal/taglib/exten...

Author: bommel
Date: Sun Oct 16 15:31:33 2011
New Revision: 1184849

URL: http://svn.apache.org/viewvc?rev=1184849&view=rev
Log:
(TOBAGO-1039)
SelectManyShuttle component
improved css
added  tx:selectManyShuttle tags

Added:
    myfaces/tobago/trunk/tobago-extension/tobago-facelets/src/main/java/org/apache/myfaces/tobago/facelets/extension/SelectManyShuttleExtensionHandler.java
      - copied, changed from r1183128, myfaces/tobago/trunk/tobago-extension/tobago-facelets/src/main/java/org/apache/myfaces/tobago/facelets/extension/SelectManyListboxExtensionHandler.java
    myfaces/tobago/trunk/tobago-extension/tobago-taglib-extension/src/main/java-jsf-1.1/org/apache/myfaces/tobago/internal/taglib/extension/SelectManyShuttleExtensionTag.java
      - copied, changed from r1183128, myfaces/tobago/trunk/tobago-extension/tobago-taglib-extension/src/main/java-jsf-1.1/org/apache/myfaces/tobago/internal/taglib/extension/SelectManyCheckboxExtensionTag.java
    myfaces/tobago/trunk/tobago-extension/tobago-taglib-extension/src/main/java-jsf-1.2/org/apache/myfaces/tobago/internal/taglib/extension/SelectManyShuttleExtensionTag.java
Modified:
    myfaces/tobago/trunk/tobago-extension/tobago-facelets/src/main/java/org/apache/myfaces/tobago/facelets/extension/TobagoExtensionTagLibrary.java
    myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/resources/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/style/style.css
    myfaces/tobago/trunk/tobago-theme/tobago-theme-speyside/src/main/resources/org/apache/myfaces/tobago/renderkit/html/speyside/standard/style/style.css

Copied: myfaces/tobago/trunk/tobago-extension/tobago-facelets/src/main/java/org/apache/myfaces/tobago/facelets/extension/SelectManyShuttleExtensionHandler.java (from r1183128, myfaces/tobago/trunk/tobago-extension/tobago-facelets/src/main/java/org/apache/myfaces/tobago/facelets/extension/SelectManyListboxExtensionHandler.java)
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-extension/tobago-facelets/src/main/java/org/apache/myfaces/tobago/facelets/extension/SelectManyShuttleExtensionHandler.java?p2=myfaces/tobago/trunk/tobago-extension/tobago-facelets/src/main/java/org/apache/myfaces/tobago/facelets/extension/SelectManyShuttleExtensionHandler.java&p1=myfaces/tobago/trunk/tobago-extension/tobago-facelets/src/main/java/org/apache/myfaces/tobago/facelets/extension/SelectManyListboxExtensionHandler.java&r1=1183128&r2=1184849&rev=1184849&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-extension/tobago-facelets/src/main/java/org/apache/myfaces/tobago/facelets/extension/SelectManyListboxExtensionHandler.java (original)
+++ myfaces/tobago/trunk/tobago-extension/tobago-facelets/src/main/java/org/apache/myfaces/tobago/facelets/extension/SelectManyShuttleExtensionHandler.java Sun Oct 16 15:31:33 2011
@@ -19,24 +19,20 @@ package org.apache.myfaces.tobago.facele
 
 import com.sun.facelets.tag.jsf.ComponentConfig;
 import org.apache.myfaces.tobago.component.RendererTypes;
-import org.apache.myfaces.tobago.component.UISelectManyListbox;
+import org.apache.myfaces.tobago.component.UISelectManyShuttle;
 
-/*
- * Date: Aug 9, 2007
- * Time: 8:37:36 PM
- */
-public class SelectManyListboxExtensionHandler extends TobagoLabelExtensionHandler {
+public class SelectManyShuttleExtensionHandler extends TobagoLabelExtensionHandler {
 
-  public SelectManyListboxExtensionHandler(ComponentConfig config) {
+  public SelectManyShuttleExtensionHandler(ComponentConfig config) {
     super(config);
   }
 
   protected String getSubComponentType() {
-    return UISelectManyListbox.COMPONENT_TYPE;
+    return UISelectManyShuttle.COMPONENT_TYPE;
   }
 
   protected String getSubRendererType() {
-    return RendererTypes.SELECT_MANY_LISTBOX;
+    return RendererTypes.SELECT_MANY_SHUTTLE;
   }
 
   protected String getRows() {

Modified: myfaces/tobago/trunk/tobago-extension/tobago-facelets/src/main/java/org/apache/myfaces/tobago/facelets/extension/TobagoExtensionTagLibrary.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-extension/tobago-facelets/src/main/java/org/apache/myfaces/tobago/facelets/extension/TobagoExtensionTagLibrary.java?rev=1184849&r1=1184848&r2=1184849&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-extension/tobago-facelets/src/main/java/org/apache/myfaces/tobago/facelets/extension/TobagoExtensionTagLibrary.java (original)
+++ myfaces/tobago/trunk/tobago-extension/tobago-facelets/src/main/java/org/apache/myfaces/tobago/facelets/extension/TobagoExtensionTagLibrary.java Sun Oct 16 15:31:33 2011
@@ -42,6 +42,8 @@ public class TobagoExtensionTagLibrary e
         SelectManyCheckboxExtensionHandler.class);
     addComponent("selectManyListbox", ComponentTypes.PANEL, "Panel",
         SelectManyListboxExtensionHandler.class);
+    addComponent("selectManyShuttle", ComponentTypes.PANEL, "Panel",
+            SelectManyShuttleExtensionHandler.class);
     addComponent("selectOneChoice", ComponentTypes.PANEL, "Panel",
         SelectOneChoiceExtensionHandler.class);
     addComponent("selectOneRadio", ComponentTypes.PANEL, "Panel",

Copied: myfaces/tobago/trunk/tobago-extension/tobago-taglib-extension/src/main/java-jsf-1.1/org/apache/myfaces/tobago/internal/taglib/extension/SelectManyShuttleExtensionTag.java (from r1183128, myfaces/tobago/trunk/tobago-extension/tobago-taglib-extension/src/main/java-jsf-1.1/org/apache/myfaces/tobago/internal/taglib/extension/SelectManyCheckboxExtensionTag.java)
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-extension/tobago-taglib-extension/src/main/java-jsf-1.1/org/apache/myfaces/tobago/internal/taglib/extension/SelectManyShuttleExtensionTag.java?p2=myfaces/tobago/trunk/tobago-extension/tobago-taglib-extension/src/main/java-jsf-1.1/org/apache/myfaces/tobago/internal/taglib/extension/SelectManyShuttleExtensionTag.java&p1=myfaces/tobago/trunk/tobago-extension/tobago-taglib-extension/src/main/java-jsf-1.1/org/apache/myfaces/tobago/internal/taglib/extension/SelectManyCheckboxExtensionTag.java&r1=1183128&r2=1184849&rev=1184849&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-extension/tobago-taglib-extension/src/main/java-jsf-1.1/org/apache/myfaces/tobago/internal/taglib/extension/SelectManyCheckboxExtensionTag.java (original)
+++ myfaces/tobago/trunk/tobago-extension/tobago-taglib-extension/src/main/java-jsf-1.1/org/apache/myfaces/tobago/internal/taglib/extension/SelectManyShuttleExtensionTag.java Sun Oct 16 15:31:33 2011
@@ -19,7 +19,6 @@ package org.apache.myfaces.tobago.intern
 
 import org.apache.myfaces.tobago.apt.annotation.ExtensionTag;
 import org.apache.myfaces.tobago.apt.annotation.Tag;
-import org.apache.myfaces.tobago.internal.taglib.SelectManyCheckboxTag;
 import org.apache.myfaces.tobago.internal.taglib.declaration.HasBinding;
 import org.apache.myfaces.tobago.internal.taglib.declaration.HasConverter;
 import org.apache.myfaces.tobago.internal.taglib.declaration.HasConverterMessage;
@@ -29,7 +28,6 @@ import org.apache.myfaces.tobago.interna
 import org.apache.myfaces.tobago.internal.taglib.declaration.HasLabelWidth;
 import org.apache.myfaces.tobago.internal.taglib.declaration.HasMarkup;
 import org.apache.myfaces.tobago.internal.taglib.declaration.HasOnchange;
-import org.apache.myfaces.tobago.internal.taglib.declaration.HasRenderRange;
 import org.apache.myfaces.tobago.internal.taglib.declaration.HasRequiredMessage;
 import org.apache.myfaces.tobago.internal.taglib.declaration.HasTabIndex;
 import org.apache.myfaces.tobago.internal.taglib.declaration.HasTip;
@@ -39,7 +37,6 @@ import org.apache.myfaces.tobago.interna
 import org.apache.myfaces.tobago.internal.taglib.declaration.HasValueChangeListener;
 import org.apache.myfaces.tobago.internal.taglib.declaration.IsDisabled;
 import org.apache.myfaces.tobago.internal.taglib.declaration.IsFocus;
-import org.apache.myfaces.tobago.internal.taglib.declaration.IsInline;
 import org.apache.myfaces.tobago.internal.taglib.declaration.IsReadonly;
 import org.apache.myfaces.tobago.internal.taglib.declaration.IsRendered;
 import org.apache.myfaces.tobago.internal.taglib.declaration.IsRequired;
@@ -50,13 +47,13 @@ import javax.servlet.jsp.tagext.BodyTagS
 /**
  * Render a group of checkboxes.
  */
-@Tag(name = "selectManyCheckbox")
-@ExtensionTag(baseClassName = "org.apache.myfaces.tobago.internal.taglib.SelectManyCheckboxTag")
-public class SelectManyCheckboxExtensionTag extends BodyTagSupport
-    implements HasId, HasValue, HasValueChangeListener, IsDisabled, IsInline,
+@Tag(name = "selectManyShuttle")
+@ExtensionTag(baseClassName = "org.apache.myfaces.tobago.internal.taglib.SelectManyShuttleTag")
+public class SelectManyShuttleExtensionTag extends BodyTagSupport
+    implements HasId, HasValue, HasValueChangeListener, IsDisabled,
     HasLabel, HasLabelWidth, IsRendered, HasBinding, HasTip, HasConverter, HasValidator, HasOnchange,
     HasValidatorMessage, HasRequiredMessage, HasConverterMessage,
-    IsReadonly, HasMarkup, IsFocus, IsRequired, HasTabIndex, HasRenderRange, HasFieldId {
+    IsReadonly, HasMarkup, IsFocus, IsRequired, HasTabIndex, HasFieldId {
 
   private String required;
   private String value;
@@ -64,12 +61,12 @@ public class SelectManyCheckboxExtension
   private String disabled;
   private String readonly;
   private String onchange;
-  private String inline;
   private String label;
+  private String unselectedLabel;
+  private String selectedLabel;
   private String rendered;
   private String binding;
   private String tip;
-  //private String height;
   private String converter;
   private String validator;
   private String labelWidth;
@@ -83,7 +80,7 @@ public class SelectManyCheckboxExtension
   private String fieldId;
 
   private LabelExtensionTag labelTag;
-  private SelectManyCheckboxTag selectManyCheckboxTag;
+  private SelectManyShuttleTag selectManyShuttleTag;
 
   @Override
   public int doStartTag() throws JspException {
@@ -112,78 +109,78 @@ public class SelectManyCheckboxExtension
     labelTag.setParent(getParent());
     labelTag.doStartTag();
 
-    selectManyCheckboxTag = new SelectManyCheckboxTag();
-    selectManyCheckboxTag.setPageContext(pageContext);
+    selectManyShuttleTag = new SelectManyShuttleTag();
+    selectManyShuttleTag.setPageContext(pageContext);
     if (value != null) {
-      selectManyCheckboxTag.setValue(value);
+      selectManyShuttleTag.setValue(value);
     }
     if (valueChangeListener != null) {
-      selectManyCheckboxTag.setValueChangeListener(valueChangeListener);
+      selectManyShuttleTag.setValueChangeListener(valueChangeListener);
     }
     if (binding != null) {
-      selectManyCheckboxTag.setBinding(binding);
+      selectManyShuttleTag.setBinding(binding);
     }
     if (onchange != null) {
-      selectManyCheckboxTag.setOnchange(onchange);
+      selectManyShuttleTag.setOnchange(onchange);
     }
     if (validator != null) {
-      selectManyCheckboxTag.setValidator(validator);
+      selectManyShuttleTag.setValidator(validator);
     }
     if (converter != null) {
-      selectManyCheckboxTag.setConverter(converter);
+      selectManyShuttleTag.setConverter(converter);
     }
     if (disabled != null) {
-      selectManyCheckboxTag.setDisabled(disabled);
-    }
-    if (inline != null) {
-      selectManyCheckboxTag.setInline(inline);
+      selectManyShuttleTag.setDisabled(disabled);
     }
     if (focus != null) {
-      selectManyCheckboxTag.setFocus(focus);
+      selectManyShuttleTag.setFocus(focus);
     }
     if (fieldId != null) {
-      selectManyCheckboxTag.setId(fieldId);
+      selectManyShuttleTag.setId(fieldId);
     }
     if (label != null) {
-      selectManyCheckboxTag.setLabel(label);
+      selectManyShuttleTag.setLabel(label);
+    }
+    if (unselectedLabel != null) {
+      selectManyShuttleTag.setUnselectedLabel(unselectedLabel);
+    }
+    if (selectedLabel != null) {
+      selectManyShuttleTag.setSelectedLabel(selectedLabel);
     }
-    /*if (height != null) {
-      selectManyCheckboxTag.setHeight(height);
-    }*/
     if (readonly != null) {
-      selectManyCheckboxTag.setReadonly(readonly);
+      selectManyShuttleTag.setReadonly(readonly);
     }
     if (required != null) {
-      selectManyCheckboxTag.setRequired(required);
+      selectManyShuttleTag.setRequired(required);
     }
     if (markup != null) {
-      selectManyCheckboxTag.setMarkup(markup);
+      selectManyShuttleTag.setMarkup(markup);
     }
     if (renderRange != null) {
-      selectManyCheckboxTag.setRenderRange(renderRange);
+      selectManyShuttleTag.setRenderRange(renderRange);
     }
     if (tabIndex != null) {
-      selectManyCheckboxTag.setTabIndex(tabIndex);
+      selectManyShuttleTag.setTabIndex(tabIndex);
     }
     if (validatorMessage != null) {
-      selectManyCheckboxTag.setValidatorMessage(validatorMessage);
+      selectManyShuttleTag.setValidatorMessage(validatorMessage);
     }
     if (converterMessage != null) {
-      selectManyCheckboxTag.setConverterMessage(converterMessage);
+      selectManyShuttleTag.setConverterMessage(converterMessage);
     }
     if (requiredMessage != null) {
-      selectManyCheckboxTag.setRequiredMessage(requiredMessage);
+      selectManyShuttleTag.setRequiredMessage(requiredMessage);
     }
 
-    selectManyCheckboxTag.setParent(labelTag);
-    selectManyCheckboxTag.doStartTag();
+    selectManyShuttleTag.setParent(labelTag);
+    selectManyShuttleTag.doStartTag();
 
     return super.doStartTag();
   }
 
   @Override
   public int doEndTag() throws JspException {
-    selectManyCheckboxTag.doEndTag();
+    selectManyShuttleTag.doEndTag();
     labelTag.doEndTag();
     return super.doEndTag();
   }
@@ -194,10 +191,10 @@ public class SelectManyCheckboxExtension
     binding = null;
     onchange = null;
     disabled = null;
-    inline = null;
     label = null;
+    unselectedLabel = null;
+    selectedLabel = null;
     labelWidth = null;
-    //height = null;
     readonly = null;
     rendered = null;
     converter = null;
@@ -208,7 +205,7 @@ public class SelectManyCheckboxExtension
     valueChangeListener = null;
     markup = null;
     tabIndex = null;
-    selectManyCheckboxTag = null;
+    selectManyShuttleTag = null;
     labelTag = null;
     focus = null;
     renderRange = null;
@@ -250,9 +247,22 @@ public class SelectManyCheckboxExtension
     this.label = label;
   }
 
-  /*public void setHeight(String height) {
-    this.height = height;
-  } */
+  /**
+   * A localized user presentable label for the left select box.
+   */
+  @TagAttribute
+  @UIComponentTagAttribute()
+  public void setUnselectedLabel(String unselectedLabel) {
+    this.unselectedLabel = unselectedLabel;
+  }
+  /**
+   * A localized user presentable label for the right select box.
+   */
+  @TagAttribute
+  @UIComponentTagAttribute()
+  public void setSelectedLabel(String selectedLabel) {
+    this.selectedLabel = selectedLabel;
+  }
 
   public void setValidator(String validator) {
     this.validator = validator;

Added: myfaces/tobago/trunk/tobago-extension/tobago-taglib-extension/src/main/java-jsf-1.2/org/apache/myfaces/tobago/internal/taglib/extension/SelectManyShuttleExtensionTag.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-extension/tobago-taglib-extension/src/main/java-jsf-1.2/org/apache/myfaces/tobago/internal/taglib/extension/SelectManyShuttleExtensionTag.java?rev=1184849&view=auto
==============================================================================
--- myfaces/tobago/trunk/tobago-extension/tobago-taglib-extension/src/main/java-jsf-1.2/org/apache/myfaces/tobago/internal/taglib/extension/SelectManyShuttleExtensionTag.java (added)
+++ myfaces/tobago/trunk/tobago-extension/tobago-taglib-extension/src/main/java-jsf-1.2/org/apache/myfaces/tobago/internal/taglib/extension/SelectManyShuttleExtensionTag.java Sun Oct 16 15:31:33 2011
@@ -0,0 +1,412 @@
+package org.apache.myfaces.tobago.internal.taglib.extension;
+
+import org.apache.myfaces.tobago.apt.annotation.DynamicExpression;
+import org.apache.myfaces.tobago.apt.annotation.ExtensionTag;
+import org.apache.myfaces.tobago.apt.annotation.Tag;
+import org.apache.myfaces.tobago.apt.annotation.TagAttribute;
+import org.apache.myfaces.tobago.apt.annotation.UIComponentTagAttribute;
+import org.apache.myfaces.tobago.internal.taglib.SelectManyShuttleTag;
+
+import javax.servlet.jsp.JspException;
+
+/**
+ * Renders a multi selection option shuttle with a label.
+ */
+@Tag(name = "selectManyListbox")
+@ExtensionTag(baseClassName = "org.apache.myfaces.tobago.internal.taglib.SelectManyShuttleTag")
+public class SelectManyShuttleExtensionTag extends TobagoExtensionBodyTagSupport {
+
+  private javax.el.ValueExpression required;
+  private javax.el.ValueExpression value;
+  private javax.el.MethodExpression valueChangeListener;
+  private javax.el.ValueExpression disabled;
+  private javax.el.ValueExpression readonly;
+  private javax.el.ValueExpression onchange;
+  private javax.el.ValueExpression label;
+  private javax.el.ValueExpression unselectedLabel;
+  private javax.el.ValueExpression selectedLabel;
+  private javax.el.ValueExpression rendered;
+  private javax.el.ValueExpression binding;
+  private javax.el.ValueExpression tip;
+  private javax.el.ValueExpression converter;
+  private javax.el.MethodExpression validator;
+  private javax.el.ValueExpression labelWidth;
+  private javax.el.ValueExpression markup;
+  private javax.el.ValueExpression tabIndex;
+  private javax.el.ValueExpression focus;
+  private javax.el.ValueExpression validatorMessage;
+  private javax.el.ValueExpression converterMessage;
+  private javax.el.ValueExpression requiredMessage;
+  private String fieldId;
+
+  private LabelExtensionTag labelTag;
+  private SelectManyShuttleTag selectManyShuttleTag;
+
+  @Override
+  public int doStartTag() throws JspException {
+
+    labelTag = new LabelExtensionTag();
+    labelTag.setPageContext(pageContext);
+    labelTag.setRows("*");
+    if (id != null) {
+      labelTag.setId(id);
+    }
+    if (label != null) {
+      labelTag.setValue(label);
+    }
+    if (tip != null) {
+      labelTag.setTip(tip);
+    }
+    if (rendered != null) {
+      labelTag.setRendered(rendered);
+    }
+    if (labelWidth != null) {
+      labelTag.setColumns(createStringValueExpression(labelWidth.getExpressionString() + ";*"));
+    }
+    if (markup != null) {
+      labelTag.setMarkup(markup);
+    }
+    labelTag.setParent(getParent());
+    labelTag.setJspId(jspId + PREFIX + idSuffix++);
+    labelTag.doStartTag();
+
+    selectManyShuttleTag = new SelectManyShuttleTag();
+    selectManyShuttleTag.setPageContext(pageContext);
+    if (value != null) {
+      selectManyShuttleTag.setValue(value);
+    }
+    if (valueChangeListener != null) {
+      selectManyShuttleTag.setValueChangeListener(valueChangeListener);
+    }
+    if (binding != null) {
+      selectManyShuttleTag.setBinding(binding);
+    }
+    if (onchange != null) {
+      selectManyShuttleTag.setOnchange(onchange);
+    }
+    if (validator != null) {
+      selectManyShuttleTag.setValidator(validator);
+    }
+    if (converter != null) {
+      selectManyShuttleTag.setConverter(converter);
+    }
+    if (disabled != null) {
+      selectManyShuttleTag.setDisabled(disabled);
+    }
+    if (focus != null) {
+      selectManyShuttleTag.setFocus(focus);
+    }
+    if (fieldId != null) {
+      selectManyShuttleTag.setId(fieldId);
+    }
+    if (label != null) {
+      selectManyShuttleTag.setLabel(label);
+    }
+    if (unselectedLabel != null) {
+      selectManyShuttleTag.setUnselectedLabel(unselectedLabel);
+    }
+    if (selectedLabel != null) {
+      selectManyShuttleTag.setSelectedLabel(selectedLabel);
+    }
+    if (readonly != null) {
+      selectManyShuttleTag.setReadonly(readonly);
+    }
+    if (required != null) {
+      selectManyShuttleTag.setRequired(required);
+    }
+    if (markup != null) {
+      selectManyShuttleTag.setMarkup(markup);
+    }
+    if (tabIndex != null) {
+      selectManyShuttleTag.setTabIndex(tabIndex);
+    }
+    if (validatorMessage != null) {
+      selectManyShuttleTag.setValidatorMessage(validatorMessage);
+    }
+    if (converterMessage != null) {
+      selectManyShuttleTag.setConverterMessage(converterMessage);
+    }
+    if (requiredMessage != null) {
+      selectManyShuttleTag.setRequiredMessage(requiredMessage);
+    }
+    selectManyShuttleTag.setParent(labelTag);
+    selectManyShuttleTag.setJspId(jspId + PREFIX + idSuffix++);
+    selectManyShuttleTag.doStartTag();
+
+    return super.doStartTag();
+  }
+
+  @Override
+  public int doEndTag() throws JspException {
+    selectManyShuttleTag.doEndTag();
+    labelTag.doEndTag();
+    return super.doEndTag();
+  }
+
+  @Override
+  public void release() {
+    super.release();
+    binding = null;
+    onchange = null;
+    disabled = null;
+    onchange = null;
+    label = null;
+    unselectedLabel = null;
+    selectedLabel = null;
+    labelWidth = null;
+    readonly = null;
+    rendered = null;
+    converter = null;
+    validator = null;
+    required = null;
+    tip = null;
+    value = null;
+    valueChangeListener = null;
+    markup = null;
+    tabIndex = null;
+    selectManyShuttleTag = null;
+    labelTag = null;
+    focus = null;
+    validatorMessage = null;
+    converterMessage = null;
+    requiredMessage = null;
+    fieldId = null;
+  }
+
+  /**
+   * Flag indicating that a value is required.
+   * If the value is an empty string a
+   * ValidationError occurs and a Error Message is rendered.
+   */
+  @TagAttribute
+  @UIComponentTagAttribute(type = "boolean", defaultValue = "false")
+  public void setRequired(javax.el.ValueExpression required) {
+    this.required = required;
+  }
+
+  /**
+   * The current value of this component.
+   */
+  @TagAttribute
+  @UIComponentTagAttribute(type = "java.lang.Object")
+  public void setValue(javax.el.ValueExpression value) {
+    this.value = value;
+  }
+
+  /**
+   * MethodBinding representing a value change listener method
+   * that will be notified when a new value has been set for this input component.
+   * The expression must evaluate to a public method that takes a ValueChangeEvent
+   * parameter, with a return type of void.
+   *
+   * @param valueChangeListener
+   */
+  @TagAttribute
+  @UIComponentTagAttribute(
+      type = {},
+      expression = DynamicExpression.METHOD_BINDING_REQUIRED,
+      methodSignature = "javax.faces.event.ValueChangeEvent")
+  public void setValueChangeListener(javax.el.MethodExpression valueChangeListener) {
+    this.valueChangeListener = valueChangeListener;
+  }
+
+  /**
+   * Flag indicating that this element is disabled.
+   */
+  @TagAttribute()
+  @UIComponentTagAttribute(type = "boolean", defaultValue = "false")
+  public void setDisabled(javax.el.ValueExpression disabled) {
+    this.disabled = disabled;
+  }
+
+  /**
+   * Flag indicating that this component will prohibit changes by the user.
+   */
+  @TagAttribute
+  @UIComponentTagAttribute(type = "boolean", defaultValue = "false")
+  public void setReadonly(javax.el.ValueExpression readonly) {
+    this.readonly = readonly;
+  }
+
+  /**
+   * Clientside script function to add to this component's onchange handler.
+   */
+  @TagAttribute
+  @UIComponentTagAttribute()
+  public void setOnchange(javax.el.ValueExpression onchange) {
+    this.onchange = onchange;
+  }
+
+  /**
+   * Text value to display as label.
+   * If text contains an underscore the next character is used as accesskey.
+   */
+  @TagAttribute
+  @UIComponentTagAttribute()
+  public void setLabel(javax.el.ValueExpression label) {
+    this.label = label;
+  }
+
+  /**
+   * Text value to display as unselected label.
+   */
+  @TagAttribute
+  @UIComponentTagAttribute()
+  public void setUnselectedLabel(javax.el.ValueExpression unselectedLabel) {
+    this.unselectedLabel = unselectedLabel;
+  }
+
+  /**
+   * Text value to display as selected label.
+   */
+  @TagAttribute
+  @UIComponentTagAttribute()
+  public void setSelectedLabel(javax.el.ValueExpression selectedLabel) {
+    this.selectedLabel = selectedLabel;
+  }
+
+  /**
+   * A method binding EL expression,
+   * accepting FacesContext, UIComponent,
+   * and Object parameters, and returning void, that validates
+   * the component's local value.
+   */
+  @TagAttribute
+  @UIComponentTagAttribute(type = {},
+      expression = DynamicExpression.METHOD_BINDING,
+      methodSignature = {"javax.faces.context.FacesContext", "javax.faces.component.UIComponent", "java.lang.Object"})
+  public void setValidator(javax.el.MethodExpression validator) {
+    this.validator = validator;
+  }
+
+  /**
+   * An expression that specifies the Converter for this component.
+   * If the value binding expression is a String,
+   * the String is used as an ID to look up a Converter.
+   * If the value binding expression is a Converter,
+   * uses that instance as the converter.
+   * The value can either be a static value (ID case only)
+   * or an EL expression.
+   */
+  @TagAttribute
+  @UIComponentTagAttribute(type = "javax.faces.convert.Converter",
+      expression = DynamicExpression.VALUE_BINDING)
+  public void setConverter(javax.el.ValueExpression converter) {
+    this.converter = converter;
+  }
+
+  /**
+   * Flag indicating whether or not this component should be rendered
+   * (during Render Response Phase), or processed on any subsequent form submit.
+   */
+  @TagAttribute
+  @UIComponentTagAttribute(type = "boolean", defaultValue = "true")
+  public void setRendered(javax.el.ValueExpression rendered) {
+    this.rendered = rendered;
+  }
+
+  /**
+   * The value binding expression linking this
+   * component to a property in a backing bean.
+   */
+  @TagAttribute
+  @UIComponentTagAttribute(type = "javax.faces.component.UIComponent")
+  public void setBinding(javax.el.ValueExpression binding) {
+    this.binding = binding;
+  }
+
+  /**
+   * Text value to display as tooltip.
+   */
+  @TagAttribute
+  @UIComponentTagAttribute()
+  public void setTip(javax.el.ValueExpression tip) {
+    this.tip = tip;
+  }
+
+  /**
+   * The width for the label component. Default: 'fixed'.
+   * This value is used in the gridLayouts columns attribute.
+   * See gridLayout tag for valid values.
+   */
+  @TagAttribute
+  @UIComponentTagAttribute()
+  public void setLabelWidth(javax.el.ValueExpression labelWidth) {
+    this.labelWidth = labelWidth;
+  }
+
+  /**
+   * Indicate markup of this component.
+   * Possible value is 'none'. But this can be overridden in the theme.
+   */
+  @TagAttribute
+  @UIComponentTagAttribute(defaultValue = "none", type = "java.lang.String[]")
+  public void setMarkup(javax.el.ValueExpression markup) {
+    this.markup = markup;
+  }
+
+  @TagAttribute
+  @UIComponentTagAttribute(type = "java.lang.Integer")
+  public void setTabIndex(javax.el.ValueExpression tabIndex) {
+    this.tabIndex = tabIndex;
+  }
+
+  /**
+   * Flag indicating this component should receive the focus.
+   */
+  @TagAttribute
+  @UIComponentTagAttribute(type = "boolean", defaultValue = "false")
+  public void setFocus(javax.el.ValueExpression focus) {
+    this.focus = focus;
+  }
+
+  /**
+   * An expression that specifies the validator message
+   */
+  @TagAttribute
+  @UIComponentTagAttribute()
+  public void setValidatorMessage(javax.el.ValueExpression validatorMessage) {
+    this.validatorMessage = validatorMessage;
+  }
+
+  /**
+   * An expression that specifies the converter message
+   */
+  @TagAttribute
+  @UIComponentTagAttribute()
+  public void setConverterMessage(javax.el.ValueExpression converterMessage) {
+    this.converterMessage = converterMessage;
+  }
+
+  /**
+   * An expression that specifies the required message
+   */
+  @TagAttribute
+  @UIComponentTagAttribute()
+  public void setRequiredMessage(javax.el.ValueExpression requiredMessage) {
+    this.requiredMessage = requiredMessage;
+  }
+
+  /**
+   * The component identifier for the input field component inside of the container.
+   * This value must be unique within the closest parent component that is a naming container.
+   */
+  @TagAttribute(rtexprvalue = true)
+  @UIComponentTagAttribute
+  public void setFieldId(String fieldId) {
+    this.fieldId = fieldId;
+  }
+
+  /**
+   * The component identifier for this component.
+   * This value must be unique within the closest parent component that is a naming container.
+   * For tx components the id will be set to the container (e. g. the panel).
+   * To set the id of the input field, you have to use the attribute "fieldId".
+   */
+  @TagAttribute(rtexprvalue = true)
+  @UIComponentTagAttribute
+  public void setId(String id) {
+    super.setId(id);
+  }
+}
+

Modified: myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/resources/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/style/style.css
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/resources/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/style/style.css?rev=1184849&r1=1184848&r2=1184849&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/resources/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/style/style.css (original)
+++ myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/resources/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/style/style.css Sun Oct 16 15:31:33 2011
@@ -679,7 +679,7 @@ li.tobago-menu-markup-selected {
 .tobago-selectManyShuttle {
   font-family: arial, helvetica, sans-serif;
   color: #000000;
-  background: #ffffff;
+  background: transparent;
 }
 
 .tobago-selectManyShuttle-markup-readonly {
@@ -694,27 +694,18 @@ li.tobago-menu-markup-selected {
 .tobago-selectManyShuttle-toolBar {
   position:absolute;
   top:50%;
-  margin:-50px 5px;
+  margin:-52px 5px;
   width:50px;
-  height:50px;
+  height:52px;
 }
 
 .tobago-selectManyShuttle-hidden {
   display:none
 }
 
-.tobago-selectManyShuttle-addAll {
-  width:40px;
-}
-
-.tobago-selectManyShuttle-add {
-  width:40px;
-}
-
-.tobago-selectManyShuttle-remove {
-  width:40px;
-}
-
+.tobago-selectManyShuttle-addAll,
+.tobago-selectManyShuttle-add,
+.tobago-selectManyShuttle-remove,
 .tobago-selectManyShuttle-removeAll {
   width:40px;
 }

Modified: myfaces/tobago/trunk/tobago-theme/tobago-theme-speyside/src/main/resources/org/apache/myfaces/tobago/renderkit/html/speyside/standard/style/style.css
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-theme/tobago-theme-speyside/src/main/resources/org/apache/myfaces/tobago/renderkit/html/speyside/standard/style/style.css?rev=1184849&r1=1184848&r2=1184849&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-theme/tobago-theme-speyside/src/main/resources/org/apache/myfaces/tobago/renderkit/html/speyside/standard/style/style.css (original)
+++ myfaces/tobago/trunk/tobago-theme/tobago-theme-speyside/src/main/resources/org/apache/myfaces/tobago/renderkit/html/speyside/standard/style/style.css Sun Oct 16 15:31:33 2011
@@ -374,6 +374,23 @@ li.tobago-menu-markup-selected {
   background-color: #E8E8E8;
 }
 
+/* selectManyShuttle ------------------------------------------------------- */
+
+.tobago-selectManyShuttle {
+  font: 12px arial, helvetica, sans-serif;
+  color: #000000;
+}
+
+.tobago-selectManyShuttle-markup-disabled {
+  background-color: #E8E8E8;
+  color: #808080;
+}
+
+.tobago-selectManyShuttle-markup-readonly {
+  background-color: #E8E8E8;
+}
+
+
 /* selectOneChoice --------------------------------------------------------- */
 
 .tobago-selectOneChoice {