1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: AccessibleRole.idl,v $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 #ifndef __com_sun_star_accessibility_AccessibleRole_idl__
32 #define __com_sun_star_accessibility_AccessibleRole_idl__
34 module com
{ module sun
{ module star
{ module accessibility
{
36 /** Collection of roles.
38 <p>This collection of constans defines the set of possible roles of
39 classes implementing the <type>XAccessible</type> interface according to
40 the java class javax.accessibility.AccessibleRole. The role of an
41 object describes its generic function like 'button', 'menu', or 'text'.
42 You can obtain an object's role by calling the
43 <member>getAccessibleRole</member> method of the
44 <type>XAccessibleContext</type> interface.</p>
46 <p>We are using constants instead of a more typesafe enum. The reason
47 for this is that IDL enums may not be extended. Therefore, in order to
48 include future extensions to the set of roles we have to use constants
51 <p>For some roles there exist two labels with the same value. Please
52 use the one with the underscrores. The other ones are somewhat
53 deprecated and will be removed in the future. </p>
55 @see XAccessibleContext
59 published constants AccessibleRole
64 <p>The object contains some Accessible information, but its role is
67 const short UNKNOWN
= 0;
69 /** Object is used to alert the user about something.
71 const short ALERT
= 1;
73 /** The header for a column of data.
75 const short COLUMN_HEADER
= 2;
77 /** Object that can be drawn into and is used to trap events.
79 <p>See alse <const>FRAME</const>, <const>GLASS_PANE</const>, and
80 <const>LAYERED_PANE</const>.</p>
82 const short CANVAS
= 3;
86 <p>A choice that can be checked or unchecked and provides a separate
87 indicator for the current state.</p>
89 <p>See also <const>PUSH_BUTTON</const>, <const>TOGGLE_BUTTON</const>,
90 and <const>RADIO_BUTTON</const>.</p>
92 const short CHECK_BOX
= 4;
94 /** This role is used for check buttons that are menu items.
96 @see CHECK_BOX, MENU_ITEM
98 const short CHECK_MENU_ITEM
= 5;
100 /** A specialized dialog that lets the user choose a color.
102 const short COLOR_CHOOSER
= 6;
106 <p>A list of choices the user can select from. Also optionally
107 allows the user to enter a choice of their own.</p>
109 const short COMBO_BOX
= 7;
111 /** Date editor role.
113 <p>A <const>DATE_EDITOR</const> is a component that allows users to
114 edit java.util.Date and java.util.Time objects.</p>
116 const short DATE_EDITOR
= 8;
118 /** An iconified internal frame in a DESKTOP_PANE.
120 <p>See also <const>DESKTOP_PANE</const> and
121 <const>INTERNAL_FRAME</const>.</p>
123 const short DESKTOP_ICON
= 9;
125 /** Desktop pane role.
127 <p>A pane that supports internal frames and iconified versions of
128 those internal frames.</p>
130 const short DESKTOP_PANE
= 10;
132 /** Directory pane role.
134 <p>A pane that allows the user to navigate through and select the
135 contents of a directory. May be used by a file chooser.</p>
137 <p>See also <const>FILE_CHOOSER</const>.</p>
139 const short DIRECTORY_PANE
= 11;
143 <p>A top level window with title bar and a border. A dialog is
144 similar to a frame, but it has fewer properties and is often used as
145 a secondary window for an application.</p>
147 <p>See also <const>FRAME</const> and <const>WINDOW</const>.</p>
149 const short DIALOG
= 12;
151 /** View of a document.
153 <p>The view of an actual document. Its content depends on the
156 const short DOCUMENT
= 13;
158 /** Embeded (OLE) object.
160 const short EMBEDDED_OBJECT
= 14;
162 /** Text that is used as an endnote (footnote at the end of a chapter or
165 const short END_NOTE
= 15;
167 /** File chooser role.
169 <p>A specialized dialog that displays the files in the directory
170 and lets the user select a file, browse a different directory, or
171 specify a filename. May use the directory pane to show the contents
174 <p>See also <const>DIRECTORY_PANE</const>.</p>
176 const short FILE_CHOOSER
= 16;
180 <p>An object that fills up space in a user interface. It is often
181 used in interfaces to tweak the spacing between components, but
182 serves no other purpose.</p>
184 const short FILLER
= 17;
186 /** Font chooser role.
188 <p>A <const>FONT_CHOOSER</const> is a component that lets the user pick various
189 attributes for fonts.</p>
191 const short FONT_CHOOSER
= 18;
193 /** Footer of a document page.
196 const short FOOTER
= 19;
198 /** Text that is used as a footnote.
200 const short FOOTNOTE
= 20;
204 <p>A top level window with a title bar, border, menu bar, etc. It
205 is often used as the primary window for an application.</p>
207 <p>See also <const>DIALOG</const>, <const>CANVAS</const>, and
208 <const>WINDOW</const>.</p>
210 const short FRAME
= 21;
214 <p>A pane that is guaranteed to be painted on top of all panes
217 <p>See also <const>ROOT_PANE</const> and <const>CANVAS</const>.</p>
219 const short GLASS_PANE
= 22;
221 /** Graphical object.
223 const short GRAPHIC
= 23;
227 <p>A <const>GROUP_BOX</const> is a simple container that contains a
228 border around it and contains components inside it.</p>
230 const short GROUP_BOX
= 24;
232 /** Header of a document page.
235 const short HEADER
= 25;
237 /** Chapter or section heading.
239 const short HEADING
= 26;
241 /** A hypertext anchor.
243 const short HYPER_LINK
= 27;
245 /** A small fixed size picture, typically used to decorate components.
247 const short ICON
= 28;
249 /** Internal frame role.
251 <p>A frame-like object that is clipped by a desktop pane. The
252 desktop pane, internal frame, and desktop icon objects are often
253 used to create multiple document interfaces within an
256 <p>See also <const>DESKTOP_ICON</const>, <const>DESKTOP_PANE</const>,
257 and <const>FRAME</const>.</p>
259 const short INTERNAL_FRAME
= 29;
261 /** An object used to present an icon or short string in an interface.
263 const short LABEL
= 30;
265 /** layered pane role.
267 <p>A specialized pane that allows its children to be drawn in
268 layers, providing a form of stacking order. This is usually the pane
269 that holds the menu bar as well as the pane that contains most of
270 the visual components in a window.</p>
272 <p>See also <const>GLASS_PANE</const> and
273 <const>ROOT_PANE</const>.</p>
275 const short LAYERED_PANE
= 31;
279 <p>An object that presents a list of objects to the user and allows
280 the user to select one or more of them. A list is usually contained
281 within a scroll pane.</p>
283 <p>See also <const>SCROLL_PANE</const> and
284 <const>LIST_ITEM</const>.</p>
286 const short LIST
= 32;
290 <p>An object that presents an element in a list. A list is usually
291 contained within a scroll pane.</p>
293 <p>See also <const>SCROLL_PANE</const> and <const>LIST</const>.</p>
295 const short LIST_ITEM
= 33;
299 <p>An object usually found inside a menu bar that contains a list of
300 actions the user can choose from. A menu can have any object as its
301 children, but most often they are menu items, other menus, or
302 rudimentary objects such as radio buttons, check boxes, or
303 separators. For example, an application may have an "Edit" menu that
304 contains menu items for "Cut" and "Paste."</p>
306 <p>See also <const>MENU_BAR</const>, <const>MENU_ITEM</const>,
307 <const>SEPARATOR</const>, <const>RADIO_BUTTON</const>,
308 <const>CHECK_BOX</const>, and <const>POPUP_MENU</const>.</p>
310 const short MENU
= 34;
314 <p>An object usually drawn at the top of the primary dialog box of
315 an application that contains a list of menus the user can choose
316 from. For example, a menu bar might contain menus for "File,"
317 "Edit," and "Help."</p>
319 <p>See also <const>MENU</const>, <const>POPUP_MENU</const>, and
320 <const>LAYERED_PANE</const>.</p>
322 const short MENU_BAR
= 35;
326 <p>An object usually contained in a menu that presents an action the
327 user can choose. For example, the "Cut" menu item in an "Edit" menu
328 would be an action the user can select to cut the selected area of
329 text in a document.</p>
331 <p>See also <const>MENUBAR</const>, <const>SEPARATOR</const>, and
332 <const>POPUP_MENU</const>.</p>
334 const short MENU_ITEM
= 36;
336 /** A specialized pane whose primary use is inside a <const>DIALOG</const>.
338 <p>See also <const>DIALOG</const>.</p>
340 const short OPTION_PANE
= 37;
344 <p>An object that is a child of a page tab list. Its sole child is
345 the panel that is to be presented to the user when the user selects
346 the page tab from the list of tabs in the page tab list.</p>
348 <p>See also <const>PAGE_TAB_LIST</const>.</p>
350 const short PAGE_TAB
= 38;
352 /** Page tab list role.
354 <p>An object that presents a series of panels (or page tabs), one at
355 a time, through some mechanism provided by the object. The most
356 common mechanism is a list of tabs at the top of the panel. The
357 children of a page tab list are all page tabs.</p>
359 <p>See also <const>PAGE_TAB</const>.</p>
361 const short PAGE_TAB_LIST
= 39;
363 /** A generic container that is often used to group objects.
365 const short PANEL
= 40;
367 /** Paragraph of text.
369 const short PARAGRAPH
= 41;
371 /** Password text role.
373 <p>A text object used for passwords, or other places where the text
374 contents is not shown visibly to the user.</p>
376 const short PASSWORD_TEXT
= 42;
380 <p>A temporary window that is usually used to offer the user a list
381 of choices, and then hides when the user selects one of those
384 <p>See also <const>MENU</const> and <const>MENU_ITEM</const>.</p>
386 const short POPUP_MENU
= 43;
388 /** Push button role.
390 <p>An object the user can manipulate to tell the application to do
393 <p>See also <const>CHECK_BOX</const>, <const>TOGGLE_BUTTON</const>,
394 <const>RADIO_BUTTON</const>, <const>BUTTON_MENU</const> and
395 <const>BUTTON_DROPDOWN</const>.</p>
397 const short PUSH_BUTTON
= 44;
399 /** An object used to indicate how much of a task has been completed.
401 const short PROGRESS_BAR
= 45;
403 /** Radio button role.
405 <p>A specialized check box that will cause other radio buttons in
406 the same group to become unchecked when this one is checked.</p>
408 <p>See also <const>PUSH_BUTTON</const>, <const>TOGGLE_BUTTON</const>,
409 and <const>CHECK_BOX</const>.</p>
411 const short RADIO_BUTTON
= 46;
413 /** This role is used for radio buttons that are menu items.
415 @see RADIO_BUTTON, MENU_ITEM
417 const short RADIO_MENU_ITEM
= 47;
419 /** The header for a row of data.
421 const short ROW_HEADER
= 48;
425 <p>A specialized pane that has a glass pane and a layered pane as
428 <p>See also <const>GLASS_PANE</const> and <const>LAYERED_PANE</const>.</p>
430 const short ROOT_PANE
= 49;
434 <p>An object usually used to allow a user to incrementally view a
435 large amount of data. Usually used only by a scroll pane.</p>
437 <p>Ssee also <const>SCROLL_PANE</const>.</p>
439 const short SCROLL_BAR
= 50;
441 /** Scroll pane role.
443 <p>An object that allows a user to incrementally view a large amount
444 of information. Its children can include scroll bars and a
447 <p>See also <const>SCROLL_BAR</const> and <const>VIEW_PORT</const>.</p>
449 const short SCROLL_PANE
= 51;
451 /** Object with graphical representation used to represent content on
454 @see com::sun::star::drawing::AccessibleShape
456 const short SHAPE
= 52;
460 <p>An object usually contained in a menu to provide a visual and
461 logical separation of the contents in a menu. For example, the
462 "File" menu of an application might contain menu items for "Open,"
463 "Close," and "Exit," and will place a separator between "Close" and
464 "Exit" menu items.</p>
466 <p>See also <const>MENU</const> and <const>MENU_ITEM</const>.</p>
468 const short SEPARATOR
= 53;
472 <p>An object that allows the user to select from a bounded
473 range. For example, a slider might be used to select a number
474 between 0 and 100.</p>
476 const short SLIDER
= 54;
480 <p>A <const>SPIN_BOX</const> is a simple spinner component and its
481 main use is for simple numbers.</p>
483 const short SPIN_BOX
= 55;
487 <p>A specialized panel that presents two other panels at the same
488 time. Between the two panels is a divider the user can manipulate to
489 make one panel larger and the other panel smaller.</p>
491 const short SPLIT_PANE
= 56;
495 <p>A <const>STATUS_BAR</const> is an simple component that can
496 contain multiple labels of status information to the user.</p>
498 const short STATUS_BAR
= 57;
502 <p>An object used to present information in terms of rows and
503 columns. An example might include a spreadsheet application.</p>
505 const short TABLE
= 58;
507 /** Single cell in a table.
509 const short TABLE_CELL
= 59;
513 <p>An object that presents text to the user. The text is usually
514 editable by the user as opposed to a label.</p>
516 <p>See also <const>LABEL</const>.</p>
518 const short TEXT
= 60;
520 /** Collection of objects that constitute a logical text entity.
522 const short TEXT_FRAME
= 61;
524 /** Toggle button role.
526 <p>A specialized push button that can be checked or unchecked, but
527 does not provide a separate indicator for the current state.</p>
529 <p>See also <const>PUSH_BUTTON</const>, <const>CHECK_BOX</const> and
530 <const>RADIO_BUTTON</const>.</p>
532 const short TOGGLE_BUTTON
= 62;
536 <p>A bar or palette usually composed of push buttons or toggle
537 buttons. It is often used to provide the most frequently used
538 functions for an application.</p>
540 const short TOOL_BAR
= 63;
544 <p>An object that provides information about another object. The
545 accessibleDescription property of the tool tip is often displayed to
546 the user in a small "help bubble" when the user causes the mouse to
547 hover over the object associated with the tool tip.</p>
549 const short TOOL_TIP
= 64;
553 <p>An object used to present hierarchical information to the
554 user. The individual nodes in the tree can be collapsed and expanded
555 to provide selective disclosure of the tree's contents.</p>
557 const short TREE
= 65;
561 <p>An object usually used in a scroll pane. It represents the
562 portion of the entire data that the user can see. As the user
563 manipulates the scroll bars, the contents of the viewport can
566 <p>See also <const>SCROLL_PANE</const>.</p>
568 const short VIEW_PORT
= 66;
570 /** A top level window with no title or border.
572 <p>See also <const>FRAME</const> and <const>DIALOG</const>.</p>
574 const short WINDOW
= 67;
576 /** Button dropdown role
578 <p>The object represents a button that drops down a list of items.</p>
580 <p>See also <const>PUSH_BUTTON</const> and <const>BUTTON_MENU</const>.</p>
584 const short BUTTON_DROPDOWN
= 68;
588 <p>The object represents a button that drops down a menu.</p>
590 <p>See also <const>PUSH_BUTTON</const> and <const>BUTTON_DROPDOWN</const>.</p>
594 const short BUTTON_MENU
= 69;
598 <p>The object contains descriptive information, usually textual, about
599 another user interface element such as a table, chart, or image.</p>.
603 const short CAPTION
= 70;
607 <p>The object is a graphical depiction of quantitative data. It may contain multiple
608 subelements whose attributes and/or description may be queried to obtain both
609 the quantitative data and information about how the data is being presented.</p>
613 const short CHART
= 71;
617 <p>A role indicating the object acts as a formula for calculating a value.</p>
621 const short EDIT_BAR
= 72;
625 <p>The object is a container for form controls, for instance as part of a web form
626 or user-input form within a document.</p>
630 const short FORM
= 73;
634 <p>Usually a graphic with multiple hotspots, where each hotspot can be activated
635 resulting in the loading of another document or section of a document.</p>
639 const short IMAGE_MAP
= 74;
643 <p>An embedded note which is not visible until activated.</p>
647 const short NOTE
= 75;
651 <p>An object representing a page of document content. It is used in documents
652 which are accessed by the user on a page by page basis.</p>
656 const short PAGE
= 76;
660 <p>An object which describes margins and tab stops, etc. for text objects which it controls.</p>
664 const short RULER
= 77;
668 <p>The object is a containing instance of document content which constitutes a particular
669 'logical' section of the document.</p>
673 const short SECTION
= 78;
677 <p>An object that presents an element in a tree</p>
679 </p>See also <const>TREE</const> and <const>TREE_TABLE</const>.</p>
683 const short TREE_ITEM
= 79;
687 <p>An object which represents both hierarchical and tabular information.</p>
691 const short TREE_TABLE
= 80;