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.AbstractUISelectOneRadio;
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.Arrays;
33  import java.util.ArrayList;
34  import java.util.Collection;
35  import java.util.List;
36  import javax.el.MethodExpression;
37  import javax.el.ValueExpression;
38  
39  /** 
40   Render a set of radio buttons.
41    * UIComponent class, generated from template {@code component.stg} with class
42    * {@link org.apache.myfaces.tobago.internal.taglib.component.SelectOneRadioTagDeclaration}.
43   */
44  public class UISelectOneRadio
45      extends AbstractUISelectOneRadio implements Visual {
46  
47    public static final String COMPONENT_TYPE = "org.apache.myfaces.tobago.SelectOneRadio";
48  
49    public static final String COMPONENT_FAMILY = "javax.faces.SelectOne";
50  
51    private static final Collection<String> EVENT_NAMES = Arrays.asList("change", "click", "dblclick", "focus", "blur");
52  
53    @Override
54    public Collection<String> getEventNames() {
55      return EVENT_NAMES;
56    }
57  
58    @Override
59    public String getDefaultEventName() {
60      return "change";
61    }
62  
63  
64    enum PropertyKeys {
65      markup,
66      labelLayout,
67      focus,
68      tabIndex,
69      label,
70      readonly,
71      inline,
72      customClass,
73      style,
74      disabled,
75      tip,
76      renderRange,
77    }
78  
79    public String getFamily() {
80      return COMPONENT_FAMILY;
81    }
82  
83  
84    public org.apache.myfaces.tobago.context.Markup getMarkup() {
85      Object object = getStateHelper().eval(PropertyKeys.markup);
86      if (object != null) {
87        return Markup.valueOf(object);
88      }
89      return null;
90    }
91  
92    public void setMarkup(org.apache.myfaces.tobago.context.Markup markup) {
93      getStateHelper().put(PropertyKeys.markup, markup);
94    }
95  
96    /**
97    Defines the position of the label relative to the field.
98     The default is flexLeft, if the label is set, or none, if the label isn't set.
99  
100   */
101   public org.apache.myfaces.tobago.component.LabelLayout getLabelLayout() {
102     org.apache.myfaces.tobago.component.LabelLayout labelLayout = (org.apache.myfaces.tobago.component.LabelLayout) getStateHelper().eval(PropertyKeys.labelLayout);
103     if (labelLayout != null) {
104       return labelLayout;
105     }
106     return getLabel() != null ? org.apache.myfaces.tobago.component.LabelLayout.flexLeft : org.apache.myfaces.tobago.component.LabelLayout.none;
107   }
108 
109   public void setLabelLayout(org.apache.myfaces.tobago.component.LabelLayout labelLayout) {
110     getStateHelper().put(PropertyKeys.labelLayout, labelLayout);
111   }
112 
113   /**
114   Flag indicating this component should receive the focus.
115   <br>Default: <code>false</code>
116   */
117   public boolean isFocus() {
118     Boolean bool = (Boolean) getStateHelper().eval(PropertyKeys.focus);
119     if (bool != null) {
120       return bool;
121     }
122     return false;
123   }
124 
125   public void setFocus(boolean focus) {
126     getStateHelper().put(PropertyKeys.focus, focus);
127   }
128 
129   /**
130   Controls the navigation of the focus through the
131    input controls on a page with the Tab-Key.
132    The navigation starts from the element with
133    the lowest tabIndex value to the element with the highest value.
134    Elements that have identical tabIndex values should be navigated
135    in the order they appear in the character stream
136    Elements that are disabled or with a negative tabIndex
137    do not participate in the tabbing order.
138 
139   */
140   public java.lang.Integer getTabIndex() {
141     Number value  = (Number) getStateHelper().eval(PropertyKeys.tabIndex);
142     if (value != null) {
143       return value.intValue();
144     }
145     return null;
146   }
147 
148   public void setTabIndex(java.lang.Integer tabIndex) {
149     getStateHelper().put(PropertyKeys.tabIndex, tabIndex);
150   }
151 
152   /**
153   A localized user presentable label for this component.
154 
155   */
156   public java.lang.String getLabel() {
157     return (java.lang.String) getStateHelper().eval(PropertyKeys.label);
158   }
159 
160   public void setLabel(java.lang.String label) {
161     getStateHelper().put(PropertyKeys.label, label);
162   }
163 
164   /**
165   Flag indicating that this component will prohibit changes by the user.
166   <br>Default: <code>false</code>
167   */
168   public boolean isReadonly() {
169     Boolean bool = (Boolean) getStateHelper().eval(PropertyKeys.readonly);
170     if (bool != null) {
171       return bool;
172     }
173     return false;
174   }
175 
176   public void setReadonly(boolean readonly) {
177     getStateHelper().put(PropertyKeys.readonly, readonly);
178   }
179 
180   /**
181   Flag indicating this component should rendered as an inline element.
182   <br>Default: <code>false</code>
183   */
184   public boolean isInline() {
185     Boolean bool = (Boolean) getStateHelper().eval(PropertyKeys.inline);
186     if (bool != null) {
187       return bool;
188     }
189     return false;
190   }
191 
192   public void setInline(boolean inline) {
193     getStateHelper().put(PropertyKeys.inline, inline);
194   }
195 
196   /**
197   Sets a CSS class in its parent, if the parent supports it.
198 
199    Which this feature it is possible to put a CSS class name into a component with the &lt;tc:style&gt; tag. Example:
200 
201    <pre>
202    &lt;tc:in&gt;
203      &lt;tc:style customClass="my-emphasized"/&gt;
204    &lt;/tc:in&gt;
205    </pre>
206 
207    One capability is, to used external CSS libs.
208    <br>
209    This feature should not be used imprudent.
210    Because it might be unstable against changes in the renderered HTML code.
211 
212   */
213   public org.apache.myfaces.tobago.renderkit.css.CustomClass getCustomClass() {
214     return (org.apache.myfaces.tobago.renderkit.css.CustomClass) getStateHelper().eval(PropertyKeys.customClass);
215   }
216 
217   public void setCustomClass(org.apache.myfaces.tobago.renderkit.css.CustomClass customClass) {
218     getStateHelper().put(PropertyKeys.customClass, customClass);
219   }
220 
221   /**
222   For internal use. Used for rendering, if there is a child tag &lt;tc:style&gt;
223 
224   */
225   public org.apache.myfaces.tobago.renderkit.css.Style getStyle() {
226     return (org.apache.myfaces.tobago.renderkit.css.Style) getStateHelper().eval(PropertyKeys.style);
227   }
228 
229   public void setStyle(org.apache.myfaces.tobago.renderkit.css.Style style) {
230     getStateHelper().put(PropertyKeys.style, style);
231   }
232 
233   /**
234   Flag indicating that this element is disabled.
235   <br>Default: <code>false</code>
236   */
237   public boolean isDisabled() {
238     Boolean bool = (Boolean) getStateHelper().eval(PropertyKeys.disabled);
239     if (bool != null) {
240       return bool;
241     }
242     return false;
243   }
244 
245   public void setDisabled(boolean disabled) {
246     getStateHelper().put(PropertyKeys.disabled, disabled);
247   }
248 
249   /**
250   Text value to display as tooltip.
251 
252   */
253   public java.lang.String getTip() {
254     return (java.lang.String) getStateHelper().eval(PropertyKeys.tip);
255   }
256 
257   public void setTip(java.lang.String tip) {
258     getStateHelper().put(PropertyKeys.tip, tip);
259   }
260 
261   /**
262   Range of items to render.
263 
264   */
265   public java.lang.String getRenderRange() {
266     return (java.lang.String) getStateHelper().eval(PropertyKeys.renderRange);
267   }
268 
269   public void setRenderRange(java.lang.String renderRange) {
270     getStateHelper().put(PropertyKeys.renderRange, renderRange);
271   }
272 
273 
274 }