ATK - Accessibility Toolkit | ||||
---|---|---|---|---|
AtkObject; enum AtkRole; AtkRole atk_role_register (const gchar *name); enum AtkLayer; AtkImplementor; AtkPropertyValues; gboolean (*AtkFunction) (gpointer data); void (*AtkPropertyChangeHandler) (AtkObject *, AtkPropertyValues *); 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);
"accessible-component-layer" gint : Read "accessible-component-mdi-zorder" gint : Read "accessible-description" gchararray : Read / Write "accessible-hypertext-nlinks" gint : Read "accessible-name" gchararray : Read / Write "accessible-parent" AtkObject : Read / Write "accessible-role" gint : Read / Write "accessible-table-caption" gchararray : Read / Write "accessible-table-caption-object" AtkObject : Read / Write "accessible-table-column-description" gchararray : Read / Write "accessible-table-column-header" AtkObject : Read / Write "accessible-table-row-description" gchararray : Read / Write "accessible-table-row-header" AtkObject : Read / Write "accessible-table-summary" AtkObject : Read / Write "accessible-value" gdouble : Read / Write
"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
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.
typedef struct _AtkObject AtkObject;
The AtkObject structure should not be accessed directly.
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.
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. |
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.
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);
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.
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. |
void (*AtkPropertyChangeHandler) (AtkObject *, AtkPropertyValues *);
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 |
AtkObject* atk_implementor_ref_accessible (AtkImplementor *implementor);
Gets a reference to an object's AtkObject implementation, if the object implements AtkObjectIface
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. |
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. |
AtkObject* atk_object_get_parent (AtkObject *accessible);
Gets the accessible parent of the accessible.
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. |
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.
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. |
AtkLayer atk_object_get_layer (AtkObject *accessible);
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.
Returns:
gint atk_object_get_mdi_zorder (AtkObject *accessible);
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.
Returns:
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. |
AtkRole atk_object_get_role (AtkObject *accessible);
Gets the role of the accessible.
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 |
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 |
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 |
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 |
void atk_object_set_parent (AtkObject *accessible, AtkObject *parent);
Sets the accessible parent of the accessible.
void atk_object_set_role (AtkObject *accessible, AtkRole role);
Sets the role of the accessible.
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()
|
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. |
void atk_object_notify_state_change (AtkObject *accessible, AtkState state, gboolean value);
Emits a state-change signal for the specified state.
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
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. |
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. |
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.
Returns:
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 ATK 1.12
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 |
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 |
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. |
"accessible-component-layer"
property"accessible-component-layer" gint : Read
The accessible layer of this object.
Allowed values: >= 0
Default value: 0
"accessible-component-mdi-zorder"
property"accessible-component-mdi-zorder" gint : Read
The accessible MDI value of this object.
Default value: -2147483648
"accessible-description"
property"accessible-description" gchararray : Read / Write
Description of an object, formatted for assistive technology access.
Default value: NULL
"accessible-hypertext-nlinks"
property"accessible-hypertext-nlinks" gint : Read
The number of links which the current AtkHypertext has.
Allowed values: >= 0
Default value: 0
"accessible-name"
property"accessible-name" gchararray : Read / Write
Object instance's name formatted for assistive technology access.
Default value: NULL
"accessible-parent"
property"accessible-parent" AtkObject : Read / Write
Is used to notify that the parent has changed.
"accessible-role"
property"accessible-role" gint : Read / Write
The accessible role of this object.
Allowed values: >= 0
Default value: 0
"accessible-table-caption"
property"accessible-table-caption" gchararray : 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
"accessible-table-caption-object"
property"accessible-table-caption-object" AtkObject : Read / Write
Is used to notify that the table caption has changed.
"accessible-table-column-description"
property"accessible-table-column-description" gchararray : Read / Write
Is used to notify that the table column description has changed.
Default value: NULL
"accessible-table-column-header"
property"accessible-table-column-header" AtkObject : Read / Write
Is used to notify that the table column header has changed.
"accessible-table-row-description"
property"accessible-table-row-description" gchararray : Read / Write
Is used to notify that the table row description has changed.
Default value: NULL
"accessible-table-row-header"
property"accessible-table-row-header" AtkObject : Read / Write
Is used to notify that the table row header has changed.
"accessible-table-summary"
property"accessible-table-summary" AtkObject : Read / Write
Is used to notify that the table summary has changed.
"accessible-value"
property"accessible-value" gdouble : Read / Write
Is used to notify that the value has changed.
Allowed values: >= 0
Default value: 0
"active-descendant-changed"
signalvoid 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. |
"children-changed"
signalvoid 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. |
"focus-event"
signalvoid 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. |
"property-change"
signalvoid 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. |
"state-change"
signalvoid 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. |
"visible-data-changed"
signalvoid 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. |