## atspi-component

atspi-component — An interface implemented by objects which have onscreen visual representations.

## Functions

#define | ATSPI_TYPE_RECT
AtspiRect * | atspi_rect_copy ()
#define | ATSPI_TYPE_POINT
GType | atspi_point_get_type ()
AtspiPoint * | atspi_point_copy ()
GType | atspi_component_get_type ()
gboolean | atspi_component_contains ()
AtspiAccessible * | atspi_component_get_accessible_at_point ()
AtspiRect * | atspi_component_get_extents ()
AtspiPoint * | atspi_component_get_position ()
AtspiPoint * | atspi_component_get_size ()
AtspiComponentLayer | atspi_component_get_layer ()
gshort | atspi_component_get_mdi_z_order ()
gboolean | atspi_component_grab_focus ()
gdouble | atspi_component_get_alpha ()

## Types and Values

struct | AtspiRect
struct | AtspiPoint
| AtspiComponent

## Object Hierarchy

        GBoxed
        ├── AtspiPoint
        ╰── AtspiRect
        GInterface
        ╰── AtspiComponent

## Known Implementations

AtspiComponent is implemented by AtspiAccessible.

## Description

The Component interface is implemented by objects which occupy on-screen space, e.g. objects which have onscreen visual representations. The methods in Component allow clients to identify where the objects lie in the onscreen coordinate system, their relative size, stacking order, and position. It also provides a mechanism whereby keyboard focus may be transferred to specific user interface elements programmatically. This is a 2D API. Coordinates of 3D objects are projected into the 2-dimensional screen view for purposes of this interface.

## Functions

### ATSPI_TYPE_RECT

    #define ATSPI_TYPE_RECT (atspi_rect_get_type ())

The GType for a boxed type holding a AtspiRect.

### atspi_rect_copy ()

    AtspiRect *
    atspi_rect_copy (AtspiRect *src);

#### Returns

### ATSPI_TYPE_POINT

    #define ATSPI_TYPE_POINT (atspi_point_get_type ())

The GType for a boxed type holding a AtspiPoint.

### atspi_point_get_type ()

    GType
    atspi_point_get_type ();

#### Returns

### atspi_point_copy ()

    AtspiPoint *
    atspi_point_copy (AtspiPoint *src);

#### Returns

### atspi_component_get_type ()

    GType
    atspi_component_get_type ();

#### Returns

### atspi_component_contains ()

    gboolean
    atspi_component_contains (AtspiComponent *obj,
                              gint x,
                              gint y,
                              AtspiCoordType ctype,
                              GError **error);

Queries whether a given AtspiComponent contains a particular point.

#### Parameters

obj | a pointer to the AtspiComponent to query. |
x | a gint specifying the x coordinate in question. |
y | a gint specifying the y coordinate in question. |
ctype | the desired coordinate system of the point (`x` , `y` ) (e.g. CSPI_COORD_TYPE_WINDOW, CSPI_COORD_TYPE_SCREEN). |

#### Returns

TRUE if the specified component contains the point (`x` , `y` ), FALSE otherwise.

### atspi_component_get_accessible_at_point ()

    AtspiAccessible *
    atspi_component_get_accessible_at_point
                                   (AtspiComponent *obj,
                                    gint x,
                                    gint y,
                                    AtspiCoordType ctype,
                                    GError **error);

Gets the accessible child at a given coordinate within an AtspiComponent.

#### Parameters

obj | a pointer to the AtspiComponent to query. |
x | a gint specifying the x coordinate of the point in question. |
y | a gint specifying the y coordinate of the point in question. |
ctype | the coordinate system of the point (`x` , `y` ) (e.g. ATSPI_COORD_TYPE_WINDOW, ATSPI_COORD_TYPE_SCREEN). |

#### Returns

a pointer to an AtspiAccessible child of the specified component which contains the point (`x` , `y` ), or NULL if no child contains the point.

[nullable][transfer full]

### atspi_component_get_extents ()

    AtspiRect *
    atspi_component_get_extents (AtspiComponent *obj,
                                 AtspiCoordType ctype,
                                 GError **error);

Gets the bounding box of the specified AtspiComponent.

#### Parameters

obj | a pointer to the AtspiComponent to query. |
ctype | the desired coordinate system into which to return the results, (e.g. ATSPI_COORD_TYPE_WINDOW, ATSPI_COORD_TYPE_SCREEN). |

#### Returns

An AtspiRect giving the accessible's extents.

### atspi_component_get_position ()

    AtspiPoint *
    atspi_component_get_position (AtspiComponent *obj,
                                  AtspiCoordType ctype,
                                  GError **error);

Gets the minimum x and y coordinates of the specified AtspiComponent.

#### Parameters

obj | a pointer to the AtspiComponent to query. |
ctype | the desired coordinate system into which to return the results, (e.g. ATSPI_COORD_TYPE_WINDOW, ATSPI_COORD_TYPE_SCREEN). |

#### Returns

An AtspiPoint giving the `obj` 's position.

### atspi_component_get_size ()

    AtspiPoint *
    atspi_component_get_size (AtspiComponent *obj,
                              GError **error);

Gets the size of the specified AtspiComponent.

#### Parameters

obj | a pointer to the AtspiComponent to query. |

#### Returns

An AtspiPoint giving the `obj` 's size.

### atspi_component_get_layer ()

    AtspiComponentLayer
    atspi_component_get_layer (AtspiComponent *obj,
                               GError **error);

Queries which layer the component is painted into, to help determine its visibility in terms of stacking order.

#### Parameters

obj | a pointer to the AtspiComponent to query. |

#### Returns

the AtspiComponentLayer into which this component is painted.

### atspi_component_get_mdi_z_order ()

    gshort
    atspi_component_get_mdi_z_order (AtspiComponent *obj,
                                     GError **error);

Queries the z stacking order of a component which is in the MDI or window layer. (Bigger z-order numbers mean nearer the top)

#### Parameters

obj | a pointer to the AtspiComponent to query. |

#### Returns

a gshort indicating the stacking order of the component in the MDI layer, or -1 if the component is not in the MDI layer.

### atspi_component_grab_focus ()

    gboolean
    atspi_component_grab_focus (AtspiComponent *obj,
                                GError **error);

Attempts to set the keyboard input focus to the specified AtspiComponent.

#### Parameters

obj | a pointer to the AtspiComponent on which to operate. |

#### Returns

TRUE if successful, FALSE otherwise.

### atspi_component_get_alpha ()

    gdouble
    atspi_component_get_alpha (AtspiComponent *obj,
                               GError **error);

Gets the opacity/alpha value of a component, if alpha blending is in use.

#### Parameters

obj | The AtspiComponent to be queried. |

#### Returns

the opacity value of a component, as a gdouble between 0.0 and 1.0.

## Types and Values

### struct AtspiRect

    struct AtspiRect {
      gint x;
      gint y;
      gint width;
      gint height;
    };

### struct AtspiPoint

    struct AtspiPoint {
      gint x;
      gint y;
    };

### AtspiComponent

    typedef struct _AtspiComponent AtspiComponent;