author | prr |
Sat, 19 Sep 2015 15:45:59 -0700 | |
changeset 32865 | f9cb6e427f9e |
parent 25859 | 3317bb8137f4 |
child 45649 | 499d43823920 |
permissions | -rw-r--r-- |
2 | 1 |
/* |
5506 | 2 |
* Copyright (c) 1997, 2004, Oracle and/or its affiliates. All rights reserved. |
2 | 3 |
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 |
* |
|
5 |
* This code is free software; you can redistribute it and/or modify it |
|
6 |
* under the terms of the GNU General Public License version 2 only, as |
|
5506 | 7 |
* published by the Free Software Foundation. Oracle designates this |
2 | 8 |
* particular file as subject to the "Classpath" exception as provided |
5506 | 9 |
* by Oracle in the LICENSE file that accompanied this code. |
2 | 10 |
* |
11 |
* This code is distributed in the hope that it will be useful, but WITHOUT |
|
12 |
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
|
13 |
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
|
14 |
* version 2 for more details (a copy is included in the LICENSE file that |
|
15 |
* accompanied this code). |
|
16 |
* |
|
17 |
* You should have received a copy of the GNU General Public License version |
|
18 |
* 2 along with this work; if not, write to the Free Software Foundation, |
|
19 |
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
|
20 |
* |
|
5506 | 21 |
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
22 |
* or visit www.oracle.com if you need additional information or have any |
|
23 |
* questions. |
|
2 | 24 |
*/ |
25 |
||
26 |
package javax.accessibility; |
|
27 |
||
28 |
import java.util.Vector; |
|
29 |
import java.util.Locale; |
|
30 |
import java.util.MissingResourceException; |
|
31 |
import java.util.ResourceBundle; |
|
32 |
||
33 |
/** |
|
34 |
* <P>Class AccessibleState describes a component's particular state. The actual |
|
35 |
* state of the component is defined as an AccessibleStateSet, which is a |
|
36 |
* composed set of AccessibleStates. |
|
37 |
* <p>The toDisplayString method allows you to obtain the localized string |
|
38 |
* for a locale independent key from a predefined ResourceBundle for the |
|
39 |
* keys defined in this class. |
|
40 |
* <p>The constants in this class present a strongly typed enumeration |
|
41 |
* of common object roles. A public constructor for this class has been |
|
42 |
* purposely omitted and applications should use one of the constants |
|
43 |
* from this class. If the constants in this class are not sufficient |
|
44 |
* to describe the role of an object, a subclass should be generated |
|
45 |
* from this class and it should provide constants in a similar manner. |
|
46 |
* |
|
47 |
* @author Willie Walker |
|
48 |
* @author Peter Korn |
|
49 |
*/ |
|
50 |
public class AccessibleState extends AccessibleBundle { |
|
51 |
||
52 |
// If you add or remove anything from here, make sure you |
|
53 |
// update AccessibleResourceBundle.java. |
|
54 |
||
55 |
/** |
|
56 |
* Indicates a window is currently the active window. This includes |
|
57 |
* windows, dialogs, frames, etc. In addition, this state is used |
|
58 |
* to indicate the currently active child of a component such as a |
|
59 |
* list, table, or tree. For example, the active child of a list |
|
60 |
* is the child that is drawn with a rectangle around it. |
|
61 |
* @see AccessibleRole#WINDOW |
|
62 |
* @see AccessibleRole#FRAME |
|
63 |
* @see AccessibleRole#DIALOG |
|
64 |
*/ |
|
65 |
public static final AccessibleState ACTIVE |
|
66 |
= new AccessibleState("active"); |
|
67 |
||
68 |
/** |
|
69 |
* Indicates this object is currently pressed. This is usually |
|
70 |
* associated with buttons and indicates the user has pressed a |
|
71 |
* mouse button while the pointer was over the button and has |
|
72 |
* not yet released the mouse button. |
|
73 |
* @see AccessibleRole#PUSH_BUTTON |
|
74 |
*/ |
|
75 |
public static final AccessibleState PRESSED |
|
76 |
= new AccessibleState("pressed"); |
|
77 |
||
78 |
/** |
|
79 |
* Indicates that the object is armed. This is usually used on buttons |
|
80 |
* that have been pressed but not yet released, and the mouse pointer |
|
81 |
* is still over the button. |
|
82 |
* @see AccessibleRole#PUSH_BUTTON |
|
83 |
*/ |
|
84 |
public static final AccessibleState ARMED |
|
85 |
= new AccessibleState("armed"); |
|
86 |
||
87 |
/** |
|
88 |
* Indicates the current object is busy. This is usually used on objects |
|
89 |
* such as progress bars, sliders, or scroll bars to indicate they are |
|
90 |
* in a state of transition. |
|
91 |
* @see AccessibleRole#PROGRESS_BAR |
|
92 |
* @see AccessibleRole#SCROLL_BAR |
|
93 |
* @see AccessibleRole#SLIDER |
|
94 |
*/ |
|
95 |
public static final AccessibleState BUSY |
|
96 |
= new AccessibleState("busy"); |
|
97 |
||
98 |
/** |
|
99 |
* Indicates this object is currently checked. This is usually used on |
|
100 |
* objects such as toggle buttons, radio buttons, and check boxes. |
|
101 |
* @see AccessibleRole#TOGGLE_BUTTON |
|
102 |
* @see AccessibleRole#RADIO_BUTTON |
|
103 |
* @see AccessibleRole#CHECK_BOX |
|
104 |
*/ |
|
105 |
public static final AccessibleState CHECKED |
|
106 |
= new AccessibleState("checked"); |
|
107 |
||
108 |
/** |
|
109 |
* Indicates the user can change the contents of this object. This |
|
110 |
* is usually used primarily for objects that allow the user to |
|
111 |
* enter text. Other objects, such as scroll bars and sliders, |
|
112 |
* are automatically editable if they are enabled. |
|
113 |
* @see #ENABLED |
|
114 |
*/ |
|
115 |
public static final AccessibleState EDITABLE |
|
116 |
= new AccessibleState("editable"); |
|
117 |
||
118 |
/** |
|
119 |
* Indicates this object allows progressive disclosure of its children. |
|
120 |
* This is usually used with hierarchical objects such as trees and |
|
121 |
* is often paired with the EXPANDED or COLLAPSED states. |
|
122 |
* @see #EXPANDED |
|
123 |
* @see #COLLAPSED |
|
124 |
* @see AccessibleRole#TREE |
|
125 |
*/ |
|
126 |
public static final AccessibleState EXPANDABLE |
|
127 |
= new AccessibleState("expandable"); |
|
128 |
||
129 |
/** |
|
130 |
* Indicates this object is collapsed. This is usually paired with the |
|
131 |
* EXPANDABLE state and is used on objects that provide progressive |
|
132 |
* disclosure such as trees. |
|
133 |
* @see #EXPANDABLE |
|
134 |
* @see #EXPANDED |
|
135 |
* @see AccessibleRole#TREE |
|
136 |
*/ |
|
137 |
public static final AccessibleState COLLAPSED |
|
138 |
= new AccessibleState("collapsed"); |
|
139 |
||
140 |
/** |
|
141 |
* Indicates this object is expanded. This is usually paired with the |
|
142 |
* EXPANDABLE state and is used on objects that provide progressive |
|
143 |
* disclosure such as trees. |
|
144 |
* @see #EXPANDABLE |
|
145 |
* @see #COLLAPSED |
|
146 |
* @see AccessibleRole#TREE |
|
147 |
*/ |
|
148 |
public static final AccessibleState EXPANDED |
|
149 |
= new AccessibleState("expanded"); |
|
150 |
||
151 |
/** |
|
152 |
* Indicates this object is enabled. The absence of this state from an |
|
153 |
* object's state set indicates this object is not enabled. An object |
|
154 |
* that is not enabled cannot be manipulated by the user. In a graphical |
|
155 |
* display, it is usually grayed out. |
|
156 |
*/ |
|
157 |
public static final AccessibleState ENABLED |
|
158 |
= new AccessibleState("enabled"); |
|
159 |
||
160 |
/** |
|
161 |
* Indicates this object can accept keyboard focus, which means all |
|
162 |
* events resulting from typing on the keyboard will normally be |
|
163 |
* passed to it when it has focus. |
|
164 |
* @see #FOCUSED |
|
165 |
*/ |
|
166 |
public static final AccessibleState FOCUSABLE |
|
167 |
= new AccessibleState("focusable"); |
|
168 |
||
169 |
/** |
|
170 |
* Indicates this object currently has the keyboard focus. |
|
171 |
* @see #FOCUSABLE |
|
172 |
*/ |
|
173 |
public static final AccessibleState FOCUSED |
|
174 |
= new AccessibleState("focused"); |
|
175 |
||
176 |
/** |
|
177 |
* Indicates this object is minimized and is represented only by an |
|
178 |
* icon. This is usually only associated with frames and internal |
|
179 |
* frames. |
|
180 |
* @see AccessibleRole#FRAME |
|
181 |
* @see AccessibleRole#INTERNAL_FRAME |
|
182 |
*/ |
|
183 |
public static final AccessibleState ICONIFIED |
|
184 |
= new AccessibleState("iconified"); |
|
185 |
||
186 |
/** |
|
187 |
* Indicates something must be done with this object before the |
|
188 |
* user can interact with an object in a different window. This |
|
189 |
* is usually associated only with dialogs. |
|
190 |
* @see AccessibleRole#DIALOG |
|
191 |
*/ |
|
192 |
public static final AccessibleState MODAL |
|
193 |
= new AccessibleState("modal"); |
|
194 |
||
195 |
/** |
|
196 |
* Indicates this object paints every pixel within its |
|
197 |
* rectangular region. A non-opaque component paints only some of |
|
198 |
* its pixels, allowing the pixels underneath it to "show through". |
|
199 |
* A component that does not fully paint its pixels therefore |
|
200 |
* provides a degree of transparency. |
|
201 |
* @see Accessible#getAccessibleContext |
|
202 |
* @see AccessibleContext#getAccessibleComponent |
|
203 |
* @see AccessibleComponent#getBounds |
|
204 |
*/ |
|
205 |
public static final AccessibleState OPAQUE |
|
206 |
= new AccessibleState("opaque"); |
|
207 |
||
208 |
/** |
|
209 |
* Indicates the size of this object is not fixed. |
|
210 |
* @see Accessible#getAccessibleContext |
|
211 |
* @see AccessibleContext#getAccessibleComponent |
|
212 |
* @see AccessibleComponent#getSize |
|
213 |
* @see AccessibleComponent#setSize |
|
214 |
*/ |
|
215 |
public static final AccessibleState RESIZABLE |
|
216 |
= new AccessibleState("resizable"); |
|
217 |
||
218 |
||
219 |
/** |
|
220 |
* Indicates this object allows more than one of its children to |
|
221 |
* be selected at the same time. |
|
222 |
* @see Accessible#getAccessibleContext |
|
223 |
* @see AccessibleContext#getAccessibleSelection |
|
224 |
* @see AccessibleSelection |
|
225 |
*/ |
|
226 |
public static final AccessibleState MULTISELECTABLE |
|
227 |
= new AccessibleState("multiselectable"); |
|
228 |
||
229 |
/** |
|
230 |
* Indicates this object is the child of an object that allows its |
|
231 |
* children to be selected, and that this child is one of those |
|
232 |
* children that can be selected. |
|
233 |
* @see #SELECTED |
|
234 |
* @see Accessible#getAccessibleContext |
|
235 |
* @see AccessibleContext#getAccessibleSelection |
|
236 |
* @see AccessibleSelection |
|
237 |
*/ |
|
238 |
public static final AccessibleState SELECTABLE |
|
239 |
= new AccessibleState("selectable"); |
|
240 |
||
241 |
/** |
|
242 |
* Indicates this object is the child of an object that allows its |
|
243 |
* children to be selected, and that this child is one of those |
|
244 |
* children that has been selected. |
|
245 |
* @see #SELECTABLE |
|
246 |
* @see Accessible#getAccessibleContext |
|
247 |
* @see AccessibleContext#getAccessibleSelection |
|
248 |
* @see AccessibleSelection |
|
249 |
*/ |
|
250 |
public static final AccessibleState SELECTED |
|
251 |
= new AccessibleState("selected"); |
|
252 |
||
253 |
/** |
|
254 |
* Indicates this object, the object's parent, the object's parent's |
|
255 |
* parent, and so on, are all visible. Note that this does not |
|
256 |
* necessarily mean the object is painted on the screen. It might |
|
257 |
* be occluded by some other showing object. |
|
258 |
* @see #VISIBLE |
|
259 |
*/ |
|
260 |
public static final AccessibleState SHOWING |
|
261 |
= new AccessibleState("showing"); |
|
262 |
||
263 |
/** |
|
264 |
* Indicates this object is visible. Note: this means that the |
|
265 |
* object intends to be visible; however, it may not in fact be |
|
266 |
* showing on the screen because one of the objects that this object |
|
267 |
* is contained by is not visible. |
|
268 |
* @see #SHOWING |
|
269 |
*/ |
|
270 |
public static final AccessibleState VISIBLE |
|
271 |
= new AccessibleState("visible"); |
|
272 |
||
273 |
/** |
|
274 |
* Indicates the orientation of this object is vertical. This is |
|
275 |
* usually associated with objects such as scrollbars, sliders, and |
|
276 |
* progress bars. |
|
277 |
* @see #VERTICAL |
|
278 |
* @see AccessibleRole#SCROLL_BAR |
|
279 |
* @see AccessibleRole#SLIDER |
|
280 |
* @see AccessibleRole#PROGRESS_BAR |
|
281 |
*/ |
|
282 |
public static final AccessibleState VERTICAL |
|
283 |
= new AccessibleState("vertical"); |
|
284 |
||
285 |
/** |
|
286 |
* Indicates the orientation of this object is horizontal. This is |
|
287 |
* usually associated with objects such as scrollbars, sliders, and |
|
288 |
* progress bars. |
|
289 |
* @see #HORIZONTAL |
|
290 |
* @see AccessibleRole#SCROLL_BAR |
|
291 |
* @see AccessibleRole#SLIDER |
|
292 |
* @see AccessibleRole#PROGRESS_BAR |
|
293 |
*/ |
|
294 |
public static final AccessibleState HORIZONTAL |
|
295 |
= new AccessibleState("horizontal"); |
|
296 |
||
297 |
/** |
|
298 |
* Indicates this (text) object can contain only a single line of text |
|
299 |
*/ |
|
300 |
public static final AccessibleState SINGLE_LINE |
|
301 |
= new AccessibleState("singleline"); |
|
302 |
||
303 |
/** |
|
304 |
* Indicates this (text) object can contain multiple lines of text |
|
305 |
*/ |
|
306 |
public static final AccessibleState MULTI_LINE |
|
307 |
= new AccessibleState("multiline"); |
|
308 |
||
309 |
/** |
|
310 |
* Indicates this object is transient. An assistive technology should |
|
311 |
* not add a PropertyChange listener to an object with transient state, |
|
312 |
* as that object will never generate any events. Transient objects |
|
313 |
* are typically created to answer Java Accessibility method queries, |
|
314 |
* but otherwise do not remain linked to the underlying object (for |
|
315 |
* example, those objects underneath lists, tables, and trees in Swing, |
|
316 |
* where only one actual UI Component does shared rendering duty for |
|
317 |
* all of the data objects underneath the actual list/table/tree elements). |
|
318 |
* |
|
319 |
* @since 1.5 |
|
320 |
* |
|
321 |
*/ |
|
322 |
public static final AccessibleState TRANSIENT |
|
323 |
= new AccessibleState("transient"); |
|
324 |
||
325 |
/** |
|
326 |
* Indicates this object is responsible for managing its |
|
327 |
* subcomponents. This is typically used for trees and tables |
|
328 |
* that have a large number of subcomponents and where the |
|
329 |
* objects are created only when needed and otherwise remain virtual. |
|
330 |
* The application should not manage the subcomponents directly. |
|
331 |
* |
|
332 |
* @since 1.5 |
|
333 |
*/ |
|
334 |
public static final AccessibleState MANAGES_DESCENDANTS |
|
335 |
= new AccessibleState ("managesDescendants"); |
|
336 |
||
337 |
/** |
|
338 |
* Indicates that the object state is indeterminate. An example |
|
339 |
* is selected text that is partially bold and partially not |
|
340 |
* bold. In this case the attributes associated with the selected |
|
341 |
* text are indeterminate. |
|
342 |
* |
|
343 |
* @since 1.5 |
|
344 |
*/ |
|
345 |
public static final AccessibleState INDETERMINATE |
|
346 |
= new AccessibleState ("indeterminate"); |
|
347 |
||
348 |
/** |
|
349 |
* A state indicating that text is truncated by a bounding rectangle |
|
350 |
* and that some of the text is not displayed on the screen. An example |
|
351 |
* is text in a spreadsheet cell that is truncated by the bounds of |
|
352 |
* the cell. |
|
353 |
* |
|
354 |
* @since 1.5 |
|
355 |
*/ |
|
32865
f9cb6e427f9e
8136783: Run blessed-modifier-order script on java.desktop
prr
parents:
25859
diff
changeset
|
356 |
public static final AccessibleState TRUNCATED |
2 | 357 |
= new AccessibleState("truncated"); |
358 |
||
359 |
/** |
|
360 |
* Creates a new AccessibleState using the given locale independent key. |
|
361 |
* This should not be a public method. Instead, it is used to create |
|
362 |
* the constants in this file to make it a strongly typed enumeration. |
|
363 |
* Subclasses of this class should enforce similar policy. |
|
364 |
* <p> |
|
365 |
* The key String should be a locale independent key for the state. |
|
366 |
* It is not intended to be used as the actual String to display |
|
367 |
* to the user. To get the localized string, use toDisplayString. |
|
368 |
* |
|
369 |
* @param key the locale independent name of the state. |
|
370 |
* @see AccessibleBundle#toDisplayString |
|
371 |
*/ |
|
372 |
protected AccessibleState(String key) { |
|
373 |
this.key = key; |
|
374 |
} |
|
375 |
} |