KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > cocoon > faces > taglib > html > SelectManyListboxTag


1 /*
2  * Copyright 1999-2004 The Apache Software Foundation.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */

16 package org.apache.cocoon.faces.taglib.html;
17
18 import org.apache.cocoon.faces.FacesUtils;
19 import org.apache.cocoon.faces.taglib.UIComponentTag;
20 import org.apache.commons.lang.BooleanUtils;
21
22 import javax.faces.FacesException;
23 import javax.faces.component.UIComponent;
24 import javax.faces.component.UISelectMany;
25 import javax.faces.context.FacesContext;
26 import javax.faces.el.MethodBinding;
27 import javax.faces.event.ValueChangeEvent;
28
29 /**
30  * @version CVS $Id: SelectManyListboxTag.java 46253 2004-09-17 14:36:29Z vgritsenko $
31  */

32 public class SelectManyListboxTag extends UIComponentTag {
33
34     private String JavaDoc converter;
35     private String JavaDoc immediate;
36     private String JavaDoc required;
37     private String JavaDoc validator;
38     private String JavaDoc value;
39     private String JavaDoc valueChangeListener;
40     private String JavaDoc accesskey;
41     private String JavaDoc dir;
42     private String JavaDoc disabled;
43     private String JavaDoc disabledClass;
44     private String JavaDoc enabledClass;
45     private String JavaDoc lang;
46     private String JavaDoc onblur;
47     private String JavaDoc onchange;
48     private String JavaDoc onclick;
49     private String JavaDoc ondblclick;
50     private String JavaDoc onfocus;
51     private String JavaDoc onkeydown;
52     private String JavaDoc onkeypress;
53     private String JavaDoc onkeyup;
54     private String JavaDoc onmousedown;
55     private String JavaDoc onmousemove;
56     private String JavaDoc onmouseout;
57     private String JavaDoc onmouseover;
58     private String JavaDoc onmouseup;
59     private String JavaDoc onselect;
60     private String JavaDoc readonly;
61     private String JavaDoc size;
62     private String JavaDoc style;
63     private String JavaDoc styleClass;
64     private String JavaDoc tabindex;
65     private String JavaDoc title;
66
67
68     public void setConverter(String JavaDoc converter) {
69         this.converter = converter;
70     }
71
72     public void setImmediate(String JavaDoc immediate) {
73         this.immediate = immediate;
74     }
75
76     public void setRequired(String JavaDoc required) {
77         this.required = required;
78     }
79
80     public void setValidator(String JavaDoc validator) {
81         this.validator = validator;
82     }
83
84     public void setValue(String JavaDoc value) {
85         this.value = value;
86     }
87
88     public void setValueChangeListener(String JavaDoc valueChangeListener) {
89         this.valueChangeListener = valueChangeListener;
90     }
91
92     public void setAccesskey(String JavaDoc accesskey) {
93         this.accesskey = accesskey;
94     }
95
96     public void setDir(String JavaDoc dir) {
97         this.dir = dir;
98     }
99
100     public void setDisabled(String JavaDoc disabled) {
101         this.disabled = disabled;
102     }
103
104     public void setDisabledClass(String JavaDoc disabledClass) {
105         this.disabledClass = disabledClass;
106     }
107
108     public void setEnabledClass(String JavaDoc enabledClass) {
109         this.enabledClass = enabledClass;
110     }
111
112     public void setLang(String JavaDoc lang) {
113         this.lang = lang;
114     }
115
116     public void setOnblur(String JavaDoc onblur) {
117         this.onblur = onblur;
118     }
119
120     public void setOnchange(String JavaDoc onchange) {
121         this.onchange = onchange;
122     }
123
124     public void setOnclick(String JavaDoc onclick) {
125         this.onclick = onclick;
126     }
127
128     public void setOndblclick(String JavaDoc ondblclick) {
129         this.ondblclick = ondblclick;
130     }
131
132     public void setOnfocus(String JavaDoc onfocus) {
133         this.onfocus = onfocus;
134     }
135
136     public void setOnkeydown(String JavaDoc onkeydown) {
137         this.onkeydown = onkeydown;
138     }
139
140     public void setOnkeypress(String JavaDoc onkeypress) {
141         this.onkeypress = onkeypress;
142     }
143
144     public void setOnkeyup(String JavaDoc onkeyup) {
145         this.onkeyup = onkeyup;
146     }
147
148     public void setOnmousedown(String JavaDoc onmousedown) {
149         this.onmousedown = onmousedown;
150     }
151
152     public void setOnmousemove(String JavaDoc onmousemove) {
153         this.onmousemove = onmousemove;
154     }
155
156     public void setOnmouseout(String JavaDoc onmouseout) {
157         this.onmouseout = onmouseout;
158     }
159
160     public void setOnmouseover(String JavaDoc onmouseover) {
161         this.onmouseover = onmouseover;
162     }
163
164     public void setOnmouseup(String JavaDoc onmouseup) {
165         this.onmouseup = onmouseup;
166     }
167
168     public void setOnselect(String JavaDoc onselect) {
169         this.onselect = onselect;
170     }
171
172     public void setReadonly(String JavaDoc readonly) {
173         this.readonly = readonly;
174     }
175
176     public void setSize(String JavaDoc size) {
177         this.size = size;
178     }
179
180     public void setStyle(String JavaDoc style) {
181         this.style = style;
182     }
183
184     public void setStyleClass(String JavaDoc styleClass) {
185         this.styleClass = styleClass;
186     }
187
188     public void setTabindex(String JavaDoc tabindex) {
189         this.tabindex = tabindex;
190     }
191
192     public void setTitle(String JavaDoc title) {
193         this.title = title;
194     }
195
196
197     public String JavaDoc getRendererType() {
198         return "javax.faces.Listbox";
199     }
200
201     public String JavaDoc getComponentType() {
202         return "javax.faces.HtmlSelectManyListbox";
203     }
204
205
206     protected void setProperties(UIComponent component) {
207         super.setProperties(component);
208
209         UISelectMany select;
210         try {
211             select = (UISelectMany) component;
212         } catch (ClassCastException JavaDoc cce) {
213             throw new FacesException("Tag <" + getClass().getName() + "> expected UISelectMany. " +
214                                      "Got <" + component.getClass().getName() + ">");
215         }
216
217         if (converter != null) {
218             if (FacesUtils.isExpression(converter)) {
219                 select.setValueBinding("converter", createValueBinding(converter));
220             } else {
221                 select.setConverter(getApplication().createConverter(converter));
222             }
223         }
224
225         if (immediate != null) {
226             if (FacesUtils.isExpression(immediate)) {
227                 select.setValueBinding("immediate", createValueBinding(immediate));
228             } else {
229                 select.setImmediate(BooleanUtils.toBoolean(immediate));
230             }
231         }
232
233         if (required != null) {
234             if (FacesUtils.isExpression(required)) {
235                 select.setValueBinding("required", createValueBinding(required));
236             } else {
237                 select.setRequired(BooleanUtils.toBoolean(required));
238             }
239         }
240
241         if (validator != null) {
242             if (FacesUtils.isExpression(validator)) {
243                 MethodBinding vb = getApplication().createMethodBinding(validator,
244                                                                         new Class JavaDoc[]{ FacesContext.class, UIComponent.class, Object JavaDoc.class });
245                 select.setValidator(vb);
246             } else {
247                 throw new FacesException("Tag <" + getClass().getName() + "> validator must be an expression. " +
248                                          "Got <" + validator + ">");
249             }
250         }
251
252         if (value != null) {
253             if (FacesUtils.isExpression(value)) {
254                 select.setValueBinding("value", createValueBinding(value));
255             } else {
256                 select.setValue(value);
257             }
258         }
259
260         if (valueChangeListener != null) {
261             if (FacesUtils.isExpression(valueChangeListener)) {
262                 MethodBinding vb = getApplication().createMethodBinding(valueChangeListener,
263                                                                         new Class JavaDoc[]{ ValueChangeEvent.class });
264                 select.setValueChangeListener(vb);
265             } else {
266                 throw new FacesException("Tag <" + getClass().getName() + "> valueChangeListener must be an expression. " +
267                                          "Got <" + valueChangeListener + ">");
268             }
269         }
270
271         setProperty(component, "accesskey", accesskey);
272
273         setProperty(component, "dir", dir);
274
275         setBooleanProperty(component, "disabled", disabled);
276
277         setProperty(component, "disabledClass", disabledClass);
278         setProperty(component, "enabledClass", enabledClass);
279         setProperty(component, "lang", lang);
280         setProperty(component, "onblur", onblur);
281         setProperty(component, "onchange", onchange);
282         setProperty(component, "onclick", onclick);
283         setProperty(component, "ondblclick", ondblclick);
284         setProperty(component, "onfocus", onfocus);
285         setProperty(component, "onkeydown", onkeydown);
286         setProperty(component, "onkeypress", onkeypress);
287         setProperty(component, "onkeyup", onkeyup);
288         setProperty(component, "onmousedown", onmousedown);
289         setProperty(component, "onmousemove", onmousemove);
290         setProperty(component, "onmouseout", onmouseout);
291         setProperty(component, "onmouseover", onmouseover);
292         setProperty(component, "onmouseup", onmouseup);
293         setProperty(component, "onselect", onselect);
294
295         setBooleanProperty(component, "readonly", readonly);
296         setIntegerProperty(component, "size", size);
297
298         setProperty(component, "style", style);
299         setProperty(component, "styleClass", styleClass);
300         setProperty(component, "tabindex", tabindex);
301         setProperty(component, "title", title);
302     }
303
304     public void recycle() {
305         super.recycle();
306         converter = null;
307         immediate = null;
308         required = null;
309         validator = null;
310         value = null;
311         valueChangeListener = null;
312         accesskey = null;
313         dir = null;
314         disabled = null;
315         disabledClass = null;
316         enabledClass = null;
317         lang = null;
318         onblur = null;
319         onchange = null;
320         onclick = null;
321         ondblclick = null;
322         onfocus = null;
323         onkeydown = null;
324         onkeypress = null;
325         onkeyup = null;
326         onmousedown = null;
327         onmousemove = null;
328         onmouseout = null;
329         onmouseover = null;
330         onmouseup = null;
331         onselect = null;
332         readonly = null;
333         size = null;
334         style = null;
335         styleClass = null;
336         tabindex = null;
337         title = null;
338     }
339 }
340
Popular Tags