AtkStateSet

AtkStateSet — An AtkStateSet contains the states of an object.

Types and Values

Object Hierarchy

    GObject
    ╰── AtkStateSet

Description

An AtkStateSet is a read-only representation of the full set of AtkStates that apply to an object at a given time. This set is not meant to be modified, but rather created when atk_object_ref_state_set() is called.

Functions

atk_state_set_new ()

AtkStateSet *
atk_state_set_new (void);

Creates a new empty state set.

Returns

a new AtkStateSet


atk_state_set_is_empty ()

gboolean
atk_state_set_is_empty (AtkStateSet *set);

Checks whether the state set is empty, i.e. has no states set.

Parameters

set

an AtkStateType

 

Returns

TRUE if set has no states set, otherwise FALSE


atk_state_set_add_state ()

gboolean
atk_state_set_add_state (AtkStateSet *set,
                         AtkStateType type);

Adds the state of the specified type to the state set if it is not already present.

Note that because an AtkStateSet is a read-only object, this method should be used to add a state to a newly-created set which will then be returned by atk_object_ref_state_set. It should not be used to modify the existing state of an object. See also atk_object_notify_state_change.

Parameters

set

an AtkStateSet

 

type

an AtkStateType

 

Returns

TRUE if the state for type is not already in set .


atk_state_set_add_states ()

void
atk_state_set_add_states (AtkStateSet *set,
                          AtkStateType *types,
                          gint n_types);

Adds the states of the specified types to the state set.

Note that because an AtkStateSet is a read-only object, this method should be used to add states to a newly-created set which will then be returned by atk_object_ref_state_set. It should not be used to modify the existing state of an object. See also atk_object_notify_state_change.

Parameters

set

an AtkStateSet

 

types

an array of AtkStateType.

[array length=n_types]

n_types

The number of elements in the array

 

atk_state_set_clear_states ()

void
atk_state_set_clear_states (AtkStateSet *set);

Removes all states from the state set.

Parameters

set

an AtkStateSet

 

atk_state_set_contains_state ()

gboolean
atk_state_set_contains_state (AtkStateSet *set,
                              AtkStateType type);

Checks whether the state for the specified type is in the specified set.

Parameters

set

an AtkStateSet

 

type

an AtkStateType

 

Returns

TRUE if type is the state type is in set .


atk_state_set_contains_states ()

gboolean
atk_state_set_contains_states (AtkStateSet *set,
                               AtkStateType *types,
                               gint n_types);

Checks whether the states for all the specified types are in the specified set.

Parameters

set

an AtkStateSet

 

types

an array of AtkStateType.

[array length=n_types]

n_types

The number of elements in the array

 

Returns

TRUE if all the states for type are in set .


atk_state_set_remove_state ()

gboolean
atk_state_set_remove_state (AtkStateSet *set,
                            AtkStateType type);

Removes the state for the specified type from the state set.

Note that because an AtkStateSet is a read-only object, this method should be used to remove a state to a newly-created set which will then be returned by atk_object_ref_state_set. It should not be used to modify the existing state of an object. See also atk_object_notify_state_change.

Parameters

set

an AtkStateSet

 

type

an AtkType

 

Returns

TRUE if type was the state type is in set .


atk_state_set_and_sets ()

AtkStateSet *
atk_state_set_and_sets (AtkStateSet *set,
                        AtkStateSet *compare_set);

Constructs the intersection of the two sets, returning NULL if the intersection is empty.

Parameters

set

an AtkStateSet

 

compare_set

another AtkStateSet

 

Returns

a new AtkStateSet which is the intersection of the two sets.

[transfer full]


atk_state_set_or_sets ()

AtkStateSet *
atk_state_set_or_sets (AtkStateSet *set,
                       AtkStateSet *compare_set);

Constructs the union of the two sets.

Parameters

set

an AtkStateSet

 

compare_set

another AtkStateSet

 

Returns

a new AtkStateSet which is the union of the two sets, returning NULL is empty.

[nullable][transfer full]


atk_state_set_xor_sets ()

AtkStateSet *
atk_state_set_xor_sets (AtkStateSet *set,
                        AtkStateSet *compare_set);

Constructs the exclusive-or of the two sets, returning NULL is empty. The set returned by this operation contains the states in exactly one of the two sets.

Parameters

set

an AtkStateSet

 

compare_set

another AtkStateSet

 

Returns

a new AtkStateSet which contains the states which are in exactly one of the two sets.

[transfer full]

Types and Values

AtkStateSet

typedef struct _AtkStateSet AtkStateSet;