### Interface

# Gtk Accessible

#### Description [src]

    interface Gtk.Accessible : GObject.Object

`GtkAccessible` is an interface for describing UI elements for Assistive Technologies.

Every accessible implementation has:

- a “role”, represented by a value of the `GtkAccessibleRole` enumeration
- an “attribute”, represented by a set of `GtkAccessibleState`, `GtkAccessibleProperty` and `GtkAccessibleRelation` values

The role cannot be changed after instantiating a `GtkAccessible` implementation.

The attributes are updated every time a UI element’s state changes in a way that should be reflected by assistive technologies. For instance, if a `GtkWidget` visibility changes, the `GTK_ACCESSIBLE_STATE_HIDDEN` state will also change to reflect the `GtkWidget:visible` property.

#### Instance methods

###### gtk_accessible_get_accessible_role

Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.

###### gtk_accessible_reset_property

Resets the accessible `property` to its default value.

###### gtk_accessible_reset_relation

Resets the accessible `relation` to its default value.

###### gtk_accessible_reset_state

Resets the accessible `state` to its default value.

###### gtk_accessible_update_property

Updates a list of accessible properties.

###### gtk_accessible_update_property_value

Updates an array of accessible properties.

###### gtk_accessible_update_relation

Updates a list of accessible relations.

###### gtk_accessible_update_relation_value

Updates an array of accessible relations.

###### gtk_accessible_update_state

Updates a list of accessible states. See the `GtkAccessibleState` documentation for the value types of accessible states.

###### gtk_accessible_update_state_value

Updates an array of accessible states.

#### Properties

###### Gtk.Accessible:accessible-role

The accessible role of the given `GtkAccessible` implementation.

#### Interface structure

    struct GtkAccessibleInterface {
      /* no available fields */
    }