## AccessibleSelection Interface

AccessibleSelection Interface —

##

# Synopsis

    void        AccessibleSelection_ref         (AccessibleSelection *obj);
    void        AccessibleSelection_unref       (AccessibleSelection *obj);
    long        AccessibleSelection_getNSelectedChildren
                                                (AccessibleSelection *obj);
    Accessible* AccessibleSelection_getSelectedChild
                                                (AccessibleSelection *obj,
                                                 long int selectedChildIndex);
    SPIBoolean  AccessibleSelection_selectChild (AccessibleSelection *obj,
                                                 long int childIndex);
    SPIBoolean  AccessibleSelection_isChildSelected
                                                (AccessibleSelection *obj,
                                                 long int childIndex);
    SPIBoolean  AccessibleSelection_deselectSelectedChild
                                                (AccessibleSelection *obj,
                                                 long int selectedChildIndex);
    SPIBoolean  AccessibleSelection_clearSelection
                                                (AccessibleSelection *obj);
    SPIBoolean  AccessibleSelection_selectAll   (AccessibleSelection *obj);

## Description

## Details

### AccessibleSelection_ref ()

    void        AccessibleSelection_ref         (AccessibleSelection *obj);

Increment the reference count for an AccessibleSelection object.

`obj` : | a pointer to the AccessibleSelection implementor on which to operate.

### AccessibleSelection_unref ()

    void        AccessibleSelection_unref       (AccessibleSelection *obj);

Decrement the reference count for an Accessible object.

`obj` : | a pointer to the AccessibleSelection implementor on which to operate.

### AccessibleSelection_getNSelectedChildren ()

    long        AccessibleSelection_getNSelectedChildren
                                                (AccessibleSelection *obj);

Get the number of children of an AccessibleSelection implementor which are currently selected.

`obj` : | a pointer to the AccessibleSelection implementor on which to operate.
Returns : | a long indicating the number of Accessible children of the AccessibleSelection implementor which are currently selected.

### AccessibleSelection_getSelectedChild ()

    Accessible* AccessibleSelection_getSelectedChild
                                                (AccessibleSelection *obj,
                                                 long int selectedChildIndex);

Get the i-th selected Accessible child of an AccessibleSelection. Note that `childIndex` refers to the index in the list of 'selected' children and generally differs from that used in #Accessible_getChildAtIndex() or returned by #Accessible_getIndexInParent(). `selectedChildIndex` must lie between 0 and #AccessibleSelection_getNSelectedChildren()-1, inclusive.

`obj` : | a pointer to the AccessibleSelection on which to operate.
`selectedChildIndex` : | a long indicating which of the selected children is specified.
Returns : | a pointer to a selected Accessible child object, specified by `childIndex`.

### AccessibleSelection_selectChild ()

    SPIBoolean  AccessibleSelection_selectChild (AccessibleSelection *obj,
                                                 long int childIndex);

Add a child to the selected children list of an AccessibleSelection. For AccessibleSelection implementors that only allow single selections, this may replace the (single) current selection.

`obj` : | a pointer to the AccessibleSelection on which to operate.
`childIndex` : | a long indicating which child of the Accessible is to be selected.
Returns : | TRUE if the child was successfully selected, FALSE otherwise.

### AccessibleSelection_isChildSelected ()

    SPIBoolean  AccessibleSelection_isChildSelected
                                                (AccessibleSelection *obj,
                                                 long int childIndex);

Determine whether a particular child of an AccessibleSelection implementor is currently selected. Note that `childIndex` is the index into the standard Accessible container's list of children.

`obj` : | a pointer to the AccessibleSelection implementor on which to operate.
`childIndex` : | an index into the AccessibleSelection's list of children.
Returns : | TRUE if the specified child is currently selected, FALSE otherwise.

### AccessibleSelection_deselectSelectedChild ()

    SPIBoolean  AccessibleSelection_deselectSelectedChild
                                                (AccessibleSelection *obj,
                                                 long int selectedChildIndex);

Remove a child to the selected children list of an AccessibleSelection. Note that `childIndex` is the index in the selected-children list, not the index in the parent container. `selectedChildIndex` in this method, and `childIndex` in AccessibleSelection_selectChild are asymmettric.

`obj` : | a pointer to the AccessibleSelection on which to operate.
`selectedChildIndex` : | a long indicating which of the selected children of the Accessible is to be selected.
Returns : | TRUE if the child was successfully deselected, FALSE otherwise.

### AccessibleSelection_clearSelection ()

    SPIBoolean  AccessibleSelection_clearSelection
                                                (AccessibleSelection *obj);

Clear the current selection, removing all selected children from the specified AccessibleSelection implementor's selection list.

`obj` : | a pointer to the AccessibleSelection implementor on which to operate.
Returns : | TRUE if successful, FALSE otherwise.

### AccessibleSelection_selectAll ()

    SPIBoolean  AccessibleSelection_selectAll   (AccessibleSelection *obj);

Attempt to select all of the children of an AccessibleSelection implementor. Not all AccessibleSelection implementors support this operation.

`obj` : | a pointer to the AccessibleSelection implementor on which to operate.
Returns : | TRUE if successful, FALSE otherwise.