## atspi-stateset atspi-stateset — The atspi-stateset objects implement wrappers around a bitmap of accessible states. |

## Synopsis

    struct              AtspiStateSet;
    struct              AtspiStateSetClass;
    AtspiStateSet *     atspi_state_set_new                 (GArray *states);
    void                atspi_state_set_set_by_name         (AtspiStateSet *set,
                                                             const gchar *name,
                                                             gboolean enabled);
    void                atspi_state_set_add                 (AtspiStateSet *set,
                                                             AtspiStateType state);
    AtspiStateSet *     atspi_state_set_compare             (AtspiStateSet *set,
                                                             AtspiStateSet *set2);
    gboolean            atspi_state_set_contains            (AtspiStateSet *set,
                                                             AtspiStateType state);
    gboolean            atspi_state_set_equals              (AtspiStateSet *set,
                                                             AtspiStateSet *set2);
    GArray *            atspi_state_set_get_states          (AtspiStateSet *set);
    gboolean            atspi_state_set_is_empty            (AtspiStateSet *set);
    void                atspi_state_set_remove              (AtspiStateSet *set,
                                                             AtspiStateType state);

## Object Hierarchy

      GObject
       +----AtspiStateSet

## Description

The atspi-stateset objects implement wrappers around a bitmap of accessible states.

## Details

### struct AtspiStateSet

    struct AtspiStateSet;

### struct AtspiStateSetClass

    struct AtspiStateSetClass {
      GObjectClass parent_class;
    };

### atspi_state_set_new ()

    AtspiStateSet *     atspi_state_set_new                 (GArray *states);

Generates an AtspiStateSet with the given `states`.

`states` : | An array of states with which the method initializes the state set. [element-type AtspiStateType]
Returns : | A new AtspiStateSet with the given states.

### atspi_state_set_set_by_name ()

    void                atspi_state_set_set_by_name         (AtspiStateSet *set,
                                                             const gchar *name,
                                                             gboolean enabled);

Enables/disables a state in an AtspiStateSet according to its `name`.

`set` : | a pointer to the AtspiStateSet object on which to operate.
`name` : | a string corresponding to a state name.
`enabled` : | if TRUE, `name` should be enabled in the `set` in question; otherwise, it should be disabled.

### atspi_state_set_add ()

    void                atspi_state_set_add                 (AtspiStateSet *set,
                                                             AtspiStateType state);

Adds a particular AtspiState to an AtspiStateSet (i.e. sets the given state to TRUE in the stateset).

`set` : | a pointer to the AtspiStateSet object on which to operate.
`state` : | an AtspiStateType to be added to the specified AtspiStateSet.

### atspi_state_set_compare ()

    AtspiStateSet *     atspi_state_set_compare             (AtspiStateSet *set,
                                                             AtspiStateSet *set2);

Determines the differences between two instances of AtspiStateSet.

`see` atspi_state_set_equals.

`set` : | a pointer to the first AtspiStateSet object on which to operate.
`set2` : | a pointer to the second AtspiStateSet object on which to operate.
Returns : | an AtspiStateSet object containing all states contained on one of the two sets but not the other. [transfer full]

### atspi_state_set_contains ()

    gboolean            atspi_state_set_contains            (AtspiStateSet *set,
                                                             AtspiStateType state);

Determines whether a given AtspiStateSet includes a given state; that is, whether `state` is true for the `set` in question.

`set` : | a pointer to the AtspiStateSet object on which to operate.
`state` : | an AtspiStateType for which the specified AtspiStateSet will be queried.
Returns : | TRUE if `state` is true/included in the given AtspiStateSet, otherwise FALSE.

### atspi_state_set_equals ()

    gboolean            atspi_state_set_equals              (AtspiStateSet *set,
                                                             AtspiStateSet *set2);

Determines whether two instances of AtspiStateSet are equivalent (i.e. consist of the same AtspiStates). Useful for checking multiple state variables at once.

`see` atspi_state_set_compare.

`set` : | a pointer to the first AtspiStateSet object on which to operate.
`set2` : | a pointer to the second AtspiStateSet object on which to operate.
Returns : | TRUE if the two AtspiStateSets are equivalent, otherwise FALSE.

### atspi_state_set_get_states ()

    GArray *            atspi_state_set_get_states          (AtspiStateSet *set);

Returns the states in an AtspiStateSet as an array.

`set` : | The AtspiStateSet to be queried.
Returns : | A GArray of state types representing the current state. [element-type AtspiStateType][transfer full]

### atspi_state_set_is_empty ()

    gboolean            atspi_state_set_is_empty            (AtspiStateSet *set);

`set` : | The AtspiStateSet to query.
Returns : | TRUE if the state set contains no states; FALSE otherwise.

### atspi_state_set_remove ()

    void                atspi_state_set_remove              (AtspiStateSet *set,
                                                             AtspiStateType state);

Removes a particular AtspiState to an AtspiStateSet (i.e. sets the given state to FALSE in the stateset.)

`set` : | a pointer to the AtspiStateSet object on which to operate.
`state` : | an AtspiStateType to remove from the specified `set`.