AtkObject

AtkObject — The base object class for the Accessibility Toolkit API.

Synopsis

                    AtkObject;
enum                AtkRole;
AtkRole             atk_role_register                   (const gchar *name);
enum                AtkLayer;
                    AtkImplementor;
                    AtkPropertyValues;
gboolean            (*AtkFunction)                      (gpointer data);
void                (*AtkPropertyChangeHandler)         (AtkObject *Param1,
                                                         AtkPropertyValues *Param2);
AtkObject*          atk_implementor_ref_accessible      (AtkImplementor *implementor);
const gchar*        atk_object_get_name                 (AtkObject *accessible);
const gchar*        atk_object_get_description          (AtkObject *accessible);
AtkObject*          atk_object_get_parent               (AtkObject *accessible);
gint                atk_object_get_n_accessible_children
                                                        (AtkObject *accessible);
AtkObject*          atk_object_ref_accessible_child     (AtkObject *accessible,
                                                         gint i);
AtkRelationSet*     atk_object_ref_relation_set         (AtkObject *accessible);
AtkLayer            atk_object_get_layer                (AtkObject *accessible);
gint                atk_object_get_mdi_zorder           (AtkObject *accessible);
AtkRole             atk_object_get_role                 (AtkObject *accessible);
AtkStateSet*        atk_object_ref_state_set            (AtkObject *accessible);
gint                atk_object_get_index_in_parent      (AtkObject *accessible);
void                atk_object_set_name                 (AtkObject *accessible,
                                                         const gchar *name);
void                atk_object_set_description          (AtkObject *accessible,
                                                         const gchar *description);
void                atk_object_set_parent               (AtkObject *accessible,
                                                         AtkObject *parent);
void                atk_object_set_role                 (AtkObject *accessible,
                                                         AtkRole role);
guint               atk_object_connect_property_change_handler
                                                        (AtkObject *accessible,
                                                         AtkPropertyChangeHandler *handler);
void                atk_object_remove_property_change_handler
                                                        (AtkObject *accessible,
                                                         guint handler_id);
void                atk_object_notify_state_change      (AtkObject *accessible,
                                                         AtkState state,
                                                         gboolean value);
void                atk_object_initialize               (AtkObject *accessible,
                                                         gpointer data);
gboolean            atk_object_add_relationship         (AtkObject *object,
                                                         AtkRelationType relationship,
                                                         AtkObject *target);
gboolean            atk_object_remove_relationship      (AtkObject *object,
                                                         AtkRelationType relationship,
                                                         AtkObject *target);
AtkAttributeSet*    atk_object_get_attributes           (AtkObject *accessible);
const gchar*        atk_role_get_name                   (AtkRole role);
const gchar*        atk_role_get_localized_name         (AtkRole role);
AtkRole             atk_role_for_name                   (const gchar *name);

Object Hierarchy

  GObject
   +----AtkObject
         +----AtkGObjectAccessible
         +----AtkNoOpObject

Properties

  "accessible-component-layer" gint                  : Read
  "accessible-component-mdi-zorder" gint                  : Read
  "accessible-description"   gchar*                : Read / Write
  "accessible-hypertext-nlinks" gint                  : Read
  "accessible-name"          gchar*                : Read / Write
  "accessible-parent"        AtkObject*            : Read / Write
  "accessible-role"          gint                  : Read / Write
  "accessible-table-caption" gchar*                : Read / Write
  "accessible-table-caption-object" AtkObject*            : Read / Write
  "accessible-table-column-description" gchar*                : Read / Write
  "accessible-table-column-header" AtkObject*            : Read / Write
  "accessible-table-row-description" gchar*                : Read / Write
  "accessible-table-row-header" AtkObject*            : Read / Write
  "accessible-table-summary" AtkObject*            : Read / Write
  "accessible-value"         gdouble               : Read / Write

Signals

  "active-descendant-changed"                      : Run Last / Has Details
  "children-changed"                               : Run Last / Has Details
  "focus-event"                                    : Run Last
  "property-change"                                : Run Last / Has Details
  "state-change"                                   : Run Last / Has Details
  "visible-data-changed"                           : Run Last

Description

