View Javadoc
1   // ---------- Attention: Generated code, please do not modify! -----------  
2   
3   /*
4    * Licensed to the Apache Software Foundation (ASF) under one or more
5    * contributor license agreements.  See the NOTICE file distributed with
6    * this work for additional information regarding copyright ownership.
7    * The ASF licenses this file to You under the Apache License, Version 2.0
8    * (the "License"); you may not use this file except in compliance with
9    * the License.  You may obtain a copy of the License at
10   *
11   *      http://www.apache.org/licenses/LICENSE-2.0
12   *
13   * Unless required by applicable law or agreed to in writing, software
14   * distributed under the License is distributed on an "AS IS" BASIS,
15   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16   * See the License for the specific language governing permissions and
17   * limitations under the License.
18   */
19  
20  package org.apache.myfaces.tobago.component;
21  
22  import javax.faces.context.FacesContext;
23  import org.apache.myfaces.tobago.context.Markup;
24  import org.apache.myfaces.tobago.internal.component.AbstractUISelectOneListbox;
25  import org.apache.myfaces.tobago.renderkit.css.CustomClass;
26  import org.apache.myfaces.tobago.renderkit.css.Style;
27  import org.apache.myfaces.tobago.internal.util.ArrayUtils;
28  import org.apache.myfaces.tobago.internal.util.StringUtils;
29  import org.apache.myfaces.tobago.internal.util.Deprecation;
30  import javax.el.ELException;
31  import javax.faces.FacesException;
32  import java.util.ArrayList;
33  import java.util.List;
34  import javax.el.MethodExpression;
35  import javax.el.ValueExpression;
36  
37  /** 
38   Render a single selection option listbox.
39    * UIComponent class, generated from template {@code component.stg} with class
40    * {@link org.apache.myfaces.tobago.internal.taglib.component.SelectOneListboxTagDeclaration}.
41   */
42  public class UISelectOneListbox
43      extends AbstractUISelectOneListbox implements Visual {
44  
45    public static final String COMPONENT_TYPE = "org.apache.myfaces.tobago.SelectOneListbox";
46  
47    public static final String COMPONENT_FAMILY = "javax.faces.SelectOne";
48  
49  
50    enum PropertyKeys {
51      markup,
52      labelLayout,
53      focus,
54      tabIndex,
55      label,
56      readonly,
57      size,
58      customClass,
59      style,
60      disabled,
61      tip,
62    }
63  
64    public String getFamily() {
65      return COMPONENT_FAMILY;
66    }
67  
68  
69    public org.apache.myfaces.tobago.context.Markup getMarkup() {
70      Object object = getStateHelper().eval(PropertyKeys.markup);
71      if (object != null) {
72        return Markup.valueOf(object);
73      }
74      return null;
75    }
76  
77    public void setMarkup(org.apache.myfaces.tobago.context.Markup markup) {
78      getStateHelper().put(PropertyKeys.markup, markup);
79    }
80  
81    /**
82    Defines the position of the label relative to the field.
83     The default is flexLeft, if the label is set, or none, if the label isn't set.
84  
85    */
86    public org.apache.myfaces.tobago.component.LabelLayout getLabelLayout() {
87      org.apache.myfaces.tobago.component.LabelLayout labelLayout = (org.apache.myfaces.tobago.component.LabelLayout) getStateHelper().eval(PropertyKeys.labelLayout);
88      if (labelLayout != null) {
89        return labelLayout;
90      }
91      return getLabel() != null ? org.apache.myfaces.tobago.component.LabelLayout.flexLeft : org.apache.myfaces.tobago.component.LabelLayout.none;
92    }
93  
94    public void setLabelLayout(org.apache.myfaces.tobago.component.LabelLayout labelLayout) {
95      getStateHelper().put(PropertyKeys.labelLayout, labelLayout);
96    }
97  
98    /**
99    Flag indicating this component should receive the focus.
100   <br>Default: <code>false</code>
101   */
102   public boolean isFocus() {
103     Boolean bool = (Boolean) getStateHelper().eval(PropertyKeys.focus);
104     if (bool != null) {
105       return bool;
106     }
107     return false;
108   }
109 
110   public void setFocus(boolean focus) {
111     getStateHelper().put(PropertyKeys.focus, focus);
112   }
113 
114   /**
115   Controls the navigation of the focus through the
116    input controls on a page with the Tab-Key.
117    The navigation starts from the element with
118    the lowest tabIndex value to the element with the highest value.
119    Elements that have identical tabIndex values should be navigated
120    in the order they appear in the character stream
121    Elements that are disabled or with a negative tabIndex
122    do not participate in the tabbing order.
123 
124   */
125   public java.lang.Integer getTabIndex() {
126     Number value  = (Number) getStateHelper().eval(PropertyKeys.tabIndex);
127     if (value != null) {
128       return value.intValue();
129     }
130     return null;
131   }
132 
133   public void setTabIndex(java.lang.Integer tabIndex) {
134     getStateHelper().put(PropertyKeys.tabIndex, tabIndex);
135   }
136 
137   /**
138   Text value to display as label.
139    If text contains an underscore the next character is used as accesskey (if configured so and possible).
140 
141   */
142   public java.lang.String getLabel() {
143     return (java.lang.String) getStateHelper().eval(PropertyKeys.label);
144   }
145 
146   public void setLabel(java.lang.String label) {
147     getStateHelper().put(PropertyKeys.label, label);
148   }
149 
150   /**
151   Flag indicating that this component will prohibit changes by the user.
152   <br>Default: <code>false</code>
153   */
154   public boolean isReadonly() {
155     Boolean bool = (Boolean) getStateHelper().eval(PropertyKeys.readonly);
156     if (bool != null) {
157       return bool;
158     }
159     return false;
160   }
161 
162   public void setReadonly(boolean readonly) {
163     getStateHelper().put(PropertyKeys.readonly, readonly);
164   }
165 
166   /**
167   The number of the shown rows in the element. E. g. the size attribute of the select element in HTML.
168 
169   */
170   public java.lang.Integer getSize() {
171     Number value  = (Number) getStateHelper().eval(PropertyKeys.size);
172     if (value != null) {
173       return value.intValue();
174     }
175     return null;
176   }
177 
178   public void setSize(java.lang.Integer size) {
179     getStateHelper().put(PropertyKeys.size, size);
180   }
181 
182   /**
183   Sets a CSS class in its parent, if the parent supports it.
184 
185    Which this feature it is possible to put a CSS class name into a component with the &lt;tc:style&gt; tag. Example:
186 
187    <pre>
188    &lt;tc:in&gt;
189      &lt;tc:style customClass="my-emphasized"/&gt;
190    &lt;/tc:in&gt;
191    </pre>
192 
193    One capability is, to used external CSS libs.
194    <br>
195    This feature should not be used imprudent.
196    Because it might be unstable against changes in the renderered HTML code.
197 
198   */
199   public org.apache.myfaces.tobago.renderkit.css.CustomClass getCustomClass() {
200     return (org.apache.myfaces.tobago.renderkit.css.CustomClass) getStateHelper().eval(PropertyKeys.customClass);
201   }
202 
203   public void setCustomClass(org.apache.myfaces.tobago.renderkit.css.CustomClass customClass) {
204     getStateHelper().put(PropertyKeys.customClass, customClass);
205   }
206 
207   /**
208   For internal use. Used for rendering, if there is a child tag &lt;tc:style&gt;
209 
210   */
211   public org.apache.myfaces.tobago.renderkit.css.Style getStyle() {
212     return (org.apache.myfaces.tobago.renderkit.css.Style) getStateHelper().eval(PropertyKeys.style);
213   }
214 
215   public void setStyle(org.apache.myfaces.tobago.renderkit.css.Style style) {
216     getStateHelper().put(PropertyKeys.style, style);
217   }
218 
219   /**
220   Flag indicating that this element is disabled.
221   <br>Default: <code>false</code>
222   */
223   public boolean isDisabled() {
224     Boolean bool = (Boolean) getStateHelper().eval(PropertyKeys.disabled);
225     if (bool != null) {
226       return bool;
227     }
228     return false;
229   }
230 
231   public void setDisabled(boolean disabled) {
232     getStateHelper().put(PropertyKeys.disabled, disabled);
233   }
234 
235   /**
236   Text value to display as tooltip.
237 
238   */
239   public java.lang.String getTip() {
240     return (java.lang.String) getStateHelper().eval(PropertyKeys.tip);
241   }
242 
243   public void setTip(java.lang.String tip) {
244     getStateHelper().put(PropertyKeys.tip, tip);
245   }
246 
247 
248 }