xref: /AOO41X/main/odk/examples/DevelopersGuide/Accessibility/NameProvider.java (revision 152cbc9de6dfc8241d8012086ca0e038f2dad463)
1 /**************************************************************
2  *
3  * Licensed to the Apache Software Foundation (ASF) under one
4  * or more contributor license agreements.  See the NOTICE file
5  * distributed with this work for additional information
6  * regarding copyright ownership.  The ASF licenses this file
7  * to you under the Apache License, Version 2.0 (the
8  * "License"); you may not use this file except in compliance
9  * with 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,
14  * software distributed under the License is distributed on an
15  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16  * KIND, either express or implied.  See the License for the
17  * specific language governing permissions and limitations
18  * under the License.
19  *
20  *************************************************************/
21 
22 
23 
24 import java.util.HashMap;
25 import com.sun.star.accessibility.AccessibleStateType;
26 import com.sun.star.accessibility.AccessibleEventId;
27 import com.sun.star.accessibility.AccessibleRole;
28 import com.sun.star.accessibility.AccessibleRelationType;
29 
30 
31 /** Provide names for several accessibility constants groups.
32 */
33 public class NameProvider
34 {
35     /** Return the name of the specified state.
36         @param nStateId
37             Id of the state for which to return its name.  This is one of
38             the ids listed in the <type>AccessibleStateType</const>
39             constants group.
40         @return
41             Returns the name of the specified state or an empty string if an
42             invalid / unknown state id was given.
43      */
44     public static String getStateName (int nStateId)
45     {
46         return (String)maStateMap.get (new Integer(nStateId));
47     }
48 
49 
50     /** Return the name of the specified event.
51         @param nEventId
52             Id of the event type for which to return its name.  This is one
53             of the ids listed in the <type>AccessibleEventId</const>
54             constants group.
55         @return
56             Returns the name of the specified event type or an empty string
57             if an invalid / unknown event id was given.
58      */
59     public static String getEventName (int nEventId)
60     {
61         return (String)maEventMap.get (new Integer(nEventId));
62     }
63 
64 
65     /** Return the name of the specified role.
66         @param nRole
67             Id of the role for which to return its name.  This is one of
68             the ids listed in the <type>AccessibleRole</const>
69             constants group.
70         @return
71             Returns the name of the specified role or an empty string if an
72             invalid / unknown role id was given.
73      */
74     public static String getRoleName (int nRole)
75     {
76         return (String)maRoleMap.get (new Integer(nRole));
77     }
78 
79 
80     /** Return the name of the specified relation.
81         @param nRelation
82             Id of the relation for which to return its name.  This is one of
83             the ids listed in the <type>AccessibleRelationType</const>
84             constants group.
85         @return
86             Returns the name of the specified relation type or an empty
87             string if an invalid / unknown role id was given.
88      */
89     public static String getRelationName (int nRelation)
90     {
91         return (String)maRelationMap.get (new Integer(nRelation));
92     }
93 
94 
95     private static HashMap maStateMap = new HashMap();
96     private static HashMap maEventMap = new HashMap();
97     private static HashMap maRoleMap = new HashMap();
98     private static HashMap maRelationMap = new HashMap();
99 
100     static {
101         maStateMap.put (new Integer (AccessibleStateType.INVALID), "INVALID");
102         maStateMap.put (new Integer (AccessibleStateType.ACTIVE), "ACTIVE");
103         maStateMap.put (new Integer (AccessibleStateType.ARMED), "ARMED");
104         maStateMap.put (new Integer (AccessibleStateType.BUSY), "BUSY");
105         maStateMap.put (new Integer (AccessibleStateType.CHECKED), "CHECKED");
106         maStateMap.put (new Integer (AccessibleStateType.DEFUNC), "DEFUNC");
107         maStateMap.put (new Integer (AccessibleStateType.EDITABLE), "EDITABLE");
108         maStateMap.put (new Integer (AccessibleStateType.ENABLED), "ENABLED");
109         maStateMap.put (new Integer (AccessibleStateType.EXPANDABLE), "EXPANDABLE");
110         maStateMap.put (new Integer (AccessibleStateType.EXPANDED), "EXPANDED");
111         maStateMap.put (new Integer (AccessibleStateType.FOCUSABLE), "FOCUSABLE");
112         maStateMap.put (new Integer (AccessibleStateType.FOCUSED), "FOCUSED");
113         maStateMap.put (new Integer (AccessibleStateType.HORIZONTAL), "HORIZONTAL");
114         maStateMap.put (new Integer (AccessibleStateType.ICONIFIED), "ICONIFIED");
115         maStateMap.put (new Integer (AccessibleStateType.MODAL), "MODAL");
116         maStateMap.put (new Integer (AccessibleStateType.MULTI_LINE), "MULTI_LINE");
117         maStateMap.put (new Integer (AccessibleStateType.MULTI_SELECTABLE), "MULTI_SELECTABLE");
118         maStateMap.put (new Integer (AccessibleStateType.OPAQUE), "OPAQUE");
119         maStateMap.put (new Integer (AccessibleStateType.PRESSED), "PRESSED");
120         maStateMap.put (new Integer (AccessibleStateType.RESIZABLE), "RESIZABLE");
121         maStateMap.put (new Integer (AccessibleStateType.SELECTABLE), "SELECTABLE");
122         maStateMap.put (new Integer (AccessibleStateType.SELECTED), "SELECTED");
123         maStateMap.put (new Integer (AccessibleStateType.SENSITIVE), "SENSITIVE");
124         maStateMap.put (new Integer (AccessibleStateType.SHOWING), "SHOWING");
125         maStateMap.put (new Integer (AccessibleStateType.SINGLE_LINE), "SINGLE_LINE");
126         maStateMap.put (new Integer (AccessibleStateType.STALE), "STALE");
127         maStateMap.put (new Integer (AccessibleStateType.TRANSIENT), "TRANSIENT");
128         maStateMap.put (new Integer (AccessibleStateType.VERTICAL), "VERTICAL");
129         maStateMap.put (new Integer (AccessibleStateType.VISIBLE), "VISIBLE");
130         maStateMap.put (new Integer (AccessibleStateType.MANAGES_DESCENDANTS),
131             "MANAGES_DESCENDANTS");
132         //        maStateMap.put (new Integer (AccessibleStateType.INCONSISTENT),"INCONSISTENT");
133 
134 
135         maEventMap.put (new Integer (0),
136             "[UNKNOWN]");
137         maEventMap.put (new Integer (AccessibleEventId.NAME_CHANGED),
138             "NAME_CHANGED");
139         maEventMap.put (new Integer (AccessibleEventId.DESCRIPTION_CHANGED),
140             "DESCRIPTION_CHANGED");
141         maEventMap.put (new Integer (AccessibleEventId.ACTION_CHANGED),
142             "ACTION_CHANGED");
143         maEventMap.put (new Integer (AccessibleEventId.STATE_CHANGED),
144             "STATE_CHANGED");
145         maEventMap.put (new Integer (AccessibleEventId.ACTIVE_DESCENDANT_CHANGED),
146             "ACTIVE_DESCENDANT_CHANGED");
147         maEventMap.put (new Integer (AccessibleEventId.BOUNDRECT_CHANGED),
148             "BOUNDRECT_CHANGED");
149         maEventMap.put (new Integer (AccessibleEventId.CHILD),
150             "CHILD");
151         maEventMap.put (new Integer (AccessibleEventId.INVALIDATE_ALL_CHILDREN),
152             "INVALIDATE_ALL_CHILDREN");
153         maEventMap.put (new Integer (AccessibleEventId.SELECTION_CHANGED),
154             "SELECTION_CHANGED");
155         maEventMap.put (new Integer (AccessibleEventId.VISIBLE_DATA_CHANGED),
156             "VISIBLE_DATA_CHANGED");
157         maEventMap.put (new Integer (AccessibleEventId.VALUE_CHANGED),
158             "VALUE_CHANGED");
159         maEventMap.put (new Integer (AccessibleEventId.CONTENT_FLOWS_FROM_RELATION_CHANGED),
160             "CONTENT_FLOWS_FROM_RELATION_CHANGED");
161         maEventMap.put (new Integer (AccessibleEventId.CONTENT_FLOWS_TO_RELATION_CHANGED),
162             "CONTENT_FLOWS_TO_RELATION_CHANGED");
163         maEventMap.put (new Integer (AccessibleEventId.CONTROLLED_BY_RELATION_CHANGED),
164             "CONTROLLED_BY_RELATION_CHANGED");
165         maEventMap.put (new Integer (AccessibleEventId.CONTROLLER_FOR_RELATION_CHANGED),
166             "CONTROLLER_FOR_RELATION_CHANGED");
167         maEventMap.put (new Integer (AccessibleEventId.LABEL_FOR_RELATION_CHANGED),
168             "LABEL_FOR_RELATION_CHANGED");
169         maEventMap.put (new Integer (AccessibleEventId.LABELED_BY_RELATION_CHANGED),
170             "LABELED_BY_RELATION_CHANGED");
171         maEventMap.put (new Integer (AccessibleEventId.MEMBER_OF_RELATION_CHANGED),
172             "MEMBER_OF_RELATION_CHANGED");
173         maEventMap.put (new Integer (AccessibleEventId.SUB_WINDOW_OF_RELATION_CHANGED),
174             "SUB_WINDOW_OF_RELATION_CHANGED");
175         maEventMap.put (new Integer (AccessibleEventId.CARET_CHANGED),
176             "CARET_CHANGED");
177         maEventMap.put (new Integer (AccessibleEventId.TEXT_SELECTION_CHANGED),
178             "TEXT_SELECTION_CHANGED");
179         maEventMap.put (new Integer (AccessibleEventId.TEXT_CHANGED),
180             "TEXT_CHANGED");
181         maEventMap.put (new Integer (AccessibleEventId.TEXT_ATTRIBUTE_CHANGED),
182             "TEXT_ATTRIBUTE_CHANGED");
183         maEventMap.put (new Integer (AccessibleEventId.HYPERTEXT_CHANGED),
184             "HYPERTEXT_CHANGED");
185         maEventMap.put (new Integer (AccessibleEventId.TABLE_CAPTION_CHANGED),
186             "TABLE_CAPTION_CHANGED");
187         maEventMap.put (new Integer (AccessibleEventId.TABLE_COLUMN_DESCRIPTION_CHANGED),
188             "TABLE_COLUMN_DESCRIPTION_CHANGED");
189         maEventMap.put (new Integer (AccessibleEventId.TABLE_COLUMN_HEADER_CHANGED),
190             "TABLE_COLUMN_HEADER_CHANGED");
191         maEventMap.put (new Integer (AccessibleEventId.TABLE_MODEL_CHANGED),
192             "TABLE_MODEL_CHANGED");
193         maEventMap.put (new Integer (AccessibleEventId.TABLE_ROW_DESCRIPTION_CHANGED),
194             "TABLE_ROW_DESCRIPTION_CHANGED");
195         maEventMap.put (new Integer (AccessibleEventId.TABLE_ROW_HEADER_CHANGED),
196             "TABLE_ROW_HEADER_CHANGED");
197         maEventMap.put (new Integer (AccessibleEventId.TABLE_SUMMARY_CHANGED),
198             "TABLE_SUMMARY_CHANGED");
199 
200         maRoleMap.put (new Integer(AccessibleRole.UNKNOWN), "UNKNOWN");
201         maRoleMap.put (new Integer (AccessibleRole.UNKNOWN), "UNKNOWN");
202         maRoleMap.put (new Integer (AccessibleRole.ALERT), "ALERT");
203         maRoleMap.put (new Integer (AccessibleRole.COLUMN_HEADER), "COLUMN_HEADER");
204         maRoleMap.put (new Integer (AccessibleRole.CANVAS), "CANVAS");
205         maRoleMap.put (new Integer (AccessibleRole.CHECK_BOX), "CHECK_BOX");
206         maRoleMap.put (new Integer (AccessibleRole.CHECK_MENU_ITEM), "CHECK_MENU_ITEM");
207         maRoleMap.put (new Integer (AccessibleRole.COLOR_CHOOSER), "COLOR_CHOOSER");
208         maRoleMap.put (new Integer (AccessibleRole.COMBO_BOX), "COMBO_BOX");
209         maRoleMap.put (new Integer (AccessibleRole.DESKTOP_ICON), "DESKTOP_ICON");
210         maRoleMap.put (new Integer (AccessibleRole.DESKTOP_PANE), "DESKTOP_PANE");
211         maRoleMap.put (new Integer (AccessibleRole.DIRECTORY_PANE), "DIRECTORY_PANE");
212         maRoleMap.put (new Integer (AccessibleRole.DIALOG), "DIALOG");
213         maRoleMap.put (new Integer (AccessibleRole.DOCUMENT), "DOCUMENT");
214         maRoleMap.put (new Integer (AccessibleRole.EMBEDDED_OBJECT), "EMBEDDED_OBJECT");
215         maRoleMap.put (new Integer (AccessibleRole.END_NOTE), "END_NOTE");
216         maRoleMap.put (new Integer (AccessibleRole.FILE_CHOOSER), "FILE_CHOOSER");
217         maRoleMap.put (new Integer (AccessibleRole.FILLER), "FILLER");
218         maRoleMap.put (new Integer (AccessibleRole.FONT_CHOOSER), "FONT_CHOOSER");
219         maRoleMap.put (new Integer (AccessibleRole.FOOTER), "FOOTER");
220         maRoleMap.put (new Integer (AccessibleRole.FOOTNOTE), "FOOTNOTE");
221         maRoleMap.put (new Integer (AccessibleRole.FRAME), "FRAME");
222         maRoleMap.put (new Integer (AccessibleRole.GLASS_PANE), "GLASS_PANE");
223         maRoleMap.put (new Integer (AccessibleRole.GRAPHIC), "GRAPHIC");
224         maRoleMap.put (new Integer (AccessibleRole.GROUP_BOX), "GROUP_BOX");
225         maRoleMap.put (new Integer (AccessibleRole.HEADER), "HEADER");
226         maRoleMap.put (new Integer (AccessibleRole.HEADING), "HEADING");
227         maRoleMap.put (new Integer (AccessibleRole.HYPER_LINK), "HYPER_LINK");
228         maRoleMap.put (new Integer (AccessibleRole.ICON), "ICON");
229         maRoleMap.put (new Integer (AccessibleRole.INTERNAL_FRAME), "INTERNAL_FRAME");
230         maRoleMap.put (new Integer (AccessibleRole.LABEL), "LABEL");
231         maRoleMap.put (new Integer (AccessibleRole.LAYERED_PANE), "LAYERED_PANE");
232         maRoleMap.put (new Integer (AccessibleRole.LIST), "LIST");
233         maRoleMap.put (new Integer (AccessibleRole.LIST_ITEM), "LIST_ITEM");
234         maRoleMap.put (new Integer (AccessibleRole.MENU), "MENU");
235         maRoleMap.put (new Integer (AccessibleRole.MENU_BAR), "MENU_BAR");
236         maRoleMap.put (new Integer (AccessibleRole.MENU_ITEM), "MENU_ITEM");
237         maRoleMap.put (new Integer (AccessibleRole.OPTION_PANE), "OPTION_PANE");
238         maRoleMap.put (new Integer (AccessibleRole.PAGE_TAB), "PAGE_TAB");
239         maRoleMap.put (new Integer (AccessibleRole.PAGE_TAB_LIST), "PAGE_TAB_LIST");
240         maRoleMap.put (new Integer (AccessibleRole.PANEL), "PANEL");
241         maRoleMap.put (new Integer (AccessibleRole.PARAGRAPH), "PARAGRAPH");
242         maRoleMap.put (new Integer (AccessibleRole.PASSWORD_TEXT), "PASSWORD_TEXT");
243         maRoleMap.put (new Integer (AccessibleRole.POPUP_MENU), "POPUP_MENU");
244         maRoleMap.put (new Integer (AccessibleRole.PUSH_BUTTON), "PUSH_BUTTON");
245         maRoleMap.put (new Integer (AccessibleRole.PROGRESS_BAR), "PROGRESS_BAR");
246         maRoleMap.put (new Integer (AccessibleRole.RADIO_BUTTON), "RADIO_BUTTON");
247         maRoleMap.put (new Integer (AccessibleRole.RADIO_MENU_ITEM), "RADIO_MENU_ITEM");
248         maRoleMap.put (new Integer (AccessibleRole.ROW_HEADER), "ROW_HEADER");
249         maRoleMap.put (new Integer (AccessibleRole.ROOT_PANE), "ROOT_PANE");
250         maRoleMap.put (new Integer (AccessibleRole.SCROLL_BAR), "SCROLL_BAR");
251         maRoleMap.put (new Integer (AccessibleRole.SCROLL_PANE), "SCROLL_PANE");
252         maRoleMap.put (new Integer (AccessibleRole.SHAPE), "SHAPE");
253         maRoleMap.put (new Integer (AccessibleRole.SEPARATOR), "SEPARATOR");
254         maRoleMap.put (new Integer (AccessibleRole.SLIDER), "SLIDER");
255         maRoleMap.put (new Integer (AccessibleRole.SPIN_BOX), "SPIN_BOX");
256         maRoleMap.put (new Integer (AccessibleRole.SPLIT_PANE), "SPLIT_PANE");
257         maRoleMap.put (new Integer (AccessibleRole.STATUS_BAR), "STATUS_BAR");
258         maRoleMap.put (new Integer (AccessibleRole.TABLE), "TABLE");
259         maRoleMap.put (new Integer (AccessibleRole.TABLE_CELL), "TABLE_CELL");
260         maRoleMap.put (new Integer (AccessibleRole.TEXT), "TEXT");
261         maRoleMap.put (new Integer (AccessibleRole.TEXT_FRAME), "TEXT_FRAME");
262         maRoleMap.put (new Integer (AccessibleRole.TOGGLE_BUTTON), "TOGGLE_BUTTON");
263         maRoleMap.put (new Integer (AccessibleRole.TOOL_BAR), "TOOL_BAR");
264         maRoleMap.put (new Integer (AccessibleRole.TOOL_TIP), "TOOL_TIP");
265         maRoleMap.put (new Integer (AccessibleRole.TREE), "TREE");
266         maRoleMap.put (new Integer (AccessibleRole.VIEW_PORT), "VIEW_PORT");
267         maRoleMap.put (new Integer (AccessibleRole.WINDOW), "WINDOW");
268 
269         maRelationMap.put (new Integer (AccessibleRelationType.INVALID), "INVALID");
270         maRelationMap.put (new Integer (AccessibleRelationType.CONTENT_FLOWS_FROM), "CONTENT_FLOWS_FROM");
271         maRelationMap.put (new Integer (AccessibleRelationType.CONTENT_FLOWS_TO), "CONTENT_FLOWS_TO");
272         maRelationMap.put (new Integer (AccessibleRelationType.CONTROLLED_BY), "CONTROLLED_BY");
273         maRelationMap.put (new Integer (AccessibleRelationType.CONTROLLER_FOR), "CONTROLLER_FOR");
274         maRelationMap.put (new Integer (AccessibleRelationType.LABEL_FOR), "LABEL_FOR");
275         maRelationMap.put (new Integer (AccessibleRelationType.LABELED_BY), "LABELED_BY");
276         maRelationMap.put (new Integer (AccessibleRelationType.MEMBER_OF), "MEMBER_OF");
277         maRelationMap.put (new Integer (AccessibleRelationType.SUB_WINDOW_OF), "SUB_WINDOW_OF");
278     }
279 }
280