Generate ax enums from idl.
[chromium-blink-merge.git] / ui / accessibility / ax_enums.idl
blobe6a3aa8c11f7ebcd1d8b7904bca1a6ad17f7d7aa
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 // These should be kept in sync with third_party/WebKit/public/web/WebAXEnums.h
6 // until the Chromium and Blink trees are merged.
7 namespace ui {
8 enum AXEvent {
9 activedescendantchanged,
10 alert,
11 aria_attribute_changed,
12 autocorrection_occured,
13 blur,
14 checked_state_changed,
15 children_changed,
16 focus,
17 hide,
18 invalid_status_changed,
19 layout_complete,
20 live_region_changed,
21 load_complete,
22 location_changed,
23 menu_list_item_selected,
24 menu_list_value_changed,
25 row_collapsed,
26 row_count_changed,
27 row_expanded,
28 scrolled_to_anchor,
29 selected_children_changed,
30 selected_text_changed,
31 show,
32 text_changed,
33 text_inserted,
34 text_removed,
35 value_changed
38 enum AXRole {
39 alert_dialog,
40 alert,
41 annotation,
42 application,
43 article,
44 banner,
45 browser,
46 busy_indicator,
47 button,
48 canvas,
49 cell,
50 check_box,
51 color_well,
52 column_header,
53 column,
54 combo_box,
55 complementary,
56 content_info,
57 definition,
58 description_list_detail,
59 description_list_term,
60 dialog,
61 directory,
62 disclosure_triangle,
63 div,
64 document,
65 drawer,
66 editable_text,
67 footer,
68 form,
69 grid,
70 group,
71 grow_area,
72 heading,
73 help_tag,
74 horizontal_rule,
75 ignored,
76 image_map_link,
77 image_map,
78 image,
79 incrementor,
80 inline_text_box,
81 label_text,
82 legend,
83 link,
84 list_box_option,
85 list_box,
86 list_item,
87 list_marker,
88 list,
89 log,
90 main,
91 marquee,
92 math_element,
93 math,
94 matte,
95 menu_bar,
96 menu_button,
97 menu_item,
98 menu_list_option,
99 menu_list_popup,
100 menu,
101 navigation,
102 note,
103 outline,
104 paragraph,
105 pop_up_button,
106 presentational,
107 progress_indicator,
108 radio_button,
109 radio_group,
110 region,
111 root_web_area,
112 row_header,
113 row,
114 ruler_marker,
115 ruler,
116 svg_root,
117 scroll_area,
118 scroll_bar,
119 seamless_web_area,
120 search,
121 sheet,
122 slider,
123 slider_thumb,
124 spin_button_part,
125 spin_button,
126 split_group,
127 splitter,
128 static_text,
129 status,
130 system_wide,
131 tab_group,
132 tab_list,
133 tab_panel,
134 tab,
135 table_header_container,
136 table,
137 text_area,
138 text_field,
139 timer,
140 toggle_button,
141 toolbar,
142 tree_grid,
143 tree_item,
144 tree,
145 unknown,
146 tooltip,
147 value_indicator,
148 web_area,
149 window
152 enum AXState {
153 busy,
154 checked,
155 collapsed,
156 enabled,
157 expanded,
158 focusable,
159 focused,
160 haspopup,
161 hovered,
162 indeterminate,
163 invisible,
164 linked,
165 multiselectable,
166 offscreen,
167 pressed,
168 protected,
169 read_only,
170 required,
171 selectable,
172 selected,
173 vertical,
174 visited
177 [cpp_omit_enum_type] enum AXStringAttribute {
178 // Document attributes.
179 ax_attr_doc_url,
180 ax_attr_doc_title,
181 ax_attr_doc_mimetype,
182 ax_attr_doc_doctype,
184 // Attributes that could apply to any node.
185 ax_attr_access_key,
186 ax_attr_action,
187 ax_attr_container_live_relevant,
188 ax_attr_container_live_status,
189 ax_attr_description,
190 ax_attr_display,
191 ax_attr_help,
192 ax_attr_html_tag,
193 ax_attr_name,
194 ax_attr_live_relevant,
195 ax_attr_live_status,
196 ax_attr_role,
197 ax_attr_shortcut,
198 ax_attr_url,
199 ax_attr_value
202 [cpp_omit_enum_type] enum AXIntAttribute {
203 // Scrollable container attributes.
204 ax_attr_scroll_x,
205 ax_attr_scroll_x_min,
206 ax_attr_scroll_x_max,
207 ax_attr_scroll_y,
208 ax_attr_scroll_y_min,
209 ax_attr_scroll_y_max,
211 // Editable text attributes.
212 ax_attr_text_sel_start,
213 ax_attr_text_sel_end,
215 // Table attributes.
216 ax_attr_table_row_count,
217 ax_attr_table_column_count,
218 ax_attr_table_header_id,
220 // Table row attributes.
221 ax_attr_table_row_index,
222 ax_attr_table_row_header_id,
224 // Table column attributes.
225 ax_attr_table_column_index,
226 ax_attr_table_column_header_id,
228 // Table cell attributes.
229 ax_attr_table_cell_column_index,
230 ax_attr_table_cell_column_span,
231 ax_attr_table_cell_row_index,
232 ax_attr_table_cell_row_span,
234 // Tree control attributes.
235 ax_attr_hierarchical_level,
237 // Relationships between this element and other elements.
238 ax_attr_title_ui_element,
240 // Color value for AX_ROLE_COLOR_WELL, each component is 0..255
241 ax_attr_color_value_red,
242 ax_attr_color_value_green,
243 ax_attr_color_value_blue,
245 // Inline text attributes.
246 ax_attr_text_direction
249 [cpp_omit_enum_type] enum AXFloatAttribute {
250 // Document attributes.
251 ax_attr_doc_loading_progress,
253 // Range attributes.
254 ax_attr_value_for_range,
255 ax_attr_min_value_for_range,
256 ax_attr_max_value_for_range
259 [cpp_omit_enum_type] enum AXBoolAttribute {
260 // Document attributes.
261 ax_attr_doc_loaded,
263 // True if a checkbox or radio button is in the "mixed" state.
264 ax_attr_button_mixed,
266 // Live region attributes.
267 ax_attr_container_live_atomic,
268 ax_attr_container_live_busy,
269 ax_attr_live_atomic,
270 ax_attr_live_busy,
272 // ARIA readonly flag.
273 ax_attr_aria_readonly,
275 // Writeable attributes
276 ax_attr_can_set_value,
278 // If this is set, all of the other fields in this struct should
279 // be ignored and only the locations should change.
280 ax_attr_update_location_only,
282 // Set on a canvas element if it has fallback content.
283 ax_attr_canvas_has_fallback
286 [cpp_omit_enum_type] enum AXIntListAttribute {
287 // Ids of nodes that are children of this node logically, but are
288 // not children of this node in the tree structure. As an example,
289 // a table cell is a child of a row, and an 'indirect' child of a
290 // column.
291 ax_attr_indirect_child_ids,
293 // Character indices where line breaks occur.
294 ax_attr_line_breaks,
296 // For a table, the cell ids in row-major order, with duplicate entries
297 // when there's a rowspan or colspan, and with -1 for missing cells.
298 // There are always exactly rows * columns entries.
299 ax_attr_cell_ids,
301 // For a table, the unique cell ids in row-major order of their first
302 // occurrence.
303 ax_attr_unique_cell_ids,
305 // For inline text. This is the pixel position of the end of this
306 // character within the bounding rectangle of this object, in the
307 // direction given by AX_ATTR_TEXT_DIRECTION. For example, for left-to-right
308 // text, the first offset is the right coordinate of the first character
309 // within the object's bounds, the second offset is the right coordinate
310 // of the second character, and so on.
311 ax_attr_character_offsets,
313 // For inline text. These int lists must be the same size; they represent
314 // the start and end character index of each word within this text.
315 ax_attr_word_starts,
316 ax_attr_word_ends
319 [cpp_omit_enum_type] enum AXTextDirection {
320 ax_text_direction_lr,
321 ax_text_direction_rl,
322 ax_text_direction_tb,
323 ax_text_direction_bt