This class is the primary class for accessibility support via the Accessibility ToolKit (ATK). Objects which are instances of AtkObject (or instances of AtkObject-derived types) are queried for properties which relate basic (and generic) properties of a UI component such as name and description. Instances of AtkObject may also be queried as to whether they implement other ATK interfaces (e.g. AtkAction, AtkComponent, etc.), as appropriate to the role which a given UI component plays in a user interface.

All UI components in an application which provide useful information or services to the user must provide corresponding AtkObject instances on request (in GTK+, for instance, usually on a call to #gtk_widget_get_accessible()), either via ATK support built into the toolkit for the widget class or ancestor class, or in the case of custom widgets, if the inherited AtkObject implementation is insufficient, via instances of a new AtkObject subclass.

Details

AtkObject

typedef struct _AtkObject AtkObject;

The AtkObject structure should not be accessed directly.


enum AtkRole

typedef enum
{
  ATK_ROLE_INVALID = 0, 
  ATK_ROLE_ACCEL_LABEL,
  ATK_ROLE_ALERT,
  ATK_ROLE_ANIMATION,
  ATK_ROLE_ARROW,
  ATK_ROLE_CALENDAR,
  ATK_ROLE_CANVAS,
  ATK_ROLE_CHECK_BOX,
  ATK_ROLE_CHECK_MENU_ITEM,
  ATK_ROLE_COLOR_CHOOSER,
  ATK_ROLE_COLUMN_HEADER,
  ATK_ROLE_COMBO_BOX,
  ATK_ROLE_DATE_EDITOR,
  ATK_ROLE_DESKTOP_ICON,
  ATK_ROLE_DESKTOP_FRAME,
  ATK_ROLE_DIAL,
  ATK_ROLE_DIALOG,
  ATK_ROLE_DIRECTORY_PANE,
  ATK_ROLE_DRAWING_AREA,
  ATK_ROLE_FILE_CHOOSER,
  ATK_ROLE_FILLER,
  ATK_ROLE_FONT_CHOOSER,
  ATK_ROLE_FRAME,
  ATK_ROLE_GLASS_PANE,
  ATK_ROLE_HTML_CONTAINER,
  ATK_ROLE_ICON,
  ATK_ROLE_IMAGE,
  ATK_ROLE_INTERNAL_FRAME,
  ATK_ROLE_LABEL,
  ATK_ROLE_LAYERED_PANE,
  ATK_ROLE_LIST,
  ATK_ROLE_LIST_ITEM,
  ATK_ROLE_MENU,
  ATK_ROLE_MENU_BAR,
  ATK_ROLE_MENU_ITEM,
  ATK_ROLE_OPTION_PANE,
  ATK_ROLE_PAGE_TAB,
  ATK_ROLE_PAGE_TAB_LIST,
  ATK_ROLE_PANEL,
  ATK_ROLE_PASSWORD_TEXT,
  ATK_ROLE_POPUP_MENU,
  ATK_ROLE_PROGRESS_BAR,
  ATK_ROLE_PUSH_BUTTON,
  ATK_ROLE_RADIO_BUTTON,
  ATK_ROLE_RADIO_MENU_ITEM,
  ATK_ROLE_ROOT_PANE,
  ATK_ROLE_ROW_HEADER,
  ATK_ROLE_SCROLL_BAR,
  ATK_ROLE_SCROLL_PANE,
  ATK_ROLE_SEPARATOR,
  ATK_ROLE_SLIDER,
  ATK_ROLE_SPLIT_PANE,
  ATK_ROLE_SPIN_BUTTON,
  ATK_ROLE_STATUSBAR,
  ATK_ROLE_TABLE,
  ATK_ROLE_TABLE_CELL,
  ATK_ROLE_TABLE_COLUMN_HEADER,
  ATK_ROLE_TABLE_ROW_HEADER,
  ATK_ROLE_TEAR_OFF_MENU_ITEM,
  ATK_ROLE_TERMINAL,
  ATK_ROLE_TEXT,
  ATK_ROLE_TOGGLE_BUTTON,
  ATK_ROLE_TOOL_BAR,
  ATK_ROLE_TOOL_TIP,
  ATK_ROLE_TREE,
  ATK_ROLE_TREE_TABLE,
  ATK_ROLE_UNKNOWN,
  ATK_ROLE_VIEWPORT,
  ATK_ROLE_WINDOW,
  ATK_ROLE_HEADER,
  ATK_ROLE_FOOTER,
  ATK_ROLE_PARAGRAPH,
  ATK_ROLE_RULER,
  ATK_ROLE_APPLICATION,
  ATK_ROLE_AUTOCOMPLETE,
  ATK_ROLE_EDITBAR,
  ATK_ROLE_EMBEDDED,
  ATK_ROLE_ENTRY,
  ATK_ROLE_CHART,
  ATK_ROLE_CAPTION,
  ATK_ROLE_DOCUMENT_FRAME,
  ATK_ROLE_HEADING,
  ATK_ROLE_PAGE,
  ATK_ROLE_SECTION,
  ATK_ROLE_REDUNDANT_OBJECT,
  ATK_ROLE_FORM,
  ATK_ROLE_LINK,
  ATK_ROLE_INPUT_METHOD_WINDOW,
  ATK_ROLE_LAST_DEFINED
} AtkRole;

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 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_LAST_DEFINED

not a valid role, used for finding end of the enumeration

atk_role_register ()

AtkRole             atk_role_register                   (const gchar *name);

Registers the role specified by name.

name :

a character string describing the new role.

Returns :

an AtkRole for the new role.

enum AtkLayer

typedef enum
{
  ATK_LAYER_INVALID,
  ATK_LAYER_BACKGROUND,
  ATK_LAYER_CANVAS,
  ATK_LAYER_WIDGET,
  ATK_LAYER_MDI,
  ATK_LAYER_POPUP,
  ATK_LAYER_OVERLAY,
  ATK_LAYER_WINDOW
} AtkLayer;

Describes the layer of a component

These enumerated "layer values" are used when determining which UI rendering layer a component is drawn into, which can help in making determinations of when components occlude one another.

ATK_LAYER_INVALID

The object does not have a layer

ATK_LAYER_BACKGROUND

This layer is reserved for the desktop background

ATK_LAYER_CANVAS

This layer is used for Canvas components

ATK_LAYER_WIDGET

This layer is normally used for components

ATK_LAYER_MDI

This layer is used for layered components

ATK_LAYER_POPUP

This layer is used for popup components, such as menus

ATK_LAYER_OVERLAY

This layer is reserved for future use.

ATK_LAYER_WINDOW

This layer is used for toplevel windows.

AtkImplementor

typedef struct _AtkImplementor AtkImplementor;

The AtkImplementor interface is implemented by objects for which AtkObject peers may be obtained via calls to iface->(ref_accessible)(implementor);


AtkPropertyValues

typedef struct {
  const gchar  *property_name;
  GValue old_value;
  GValue new_value;
} AtkPropertyValues;

note: For most properties the old_value field of AtkPropertyValues will not contain a valid value.

Currently, the only property for which old_value is used is accessible-state; for instance if there is a focus state the property change handler will be called for the object which lost the focus with the old_value containing an AtkState value corresponding to focused and the property change handler will be called for the object which received the focus with the new_value containing an AtkState value corresponding to focused.

The Atk PropertyValue structure is used when notifying a change in property. Currently, the only property for which old_value is used is accessible-state; for instance if there is a focus change the property change handler will be called for the object which lost the focus with the old_value containing the AtkState value corresponding to focused and the property change handler will be called for the object which received the focus with the new_value containing the AtkState value corresponding to focused.

const gchar *property_name;

The name of the ATK property which is being presented or which has been changed.

GValue old_value;

The old property value, NULL; in some contexts this value is undefined (see note below).

GValue new_value;

The new value of the named property.

AtkFunction ()

gboolean            (*AtkFunction)                      (gpointer data);

An AtkFunction is a function definition used for padding which has been added to class and interface structures to allow for expansion in the future.

data :

a gpointer to parameter data.

Returns :

Nothing useful, this is only a dummy prototype.

AtkPropertyChangeHandler ()

void                (*AtkPropertyChangeHandler)         (AtkObject *Param1,
                                                         AtkPropertyValues *Param2);

An AtkPropertyChangeHandler is a function which is executed when an AtkObject's property changes value. It is specified in a call to atk_object_connect_property_change_handler().

Param1 :

an AtkObject

Param2 :

an AtkPropertyValues

atk_implementor_ref_accessible ()

AtkObject*          atk_implementor_ref_accessible      (AtkImplementor *implementor);

Gets a reference to an object's AtkObject implementation, if the object implements AtkObjectIface

implementor :

The GObject instance which should implement AtkImplementorIface if a non-null return value is required.

Returns :

a reference to an object's AtkObject implementation

atk_object_get_name ()

const gchar*        atk_object_get_name                 (AtkObject *accessible);

Gets the accessible name of the accessible.

accessible :

an AtkObject

Returns :

a character string representing the accessible name of the object.

atk_object_get_description ()

const gchar*        atk_object_get_description          (AtkObject *accessible);

Gets the accessible description of the accessible.

accessible :

an AtkObject

Returns :

a character string representing the accessible description of the accessible.

atk_object_get_parent ()

AtkObject*          atk_object_get_parent               (AtkObject *accessible);

Gets the accessible parent of the accessible.

accessible :

an AtkObject

Returns :

a AtkObject representing the accessible parent of the accessible

atk_object_get_n_accessible_children ()

gint                atk_object_get_n_accessible_children
                                                        (AtkObject *accessible);

Gets the number of accessible children of the accessible.

accessible :

an AtkObject

Returns :

an integer representing the number of accessible children of the accessible.

atk_object_ref_accessible_child ()

AtkObject*          atk_object_ref_accessible_child     (AtkObject *accessible,
                                                         gint i);

Gets a reference to the specified accessible child of the object. The accessible children are 0-based so the first accessible child is at index 0, the second at index 1 and so on.

accessible :

an AtkObject

i :

a gint representing the position of the child, starting from 0

Returns :

an AtkObject representing the specified accessible child of the accessible.

atk_object_ref_relation_set ()

AtkRelationSet*     atk_object_ref_relation_set         (AtkObject *accessible);

Gets the AtkRelationSet associated with the object.

accessible :

an AtkObject

Returns :

an AtkRelationSet representing the relation set of the object.

atk_object_get_layer ()

AtkLayer            atk_object_get_layer                (AtkObject *accessible);

Warning

atk_object_get_layer is deprecated and should not be used in newly-written code. Use atk_component_get_layer instead.

Gets the layer of the accessible.

accessible :

an AtkObject

Returns :

an AtkLayer which is the layer of the accessible

atk_object_get_mdi_zorder ()

gint                atk_object_get_mdi_zorder           (AtkObject *accessible);

Warning

atk_object_get_mdi_zorder is deprecated and should not be used in newly-written code. Use atk_component_get_mdi_zorder instead.

Gets the zorder of the accessible. The value G_MININT will be returned if the layer of the accessible is not ATK_LAYER_MDI.

accessible :

an AtkObject

Returns :

a gint which is the zorder of the accessible, i.e. the depth at which the component is shown in relation to other components in the same container.

atk_object_get_role ()

AtkRole             atk_object_get_role                 (AtkObject *accessible);

Gets the role of the accessible.

accessible :

an AtkObject

Returns :

an AtkRole which is the role of the accessible

atk_object_ref_state_set ()

AtkStateSet*        atk_object_ref_state_set            (AtkObject *accessible);

Gets a reference to the state set of the accessible; the caller must unreference it when it is no longer needed.

accessible :

an AtkObject

Returns :

a reference to an AtkStateSet which is the state set of the accessible

atk_object_get_index_in_parent ()

gint                atk_object_get_index_in_parent      (AtkObject *accessible);

Gets the 0-based index of this accessible in its parent; returns -1 if the accessible does not have an accessible parent.

accessible :

an AtkObject

Returns :

an integer which is the index of the accessible in its parent

atk_object_set_name ()

void                atk_object_set_name                 (AtkObject *accessible,
                                                         const gchar *name);

Sets the accessible name of the accessible.

accessible :

an AtkObject

name :

a character string to be set as the accessible name

atk_object_set_description ()

void                atk_object_set_description          (AtkObject *accessible,
                                                         const gchar *description);

Sets the accessible description of the accessible.

accessible :

an AtkObject

description :

a character string to be set as the accessible description

atk_object_set_parent ()

void                atk_object_set_parent               (AtkObject *accessible,
                                                         AtkObject *parent);

Sets the accessible parent of the accessible.

accessible :

an AtkObject

parent :

an AtkObject to be set as the accessible parent

atk_object_set_role ()

void                atk_object_set_role                 (AtkObject *accessible,
                                                         AtkRole role);

Sets the role of the accessible.

accessible :

an AtkObject

role :

an AtkRole to be set as the role

atk_object_connect_property_change_handler ()

guint               atk_object_connect_property_change_handler
                                                        (AtkObject *accessible,
                                                         AtkPropertyChangeHandler *handler);

Specifies a function to be called when a property changes value.

accessible :

an AtkObject

handler :

a function to be called when a property changes its value

Returns :

a guint which is the handler id used in atk_object_remove_property_change_handler()

atk_object_remove_property_change_handler ()

void                atk_object_remove_property_change_handler
                                                        (AtkObject *accessible,
                                                         guint handler_id);

Removes a property change handler.

accessible :

an AtkObject

handler_id :

a guint which identifies the handler to be removed.

atk_object_notify_state_change ()

void                atk_object_notify_state_change      (AtkObject *accessible,
                                                         AtkState state,
                                                         gboolean value);

Emits a state-change signal for the specified state.

accessible :

an AtkObject

state :

an AtkState whose state is changed

value :

a gboolean which indicates whether the state is being set on or off

atk_object_initialize ()

void                atk_object_initialize               (AtkObject *accessible,
                                                         gpointer data);

This function is called when implementing subclasses of AtkObject. It does initialization required for the new object. It is intended that this function should called only in the ..._new() functions used to create an instance of a subclass of AtkObject

accessible :

a AtkObject

data :

a gpointer which identifies the object for which the AtkObject was created.

atk_object_add_relationship ()

gboolean            atk_object_add_relationship         (AtkObject *object,
                                                         AtkRelationType relationship,
                                                         AtkObject *target);

Adds a relationship of the specified type with the specified target.

object :

The AtkObject to which an AtkRelation is to be added.

relationship :

The AtkRelationType of the relation

target :

The AtkObject which is to be the target of the relation.

Returns :

TRUE if the relationship is added.

atk_object_remove_relationship ()

gboolean            atk_object_remove_relationship      (AtkObject *object,
                                                         AtkRelationType relationship,
                                                         AtkObject *target);

Removes a relationship of the specified type with the specified target.

object :

The AtkObject from which an AtkRelation is to be removed.

relationship :

The AtkRelationType of the relation

target :

The AtkObject which is the target of the relation to be removed.

Returns :

TRUE if the relationship is removed.

atk_object_get_attributes ()

AtkAttributeSet*    atk_object_get_attributes           (AtkObject *accessible);

Get a list of properties applied to this object as a whole, as an AtkAttributeSet consisting of name-value pairs. As such these attributes may be considered weakly-typed properties or annotations, as distinct from strongly-typed object data available via other get/set methods. Not all objects have explicit "name-value pair" AtkAttributeSet properties.

accessible :

An AtkObject.

Returns :

an AtkAttributeSet consisting of all explicit properties/annotations applied to the object, or an empty set if the object has no name-value pair attributes assigned to it.

Since 1.12


atk_role_get_name ()

const gchar*        atk_role_get_name                   (AtkRole role);

Gets the description string describing the AtkRole role.

role :

The AtkRole whose name is required

Returns :

the string describing the AtkRole

atk_role_get_localized_name ()

const gchar*        atk_role_get_localized_name         (AtkRole role);

Gets the localized description string describing the AtkRole role.

role :

The AtkRole whose localized name is required

Returns :

the localized string describing the AtkRole

atk_role_for_name ()

AtkRole             atk_role_for_name                   (const gchar *name);

Get the AtkRole type corresponding to a rolew name.

name :

a string which is the (non-localized) name of an ATK role.

Returns :

the AtkRole enumerated type corresponding to the specified name, or ATK_ROLE_INVALID if no matching role is found.

Property Details

The "accessible-component-layer" property

  "accessible-component-layer" gint                  : Read

The accessible layer of this object.

Allowed values: >= 0

Default value: 0


The "accessible-component-mdi-zorder" property

  "accessible-component-mdi-zorder" gint                  : Read

The accessible MDI value of this object.

Default value: -2147483648


The "accessible-description" property

  "accessible-description"   gchar*                : Read / Write

Description of an object, formatted for assistive technology access.

Default value: NULL


The "accessible-hypertext-nlinks" property

  "accessible-hypertext-nlinks" gint                  : Read

The number of links which the current AtkHypertext has.

Allowed values: >= 0

Default value: 0


The "accessible-name" property

  "accessible-name"          gchar*                : Read / Write

Object instance's name formatted for assistive technology access.

Default value: NULL


The "accessible-parent" property

  "accessible-parent"        AtkObject*            : Read / Write

Is used to notify that the parent has changed.


The "accessible-role" property

  "accessible-role"          gint                  : Read / Write

The accessible role of this object.

Allowed values: >= 0

Default value: 0


The "accessible-table-caption" property

  "accessible-table-caption" gchar*                : Read / Write

Is used to notify that the table caption has changed; this property should not be used. accessible-table-caption-object should be used instead.

Default value: NULL


The "accessible-table-caption-object" property

  "accessible-table-caption-object" AtkObject*            : Read / Write

Is used to notify that the table caption has changed.


The "accessible-table-column-description" property

  "accessible-table-column-description" gchar*                : Read / Write

Is used to notify that the table column description has changed.

Default value: NULL


The "accessible-table-column-header" property

  "accessible-table-column-header" AtkObject*            : Read / Write

Is used to notify that the table column header has changed.


The "accessible-table-row-description" property

  "accessible-table-row-description" gchar*                : Read / Write

Is used to notify that the table row description has changed.

Default value: NULL


The "accessible-table-row-header" property

  "accessible-table-row-header" AtkObject*            : Read / Write

Is used to notify that the table row header has changed.


The "accessible-table-summary" property

  "accessible-table-summary" AtkObject*            : Read / Write

Is used to notify that the table summary has changed.


The "accessible-value" property

  "accessible-value"         gdouble               : Read / Write

Is used to notify that the value has changed.

Allowed values: >= 0

Default value: 0

Signal Details

The "active-descendant-changed" signal

void                user_function                      (AtkObject *atkobject,
                                                        gpointer   arg1,
                                                        gpointer   user_data)      : Run Last / Has Details

The "active-descendant-changed" signal is emitted by an object which has the state ATK_STATE_MANAGES_DESCENDANTS when the focus object in the object changes. For instance, a table will emit the signal when the cell in the table which has focus changes.

atkobject :

the object which received the signal.

arg1 :

the newly focused object.

user_data :

user data set when the signal handler was connected.

The "children-changed" signal

void                user_function                      (AtkObject *atkobject,
                                                        guint      arg1,
                                                        gpointer   arg2,
                                                        gpointer   user_data)      : Run Last / Has Details

The signal "children-changed" is emitted when a child is added or removed form an object. It supports two details: "add" and "remove"

atkobject :

the object which received the signal.

arg1 :

The index of the added or removed child

arg2 :

A gpointer to the child AtkObject which was added or removed

user_data :

user data set when the signal handler was connected.

The "focus-event" signal

void                user_function                      (AtkObject *atkobject,
                                                        gboolean   arg1,
                                                        gpointer   user_data)      : Run Last

The signal "focus-event" is emitted when an object gains or loses focus.

atkobject :

the object which received the signal.

arg1 :

A boolean value which indicates whether the object gained or lost focus.

user_data :

user data set when the signal handler was connected.

The "property-change" signal

void                user_function                      (AtkObject *atkobject,
                                                        gpointer   arg1,
                                                        gpointer   user_data)      : Run Last / Has Details

The signal "property-change" is emitted when an object's property value changes. The detail identifies the name of the property whose value has changed.

atkobject :

the object which received the signal.

arg1 :

The new value of the property which changed.

user_data :

user data set when the signal handler was connected.

The "state-change" signal

void                user_function                      (AtkObject *atkobject,
                                                        gchar     *arg1,
                                                        gboolean   arg2,
                                                        gpointer   user_data)      : Run Last / Has Details

The "state-change" signal is emitted when an object's state changes. The detail value identifies the state type which has changed.

atkobject :

the object which received the signal.

arg1 :

The name of the state which has changed

arg2 :

A boolean which indicates whether the state has been set or unset.

user_data :

user data set when the signal handler was connected.

The "visible-data-changed" signal

void                user_function                      (AtkObject *atkobject,
                                                        gpointer   user_data)      : Run Last

The "visible-data-changed" signal is emitted when the visual appearance of the object changed.

atkobject :

the object which received the signal.

user_data :

user data set when the signal handler was connected.

See Also

See also: AtkObjectFactory, AtkRegistry. ( GTK+ users see also GtkAccessible).