office-gobmx/offapi/com/sun/star/accessibility/AccessibleRole.idl
Jacobo Aragunde Pérez 2bb87dd659 fdo#39944: Add DOCUMENT_* accessibility UNO roles
Added a set of UNO accessibility roles for specific kinds of
documents:
 * DOCUMENT_PRESENTATION for Impress
 * DOCUMENT_SPREADSHEET for Calc
 * DOCUMENT_TEXT for Writer

The other applications still use the existing DOCUMENT role.

These roles translates directly to ATK but in the other toolkits we
keep using the same association that DOCUMENT role had.

Change-Id: Ibac47527e5effdecb28d2314cde8558cf4fb010a
Reviewed-on: https://gerrit.libreoffice.org/7847
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Tested-by: Michael Meeks <michael.meeks@collabora.com>
2014-02-04 13:08:57 +00:00

738 lines
20 KiB
Text

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice:
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed
* with this work for additional information regarding copyright
* ownership. The ASF licenses this file to you under the Apache
* License, Version 2.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy of
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
#ifndef __com_sun_star_accessibility_AccessibleRole_idl__
#define __com_sun_star_accessibility_AccessibleRole_idl__
module com { module sun { module star { module accessibility {
/** Collection of roles.
<p>This collection of constants defines the set of possible roles of
classes implementing the XAccessible interface according to
the Java class javax.accessibility.AccessibleRole. The role of an
object describes its generic function like "button", "menu", or "text".
You can obtain an object's role by calling the
getAccessibleRole() method of the
XAccessibleContext interface.</p>
<p>We are using constants instead of a more typesafe enum. The reason
for this is that IDL enums may not be extended. Therefore, in order to
include future extensions to the set of roles we have to use constants
here.</p>
<p>For some roles there exist two labels with the same value. Please
use the one with the underscores. The other ones are somewhat
deprecated and will be removed in the future. </p>
@see XAccessibleContext
@since OOo 1.1.2
*/
constants AccessibleRole
{
/** Unknown role.
<p>The object contains some Accessible information, but its role is
not known.</p>
*/
const short UNKNOWN = 0;
/** Object is used to alert the user about something.
*/
const short ALERT = 1;
/** The header for a column of data.
*/
const short COLUMN_HEADER = 2;
/** Object that can be drawn into and is used to trap events.
<p>See also FRAME, GLASS_PANE, and
LAYERED_PANE.</p>
*/
const short CANVAS = 3;
/** Check box role.
<p>A choice that can be checked or unchecked and provides a separate
indicator for the current state.</p>
<p>See also PUSH_BUTTON, TOGGLE_BUTTON,
and RADIO_BUTTON.</p>
*/
const short CHECK_BOX = 4;
/** This role is used for check buttons that are menu items.
@see CHECK_BOX, MENU_ITEM
*/
const short CHECK_MENU_ITEM = 5;
/** A specialized dialog that lets the user choose a color.
*/
const short COLOR_CHOOSER = 6;
/** Combo box role.
<p>A list of choices the user can select from. Also optionally
allows the user to enter a choice of their own.</p>
*/
const short COMBO_BOX = 7;
/** Date editor role.
<p>A DATE_EDITOR is a component that allows users to
edit java.util.Date and java.util.Time objects.</p>
*/
const short DATE_EDITOR = 8;
/** An iconified internal frame in a DESKTOP_PANE.
<p>See also DESKTOP_PANE and
INTERNAL_FRAME.</p>
*/
const short DESKTOP_ICON = 9;
/** Desktop pane role.
<p>A pane that supports internal frames and iconified versions of
those internal frames.</p>
*/
const short DESKTOP_PANE = 10;
/** Directory pane role.
<p>A pane that allows the user to navigate through and select the
contents of a directory. May be used by a file chooser.</p>
<p>See also FILE_CHOOSER.</p>
*/
const short DIRECTORY_PANE = 11;
/** Dialog box role.
<p>A top level window with title bar and a border. A dialog is
similar to a frame, but it has fewer properties and is often used as
a secondary window for an application.</p>
<p>See also FRAME and WINDOW.</p>
*/
const short DIALOG = 12;
/** View of a document.
<p>The view of an actual document. Its content depends on the
document type.</p>
*/
const short DOCUMENT = 13;
/** Embedded (OLE) object.
*/
const short EMBEDDED_OBJECT = 14;
/** Text that is used as an endnote (footnote at the end of a chapter or
section.
*/
const short END_NOTE = 15;
/** File chooser role.
<p>A specialized dialog that displays the files in the directory
and lets the user select a file, browse a different directory, or
specify a filename. May use the directory pane to show the contents
of a directory.</p>
<p>See also DIRECTORY_PANE.</p>
*/
const short FILE_CHOOSER = 16;
/** Filler role.
<p>An object that fills up space in a user interface. It is often
used in interfaces to tweak the spacing between components, but
serves no other purpose.</p>
*/
const short FILLER = 17;
/** Font chooser role.
<p>A FONT_CHOOSER is a component that lets the user pick various
attributes for fonts.</p>
*/
const short FONT_CHOOSER = 18;
/** Footer of a document page.
@see HEADER
*/
const short FOOTER = 19;
/** Text that is used as a footnote.
*/
const short FOOTNOTE = 20;
/** Frame role.
<p>A top level window with a title bar, border, menu bar, etc. It
is often used as the primary window for an application.</p>
<p>See also DIALOG, CANVAS, and
WINDOW.</p>
*/
const short FRAME = 21;
/** Glass pane role.
<p>A pane that is guaranteed to be painted on top of all panes
beneath it.</p>
<p>See also ROOT_PANE and CANVAS.</p>
*/
const short GLASS_PANE = 22;
/** Graphical object.
*/
const short GRAPHIC = 23;
/** Group box role.
<p>A GROUP_BOX is a simple container that contains a
border around it and contains components inside it.</p>
*/
const short GROUP_BOX = 24;
/** Header of a document page.
@see FOOTER
*/
const short HEADER = 25;
/** Chapter or section heading.
*/
const short HEADING = 26;
/** A hypertext anchor.
*/
const short HYPER_LINK = 27;
/** A small fixed size picture, typically used to decorate components.
*/
const short ICON = 28;
/** Internal frame role.
<p>A frame-like object that is clipped by a desktop pane. The
desktop pane, internal frame, and desktop icon objects are often
used to create multiple document interfaces within an
application.</p>
<p>See also DESKTOP_ICON, DESKTOP_PANE,
and FRAME.</p>
*/
const short INTERNAL_FRAME = 29;
/** An object used to present an icon or short string in an interface.
*/
const short LABEL = 30;
/** layered pane role.
<p>A specialized pane that allows its children to be drawn in
layers, providing a form of stacking order. This is usually the pane
that holds the menu bar as well as the pane that contains most of
the visual components in a window.</p>
<p>See also GLASS_PANE and
ROOT_PANE.</p>
*/
const short LAYERED_PANE = 31;
/** List role.
<p>An object that presents a list of objects to the user and allows
the user to select one or more of them. A list is usually contained
within a scroll pane.</p>
<p>See also SCROLL_PANE and
LIST_ITEM.</p>
*/
const short LIST = 32;
/** List item role.
<p>An object that presents an element in a list. A list is usually
contained within a scroll pane.</p>
<p>See also SCROLL_PANE and LIST.</p>
*/
const short LIST_ITEM = 33;
/** Menu role.
<p>An object usually found inside a menu bar that contains a list of
actions the user can choose from. A menu can have any object as its
children, but most often they are menu items, other menus, or
rudimentary objects such as radio buttons, check boxes, or
separators. For example, an application may have an "Edit" menu that
contains menu items for "Cut" and "Paste."</p>
<p>See also MENU_BAR, MENU_ITEM,
SEPARATOR, RADIO_BUTTON,
CHECK_BOX, and POPUP_MENU.</p>
*/
const short MENU = 34;
/** Menu bar role.
<p>An object usually drawn at the top of the primary dialog box of
an application that contains a list of menus the user can choose
from. For example, a menu bar might contain menus for "File,"
"Edit," and "Help."</p>
<p>See also MENU, POPUP_MENU, and
LAYERED_PANE.</p>
*/
const short MENU_BAR = 35;
/** Menu item role.
<p>An object usually contained in a menu that presents an action the
user can choose. For example, the "Cut" menu item in an "Edit" menu
would be an action the user can select to cut the selected area of
text in a document.</p>
<p>See also MENUBAR, SEPARATOR, and
POPUP_MENU.</p>
*/
const short MENU_ITEM = 36;
/** A specialized pane whose primary use is inside a DIALOG.
<p>See also DIALOG.</p>
*/
const short OPTION_PANE = 37;
/** Page tab role.
<p>An object that is a child of a page tab list. Its sole child is
the panel that is to be presented to the user when the user selects
the page tab from the list of tabs in the page tab list.</p>
<p>See also PAGE_TAB_LIST.</p>
*/
const short PAGE_TAB = 38;
/** Page tab list role.
<p>An object that presents a series of panels (or page tabs), one at
a time, through some mechanism provided by the object. The most
common mechanism is a list of tabs at the top of the panel. The
children of a page tab list are all page tabs.</p>
<p>See also PAGE_TAB.</p>
*/
const short PAGE_TAB_LIST = 39;
/** A generic container that is often used to group objects.
*/
const short PANEL = 40;
/** Paragraph of text.
*/
const short PARAGRAPH = 41;
/** Password text role.
<p>A text object used for passwords, or other places where the text
contents is not shown visibly to the user.</p>
*/
const short PASSWORD_TEXT = 42;
/** Pop-up menu role.
<p>A temporary window that is usually used to offer the user a list
of choices, and then hides when the user selects one of those
choices.</p>
<p>See also MENU and MENU_ITEM.</p>
*/
const short POPUP_MENU = 43;
/** Push button role.
<p>An object the user can manipulate to tell the application to do
something.</p>
<p>See also CHECK_BOX, TOGGLE_BUTTON,
RADIO_BUTTON, BUTTON_MENU and
BUTTON_DROPDOWN.</p>
*/
const short PUSH_BUTTON = 44;
/** An object used to indicate how much of a task has been completed.
*/
const short PROGRESS_BAR = 45;
/** Radio button role.
<p>A specialized check box that will cause other radio buttons in
the same group to become unchecked when this one is checked.</p>
<p>See also PUSH_BUTTON, TOGGLE_BUTTON,
and CHECK_BOX.</p>
*/
const short RADIO_BUTTON = 46;
/** This role is used for radio buttons that are menu items.
@see RADIO_BUTTON, MENU_ITEM
*/
const short RADIO_MENU_ITEM = 47;
/** The header for a row of data.
*/
const short ROW_HEADER = 48;
/** Root pane role.
<p>A specialized pane that has a glass pane and a layered pane as
its children.</p>
<p>See also GLASS_PANE and LAYERED_PANE.</p>
*/
const short ROOT_PANE = 49;
/** Scroll bar role.
<p>An object usually used to allow a user to incrementally view a
large amount of data. Usually used only by a scroll pane.</p>
<p>See also SCROLL_PANE.</p>
*/
const short SCROLL_BAR = 50;
/** Scroll pane role.
<p>An object that allows a user to incrementally view a large amount
of information. Its children can include scroll bars and a
viewport.</p>
<p>See also SCROLL_BAR and VIEW_PORT.</p>
*/
const short SCROLL_PANE = 51;
/** Object with graphical representation used to represent content on
draw pages.
@see com::sun::star::drawing::AccessibleShape
*/
const short SHAPE = 52;
/** Separator role.
<p>An object usually contained in a menu to provide a visual and
logical separation of the contents in a menu. For example, the
"File" menu of an application might contain menu items for "Open,"
"Close," and "Exit," and will place a separator between "Close" and
"Exit" menu items.</p>
<p>See also MENU and MENU_ITEM.</p>
*/
const short SEPARATOR = 53;
/** Slider role.
<p>An object that allows the user to select from a bounded
range. For example, a slider might be used to select a number
between 0 and 100.</p>
*/
const short SLIDER = 54;
/** Spin box role.
<p>A SPIN_BOX is a simple spinner component and its
main use is for simple numbers.</p>
*/
const short SPIN_BOX = 55;
/** Split pane role.
<p>A specialized panel that presents two other panels at the same
time. Between the two panels is a divider the user can manipulate to
make one panel larger and the other panel smaller.</p>
*/
const short SPLIT_PANE = 56;
/** Status bar role.
<p>A STATUS_BAR is an simple component that can
contain multiple labels of status information to the user.</p>
*/
const short STATUS_BAR = 57;
/** Table component.
<p>An object used to present information in terms of rows and
columns. An example might include a spreadsheet application.</p>
*/
const short TABLE = 58;
/** Single cell in a table.
*/
const short TABLE_CELL = 59;
/** Text role.
<p>An object that presents text to the user. The text is usually
editable by the user as opposed to a label.</p>
<p>See also LABEL.</p>
*/
const short TEXT = 60;
/** Collection of objects that constitute a logical text entity.
*/
const short TEXT_FRAME = 61;
/** Toggle button role.
<p>A specialized push button that can be checked or unchecked, but
does not provide a separate indicator for the current state.</p>
<p>See also PUSH_BUTTON, CHECK_BOX and
RADIO_BUTTON.</p>
*/
const short TOGGLE_BUTTON = 62;
/** Tool bar role.
<p>A bar or palette usually composed of push buttons or toggle
buttons. It is often used to provide the most frequently used
functions for an application.</p>
*/
const short TOOL_BAR = 63;
/** Tool tip role.
<p>An object that provides information about another object. The
accessible Description property of the tool tip is often displayed to
the user in a small "help bubble" when the user causes the mouse to
hover over the object associated with the tool tip.</p>
*/
const short TOOL_TIP = 64;
/** Tree role.
<p>An object used to present hierarchical information to the
user. The individual nodes in the tree can be collapsed and expanded
to provide selective disclosure of the tree's contents.</p>
*/
const short TREE = 65;
/** Viewport role.
<p>An object usually used in a scroll pane. It represents the
portion of the entire data that the user can see. As the user
manipulates the scroll bars, the contents of the viewport can
change.</p>
<p>See also SCROLL_PANE.</p>
*/
const short VIEW_PORT = 66;
/** A top level window with no title or border.
<p>See also FRAME and DIALOG.</p>
*/
const short WINDOW = 67;
/** Button dropdown role
<p>The object represents a button that drops down a list of items.</p>
<p>See also PUSH_BUTTON and BUTTON_MENU.</p>
@since OOo 3.0
*/
const short BUTTON_DROPDOWN = 68;
/** Button menu role
<p>The object represents a button that drops down a menu.</p>
<p>See also PUSH_BUTTON and BUTTON_DROPDOWN.</p>
@since OOo 3.0
*/
const short BUTTON_MENU = 69;
/** Caption role
<p>The object contains descriptive information, usually textual, about
another user interface element such as a table, chart, or image.</p>.
@since OOo 3.0
*/
const short CAPTION = 70;
/** Chart role
<p>The object is a graphical depiction of quantitative data. It may contain multiple
subelements whose attributes and/or description may be queried to obtain both
the quantitative data and information about how the data is being presented.</p>
@since OOo 3.0
*/
const short CHART = 71;
/** Edit bar role
<p>A role indicating the object acts as a formula for calculating a value.</p>
@since OOo 3.0
*/
const short EDIT_BAR = 72;
/** Form role
<p>The object is a container for form controls, for instance as part of a web form
or user-input form within a document.</p>
@since OOo 3.0
*/
const short FORM = 73;
/** Image map role
<p>Usually a graphic with multiple hotspots, where each hotspot can be activated
resulting in the loading of another document or section of a document.</p>
@since OOo 3.0
*/
const short IMAGE_MAP = 74;
/** Note role
<p>An embedded note which is not visible until activated.</p>
@since OOo 3.0
*/
const short NOTE = 75;
/** Page role
<p>An object representing a page of document content. It is used in documents
which are accessed by the user on a page by page basis.</p>
@since OOo 3.0
*/
const short PAGE = 76;
/** Ruler role
<p>An object which describes margins and tab stops, etc. for text objects which it controls.</p>
@since OOo 3.0
*/
const short RULER = 77;
/** Section role
<p>The object is a containing instance of document content which constitutes a particular
"logical" section of the document.</p>
@since OOo 3.0
*/
const short SECTION = 78;
/** Tree item role
<p>An object that presents an element in a tree</p>
</p>See also TREE and TREE_TABLE.</p>
@since OOo 3.0
*/
const short TREE_ITEM = 79;
/** Tree table role
<p>An object which represents both hierarchical and tabular information.</p>
@since OOo 3.0
*/
const short TREE_TABLE = 80;
/** Comment role
<p>An object which represents a comment.</p>
<p>A comment is anchored at a certain content position in the document and
annotates this document content position or a certain text range of the document content.
In the OpenDocument file format a comment is known as an annotation.</p>
<p>See also COMMENT_END.</p>
@since OOo 3.2
*/
const short COMMENT = 81;
/** Comment end role
<p>An invisible object which represents the end position of a text range which
is annotated by a comment - see COMMENT.</p>
<p>This object and the corresponding object representing the comment shall be
in relation of type MEMBER_OF.</p>
@since OOo 3.2
*/
const short COMMENT_END = 82;
/** View of an presentation document.
<p>It's an specific variation of DOCUMENT for presentations.</p>
@since LibreOffice 4.3
*/
const short DOCUMENT_PRESENTATION = 83;
/** View of an spreadsheet document.
<p>It's an specific variation of DOCUMENT for spreadsheets.</p>
@since LibreOffice 4.3
*/
const short DOCUMENT_SPREADSHEET = 84;
/** View of an text document.
<p>It's an specific variation of DOCUMENT for text.</p>
@since LibreOffice 4.3
*/
const short DOCUMENT_TEXT = 85;
};
}; }; }; };
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */