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