## AtspiStateSet AtspiStateSet |

## Functions

AtspiStateSet * | atspi_state_set_new ()
void | atspi_state_set_set_by_name ()
void | atspi_state_set_add ()
AtspiStateSet * | atspi_state_set_compare ()
gboolean | atspi_state_set_contains ()
gboolean | atspi_state_set_equals ()
GArray * | atspi_state_set_get_states ()
gboolean | atspi_state_set_is_empty ()
void | atspi_state_set_remove ()

## Types and Values

struct | AtspiStateSet
struct | AtspiStateSetClass

## Object Hierarchy

        GObject
        ╰── AtspiStateSet

## Description

## Functions

### atspi_state_set_new ()

    AtspiStateSet *
    atspi_state_set_new (GArray *states);

Generates an AtspiStateSet with the given `states` .

#### Parameters

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` .

#### Parameters

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).

#### Parameters

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.

#### Parameters

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.

#### Parameters

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.

#### Parameters

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.

#### Parameters

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);

#### Parameters

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.)

#### Parameters

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

## Types and Values

### struct AtspiStateSet

    struct AtspiStateSet;

### struct AtspiStateSetClass

    struct AtspiStateSetClass {
      GObjectClass parent_class;
    };