From 46764a3795ea7fa05b2ea4efa30d239c62b1999c Mon Sep 17 00:00:00 2001
From: Mike Gorse
This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version.
+ +This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details.
+ +You should have received a copy of the GNU Library General Public + License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA.
+A choice that can be checked or unchecked and provides a separate + indicator for the current state.
+A pane that supports internal frames and iconified versions of those + internal frames.
+An object that allows a value to be changed via rotating a visual element, + or which displays a value via such a rotating element.
+A pane that allows the user to navigate through and select the contents + of a directory
+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.
+A document container for HTML, whose children + represent the document content.
+A specialized pane that allows its children to be drawn in layers, + providing a form of stacking order.
+An object that presents a list of objects to the user and allows the + user to select one or more of them.
+An object usually found inside a menu bar that contains a list of + actions the user can choose from.
+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.
+An object usually contained in a menu that presents an action the + user can choose.
+An object that presents a series of panels (or page tabs), one at a time, + through some mechanism provided by the object.
+A text object uses for passwords, or other places where the text + content is not shown visibly to the user.
+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.
+An object the user can manipulate to tell the application to do + something.
+A specialized check box that will cause other radio buttons in the + same group to become uncghecked when this one is checked.
+A specialized pane that has a glass pane and a layered pane as its + children.
+An object usually used to allow a user to incrementally view a large + amount of data by moving the bounds of a viewport along a one-dimensional axis.
+An object that allows a user to incrementally view a large amount + of information. ROLE_SCROLL_PANE objects are usually accompanied by + ROLE_SCROLL_BAR controllers, on which the RELATION_CONTROLLER_FOR and + RELATION_CONTROLLED_BY reciprocal relations are set; \see + Accessibility::RelationSet.
+An object usually contained in a menu to provide a visible and + logical separation of the contents in a menu.
+An object which allows one of a set of choices to be selected, + and which displays the current choice. Unlike ROLE_SCROLL_BAR, + ROLE_SLIDER objects need not control 'viewport'-like objects.
+A 'cell' or discrete child within a Table. \note Table cells need not have ROLE_TABLE_CELL, + other RoleType values are valid as well.
+An object which labels a particular row in a Table. Table rows and columns may also be + labelled via the RELATION_LABEL_FOR/RELATION_LABELLED_BY relationships; + \see Accessibility::RelationSet.
+A specialized push button that can be checked or unchecked, but does + not procide a separate indicator for the current state.
+The object contains some Accessible information, but its role is + not known.
+An object usually used in a scroll pane, or to otherwise clip a larger object or + content renderer to a specific onscreen viewport.
+means that the role for this item is known, but not included in the + core enumeration
+An object which describes margins and tab stops, etc. + for text objects which it controls + (should have CONTROLLER_FOR relation to such).
+An object corresponding to the toplevel accessible of an + application, which may contain ROLE_FRAME objects or other + accessible objects. Children of AccessibleDesktop objects + are generally ROLE_APPLICATION objects.
+The object is a dialog or list containing items for insertion + into an entry widget, for instance a list of words for completion + of a text entry.
+The object is an embedded component container. This role is a + "grouping" hint that the contained objects share a context which is + different from the container in which this accessible is embedded. + In particular, it is used for some kinds of document embedding, and + for embedding of out-of-process component, "panel applets", etc.
+The object is a component whose textual content may be entered or modified by the user, + provided STATE_EDITABLE is present. + @note a readonly ROLE_ENTRY object (i.e. where STATE_EDITABLE is not present) implies a + read-only ¨text field¨ in a form, as opposed to a title, label, or caption.
+ +@since AT-SPI 1.7.0
+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. + The LABELLED_BY relation is particularly important in interpreting objects of this type, + as is the accessible-description property. + @see ROLE_CAPTION
+ +@since AT-SPI 1.7.0
+The object contains descriptive information, usually textual, about another user interface + element such as a table, chart, or image.
+ +@since AT-SPI 1.7.0
+The object is a visual frame or container which contains a view of document content. + Document frames may occur within another Document instance, in which case the second + document may be said to be embedded in the containing instance. HTML frames are + often ROLE_DOCUMENT_FRAME. Either this object, or a singleton descendant, should implement + the Document interface.
+ +@since AT-SPI 1.7.0
+The object serves as a heading for content which follows it in a document. + The 'heading level' of the heading, if availabe, may be obtained by + querying the object's attributes.
+ +@since AT-SPI 1.7.0
+The object is a containing instance which encapsulates a page of + information. ROLE_PAGE is used in documents and content which support + a paginated navigation model.
+ +@since AT-SPI 1.7.0
+The object is a containing instance of document content which constitutes + a particular 'logical' section of the document. The type of content within + a section, and the nature of the section division itself, may be obtained + by querying the object's attributes. Sections may be nested.
+ +@since AT-SPI 1.7.0
+The object is redundant with another object in the hierarchy, + and is exposed for purely technical reasons. Objects of this role + should be ignored by clients, if they are encountered at all.
+ +@since AT-SPI 1.7.6
+The object is a containing instance of document content which + has within it components with which the user can interact in order to + input information; i.e. the object is a container for pushbuttons, + comboboxes, text input fields, and other 'GUI' components. + ROLE_FORM should not, in general, be used for toplevel GUI containers + or dialogs, but should be reserved for 'GUI' containers which occur within + document content, for instance within Web documents, presentations, or + text documents. Unlike other GUI containers and dialogs which occur inside + application instances, ROLE_FORM containers' components are associated with + the current document, rather than the current foreground application or + viewer instance.
+ +@since AT-SPI 1.7.6
+The object is a hypertext anchor, i.e. a "link" in a + hypertext document. Such objects are distinct from 'inline' + content which may also use the Hypertext/Hyperlink interfaces + to indicate the range/location within a text object where + an inline or embedded object lies.
+ +@since AT-SPI 1.7.6
+The object is a window or similar viewport which is used + to allow composition or input of a 'complex character', + in other words it is an "input method window."
+ +@since AT-SPI 1.7.6
+This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version.
+ +This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details.
+ +You should have received a copy of the GNU Library General Public + License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA.
+Indicates the current object is busy, i.e. onscreen representation is in the process of changing, or + the object is temporarily unavailable for interaction due to activity already in progress.
+Indicates that this object no longer has a valid backing widget + (for instance, if its peer object has been destroyed)
+Indicates that this object is enabled, i.e. that it currently reflects some application state. + Objects that are "greyed out" may lack this state, and may lack the STATE_SENSITIVE if direct user + interaction cannot cause them to acquire STATE_ENABLED. @see STATE_SENSITIVE.
+Indicates this object can accept keyboard focus, which means all + events resulting from typing on the keyboard will normally be passed + to it when it has focus
+Indicates something must be done with this object before the user can + interact with an object in a different window.
+Indicates this object allows more than one of its children to be + selected at the same time, or in the case of text objects, + that the object supports non-contiguous text selections.
+Indicates this object paints every pixel within its rectangular region. + It also indicates an alpha value of unity, if it supports alpha blending.
+Indicates this object is the child of an object that allows its + children to be selected and that this child is one of those children + that can be selected.
+Indicates this object is the child of an object that allows its + children to be selected and that this child is one of those children + that has been selected.
+Indicates this object is sensitive, e.g. to user interaction. + STATE_SENSITIVE usually accompanies STATE_ENABLED for user-actionable controls, + but may be found in the absence of STATE_ENABLED if the current visible state of the + control is "disconnected" from the application state. In such cases, direct user interaction + can often result in the object gaining STATE_SENSITIVE, for instance if a user makes + an explicit selection using an object whose current state is ambiguous or undefined. + @see STATE_ENABLED, STATE_INDETERMINATE.
+Indicates this object, the object's parent, the object's parent's + parent, and so on, are all 'shown' to the end-user, i.e. + subject to "exposure" if blocking or obscuring objects do not interpose + between this object and the top of the window stack.
+Indicates that the information returned for this object may no longer be + synchronized with the application state. This can occur if the object has STATE_TRANSIENT, + and can also occur towards the end of the object peer's lifecycle.
+Indicates the orientation of this object is vertical; for example this state may appear on + such objects as scrollbars, text objects (with vertical text flow), separators, etc.
+Indicates this object is visible, e.g. has been explicitly marked for exposure to the user. + @note: STATE_VISIBLE is no guarantee that the object is actually unobscured on the screen, only + that it is 'potentially' visible, barring obstruction, being scrolled or clipped out of the + field of view, or having an ancestor container that has not yet made visible. + A widget is potentially onscreen if it has both STATE_VISIBLE and STATE_SHOWING. + The absence of STATE_VISIBLE and STATE_SHOWING is semantically equivalent to saying + that an object is 'hidden'.
+Indicates that "active-descendant-changed" event is sent when children + become 'active' (i.e. are selected or navigated to onscreen). Used to + prevent need to enumerate all children in very large containers, like + tables. The presence of STATE_MANAGES_DESCENDANTS is an indication to the client. + that the children should not, and need not, be enumerated by the client. + Objects implementing this state are expected to provide relevant state + notifications to listening clients, for instance notifications of visibility + changes and activation of their contained child objects, without the client + having previously requested references to those children.
+Indicates that a check box or other boolean indicator is in a state other than + checked or not checked. This usually means that the boolean value reflected or + controlled by the object does not apply consistently to the entire current context. + For example, a checkbox for the "Bold" attribute of text may have STATE_INDETERMINATE + if the currently selected text contains a mixture of weight attributes. + In many cases interacting with a STATE_INDETERMINATE object will cause + the context's corresponding boolean attribute to be homogenized, whereupon the object + will lose STATE_INDETERMINATE and a corresponding state-changed event will be fired.
+Indicates that user interaction with this object is 'required' from the user, + for instance before completing the processing of a form.
+Indicates that an object's onscreen content is truncated, e.g. a text value in a spreadsheet cell. + @since AT-SPI 1.7.0.
+Indicates this object's visual representation is dynamic, not static. + This state may be applied to an object during an animated 'effect' and + be removed from the object once its visual representation becomes static. + @note some applications, notably content viewers, may not be able to detect + all kinds of animated content. Therefore the absence of this state should not + be taken as definitive evidence that the object's visual representation is + static; this state is advisory.
+ +@since AT-SPI 1.7.0
+This object has indicated an error condition due to failure of input + validation. For instance, a form control may acquire this state in response + to invalid or malformed user input.
+ +@since AT-SPI 1.7.0
+This state indicates that the object in question implements some form of ¨typeahead¨ or + pre-selection behavior whereby entering the first character of one or more sub-elements + causes those elements to scroll into view or become selected. Subsequent character input + may narrow the selection further as long as one or more sub-elements match the string. + This state is normally only useful and encountered on objects that implement Selection. + In some cases the typeahead behavior may result in full or partial ¨completion¨ of + the data in the input field, in which case these input events may trigger text-changed + events from the source.
+ +@since AT-SPI 1.7.0
+This state indicates that the object in question supports text selection. + It should only be exposed on objects which implement the Text interface, + in order to distinguish this state from STATE_SELECTABLE, which infers that + the object in question is a selectable child of an object which implements + Selection. While similar, text selection and subelement selection are + distinct operations.
+ +@since AT-SPI 1.7.0
+This state indicates that the object in question is the 'default' interaction object + in a dialog, i.e. the one that gets activated if the user presses "Enter" when the + dialog is initially posted.
+ +@since AT-SPI 1.7.0
+This state indicates that the object (typically a hyperlink) + has already been activated or invoked, with the result that some backing data + has been downloaded or rendered.
+ +@since AT-SPI 1.7.1
+This value of the enumeration should not be used as a parameter, it indicates the number of + items in the StateType enumeration.
+The StateSet interface encapsulates a collection of state information. + It allows comparison of state information between object instances, and comparisons + of an object's state with some hypothetical collection of states.
+Query a StateSet for a specific StateType. + @param state the StateType being queried for.
+Compare two statesets for equivalence. + @param tarStateSet the StateSet to be compared with this one.
+\cond + Private
+unImplemented:
+ +placeholders for future expansion.
+