Describes the role of an object
These are the built-in enumerated roles that UI components can have in
ATK. Other roles may be added at runtime, so an AtkRole >=
ATK_ROLE_LAST_DEFINED is not necessarily an error.
ATK_ROLE_INVALID
Invalid role
ATK_ROLE_ACCEL_LABEL
A label which represents an accelerator
ATK_ROLE_ALERT
An object which is an alert to the user. Assistive Technologies typically respond to ATK_ROLE_ALERT by reading the entire onscreen contents of containers advertising this role. Should be used for warning dialogs, etc.
ATK_ROLE_ANIMATION
An object which is an animated image
ATK_ROLE_ARROW
An arrow in one of the four cardinal directions
ATK_ROLE_CALENDAR
An object that displays a calendar and allows the user to select a date
ATK_ROLE_CANVAS
An object that can be drawn into and is used to trap events
ATK_ROLE_CHECK_BOX
A choice that can be checked or unchecked and provides a separate indicator for the current state
ATK_ROLE_CHECK_MENU_ITEM
A menu item with a check box
ATK_ROLE_COLOR_CHOOSER
A specialized dialog that lets the user choose a color
ATK_ROLE_COLUMN_HEADER
The header for a column of data
ATK_ROLE_COMBO_BOX
A collapsible list of choices the user can select from
ATK_ROLE_DATE_EDITOR
An object whose purpose is to allow a user to edit a date
ATK_ROLE_DESKTOP_ICON
An inconifed internal frame within a DESKTOP_PANE
ATK_ROLE_DESKTOP_FRAME
A pane that supports internal frames and iconified versions of those internal frames
ATK_ROLE_DIAL
An object whose purpose is to allow a user to set a value
ATK_ROLE_DIALOG
A top level window with title bar and a border
ATK_ROLE_DIRECTORY_PANE
A pane that allows the user to navigate through and select the contents of a directory
ATK_ROLE_DRAWING_AREA
An object used for drawing custom user interface elements
ATK_ROLE_FILE_CHOOSER
A specialized dialog that lets the user choose a file
ATK_ROLE_FILLER
A object that fills up space in a user interface
ATK_ROLE_FONT_CHOOSER
A specialized dialog that lets the user choose a font
ATK_ROLE_FRAME
A top level window with a title bar, border, menubar, etc.
ATK_ROLE_GLASS_PANE
A pane that is guaranteed to be painted on top of all panes beneath it
ATK_ROLE_HTML_CONTAINER
A document container for HTML, whose children represent the document content
ATK_ROLE_ICON
A small fixed size picture, typically used to decorate components
ATK_ROLE_IMAGE
An object whose primary purpose is to display an image
ATK_ROLE_INTERNAL_FRAME
A frame-like object that is clipped by a desktop pane
ATK_ROLE_LABEL
An object used to present an icon or short string in an interface
ATK_ROLE_LAYERED_PANE
A specialized pane that allows its children to be drawn in layers, providing a form of stacking order
ATK_ROLE_LIST
An object that presents a list of objects to the user and allows the user to select one or more of them
ATK_ROLE_LIST_ITEM
An object that represents an element of a list
ATK_ROLE_MENU
An object usually found inside a menu bar that contains a list of actions the user can choose from
ATK_ROLE_MENU_BAR
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
ATK_ROLE_MENU_ITEM
An object usually contained in a menu that presents an action the user can choose
ATK_ROLE_OPTION_PANE
A specialized pane whose primary use is inside a DIALOG
ATK_ROLE_PAGE_TAB
An object that is a child of a page tab list
ATK_ROLE_PAGE_TAB_LIST
An object that presents a series of panels (or page tabs), one at a time, through some mechanism provided by the object
ATK_ROLE_PANEL
A generic container that is often used to group objects
ATK_ROLE_PASSWORD_TEXT
A text object uses for passwords, or other places where the text content is not shown visibly to the user
ATK_ROLE_POPUP_MENU
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
ATK_ROLE_PROGRESS_BAR
An object used to indicate how much of a task has been completed
ATK_ROLE_PUSH_BUTTON
An object the user can manipulate to tell the application to do something
ATK_ROLE_RADIO_BUTTON
A specialized check box that will cause other radio buttons in the same group to become unchecked when this one is checked
ATK_ROLE_RADIO_MENU_ITEM
A check menu item which belongs to a group. At each instant exactly one of the radio menu items from a group is selected
ATK_ROLE_ROOT_PANE
A specialized pane that has a glass pane and a layered pane as its children
ATK_ROLE_ROW_HEADER
The header for a row of data
ATK_ROLE_SCROLL_BAR
An object usually used to allow a user to incrementally view a large amount of data.
ATK_ROLE_SCROLL_PANE
An object that allows a user to incrementally view a large amount of information
ATK_ROLE_SEPARATOR
An object usually contained in a menu to provide a visible and logical separation of the contents in a menu
ATK_ROLE_SLIDER
An object that allows the user to select from a bounded range
ATK_ROLE_SPLIT_PANE
A specialized panel that presents two other panels at the same time
ATK_ROLE_SPIN_BUTTON
An object used to get an integer or floating point number from the user
ATK_ROLE_STATUSBAR
An object which reports messages of minor importance to the user
ATK_ROLE_TABLE
An object used to represent information in terms of rows and columns
ATK_ROLE_TABLE_CELL
A cell in a table
ATK_ROLE_TABLE_COLUMN_HEADER
The header for a column of a table
ATK_ROLE_TABLE_ROW_HEADER
The header for a row of a table
ATK_ROLE_TEAR_OFF_MENU_ITEM
A menu item used to tear off and reattach its menu
ATK_ROLE_TERMINAL
An object that represents an accessible terminal. Since: ATK-0.6
ATK_ROLE_TEXT
An object that presents text to the user
ATK_ROLE_TOGGLE_BUTTON
A specialized push button that can be checked or unchecked, but does not provide a separate indicator for the current state
ATK_ROLE_TOOL_BAR
A bar or palette usually composed of push buttons or toggle buttons
ATK_ROLE_TOOL_TIP
An object that provides information about another object
ATK_ROLE_TREE
An object used to represent hierarchical information to the user
ATK_ROLE_TREE_TABLE
An object capable of expanding and collapsing rows as well as showing multiple columns of data. Since: ATK-0.7
ATK_ROLE_UNKNOWN
The object contains some Accessible information, but its role is not known
ATK_ROLE_VIEWPORT
An object usually used in a scroll pane
ATK_ROLE_WINDOW
A top level window with no title or border.
ATK_ROLE_HEADER
An object that serves as a document header. Since: ATK-1.1.1
ATK_ROLE_FOOTER
An object that serves as a document footer. Since: ATK-1.1.1
ATK_ROLE_PARAGRAPH
An object which is contains a paragraph of text content. Since: ATK-1.1.1
ATK_ROLE_RULER
An object which describes margins and tab stops, etc. for text objects which it controls (should have CONTROLLER_FOR relation to such). Since: ATK-1.1.1
ATK_ROLE_APPLICATION
The object is an application object, which may contain ATK_ROLE_FRAME objects or other types of accessibles. The root accessible of any application's ATK hierarchy should have ATK_ROLE_APPLICATION. Since: ATK-1.1.4
ATK_ROLE_AUTOCOMPLETE
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. Since: ATK-1.3
ATK_ROLE_EDITBAR
The object is an editable text object in a toolbar. Since: ATK-1.5
ATK_ROLE_EMBEDDED
The object is an embedded container within a document or panel. This role is a grouping "hint" indicating that the contained objects share a context. Since: ATK-1.7.2
ATK_ROLE_ENTRY
The object is a component whose textual content may be entered or modified by the user, provided ATK_STATE_EDITABLE is present. Since: ATK-1.11
ATK_ROLE_CHART
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. Since: ATK-1.11
ATK_ROLE_CAPTION
The object contains descriptive information, usually textual, about another user interface element such as a table, chart, or image. Since: ATK-1.11
ATK_ROLE_DOCUMENT_FRAME
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: ATK-1.11
ATK_ROLE_HEADING
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.
ATK_ROLE_PAGE
The object is a containing instance which encapsulates a page of information. ATK_ROLE_PAGE is used in documents and content which support a paginated navigation model. Since: ATK-1.11
ATK_ROLE_SECTION
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: ATK-1.11
ATK_ROLE_REDUNDANT_OBJECT
The object is redundant with another object in the hierarchy, and is exposed for purely technical reasons. Objects of this role should normally be ignored by clients. Since: ATK-1.11
ATK_ROLE_FORM
The object is a container for form controls, for instance as part of a
web form or user-input form within a document. This role is primarily a tag/convenience for
clients when navigating complex documents, it is not expected that ordinary GUI containers will
always have ATK_ROLE_FORM. Since: ATK-1.12.0
ATK_ROLE_LINK
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: ATK-1.12.1
ATK_ROLE_INPUT_METHOD_WINDOW
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: ATK-1.12.1
ATK_ROLE_TABLE_ROW
A row in a table. Since: ATK-2.1.0
ATK_ROLE_TREE_ITEM
An object that represents an element of a tree. Since: ATK-2.1.0
ATK_ROLE_DOCUMENT_SPREADSHEET
A document frame which contains a spreadsheet. Since: ATK-2.1.0
ATK_ROLE_DOCUMENT_PRESENTATION
A document frame which contains a presentation or slide content. Since: ATK-2.1.0
ATK_ROLE_DOCUMENT_TEXT
A document frame which contains textual content, such as found in a word processing application. Since: ATK-2.1.0
ATK_ROLE_DOCUMENT_WEB
A document frame which contains HTML or other markup suitable for display in a web browser. Since: ATK-2.1.0
ATK_ROLE_DOCUMENT_EMAIL
A document frame which contains email content to be displayed or composed either in plain text or HTML. Since: ATK-2.1.0
ATK_ROLE_COMMENT
An object found within a document and designed to present a comment, note, or other annotation. In some cases, this object might not be visible until activated. Since: ATK-2.1.0
ATK_ROLE_LIST_BOX
A non-collapsible list of choices the user can select from. Since: ATK-2.1.0
ATK_ROLE_GROUPING
A group of related widgets. This group typically has a label. Since: ATK-2.1.0
ATK_ROLE_IMAGE_MAP
An image map object. Usually a graphic with multiple hotspots, where each hotspot can be activated resulting in the loading of another document or section of a document. Since: ATK-2.1.0
ATK_ROLE_NOTIFICATION
A transitory object designed to present a message to the user, typically at the desktop level rather than inside a particular application. Since: ATK-2.1.0
ATK_ROLE_INFO_BAR
An object designed to present a message to the user within an existing window. Since: ATK-2.1.0
ATK_ROLE_LEVEL_BAR
A bar that serves as a level indicator to, for instance, show the strength of a password or the state of a battery. Since: ATK-2.7.3
ATK_ROLE_LAST_DEFINED
not a valid role, used for finding end of the enumeration
Describes the role of an object These are the built-in enumerated roles that UI components can have in ATK. Other roles may be added at runtime, so an AtkRole >= ATK_ROLE_LAST_DEFINED is not necessarily an error. ATK_ROLE_INVALID Invalid role ATK_ROLE_ACCEL_LABEL A label which represents an accelerator ATK_ROLE_ALERT An object which is an alert to the user. Assistive Technologies typically respond to ATK_ROLE_ALERT by reading the entire onscreen contents of containers advertising this role. Should be used for warning dialogs, etc. ATK_ROLE_ANIMATION An object which is an animated image ATK_ROLE_ARROW An arrow in one of the four cardinal directions ATK_ROLE_CALENDAR An object that displays a calendar and allows the user to select a date ATK_ROLE_CANVAS An object that can be drawn into and is used to trap events ATK_ROLE_CHECK_BOX A choice that can be checked or unchecked and provides a separate indicator for the current state ATK_ROLE_CHECK_MENU_ITEM A menu item with a check box ATK_ROLE_COLOR_CHOOSER A specialized dialog that lets the user choose a color ATK_ROLE_COLUMN_HEADER The header for a column of data ATK_ROLE_COMBO_BOX A collapsible list of choices the user can select from ATK_ROLE_DATE_EDITOR An object whose purpose is to allow a user to edit a date ATK_ROLE_DESKTOP_ICON An inconifed internal frame within a DESKTOP_PANE ATK_ROLE_DESKTOP_FRAME A pane that supports internal frames and iconified versions of those internal frames ATK_ROLE_DIAL An object whose purpose is to allow a user to set a value ATK_ROLE_DIALOG A top level window with title bar and a border ATK_ROLE_DIRECTORY_PANE A pane that allows the user to navigate through and select the contents of a directory ATK_ROLE_DRAWING_AREA An object used for drawing custom user interface elements ATK_ROLE_FILE_CHOOSER A specialized dialog that lets the user choose a file ATK_ROLE_FILLER A object that fills up space in a user interface ATK_ROLE_FONT_CHOOSER A specialized dialog that lets the user choose a font ATK_ROLE_FRAME A top level window with a title bar, border, menubar, etc. ATK_ROLE_GLASS_PANE A pane that is guaranteed to be painted on top of all panes beneath it ATK_ROLE_HTML_CONTAINER A document container for HTML, whose children represent the document content ATK_ROLE_ICON A small fixed size picture, typically used to decorate components ATK_ROLE_IMAGE An object whose primary purpose is to display an image ATK_ROLE_INTERNAL_FRAME A frame-like object that is clipped by a desktop pane ATK_ROLE_LABEL An object used to present an icon or short string in an interface ATK_ROLE_LAYERED_PANE A specialized pane that allows its children to be drawn in layers, providing a form of stacking order ATK_ROLE_LIST An object that presents a list of objects to the user and allows the user to select one or more of them ATK_ROLE_LIST_ITEM An object that represents an element of a list ATK_ROLE_MENU An object usually found inside a menu bar that contains a list of actions the user can choose from ATK_ROLE_MENU_BAR 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 ATK_ROLE_MENU_ITEM An object usually contained in a menu that presents an action the user can choose ATK_ROLE_OPTION_PANE A specialized pane whose primary use is inside a DIALOG ATK_ROLE_PAGE_TAB An object that is a child of a page tab list ATK_ROLE_PAGE_TAB_LIST An object that presents a series of panels (or page tabs), one at a time, through some mechanism provided by the object ATK_ROLE_PANEL A generic container that is often used to group objects ATK_ROLE_PASSWORD_TEXT A text object uses for passwords, or other places where the text content is not shown visibly to the user ATK_ROLE_POPUP_MENU 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 ATK_ROLE_PROGRESS_BAR An object used to indicate how much of a task has been completed ATK_ROLE_PUSH_BUTTON An object the user can manipulate to tell the application to do something ATK_ROLE_RADIO_BUTTON A specialized check box that will cause other radio buttons in the same group to become unchecked when this one is checked ATK_ROLE_RADIO_MENU_ITEM A check menu item which belongs to a group. At each instant exactly one of the radio menu items from a group is selected ATK_ROLE_ROOT_PANE A specialized pane that has a glass pane and a layered pane as its children ATK_ROLE_ROW_HEADER The header for a row of data ATK_ROLE_SCROLL_BAR An object usually used to allow a user to incrementally view a large amount of data. ATK_ROLE_SCROLL_PANE An object that allows a user to incrementally view a large amount of information ATK_ROLE_SEPARATOR An object usually contained in a menu to provide a visible and logical separation of the contents in a menu ATK_ROLE_SLIDER An object that allows the user to select from a bounded range ATK_ROLE_SPLIT_PANE A specialized panel that presents two other panels at the same time ATK_ROLE_SPIN_BUTTON An object used to get an integer or floating point number from the user ATK_ROLE_STATUSBAR An object which reports messages of minor importance to the user ATK_ROLE_TABLE An object used to represent information in terms of rows and columns ATK_ROLE_TABLE_CELL A cell in a table ATK_ROLE_TABLE_COLUMN_HEADER The header for a column of a table ATK_ROLE_TABLE_ROW_HEADER The header for a row of a table ATK_ROLE_TEAR_OFF_MENU_ITEM A menu item used to tear off and reattach its menu ATK_ROLE_TERMINAL An object that represents an accessible terminal. Since: ATK-0.6 ATK_ROLE_TEXT An object that presents text to the user ATK_ROLE_TOGGLE_BUTTON A specialized push button that can be checked or unchecked, but does not provide a separate indicator for the current state ATK_ROLE_TOOL_BAR A bar or palette usually composed of push buttons or toggle buttons ATK_ROLE_TOOL_TIP An object that provides information about another object ATK_ROLE_TREE An object used to represent hierarchical information to the user ATK_ROLE_TREE_TABLE An object capable of expanding and collapsing rows as well as showing multiple columns of data. Since: ATK-0.7 ATK_ROLE_UNKNOWN The object contains some Accessible information, but its role is not known ATK_ROLE_VIEWPORT An object usually used in a scroll pane ATK_ROLE_WINDOW A top level window with no title or border. ATK_ROLE_HEADER An object that serves as a document header. Since: ATK-1.1.1 ATK_ROLE_FOOTER An object that serves as a document footer. Since: ATK-1.1.1 ATK_ROLE_PARAGRAPH An object which is contains a paragraph of text content. Since: ATK-1.1.1 ATK_ROLE_RULER An object which describes margins and tab stops, etc. for text objects which it controls (should have CONTROLLER_FOR relation to such). Since: ATK-1.1.1 ATK_ROLE_APPLICATION The object is an application object, which may contain ATK_ROLE_FRAME objects or other types of accessibles. The root accessible of any application's ATK hierarchy should have ATK_ROLE_APPLICATION. Since: ATK-1.1.4 ATK_ROLE_AUTOCOMPLETE 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. Since: ATK-1.3 ATK_ROLE_EDITBAR The object is an editable text object in a toolbar. Since: ATK-1.5 ATK_ROLE_EMBEDDED The object is an embedded container within a document or panel. This role is a grouping "hint" indicating that the contained objects share a context. Since: ATK-1.7.2 ATK_ROLE_ENTRY The object is a component whose textual content may be entered or modified by the user, provided ATK_STATE_EDITABLE is present. Since: ATK-1.11 ATK_ROLE_CHART 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. Since: ATK-1.11 ATK_ROLE_CAPTION The object contains descriptive information, usually textual, about another user interface element such as a table, chart, or image. Since: ATK-1.11 ATK_ROLE_DOCUMENT_FRAME 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: ATK-1.11 ATK_ROLE_HEADING 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. ATK_ROLE_PAGE The object is a containing instance which encapsulates a page of information. ATK_ROLE_PAGE is used in documents and content which support a paginated navigation model. Since: ATK-1.11 ATK_ROLE_SECTION 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: ATK-1.11 ATK_ROLE_REDUNDANT_OBJECT The object is redundant with another object in the hierarchy, and is exposed for purely technical reasons. Objects of this role should normally be ignored by clients. Since: ATK-1.11 ATK_ROLE_FORM The object is a container for form controls, for instance as part of a web form or user-input form within a document. This role is primarily a tag/convenience for clients when navigating complex documents, it is not expected that ordinary GUI containers will always have ATK_ROLE_FORM. Since: ATK-1.12.0 ATK_ROLE_LINK 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: ATK-1.12.1 ATK_ROLE_INPUT_METHOD_WINDOW 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: ATK-1.12.1 ATK_ROLE_TABLE_ROW A row in a table. Since: ATK-2.1.0 ATK_ROLE_TREE_ITEM An object that represents an element of a tree. Since: ATK-2.1.0 ATK_ROLE_DOCUMENT_SPREADSHEET A document frame which contains a spreadsheet. Since: ATK-2.1.0 ATK_ROLE_DOCUMENT_PRESENTATION A document frame which contains a presentation or slide content. Since: ATK-2.1.0 ATK_ROLE_DOCUMENT_TEXT A document frame which contains textual content, such as found in a word processing application. Since: ATK-2.1.0 ATK_ROLE_DOCUMENT_WEB A document frame which contains HTML or other markup suitable for display in a web browser. Since: ATK-2.1.0 ATK_ROLE_DOCUMENT_EMAIL A document frame which contains email content to be displayed or composed either in plain text or HTML. Since: ATK-2.1.0 ATK_ROLE_COMMENT An object found within a document and designed to present a comment, note, or other annotation. In some cases, this object might not be visible until activated. Since: ATK-2.1.0 ATK_ROLE_LIST_BOX A non-collapsible list of choices the user can select from. Since: ATK-2.1.0 ATK_ROLE_GROUPING A group of related widgets. This group typically has a label. Since: ATK-2.1.0 ATK_ROLE_IMAGE_MAP An image map object. Usually a graphic with multiple hotspots, where each hotspot can be activated resulting in the loading of another document or section of a document. Since: ATK-2.1.0 ATK_ROLE_NOTIFICATION A transitory object designed to present a message to the user, typically at the desktop level rather than inside a particular application. Since: ATK-2.1.0 ATK_ROLE_INFO_BAR An object designed to present a message to the user within an existing window. Since: ATK-2.1.0 ATK_ROLE_LEVEL_BAR A bar that serves as a level indicator to, for instance, show the strength of a password or the state of a battery. Since: ATK-2.7.3 ATK_ROLE_LAST_DEFINED not a valid role, used for finding end of the enumeration