View Javadoc
1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one
3    * or more contributor license agreements.  See the NOTICE file
4    * distributed with this work for additional information
5    * regarding copyright ownership.  The ASF licenses this file
6    * to you under the Apache License, Version 2.0 (the
7    * "License"); you may not use this file except in compliance
8    * with the License.  You may obtain a copy of the License at
9    *
10   *   http://www.apache.org/licenses/LICENSE-2.0
11   *
12   * Unless required by applicable law or agreed to in writing,
13   * software distributed under the License is distributed on an
14   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   * KIND, either express or implied.  See the License for the
16   * specific language governing permissions and limitations
17   * under the License.
18   */
19  
20  package org.apache.myfaces.tobago.internal.taglib.extension;
21  
22  import org.apache.myfaces.tobago.apt.annotation.DynamicExpression;
23  import org.apache.myfaces.tobago.apt.annotation.ExtensionTag;
24  import org.apache.myfaces.tobago.apt.annotation.Tag;
25  import org.apache.myfaces.tobago.apt.annotation.TagAttribute;
26  import org.apache.myfaces.tobago.apt.annotation.UIComponentTagAttribute;
27  
28  /**
29   * Renders a multi selection option shuttle with a label.
30   *
31   * @deprecated since Tobago 3.0. The tx-library is deprecated, please use the tc-library.
32   */
33  @Tag(name = "selectManyShuttle")
34  @ExtensionTag(
35      baseClassName = "org.apache.myfaces.tobago.internal.taglib.SelectManyShuttleTag",
36      faceletHandler = "org.apache.myfaces.tobago.facelets.extension.SelectManyShuttleExtensionHandler")
37  public interface SelectManyShuttleExtensionTag {
38  
39    /**
40     * Flag indicating that a value is required.
41     * If the value is an empty string a
42     * ValidationError occurs and a Error Message is rendered.
43     */
44    @TagAttribute
45    @UIComponentTagAttribute(type = "boolean", defaultValue = "false")
46    void setRequired(final javax.el.ValueExpression required);
47  
48    /**
49     * The current value of this component.
50     */
51    @TagAttribute
52    @UIComponentTagAttribute(type = "java.lang.Object")
53    void setValue(final javax.el.ValueExpression value);
54  
55    /**
56     * MethodExpression representing a value change listener method
57     * that will be notified when a new value has been set for this input component.
58     * The expression must evaluate to a public method that takes a ValueChangeEvent
59     * parameter, with a return type of void.
60     */
61    @TagAttribute
62    @UIComponentTagAttribute(
63        type = {},
64        expression = DynamicExpression.METHOD_EXPRESSION_REQUIRED,
65        methodSignature = "javax.faces.event.ValueChangeEvent")
66    void setValueChangeListener(final javax.el.MethodExpression valueChangeListener);
67  
68    /**
69     * Flag indicating that this element is disabled.
70     */
71    @TagAttribute()
72    @UIComponentTagAttribute(type = "boolean", defaultValue = "false")
73    void setDisabled(final javax.el.ValueExpression disabled);
74  
75    /**
76     * Flag indicating that this component will prohibit changes by the user.
77     */
78    @TagAttribute
79    @UIComponentTagAttribute(type = "boolean", defaultValue = "false")
80    void setReadonly(final javax.el.ValueExpression readonly);
81  
82    /**
83     * Clientside script function to add to this component's onchange handler.
84     */
85    @TagAttribute
86    @UIComponentTagAttribute()
87    void setOnchange(final javax.el.ValueExpression onchange);
88  
89    /**
90     * Text value to display as label.
91     * If text contains an underscore the next character is used as accesskey.
92     */
93    @TagAttribute
94    @UIComponentTagAttribute()
95    void setLabel(final javax.el.ValueExpression label);
96  
97    /**
98     * Text value to display as unselected label.
99     */
100   @TagAttribute
101   @UIComponentTagAttribute()
102   void setUnselectedLabel(final javax.el.ValueExpression unselectedLabel);
103 
104   /**
105    * Text value to display as selected label.
106    */
107   @TagAttribute
108   @UIComponentTagAttribute()
109   void setSelectedLabel(final javax.el.ValueExpression selectedLabel);
110 
111   /**
112    * A method binding EL expression,
113    * accepting FacesContext, UIComponent,
114    * and Object parameters, and returning void, that validates
115    * the component's local value.
116    */
117   @TagAttribute
118   @UIComponentTagAttribute(type = {},
119       expression = DynamicExpression.METHOD_EXPRESSION,
120       methodSignature = {"javax.faces.context.FacesContext", "javax.faces.component.UIComponent", "java.lang.Object"})
121   void setValidator(final javax.el.MethodExpression validator);
122 
123   /**
124    * An expression that specifies the Converter for this component.
125    * If the value binding expression is a String,
126    * the String is used as an ID to look up a Converter.
127    * If the value binding expression is a Converter,
128    * uses that instance as the converter.
129    * The value can either be a static value (ID case only)
130    * or an EL expression.
131    */
132   @TagAttribute
133   @UIComponentTagAttribute(type = "javax.faces.convert.Converter",
134       expression = DynamicExpression.VALUE_EXPRESSION)
135   void setConverter(final javax.el.ValueExpression converter);
136 
137   /**
138    * Flag indicating whether or not this component should be rendered
139    * (during Render Response Phase), or processed on any subsequent form submit.
140    */
141   @TagAttribute
142   @UIComponentTagAttribute(type = "boolean", defaultValue = "true")
143   void setRendered(final javax.el.ValueExpression rendered);
144 
145   /**
146    * The value binding expression linking this
147    * component to a property in a backing bean.
148    */
149   @TagAttribute
150   @UIComponentTagAttribute(type = "javax.faces.component.UIComponent")
151   void setBinding(final javax.el.ValueExpression binding);
152 
153   /**
154    * Text value to display as tooltip.
155    */
156   @TagAttribute
157   @UIComponentTagAttribute()
158   void setTip(final javax.el.ValueExpression tip);
159 
160   /**
161    * The width for the label component. Default: 'auto'.
162    * This value is used in the gridLayouts columns attribute.
163    * See gridLayout tag for valid values.
164    */
165   @TagAttribute
166   @UIComponentTagAttribute()
167   void setLabelWidth(final javax.el.ValueExpression labelWidth);
168 
169   /**
170    * Indicate markup of this component.
171    * Possible value is 'none'. But this can be overridden in the theme.
172    */
173   @TagAttribute
174   @UIComponentTagAttribute(defaultValue = "none", type = "java.lang.String[]")
175   void setMarkup(final javax.el.ValueExpression markup);
176 
177   @TagAttribute
178   @UIComponentTagAttribute(type = "java.lang.Integer")
179   void setTabIndex(final javax.el.ValueExpression tabIndex);
180 
181   /**
182    * Flag indicating this component should receive the focus.
183    */
184   @TagAttribute
185   @UIComponentTagAttribute(type = "boolean", defaultValue = "false")
186   void setFocus(final javax.el.ValueExpression focus);
187 
188   /**
189    * An expression that specifies the validator message
190    */
191   @TagAttribute
192   @UIComponentTagAttribute()
193   void setValidatorMessage(final javax.el.ValueExpression validatorMessage);
194 
195   /**
196    * An expression that specifies the converter message
197    */
198   @TagAttribute
199   @UIComponentTagAttribute()
200   void setConverterMessage(final javax.el.ValueExpression converterMessage);
201 
202   /**
203    * An expression that specifies the required message
204    */
205   @TagAttribute
206   @UIComponentTagAttribute()
207   void setRequiredMessage(final javax.el.ValueExpression requiredMessage);
208 
209   /**
210    * The component identifier for the input field component inside of the container.
211    * This value must be unique within the closest parent component that is a naming container.
212    */
213   @TagAttribute(rtexprvalue = true)
214   @UIComponentTagAttribute
215   void setFieldId(final String fieldId);
216 
217   /**
218    * The component identifier for this component.
219    * This value must be unique within the closest parent component that is a naming container.
220    * For tx components the id will be set to the container (e. g. the panel).
221    * To set the id of the input field, you have to use the attribute "fieldId".
222    */
223   @TagAttribute(rtexprvalue = true)
224   @UIComponentTagAttribute
225   void setId(final String id);
226 }