## atspi-types

atspi-types — Type definitions needed by multiple interfaces.

## Functions

#define | ATSPI_TYPE_EVENT

## Types and Values

| AtspiAccessible
| AtspiAction
| AtspiCollection
| AtspiComponent
| AtspiDocument
| AtspiEditableText
| AtspiHyperlink
| AtspiHypertext
| AtspiImage
| AtspiSelection
| AtspiTable
| AtspiTableCell
| AtspiText
| AtspiValue
typedef | AtspiControllerEventMask
typedef | AtspiKeyMaskType
typedef | AtspiKeyEventMask
typedef | AtspiDeviceEventMask
struct | AtspiDeviceEvent
struct | AtspiEventListenerMode
struct | AtspiKeyDefinition
struct | AtspiEvent
typedef | AtspiKeystrokeListener
enum | AtspiKeyListenerSyncType

## Object Hierarchy

        GBoxed
        ├── AtspiEvent
        ╰── AtspiKeyDefinition
        GInterface
        ├── AtspiAction
        ├── AtspiCollection
        ├── AtspiComponent
        ├── AtspiDocument
        ├── AtspiEditableText
        ├── AtspiHypertext
        ├── AtspiImage
        ├── AtspiSelection
        ├── AtspiTable
        ├── AtspiTableCell
        ├── AtspiText
        ╰── AtspiValue
        GObject
        ╰── AtspiObject
            ├── AtspiAccessible
            ╰── AtspiHyperlink

## Implemented Interfaces

AtspiAccessible implements AtspiAction, AtspiCollection, AtspiComponent, AtspiDocument, AtspiEditableText, AtspiHypertext, AtspiImage, AtspiSelection, AtspiTable, AtspiTableCell, AtspiText and AtspiValue.

## Known Implementations

AtspiAction is implemented by AtspiAccessible.

AtspiCollection is implemented by AtspiAccessible.

AtspiComponent is implemented by AtspiAccessible.

AtspiDocument is implemented by AtspiAccessible.

AtspiEditableText is implemented by AtspiAccessible.

AtspiHypertext is implemented by AtspiAccessible.

AtspiImage is implemented by AtspiAccessible.

AtspiSelection is implemented by AtspiAccessible.

AtspiTable is implemented by AtspiAccessible.

AtspiTableCell is implemented by AtspiAccessible.

AtspiText is implemented by AtspiAccessible.

AtspiValue is implemented by AtspiAccessible.

## Description

Type definitions needed by multiple interfaces.

## Functions

### ATSPI_TYPE_EVENT

    #define ATSPI_TYPE_EVENT (atspi_event_get_type ())

The GType for a boxed type holding a AtspiEvent.

## Types and Values

### AtspiAccessible

    typedef struct _AtspiAccessible AtspiAccessible;

### AtspiAction

    typedef struct _AtspiAction AtspiAction;

### AtspiCollection

    typedef struct _AtspiCollection AtspiCollection;

### AtspiComponent

    typedef struct _AtspiComponent AtspiComponent;

### AtspiDocument

    typedef struct _AtspiDocument AtspiDocument;

### AtspiEditableText

    typedef struct _AtspiEditableText AtspiEditableText;

### AtspiHyperlink

    typedef struct _AtspiHyperlink AtspiHyperlink;

### AtspiHypertext

    typedef struct _AtspiHypertext AtspiHypertext;

### AtspiImage

    typedef struct _AtspiImage AtspiImage;

### AtspiSelection

    typedef struct _AtspiSelection AtspiSelection;

### AtspiTable

    typedef struct _AtspiTable AtspiTable;

### AtspiTableCell

    typedef struct _AtspiTableCell AtspiTableCell;

### AtspiText

    typedef struct _AtspiText AtspiText;

### AtspiValue

    typedef struct _AtspiValue AtspiValue;

### AtspiControllerEventMask

    typedef guint AtspiControllerEventMask;

### AtspiKeyMaskType

    typedef guint AtspiKeyMaskType;

### AtspiKeyEventMask

    typedef guint AtspiKeyEventMask;

### AtspiDeviceEventMask

    typedef guint AtspiDeviceEventMask;

### struct AtspiDeviceEvent

    struct AtspiDeviceEvent {
      AtspiEventType type;
      guint id;
      gushort hw_code;
      gushort modifiers;
      guint timestamp;
      gchar * event_string;
      gboolean is_text;
    };

### struct AtspiEventListenerMode

    struct AtspiEventListenerMode {
      gboolean synchronous;
      gboolean preemptive;
      gboolean global;
    };

### struct AtspiKeyDefinition

    struct AtspiKeyDefinition {
      gint keycode;
      gint keysym;
      gchar *keystring;
      gint unused;
    };

### struct AtspiEvent

    struct AtspiEvent {
      gchar  *type;
      AtspiAccessible  *source;
      gint         detail1;
      gint         detail2;
      GValue any_data;
    };

### AtspiKeystrokeListener

    typedef void AtspiKeystrokeListener;

### enum AtspiKeyListenerSyncType

Specifies the type of a key listener event. The values above can and should be bitwise-'OR'-ed together, observing the compatibility limitations specified in the description of each value. For instance, ATSPI_KEYLISTENER_ALL_WINDOWS | ATSPI_KEYLISTENER_CANCONSUME is a commonly used combination which gives the AT complete control over the delivery of matching events. However, such filters should be used sparingly as they may have a negative impact on system performance.

#### Members

ATSPI_KEYLISTENER_NOSYNC | Events may be delivered asynchronously, which means in some cases they may already have been delivered to the application before the AT client receives the notification. |
ATSPI_KEYLISTENER_SYNCHRONOUS | Events are delivered synchronously, before the currently focussed application sees them. |
ATSPI_KEYLISTENER_CANCONSUME | Events may be consumed by the AT client. Presumes and requires ATSPI_KEYLISTENER_SYNCHRONOUS, incompatible with ATSPI_KEYLISTENER_NOSYNC. |

ATSPI_KEYLISTENER_ALL_WINDOWS

Events are received not from the application toolkit layer, but from the device driver or windowing system subsystem; such notifications are 'global' in the sense that they are not broken or defeated by applications that participate poorly in the accessibility APIs, or not at all; however because of the intrusive nature of such snooping, it can have side-effects on certain older platforms. If unconditional event notifications, even when inaccessible or "broken" applications have focus, are not required, it may be best to avoid this enum value/flag.