1/*************************************************************************
2 *
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
6 *
7 * OpenOffice.org - a multi-platform office productivity suite
8 *
9 * This file is part of OpenOffice.org.
10 *
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
14 *
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
20 *
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org.  If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
25 *
26 ************************************************************************/
27
28#ifndef __com_sun_star_accessibility_AccessibleRole_idl__
29#define __com_sun_star_accessibility_AccessibleRole_idl__
30
31module com { module sun { module star { module accessibility {
32
33/** Collection of roles.
34
35    <p>This collection of constans defines the set of possible roles of
36    classes implementing the <type>XAccessible</type> interface according to
37    the java class javax.accessibility.AccessibleRole.  The role of an
38    object describes its generic function like 'button', 'menu', or 'text'.
39    You can obtain an object's role by calling the
40    <member>getAccessibleRole</member> method of the
41    <type>XAccessibleContext</type> interface.</p>
42
43    <p>We are using constants instead of a more typesafe enum.  The reason
44    for this is that IDL enums may not be extended.  Therefore, in order to
45    include future extensions to the set of roles we have to use constants
46    here.</p>
47
48    <p>For some roles there exist two labels with the same value.  Please
49    use the one with the underscrores.  The other ones are somewhat
50    deprecated and will be removed in the future. </p>
51
52    @see XAccessibleContext
53
54    @since OOo 1.1.2
55*/
56published constants AccessibleRole
57{
58
59    /** Unknown role.
60
61        <p>The object contains some Accessible information, but its role is
62        not known.</p>
63    */
64    const short UNKNOWN = 0;
65
66    /** Object is used to alert the user about something.
67    */
68    const short ALERT = 1;
69
70    /** The header for a column of data.
71    */
72    const short COLUMN_HEADER = 2;
73
74    /** Object that can be drawn into and is used to trap events.
75
76        <p>See alse <const>FRAME</const>, <const>GLASS_PANE</const>, and
77        <const>LAYERED_PANE</const>.</p>
78    */
79    const short CANVAS = 3;
80
81    /** Check box role.
82
83        <p>A choice that can be checked or unchecked and provides a separate
84        indicator for the current state.</p>
85
86        <p>See also <const>PUSH_BUTTON</const>, <const>TOGGLE_BUTTON</const>,
87        and <const>RADIO_BUTTON</const>.</p>
88    */
89    const short CHECK_BOX = 4;
90
91    /** This role is used for check buttons that are menu items.
92
93        @see CHECK_BOX, MENU_ITEM
94    */
95    const short CHECK_MENU_ITEM = 5;
96
97    /** A specialized dialog that lets the user choose a color.
98    */
99    const short COLOR_CHOOSER = 6;
100
101    /** Combo box role.
102
103        <p>A list of choices the user can select from.  Also optionally
104        allows the user to enter a choice of their own.</p>
105    */
106    const short COMBO_BOX = 7;
107
108    /** Date editor role.
109
110        <p>A <const>DATE_EDITOR</const> is a component that allows users to
111        edit java.util.Date and java.util.Time objects.</p>
112    */
113    const short DATE_EDITOR = 8;
114
115    /** An iconified internal frame in a DESKTOP_PANE.
116
117        <p>See also <const>DESKTOP_PANE</const> and
118        <const>INTERNAL_FRAME</const>.</p>
119    */
120    const short DESKTOP_ICON = 9;
121
122    /** Desktop pane role.
123
124        <p>A pane that supports internal frames and iconified versions of
125        those internal frames.</p>
126    */
127    const short DESKTOP_PANE = 10;
128
129    /** Directory pane role.
130
131        <p>A pane that allows the user to navigate through and select the
132        contents of a directory. May be used by a file chooser.</p>
133
134        <p>See also <const>FILE_CHOOSER</const>.</p>
135    */
136    const short DIRECTORY_PANE = 11;
137
138    /** Dialog box role.
139
140        <p>A top level window with title bar and a border. A dialog is
141        similar to a frame, but it has fewer properties and is often used as
142        a secondary window for an application.</p>
143
144        <p>See also <const>FRAME</const> and <const>WINDOW</const>.</p>
145    */
146    const short DIALOG = 12;
147
148    /** View of a document.
149
150        <p>The view of an actual document.  Its content depends on the
151        documen type.</p>
152    */
153    const short DOCUMENT = 13;
154
155    /** Embeded (OLE) object.
156    */
157    const short EMBEDDED_OBJECT = 14;
158
159    /** Text that is used as an endnote (footnote at the end of a chapter or
160        section.
161    */
162    const short END_NOTE = 15;
163
164    /** File chooser role.
165
166        <p>A specialized dialog that displays the files in the directory
167        and lets the user select a file, browse a different directory, or
168        specify a filename. May use the directory pane to show the contents
169        of a directory.</p>
170
171        <p>See also <const>DIRECTORY_PANE</const>.</p>
172    */
173    const short FILE_CHOOSER = 16;
174
175    /** Filler role.
176
177        <p>An object that fills up space in a user interface. It is often
178        used in interfaces to tweak the spacing between components, but
179        serves no other purpose.</p>
180    */
181    const short FILLER = 17;
182
183    /** Font chooser role.
184
185        <p>A <const>FONT_CHOOSER</const> is a component that lets the user pick various
186        attributes for fonts.</p>
187    */
188    const short FONT_CHOOSER = 18;
189
190    /** Footer of a document page.
191        @see HEADER
192    */
193    const short FOOTER = 19;
194
195    /** Text that is used as a footnote.
196    */
197    const short FOOTNOTE = 20;
198
199    /** Frame role.
200
201        <p>A top level window with a title bar, border, menu bar, etc.  It
202        is often used as the primary window for an application.</p>
203
204        <p>See also <const>DIALOG</const>, <const>CANVAS</const>, and
205        <const>WINDOW</const>.</p>
206    */
207    const short FRAME = 21;
208
209    /** Glass pane role.
210
211        <p>A pane that is guaranteed to be painted on top of all panes
212        beneath it.</p>
213
214        <p>See also <const>ROOT_PANE</const> and <const>CANVAS</const>.</p>
215    */
216    const short GLASS_PANE = 22;
217
218    /** Graphical object.
219    */
220    const short GRAPHIC = 23;
221
222    /** Group box role.
223
224        <p>A <const>GROUP_BOX</const> is a simple container that contains a
225        border around it and contains components inside it.</p>
226    */
227    const short GROUP_BOX = 24;
228
229    /** Header of a document page.
230        @see FOOTER
231    */
232    const short HEADER = 25;
233
234    /** Chapter or section heading.
235    */
236    const short HEADING = 26;
237
238    /** A hypertext anchor.
239    */
240    const short HYPER_LINK = 27;
241
242    /** A small fixed size picture, typically used to decorate components.
243    */
244    const short ICON = 28;
245
246    /** Internal frame role.
247
248        <p>A frame-like object that is clipped by a desktop pane.  The
249        desktop pane, internal frame, and desktop icon objects are often
250        used to create multiple document interfaces within an
251        application.</p>
252
253        <p>See also <const>DESKTOP_ICON</const>, <const>DESKTOP_PANE</const>,
254        and <const>FRAME</const>.</p>
255    */
256    const short INTERNAL_FRAME = 29;
257
258    /** An object used to present an icon or short string in an interface.
259    */
260    const short LABEL = 30;
261
262    /** layered pane role.
263
264        <p>A specialized pane that allows its children to be drawn in
265        layers, providing a form of stacking order. This is usually the pane
266        that holds the menu bar as well as the pane that contains most of
267        the visual components in a window.</p>
268
269        <p>See also <const>GLASS_PANE</const> and
270        <const>ROOT_PANE</const>.</p>
271    */
272    const short LAYERED_PANE = 31;
273
274    /** List role.
275
276        <p>An object that presents a list of objects to the user and allows
277        the user to select one or more of them. A list is usually contained
278        within a scroll pane.</p>
279
280        <p>See also <const>SCROLL_PANE</const> and
281        <const>LIST_ITEM</const>.</p>
282    */
283    const short LIST = 32;
284
285    /** List item role.
286
287        <p>An object that presents an element in a list. A list is usually
288        contained within a scroll pane.</p>
289
290        <p>See also <const>SCROLL_PANE</const> and <const>LIST</const>.</p>
291    */
292    const short LIST_ITEM = 33;
293
294    /** Menu role.
295
296        <p>An object usually found inside a menu bar that contains a list of
297        actions the user can choose from. A menu can have any object as its
298        children, but most often they are menu items, other menus, or
299        rudimentary objects such as radio buttons, check boxes, or
300        separators. For example, an application may have an "Edit" menu that
301        contains menu items for "Cut" and "Paste."</p>
302
303        <p>See also <const>MENU_BAR</const>, <const>MENU_ITEM</const>,
304        <const>SEPARATOR</const>, <const>RADIO_BUTTON</const>,
305        <const>CHECK_BOX</const>, and <const>POPUP_MENU</const>.</p>
306    */
307    const short MENU = 34;
308
309    /** Menu bar role.
310
311        <p>An object usually drawn at the top of the primary dialog box of
312        an application that contains a list of menus the user can choose
313        from. For example, a menu bar might contain menus for "File,"
314        "Edit," and "Help."</p>
315
316        <p>See also <const>MENU</const>, <const>POPUP_MENU</const>, and
317        <const>LAYERED_PANE</const>.</p>
318    */
319    const short MENU_BAR = 35;
320
321    /** Menu item role.
322
323        <p>An object usually contained in a menu that presents an action the
324        user can choose. For example, the "Cut" menu item in an "Edit" menu
325        would be an action the user can select to cut the selected area of
326        text in a document.</p>
327
328        <p>See also <const>MENUBAR</const>, <const>SEPARATOR</const>, and
329        <const>POPUP_MENU</const>.</p>
330    */
331    const short MENU_ITEM = 36;
332
333    /** A specialized pane whose primary use is inside a <const>DIALOG</const>.
334
335        <p>See also <const>DIALOG</const>.</p>
336    */
337    const short OPTION_PANE = 37;
338
339    /** Page tab role.
340
341        <p>An object that is a child of a page tab list. Its sole child is
342        the panel that is to be presented to the user when the user selects
343        the page tab from the list of tabs in the page tab list.</p>
344
345        <p>See also <const>PAGE_TAB_LIST</const>.</p>
346    */
347    const short PAGE_TAB = 38;
348
349    /** Page tab list role.
350
351        <p>An object that presents a series of panels (or page tabs), one at
352        a time, through some mechanism provided by the object. The most
353        common mechanism is a list of tabs at the top of the panel. The
354        children of a page tab list are all page tabs.</p>
355
356        <p>See also <const>PAGE_TAB</const>.</p>
357    */
358    const short PAGE_TAB_LIST = 39;
359
360    /** A generic container that is often used to group objects.
361    */
362    const short PANEL = 40;
363
364    /** Paragraph of text.
365    */
366    const short PARAGRAPH = 41;
367
368    /** Password text role.
369
370        <p>A text object used for passwords, or other places where the text
371        contents is not shown visibly to the user.</p>
372    */
373    const short PASSWORD_TEXT = 42;
374
375    /** Popup menu role.
376
377        <p>A temporary window that is usually used to offer the user a list
378        of choices, and then hides when the user selects one of those
379        choices.</p>
380
381        <p>See also <const>MENU</const> and <const>MENU_ITEM</const>.</p>
382    */
383    const short POPUP_MENU = 43;
384
385    /** Push button role.
386
387        <p>An object the user can manipulate to tell the application to do
388        something.</p>
389
390        <p>See also <const>CHECK_BOX</const>, <const>TOGGLE_BUTTON</const>,
391        <const>RADIO_BUTTON</const>, <const>BUTTON_MENU</const> and
392        <const>BUTTON_DROPDOWN</const>.</p>
393    */
394    const short PUSH_BUTTON = 44;
395
396    /** An object used to indicate how much of a task has been completed.
397    */
398    const short PROGRESS_BAR = 45;
399
400    /** Radio button role.
401
402        <p>A specialized check box that will cause other radio buttons in
403        the same group to become unchecked when this one is checked.</p>
404
405        <p>See also <const>PUSH_BUTTON</const>, <const>TOGGLE_BUTTON</const>,
406        and <const>CHECK_BOX</const>.</p>
407    */
408    const short RADIO_BUTTON = 46;
409
410    /** This role is used for radio buttons that are menu items.
411
412        @see RADIO_BUTTON, MENU_ITEM
413    */
414    const short RADIO_MENU_ITEM = 47;
415
416    /** The header for a row of data.
417    */
418    const short ROW_HEADER = 48;
419
420    /** Root pane role.
421
422        <p>A specialized pane that has a glass pane and a layered pane as
423        its children.</p>
424
425        <p>See also <const>GLASS_PANE</const> and <const>LAYERED_PANE</const>.</p>
426    */
427    const short ROOT_PANE = 49;
428
429    /** Scroll bar role.
430
431        <p>An object usually used to allow a user to incrementally view a
432        large amount of data. Usually used only by a scroll pane.</p>
433
434        <p>Ssee also <const>SCROLL_PANE</const>.</p>
435    */
436    const short SCROLL_BAR = 50;
437
438    /** Scroll pane role.
439
440        <p>An object that allows a user to incrementally view a large amount
441        of information. Its children can include scroll bars and a
442        viewport.</p>
443
444        <p>See also <const>SCROLL_BAR</const> and <const>VIEW_PORT</const>.</p>
445    */
446    const short SCROLL_PANE = 51;
447
448    /** Object with graphical representation used to represent content on
449        draw pages.
450
451        @see com::sun::star::drawing::AccessibleShape
452    */
453    const short SHAPE = 52;
454
455    /** Separator role.
456
457        <p>An object usually contained in a menu to provide a visual and
458        logical separation of the contents in a menu. For example, the
459        "File" menu of an application might contain menu items for "Open,"
460        "Close," and "Exit," and will place a separator between "Close" and
461        "Exit" menu items.</p>
462
463        <p>See also <const>MENU</const> and <const>MENU_ITEM</const>.</p>
464    */
465    const short SEPARATOR = 53;
466
467    /** Slider role.
468
469        <p>An object that allows the user to select from a bounded
470        range. For example, a slider might be used to select a number
471        between 0 and 100.</p>
472    */
473    const short SLIDER = 54;
474
475    /** Spin box role.
476
477        <p>A <const>SPIN_BOX</const> is a simple spinner component and its
478        main use is for simple numbers.</p>
479    */
480    const short SPIN_BOX = 55;
481
482    /** Split pane role.
483
484        <p>A specialized panel that presents two other panels at the same
485        time. Between the two panels is a divider the user can manipulate to
486        make one panel larger and the other panel smaller.</p>
487    */
488    const short SPLIT_PANE = 56;
489
490    /** Status bar role.
491
492        <p>A <const>STATUS_BAR</const> is an simple component that can
493        contain multiple labels of status information to the user.</p>
494    */
495    const short STATUS_BAR = 57;
496
497    /** Table component.
498
499        <p>An object used to present information in terms of rows and
500        columns. An example might include a spreadsheet application.</p>
501    */
502    const short TABLE = 58;
503
504    /** Single cell in a table.
505    */
506    const short TABLE_CELL = 59;
507
508    /** Text role.
509
510        <p>An object that presents text to the user. The text is usually
511        editable by the user as opposed to a label.</p>
512
513        <p>See also <const>LABEL</const>.</p>
514    */
515    const short TEXT = 60;
516
517    /** Collection of objects that constitute a logical text entity.
518    */
519    const short TEXT_FRAME = 61;
520
521    /** Toggle button role.
522
523        <p>A specialized push button that can be checked or unchecked, but
524        does not provide a separate indicator for the current state.</p>
525
526        <p>See also <const>PUSH_BUTTON</const>, <const>CHECK_BOX</const> and
527        <const>RADIO_BUTTON</const>.</p>
528    */
529    const short TOGGLE_BUTTON = 62;
530
531    /** Tool bar role.
532
533        <p>A bar or palette usually composed of push buttons or toggle
534        buttons. It is often used to provide the most frequently used
535        functions for an application.</p>
536    */
537    const short TOOL_BAR = 63;
538
539    /** Tool tip role.
540
541        <p>An object that provides information about another object. The
542        accessibleDescription property of the tool tip is often displayed to
543        the user in a small "help bubble" when the user causes the mouse to
544        hover over the object associated with the tool tip.</p>
545    */
546    const short TOOL_TIP = 64;
547
548    /** Tree role.
549
550        <p>An object used to present hierarchical information to the
551        user. The individual nodes in the tree can be collapsed and expanded
552        to provide selective disclosure of the tree's contents.</p>
553    */
554    const short TREE = 65;
555
556    /** Viewport role.
557
558        <p>An object usually used in a scroll pane. It represents the
559        portion of the entire data that the user can see. As the user
560        manipulates the scroll bars, the contents of the viewport can
561        change.</p>
562
563        <p>See also <const>SCROLL_PANE</const>.</p>
564    */
565    const short VIEW_PORT = 66;
566
567    /** A top level window with no title or border.
568
569        <p>See also <const>FRAME</const> and <const>DIALOG</const>.</p>
570    */
571    const short WINDOW = 67;
572
573    /** Button dropdown role
574
575        <p>The object represents a button that drops down a list of items.</p>
576
577        <p>See also <const>PUSH_BUTTON</const> and <const>BUTTON_MENU</const>.</p>
578
579        @since OOo 3.0
580    */
581    const short BUTTON_DROPDOWN = 68;
582
583    /** Button menu role
584
585        <p>The object represents a button that drops down a menu.</p>
586
587        <p>See also <const>PUSH_BUTTON</const> and <const>BUTTON_DROPDOWN</const>.</p>
588
589        @since OOo 3.0
590    */
591    const short BUTTON_MENU = 69;
592
593    /** Caption role
594
595        <p>The object contains descriptive information, usually textual, about
596        another user interface element such as a table, chart, or image.</p>.
597
598        @since OOo 3.0
599    */
600    const short CAPTION = 70;
601
602    /** Chart role
603
604        <p>The object is a graphical depiction of quantitative data. It may contain multiple
605        subelements whose attributes and/or description may be queried to obtain both
606        the quantitative data and information about how the data is being presented.</p>
607
608        @since OOo 3.0
609    */
610    const short CHART = 71;
611
612    /** Edit bar role
613
614        <p>A role indicating the object acts as a formula for calculating a value.</p>
615
616         @since OOo 3.0
617    */
618    const short EDIT_BAR = 72;
619
620    /** Form role
621
622        <p>The object is a container for form controls, for instance as part of a web form
623        or user-input form within a document.</p>
624
625        @since OOo 3.0
626    */
627    const short FORM = 73;
628
629    /** Image map role
630
631	<p>Usually a graphic with multiple hotspots, where each hotspot can be activated
632        resulting in the loading of another document or section of a document.</p>
633
634        @since OOo 3.0
635    */
636    const short IMAGE_MAP = 74;
637
638    /** Note role
639
640        <p>An embedded note which is not visible until activated.</p>
641
642        @since OOo 3.0
643    */
644    const short NOTE = 75;
645
646    /** Page role
647
648        <p>An object representing a page of document content. It is used in documents
649        which are accessed by the user on a page by page basis.</p>
650
651        @since OOo 3.0
652    */
653    const short PAGE = 76;
654
655    /** Ruler role
656
657        <p>An object which describes margins and tab stops, etc. for text objects which it controls.</p>
658
659        @since OOo 3.0
660    */
661    const short RULER = 77;
662
663    /** Section role
664
665        <p>The object is a containing instance of document content which constitutes a particular
666        'logical' section of the document.</p>
667
668        @since OOo 3.0
669    */
670    const short SECTION = 78;
671
672    /** Tree item role
673
674        <p>An object that presents an element in a tree</p>
675
676        </p>See also <const>TREE</const> and <const>TREE_TABLE</const>.</p>
677
678        @since OOo 3.0
679    */
680    const short TREE_ITEM = 79;
681
682    /** Tree table role
683
684        <p>An object which represents both hierarchical and tabular information.</p>
685
686        @since OOo 3.0
687    */
688    const short TREE_TABLE = 80;
689
690    /** Comment role
691
692        <p>An object which represents a comment.</p>
693
694        <p>A comment is anchored at a certain content position in the document and
695        annotates this document content position or a certain text range of the document content.
696        In the OpenDocument file format a comment is known as an annotation.</p>
697
698        <p>See also <const>COMMENT_END</const>.</p>
699
700        @since OOo 3.2
701    */
702    const short COMMENT = 81;
703
704    /** Comment end role
705
706        <p>An invisible object which represents the end position of a text range which
707        is annotated by a comment - see <const>COMMENT</const>.</p>
708
709        <p>This object and the corresponding object representing the comment shall be
710        in relation of type <const>MEMBER_OF</const>.</p>
711
712        @since OOo 3.2
713    */
714    const short COMMENT_END = 82;
715
716};
717
718}; }; }; };
719
720#endif
721