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.AbstractUIFile;
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   <p>
39    Renders a file input field.
40    </p>
41    <p>
42    For content constraints please use <a href="validateFileItem.html">tc:validateFileItem</a>.
43    </p>
44    * UIComponent class, generated from template {@code component.stg} with class
45    * {@link org.apache.myfaces.tobago.internal.taglib.component.FileTagDeclaration}.
46   */
47  public class UIFile
48      extends AbstractUIFile implements Visual {
49  
50    public static final String COMPONENT_TYPE = "org.apache.myfaces.tobago.File";
51  
52    public static final String COMPONENT_FAMILY = "javax.faces.Input";
53  
54  
55    enum PropertyKeys {
56      markup,
57      labelLayout,
58      multiple,
59      focus,
60      tabIndex,
61      label,
62      readonly,
63      accessKey,
64      customClass,
65      disabled,
66      tip,
67      style,
68    }
69  
70    public String getFamily() {
71      return COMPONENT_FAMILY;
72    }
73  
74  
75    public org.apache.myfaces.tobago.context.Markup getMarkup() {
76      Object object = getStateHelper().eval(PropertyKeys.markup);
77      if (object != null) {
78        return Markup.valueOf(object);
79      }
80      return null;
81    }
82  
83    public void setMarkup(org.apache.myfaces.tobago.context.Markup markup) {
84      getStateHelper().put(PropertyKeys.markup, markup);
85    }
86  
87    /**
88    Defines the position of the label relative to the field.
89     The default is flexLeft, if the label is set, or none, if the label isn't set.
90  
91    */
92    public org.apache.myfaces.tobago.component.LabelLayout getLabelLayout() {
93      org.apache.myfaces.tobago.component.LabelLayout labelLayout = (org.apache.myfaces.tobago.component.LabelLayout) getStateHelper().eval(PropertyKeys.labelLayout);
94      if (labelLayout != null) {
95        return labelLayout;
96      }
97      return getLabel() != null ? org.apache.myfaces.tobago.component.LabelLayout.flexLeft : org.apache.myfaces.tobago.component.LabelLayout.none;
98    }
99  
100   public void setLabelLayout(org.apache.myfaces.tobago.component.LabelLayout labelLayout) {
101     getStateHelper().put(PropertyKeys.labelLayout, labelLayout);
102   }
103 
104   public boolean isMultiple() {
105     Boolean bool = (Boolean) getStateHelper().eval(PropertyKeys.multiple);
106     if (bool != null) {
107       return bool;
108     }
109     return false;
110   }
111 
112   public void setMultiple(boolean multiple) {
113     getStateHelper().put(PropertyKeys.multiple, multiple);
114   }
115 
116   /**
117   Flag indicating this component should receive the focus.
118   <br>Default: <code>false</code>
119   */
120   public boolean isFocus() {
121     Boolean bool = (Boolean) getStateHelper().eval(PropertyKeys.focus);
122     if (bool != null) {
123       return bool;
124     }
125     return false;
126   }
127 
128   public void setFocus(boolean focus) {
129     getStateHelper().put(PropertyKeys.focus, focus);
130   }
131 
132   /**
133   Controls the navigation of the focus through the
134    input controls on a page with the Tab-Key.
135    The navigation starts from the element with
136    the lowest tabIndex value to the element with the highest value.
137    Elements that have identical tabIndex values should be navigated
138    in the order they appear in the character stream
139    Elements that are disabled or with a negative tabIndex
140    do not participate in the tabbing order.
141 
142   */
143   public java.lang.Integer getTabIndex() {
144     Number value  = (Number) getStateHelper().eval(PropertyKeys.tabIndex);
145     if (value != null) {
146       return value.intValue();
147     }
148     return null;
149   }
150 
151   public void setTabIndex(java.lang.Integer tabIndex) {
152     getStateHelper().put(PropertyKeys.tabIndex, tabIndex);
153   }
154 
155   /**
156   Text value to display as label.
157    If text contains an underscore the next character is used as accesskey (if configured so and possible).
158 
159   */
160   public java.lang.String getLabel() {
161     return (java.lang.String) getStateHelper().eval(PropertyKeys.label);
162   }
163 
164   public void setLabel(java.lang.String label) {
165     getStateHelper().put(PropertyKeys.label, label);
166   }
167 
168   /**
169   Flag indicating that this component will prohibit changes by the user.
170   <br>Default: <code>false</code>
171   */
172   public boolean isReadonly() {
173     Boolean bool = (Boolean) getStateHelper().eval(PropertyKeys.readonly);
174     if (bool != null) {
175       return bool;
176     }
177     return false;
178   }
179 
180   public void setReadonly(boolean readonly) {
181     getStateHelper().put(PropertyKeys.readonly, readonly);
182   }
183 
184   /**
185   The access key of this control.
186 
187   */
188   public java.lang.Character getAccessKey() {
189     return (java.lang.Character) getStateHelper().eval(PropertyKeys.accessKey);
190   }
191 
192   public void setAccessKey(java.lang.Character accessKey) {
193     getStateHelper().put(PropertyKeys.accessKey, accessKey);
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   Flag indicating that this element is disabled.
223   <br>Default: <code>false</code>
224   */
225   public boolean isDisabled() {
226     Boolean bool = (Boolean) getStateHelper().eval(PropertyKeys.disabled);
227     if (bool != null) {
228       return bool;
229     }
230     return false;
231   }
232 
233   public void setDisabled(boolean disabled) {
234     getStateHelper().put(PropertyKeys.disabled, disabled);
235   }
236 
237   /**
238   Text value to display as tooltip.
239 
240   */
241   public java.lang.String getTip() {
242     return (java.lang.String) getStateHelper().eval(PropertyKeys.tip);
243   }
244 
245   public void setTip(java.lang.String tip) {
246     getStateHelper().put(PropertyKeys.tip, tip);
247   }
248 
249   /**
250   For internal use. Used for rendering, if there is a child tag &lt;tc:style&gt;
251 
252   */
253   public org.apache.myfaces.tobago.renderkit.css.Style getStyle() {
254     return (org.apache.myfaces.tobago.renderkit.css.Style) getStateHelper().eval(PropertyKeys.style);
255   }
256 
257   public void setStyle(org.apache.myfaces.tobago.renderkit.css.Style style) {
258     getStateHelper().put(PropertyKeys.style, style);
259   }
260 
261 
262 }