1 /*
2 * Licensed to the Apache Software Foundation (ASF) under one
3 * or more contributor license agreements. See the NOTICE file
4 * distributed with this work for additional information
5 * regarding copyright ownership. The ASF licenses this file
6 * to you under the Apache License, Version 2.0 (the
7 * "License"); you may not use this file except in compliance
8 * with the License. You may obtain a copy of the License at
9 *
10 * http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing,
13 * software distributed under the License is distributed on an
14 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 * KIND, either express or implied. See the License for the
16 * specific language governing permissions and limitations
17 * under the License.
18 */
19 package org.apache.myfaces.custom.picklist;
20
21 import org.apache.myfaces.component.html.ext.HtmlSelectManyListbox;
22
23 /**
24 * A picklist component that allows to select items from one list to another
25 * <p>
26 * In other words, is a selection component where a set of items
27 * can be selected from a list that contains all the available items to a list
28 * that contains the selected items.
29 * </p>
30 * <p>
31 * The component is based on the t:selectManyListbox component, so it contains
32 * the same attributes. Soon, more specific attributes will be added.
33 * </p>
34 *
35 * @JSFComponent
36 * name = "t:selectManyPicklist"
37 * class = "org.apache.myfaces.custom.picklist.HtmlSelectManyPicklist"
38 * tagClass = "org.apache.myfaces.custom.picklist.HtmlSelectManyPicklistTag"
39 * @since 1.1.7
40 * @author Bruno Aranda (latest modification by $Author: lu4242 $)
41 * @version $Revision: 667663 $ $Date: 2008-06-14 00:53:17 +0300 (Sat, 14 Jun 2008) $
42 */
43 public abstract class AbstractHtmlSelectManyPicklist extends HtmlSelectManyListbox
44 {
45 public static final String COMPONENT_TYPE = "org.apache.myfaces.HtmlSelectManyPicklist";
46 public static final String DEFAULT_RENDERER_TYPE = "org.apache.myfaces.PicklistRenderer";
47
48 /**
49 * Define the text that goes inside the add button
50 *
51 * @JSFProperty
52 */
53 public abstract String getAddButtonText();
54
55 /**
56 * Define the text that goes inside the add all button
57 *
58 * @JSFProperty
59 */
60 public abstract String getAddAllButtonText();
61
62 /**
63 * Define the text that goes inside the remove button
64 *
65 * @JSFProperty
66 */
67 public abstract String getRemoveButtonText();
68
69 /**
70 * Define the text that goes inside the remove all button
71 *
72 * @JSFProperty
73 */
74 public abstract String getRemoveAllButtonText();
75
76 /**
77 * CSS style to be applied to the add button
78 *
79 * @JSFProperty
80 */
81 public abstract String getAddButtonStyle();
82
83 /**
84 * CSS style to be applied to the add all button
85 *
86 * @JSFProperty
87 */
88 public abstract String getAddAllButtonStyle();
89
90 /**
91 * CSS style to be applied to the remove button
92 *
93 * @JSFProperty
94 */
95 public abstract String getRemoveButtonStyle();
96
97 /**
98 * CSS style to be applied to the remove all button
99 *
100 * @JSFProperty
101 */
102 public abstract String getRemoveAllButtonStyle();
103
104 /**
105 * CSS styleClass to be applied to the add button
106 *
107 * @JSFProperty
108 */
109 public abstract String getAddButtonStyleClass();
110
111 /**
112 * CSS styleClass to be applied to the add all button
113 *
114 * @JSFProperty
115 */
116 public abstract String getAddAllButtonStyleClass();
117
118 /**
119 * CSS styleClass to be applied to the remove button
120 *
121 * @JSFProperty
122 */
123 public abstract String getRemoveButtonStyleClass();
124
125 /**
126 * CSS styleClass to be applied to the remove all button
127 *
128 * @JSFProperty
129 */
130 public abstract String getRemoveAllButtonStyleClass();
131 }
132