1 // WARNING: This file was automatically generated. Do not edit it directly,
2 // or you will lose your changes.
3
4 /*
5 * Licensed to the Apache Software Foundation (ASF) under one
6 * or more contributor license agreements. See the NOTICE file
7 * distributed with this work for additional information
8 * regarding copyright ownership. The ASF licenses this file
9 * to you under the Apache License, Version 2.0 (the
10 * "License"); you may not use this file except in compliance
11 * with the License. You may obtain a copy of the License at
12 *
13 * http://www.apache.org/licenses/LICENSE-2.0
14 *
15 * Unless required by applicable law or agreed to in writing,
16 * software distributed under the License is distributed on an
17 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
18 * KIND, either express or implied. See the License for the
19 * specific language governing permissions and limitations
20 * under the License.
21 */
22 package org.apache.myfaces.trinidad.component.core.input;
23
24 import javax.faces.component.UIComponent;
25 import org.apache.myfaces.trinidad.bean.FacesBean;
26 import org.apache.myfaces.trinidad.bean.PropertyKey;
27 import org.apache.myfaces.trinidad.component.UIXSelectMany;
28 import org.apache.myfaces.trinidad.util.ComponentUtils;
29
30 /**
31 *
32 * <html>The UIXSelectManyListbox component creates a component which allows
33 * the user to select many values from a list of items.
34 * It can contain any number of
35 * <f:selectItem>, <f:selectItems>, or
36 * <tr:selectItem> components, each of which
37 * represents an available option that the user may select.</html>
38 *
39 * <h4>Events:</h4>
40 * <table border="1" width="100%" cellpadding="3" summary="">
41 * <tr bgcolor="#CCCCFF" class="TableHeadingColor">
42 * <th align="left">Type</th>
43 * <th align="left">Phases</th>
44 * <th align="left">Description</th>
45 * </tr>
46 * <tr class="TableRowColor">
47 * <td valign="top"><code>javax.faces.event.ValueChangeEvent</code></td>
48 * <td valign="top" nowrap>Process Validations<br>Apply Request Values</td>
49 * <td valign="top">The valueChange event is delivered when the value
50 attribute is changed.</td>
51 * </tr>
52 * <tr class="TableRowColor">
53 * <td valign="top"><code>org.apache.myfaces.trinidad.event.AttributeChangeEvent</code></td>
54 * <td valign="top" nowrap>Invoke Application<br>Apply Request Values</td>
55 * <td valign="top">Event delivered to describe an attribute change. Attribute change events are not delivered for any programmatic change to a property. They are only delivered when a renderer changes a property without the application's specific request. An example of an attribute change events might include the width of a column that supported client-side resizing.</td>
56 * </tr>
57 * </table>
58 */
59 public class CoreSelectManyListbox extends UIXSelectMany
60 {
61 static public final FacesBean.Type TYPE = new FacesBean.Type(
62 UIXSelectMany.TYPE);
63 static public final PropertyKey CONTENT_STYLE_KEY =
64 TYPE.registerKey("contentStyle", String.class);
65 static public final PropertyKey SIZE_KEY =
66 TYPE.registerKey("size", Integer.class);
67 static public final PropertyKey VALUE_PASS_THRU_KEY =
68 TYPE.registerKey("valuePassThru", Boolean.class, Boolean.FALSE);
69 static public final PropertyKey READ_ONLY_KEY =
70 TYPE.registerKey("readOnly", Boolean.class, Boolean.FALSE);
71 static public final PropertyKey DISABLED_KEY =
72 TYPE.registerKey("disabled", Boolean.class, Boolean.FALSE);
73 static public final PropertyKey LABEL_KEY =
74 TYPE.registerKey("label", String.class);
75 static public final PropertyKey SIMPLE_KEY =
76 TYPE.registerKey("simple", Boolean.class, Boolean.FALSE);
77 static public final PropertyKey ONCHANGE_KEY =
78 TYPE.registerKey("onchange", String.class);
79 static public final PropertyKey INLINE_STYLE_KEY =
80 TYPE.registerKey("inlineStyle", String.class);
81 static public final PropertyKey STYLE_CLASS_KEY =
82 TYPE.registerKey("styleClass", String.class);
83 static public final PropertyKey SHORT_DESC_KEY =
84 TYPE.registerKey("shortDesc", String.class);
85 static public final PropertyKey PARTIAL_TRIGGERS_KEY =
86 TYPE.registerKey("partialTriggers", String[].class);
87 static public final PropertyKey ONCLICK_KEY =
88 TYPE.registerKey("onclick", String.class);
89 static public final PropertyKey ONDBLCLICK_KEY =
90 TYPE.registerKey("ondblclick", String.class);
91 static public final PropertyKey ONMOUSEDOWN_KEY =
92 TYPE.registerKey("onmousedown", String.class);
93 static public final PropertyKey ONMOUSEUP_KEY =
94 TYPE.registerKey("onmouseup", String.class);
95 static public final PropertyKey ONMOUSEOVER_KEY =
96 TYPE.registerKey("onmouseover", String.class);
97 static public final PropertyKey ONMOUSEMOVE_KEY =
98 TYPE.registerKey("onmousemove", String.class);
99 static public final PropertyKey ONMOUSEOUT_KEY =
100 TYPE.registerKey("onmouseout", String.class);
101 static public final PropertyKey ONKEYPRESS_KEY =
102 TYPE.registerKey("onkeypress", String.class);
103 static public final PropertyKey ONKEYDOWN_KEY =
104 TYPE.registerKey("onkeydown", String.class);
105 static public final PropertyKey ONKEYUP_KEY =
106 TYPE.registerKey("onkeyup", String.class);
107 static public final PropertyKey ONBLUR_KEY =
108 TYPE.registerKey("onblur", String.class);
109 static public final PropertyKey ONFOCUS_KEY =
110 TYPE.registerKey("onfocus", String.class);
111 static public final PropertyKey SHOW_REQUIRED_KEY =
112 TYPE.registerKey("showRequired", Boolean.class, Boolean.FALSE);
113 static public final PropertyKey ACCESS_KEY_KEY =
114 TYPE.registerKey("accessKey", Character.class);
115 static public final PropertyKey AUTO_SUBMIT_KEY =
116 TYPE.registerKey("autoSubmit", Boolean.class, Boolean.FALSE);
117 static public final String HELP_FACET = "help";
118
119 static public final String COMPONENT_FAMILY =
120 "org.apache.myfaces.trinidad.SelectMany";
121 static public final String COMPONENT_TYPE =
122 "org.apache.myfaces.trinidad.CoreSelectManyListbox";
123
124 /**
125 * Construct an instance of the CoreSelectManyListbox.
126 */
127 public CoreSelectManyListbox()
128 {
129 super("org.apache.myfaces.trinidad.Listbox");
130 }
131
132 /**
133 * This facet should contain field level help.
134 */
135 final public UIComponent getHelp()
136 {
137 return getFacet(HELP_FACET);
138 }
139
140 /**
141 * This facet should contain field level help.
142 */
143 @SuppressWarnings("unchecked")
144 final public void setHelp(UIComponent helpFacet)
145 {
146 getFacets().put(HELP_FACET, helpFacet);
147 }
148
149 /**
150 * Gets the CSS styles to attach to the content of the component. For example, you can set the width of that portion to 100 pixels by setting this attribute to "width: 100px".
151 *
152 * @return the new contentStyle value
153 */
154 final public String getContentStyle()
155 {
156 return ComponentUtils.resolveString(getProperty(CONTENT_STYLE_KEY));
157 }
158
159 /**
160 * Sets the CSS styles to attach to the content of the component. For example, you can set the width of that portion to 100 pixels by setting this attribute to "width: 100px".
161 *
162 * @param contentStyle the new contentStyle value
163 */
164 final public void setContentStyle(String contentStyle)
165 {
166 setProperty(CONTENT_STYLE_KEY, (contentStyle));
167 }
168
169 /**
170 * Gets how many items should be visible. Small values may be overridden if the platform cannot render a list of that size correctly.
171 *
172 * @return the new size value
173 */
174 final public int getSize()
175 {
176 return ComponentUtils.resolveInteger(getProperty(SIZE_KEY));
177 }
178
179 /**
180 * Sets how many items should be visible. Small values may be overridden if the platform cannot render a list of that size correctly.
181 *
182 * @param size the new size value
183 */
184 final public void setSize(int size)
185 {
186 setProperty(SIZE_KEY, Integer.valueOf(size));
187 }
188
189 /**
190 * Gets whether or not the values are passed through to
191 * the client. When valuePassThru is false
192 * the value and the options' values
193 * are converted to indexes before being sent to the client.
194 * Therefore, when valuePassThru is false,
195 * there is no need to write your own converter when you are using custom Objects
196 * as your values and/or options.
197 * If you need to know the actual values on the client-side, then you can set
198 * valuePassThru to true. This will pass the values through to the client,
199 * using your custom converter if it is available; a custom converter is
200 * needed if you are using custom objects. The default is false.
201 *
202 * @return the new valuePassThru value
203 */
204 final public boolean isValuePassThru()
205 {
206 return ComponentUtils.resolveBoolean(getProperty(VALUE_PASS_THRU_KEY), false);
207 }
208
209 /**
210 * Sets whether or not the values are passed through to
211 * the client. When valuePassThru is false
212 * the value and the options' values
213 * are converted to indexes before being sent to the client.
214 * Therefore, when valuePassThru is false,
215 * there is no need to write your own converter when you are using custom Objects
216 * as your values and/or options.
217 * If you need to know the actual values on the client-side, then you can set
218 * valuePassThru to true. This will pass the values through to the client,
219 * using your custom converter if it is available; a custom converter is
220 * needed if you are using custom objects. The default is false.
221 *
222 * @param valuePassThru the new valuePassThru value
223 */
224 final public void setValuePassThru(boolean valuePassThru)
225 {
226 setProperty(VALUE_PASS_THRU_KEY, valuePassThru ? Boolean.TRUE : Boolean.FALSE);
227 }
228
229 /**
230 * Gets whether the element is read-only.
231 *
232 * @return the new readOnly value
233 */
234 final public boolean isReadOnly()
235 {
236 return ComponentUtils.resolveBoolean(getProperty(READ_ONLY_KEY), false);
237 }
238
239 /**
240 * Sets whether the element is read-only.
241 *
242 * @param readOnly the new readOnly value
243 */
244 final public void setReadOnly(boolean readOnly)
245 {
246 setProperty(READ_ONLY_KEY, readOnly ? Boolean.TRUE : Boolean.FALSE);
247 }
248
249 /**
250 * Gets whether the element is disabled.
251 *
252 * @return the new disabled value
253 */
254 final public boolean isDisabled()
255 {
256 return ComponentUtils.resolveBoolean(getProperty(DISABLED_KEY), false);
257 }
258
259 /**
260 * Sets whether the element is disabled.
261 *
262 * @param disabled the new disabled value
263 */
264 final public void setDisabled(boolean disabled)
265 {
266 setProperty(DISABLED_KEY, disabled ? Boolean.TRUE : Boolean.FALSE);
267 }
268
269 /**
270 * Gets the label of the bean.
271 *
272 * @return the new label value
273 */
274 final public String getLabel()
275 {
276 return ComponentUtils.resolveString(getProperty(LABEL_KEY));
277 }
278
279 /**
280 * Sets the label of the bean.
281 *
282 * @param label the new label value
283 */
284 final public void setLabel(String label)
285 {
286 setProperty(LABEL_KEY, (label));
287 }
288
289 /**
290 * Gets a boolean value that controls whether the component
291 * provides label and message support; when set to "true", the component will
292 * not display messaging support or the label (these attributes may be ignored: label,
293 * labelAndAccessKey, accessKey, showRequired,
294 * tip), and may use simpler layout primitives
295 *
296 * @return the new simple value
297 */
298 final public boolean isSimple()
299 {
300 return ComponentUtils.resolveBoolean(getProperty(SIMPLE_KEY), false);
301 }
302
303 /**
304 * Sets a boolean value that controls whether the component
305 * provides label and message support; when set to "true", the component will
306 * not display messaging support or the label (these attributes may be ignored: label,
307 * labelAndAccessKey, accessKey, showRequired,
308 * tip), and may use simpler layout primitives
309 *
310 * @param simple the new simple value
311 */
312 final public void setSimple(boolean simple)
313 {
314 setProperty(SIMPLE_KEY, simple ? Boolean.TRUE : Boolean.FALSE);
315 }
316
317 /**
318 * Gets event handler for when the value is changed.
319 *
320 * @return the new onchange value
321 */
322 final public String getOnchange()
323 {
324 return ComponentUtils.resolveString(getProperty(ONCHANGE_KEY));
325 }
326
327 /**
328 * Sets event handler for when the value is changed.
329 *
330 * @param onchange the new onchange value
331 */
332 final public void setOnchange(String onchange)
333 {
334 setProperty(ONCHANGE_KEY, (onchange));
335 }
336
337 /**
338 * Gets the CSS styles to use for this component.
339 *
340 * @return the new inlineStyle value
341 */
342 final public String getInlineStyle()
343 {
344 return ComponentUtils.resolveString(getProperty(INLINE_STYLE_KEY));
345 }
346
347 /**
348 * Sets the CSS styles to use for this component.
349 *
350 * @param inlineStyle the new inlineStyle value
351 */
352 final public void setInlineStyle(String inlineStyle)
353 {
354 setProperty(INLINE_STYLE_KEY, (inlineStyle));
355 }
356
357 /**
358 * Gets a CSS style class to use for this component.
359 *
360 * @return the new styleClass value
361 */
362 final public String getStyleClass()
363 {
364 return ComponentUtils.resolveString(getProperty(STYLE_CLASS_KEY));
365 }
366
367 /**
368 * Sets a CSS style class to use for this component.
369 *
370 * @param styleClass the new styleClass value
371 */
372 final public void setStyleClass(String styleClass)
373 {
374 setProperty(STYLE_CLASS_KEY, (styleClass));
375 }
376
377 /**
378 * Gets The short description of the component. This text is commonly used by user agents to display tooltip help text.
379 *
380 * @return the new shortDesc value
381 */
382 final public String getShortDesc()
383 {
384 return ComponentUtils.resolveString(getProperty(SHORT_DESC_KEY));
385 }
386
387 /**
388 * Sets The short description of the component. This text is commonly used by user agents to display tooltip help text.
389 *
390 * @param shortDesc the new shortDesc value
391 */
392 final public void setShortDesc(String shortDesc)
393 {
394 setProperty(SHORT_DESC_KEY, (shortDesc));
395 }
396
397 /**
398 * Gets the IDs of the components that should trigger a partial update.
399 * <p>
400 * This component will listen on the trigger components. If one of the
401 * trigger components receives an event that will cause it to update
402 * in some way, this component will request to be updated too.</p>
403 * <p>
404 * Separate multiple triggers with a space. e.g., partialTriggers="cmp1 cmp2"
405 * </p>
406 * <p>
407 * Identifiers must account for NamingContainers. You can use a single colon to start the search from the root,
408 * or use multiple colons to move up through the NamingContainer. For example,
409 * "::" will pop out of this component's naming container (it pops out of itself if it is a naming container),
410 * ":::" will pop out of two naming containers, etc. The search for
411 * the partialTrigger begins from there. e.g., partialTriggers=":::commandButton1" the search begins for the
412 * component with id = commandButton1 after popping out of two naming containers relative to this component.
413 * To go into naming containers, you separate the naming containers with ':', e.g.,partialTriggers= "nc1:nc2:nc3:componentId".</p>
414 *
415 * @return the new partialTriggers value
416 */
417 final public String[] getPartialTriggers()
418 {
419 return (String[])getProperty(PARTIAL_TRIGGERS_KEY);
420 }
421
422 /**
423 * Sets the IDs of the components that should trigger a partial update.
424 * <p>
425 * This component will listen on the trigger components. If one of the
426 * trigger components receives an event that will cause it to update
427 * in some way, this component will request to be updated too.</p>
428 * <p>
429 * Separate multiple triggers with a space. e.g., partialTriggers="cmp1 cmp2"
430 * </p>
431 * <p>
432 * Identifiers must account for NamingContainers. You can use a single colon to start the search from the root,
433 * or use multiple colons to move up through the NamingContainer. For example,
434 * "::" will pop out of this component's naming container (it pops out of itself if it is a naming container),
435 * ":::" will pop out of two naming containers, etc. The search for
436 * the partialTrigger begins from there. e.g., partialTriggers=":::commandButton1" the search begins for the
437 * component with id = commandButton1 after popping out of two naming containers relative to this component.
438 * To go into naming containers, you separate the naming containers with ':', e.g.,partialTriggers= "nc1:nc2:nc3:componentId".</p>
439 *
440 * @param partialTriggers the new partialTriggers value
441 */
442 final public void setPartialTriggers(String[] partialTriggers)
443 {
444 setProperty(PARTIAL_TRIGGERS_KEY, (partialTriggers));
445 }
446
447 /**
448 * Gets an onclick Javascript handler.
449 *
450 * @return the new onclick value
451 */
452 final public String getOnclick()
453 {
454 return ComponentUtils.resolveString(getProperty(ONCLICK_KEY));
455 }
456
457 /**
458 * Sets an onclick Javascript handler.
459 *
460 * @param onclick the new onclick value
461 */
462 final public void setOnclick(String onclick)
463 {
464 setProperty(ONCLICK_KEY, (onclick));
465 }
466
467 /**
468 * Gets an ondblclick Javascript handler.
469 *
470 * @return the new ondblclick value
471 */
472 final public String getOndblclick()
473 {
474 return ComponentUtils.resolveString(getProperty(ONDBLCLICK_KEY));
475 }
476
477 /**
478 * Sets an ondblclick Javascript handler.
479 *
480 * @param ondblclick the new ondblclick value
481 */
482 final public void setOndblclick(String ondblclick)
483 {
484 setProperty(ONDBLCLICK_KEY, (ondblclick));
485 }
486
487 /**
488 * Gets an onmousedown Javascript handler.
489 *
490 * @return the new onmousedown value
491 */
492 final public String getOnmousedown()
493 {
494 return ComponentUtils.resolveString(getProperty(ONMOUSEDOWN_KEY));
495 }
496
497 /**
498 * Sets an onmousedown Javascript handler.
499 *
500 * @param onmousedown the new onmousedown value
501 */
502 final public void setOnmousedown(String onmousedown)
503 {
504 setProperty(ONMOUSEDOWN_KEY, (onmousedown));
505 }
506
507 /**
508 * Gets an onmouseup Javascript handler.
509 *
510 * @return the new onmouseup value
511 */
512 final public String getOnmouseup()
513 {
514 return ComponentUtils.resolveString(getProperty(ONMOUSEUP_KEY));
515 }
516
517 /**
518 * Sets an onmouseup Javascript handler.
519 *
520 * @param onmouseup the new onmouseup value
521 */
522 final public void setOnmouseup(String onmouseup)
523 {
524 setProperty(ONMOUSEUP_KEY, (onmouseup));
525 }
526
527 /**
528 * Gets an onmouseover Javascript handler.
529 *
530 * @return the new onmouseover value
531 */
532 final public String getOnmouseover()
533 {
534 return ComponentUtils.resolveString(getProperty(ONMOUSEOVER_KEY));
535 }
536
537 /**
538 * Sets an onmouseover Javascript handler.
539 *
540 * @param onmouseover the new onmouseover value
541 */
542 final public void setOnmouseover(String onmouseover)
543 {
544 setProperty(ONMOUSEOVER_KEY, (onmouseover));
545 }
546
547 /**
548 * Gets an onmousemove Javascript handler.
549 *
550 * @return the new onmousemove value
551 */
552 final public String getOnmousemove()
553 {
554 return ComponentUtils.resolveString(getProperty(ONMOUSEMOVE_KEY));
555 }
556
557 /**
558 * Sets an onmousemove Javascript handler.
559 *
560 * @param onmousemove the new onmousemove value
561 */
562 final public void setOnmousemove(String onmousemove)
563 {
564 setProperty(ONMOUSEMOVE_KEY, (onmousemove));
565 }
566
567 /**
568 * Gets an onmouseout Javascript handler.
569 *
570 * @return the new onmouseout value
571 */
572 final public String getOnmouseout()
573 {
574 return ComponentUtils.resolveString(getProperty(ONMOUSEOUT_KEY));
575 }
576
577 /**
578 * Sets an onmouseout Javascript handler.
579 *
580 * @param onmouseout the new onmouseout value
581 */
582 final public void setOnmouseout(String onmouseout)
583 {
584 setProperty(ONMOUSEOUT_KEY, (onmouseout));
585 }
586
587 /**
588 * Gets an onkeypress Javascript handler.
589 *
590 * @return the new onkeypress value
591 */
592 final public String getOnkeypress()
593 {
594 return ComponentUtils.resolveString(getProperty(ONKEYPRESS_KEY));
595 }
596
597 /**
598 * Sets an onkeypress Javascript handler.
599 *
600 * @param onkeypress the new onkeypress value
601 */
602 final public void setOnkeypress(String onkeypress)
603 {
604 setProperty(ONKEYPRESS_KEY, (onkeypress));
605 }
606
607 /**
608 * Gets an onkeydown Javascript handler.
609 *
610 * @return the new onkeydown value
611 */
612 final public String getOnkeydown()
613 {
614 return ComponentUtils.resolveString(getProperty(ONKEYDOWN_KEY));
615 }
616
617 /**
618 * Sets an onkeydown Javascript handler.
619 *
620 * @param onkeydown the new onkeydown value
621 */
622 final public void setOnkeydown(String onkeydown)
623 {
624 setProperty(ONKEYDOWN_KEY, (onkeydown));
625 }
626
627 /**
628 * Gets an onkeyup Javascript handler.
629 *
630 * @return the new onkeyup value
631 */
632 final public String getOnkeyup()
633 {
634 return ComponentUtils.resolveString(getProperty(ONKEYUP_KEY));
635 }
636
637 /**
638 * Sets an onkeyup Javascript handler.
639 *
640 * @param onkeyup the new onkeyup value
641 */
642 final public void setOnkeyup(String onkeyup)
643 {
644 setProperty(ONKEYUP_KEY, (onkeyup));
645 }
646
647 /**
648 * Gets the event handler for the component losing the focus.
649 *
650 * @return the new onblur value
651 */
652 final public String getOnblur()
653 {
654 return ComponentUtils.resolveString(getProperty(ONBLUR_KEY));
655 }
656
657 /**
658 * Sets the event handler for the component losing the focus.
659 *
660 * @param onblur the new onblur value
661 */
662 final public void setOnblur(String onblur)
663 {
664 setProperty(ONBLUR_KEY, (onblur));
665 }
666
667 /**
668 * Gets the event handler for the component gaining the focus.
669 *
670 * @return the new onfocus value
671 */
672 final public String getOnfocus()
673 {
674 return ComponentUtils.resolveString(getProperty(ONFOCUS_KEY));
675 }
676
677 /**
678 * Sets the event handler for the component gaining the focus.
679 *
680 * @param onfocus the new onfocus value
681 */
682 final public void setOnfocus(String onfocus)
683 {
684 setProperty(ONFOCUS_KEY, (onfocus));
685 }
686
687 /**
688 * Gets whether the associated control displays a visual indication of required user input. If a "required" attribute is also present, both the "required" attribute and the
689 * "showRequired" attribute must be false for the visual indication not to be displayed.
690 *
691 * @return the new showRequired value
692 */
693 final public boolean isShowRequired()
694 {
695 return ComponentUtils.resolveBoolean(getProperty(SHOW_REQUIRED_KEY), false);
696 }
697
698 /**
699 * Sets whether the associated control displays a visual indication of required user input. If a "required" attribute is also present, both the "required" attribute and the
700 * "showRequired" attribute must be false for the visual indication not to be displayed.
701 *
702 * @param showRequired the new showRequired value
703 */
704 final public void setShowRequired(boolean showRequired)
705 {
706 setProperty(SHOW_REQUIRED_KEY, showRequired ? Boolean.TRUE : Boolean.FALSE);
707 }
708
709 /**
710 * Gets <html>
711 * Character used to gain quick access to
712 * the form element specified by the
713 * <code>for</code>, if set (or this component itself,
714 * if it is a "non-simple" form element).
715 * For accessibility reasons, this functionality is not supported
716 * in screen reader mode.
717 * If the same access key appears in multiple locations in the
718 * same page of output, the rendering user agent will cycle
719 * among the elements accessed by the similar keys.
720 * <p>
721 * This attribute is sometimes referred to as the "mnemonic".
722 * </p></html>
723 *
724 * @return the new accessKey value
725 */
726 final public char getAccessKey()
727 {
728 return ComponentUtils.resolveCharacter((Character)getProperty(ACCESS_KEY_KEY));
729 }
730
731 /**
732 * Sets <html>
733 * Character used to gain quick access to
734 * the form element specified by the
735 * <code>for</code>, if set (or this component itself,
736 * if it is a "non-simple" form element).
737 * For accessibility reasons, this functionality is not supported
738 * in screen reader mode.
739 * If the same access key appears in multiple locations in the
740 * same page of output, the rendering user agent will cycle
741 * among the elements accessed by the similar keys.
742 * <p>
743 * This attribute is sometimes referred to as the "mnemonic".
744 * </p></html>
745 *
746 * @param accessKey the new accessKey value
747 */
748 final public void setAccessKey(char accessKey)
749 {
750 setProperty(ACCESS_KEY_KEY, Character.valueOf(accessKey));
751 }
752
753 /**
754 * Gets If set to TRUE on a form element, the component will automatically submit
755 * the enclosing form when an appropriate action takes place (a click, text
756 * change, etc.).
757 *
758 * @return the new autoSubmit value
759 */
760 final public boolean isAutoSubmit()
761 {
762 return ComponentUtils.resolveBoolean(getProperty(AUTO_SUBMIT_KEY), false);
763 }
764
765 /**
766 * Sets If set to TRUE on a form element, the component will automatically submit
767 * the enclosing form when an appropriate action takes place (a click, text
768 * change, etc.).
769 *
770 * @param autoSubmit the new autoSubmit value
771 */
772 final public void setAutoSubmit(boolean autoSubmit)
773 {
774 setProperty(AUTO_SUBMIT_KEY, autoSubmit ? Boolean.TRUE : Boolean.FALSE);
775 }
776
777 @Override
778 public String getFamily()
779 {
780 return COMPONENT_FAMILY;
781 }
782
783 @Override
784 protected FacesBean.Type getBeanType()
785 {
786 return TYPE;
787 }
788
789 /**
790 * Construct an instance of the CoreSelectManyListbox.
791 */
792 protected CoreSelectManyListbox(
793 String rendererType
794 )
795 {
796 super(rendererType);
797 }
798
799 static
800 {
801 TYPE.lockAndRegister("org.apache.myfaces.trinidad.SelectMany","org.apache.myfaces.trinidad.Listbox");
802 }
803 }