State and action fixes
[platform/upstream/at-spi2-core.git] / atspi / atspi-stateset.h
1 #ifndef _ATSPI_STATE_SET_H_
2 #define _ATSPI_STATE_SET_H_
3
4 #define ATSPI_TYPE_STATE_SET                        (atspi_state_set_get_type ())
5 #define ATSPI_STATE_SET(obj)                        (G_TYPE_CHECK_INSTANCE_CAST ((obj), ATSPI_TYPE_STATE_SET, AtspiStateSet))
6 #define ATSPI_STATE_SET_CLASS(klass)                (G_TYPE_CHECK_CLASS_CAST ((klass), ATSPI_TYPE_STATE_SET, AtspiStateSetClass))
7 #define ATSPI_IS_STATE_SET(obj)                     (G_TYPE_CHECK_INSTANCE_TYPE ((obj), ATSPI_TYPE_STATE_SET))
8 #define ATSPI_IS_STATE_SET_CLASS(klass)             (G_TYPE_CHECK_CLASS_TYPE ((klass), ATSPI_TYPE_STATE_SET))
9 #define ATSPI_STATE_SET_GET_CLASS(obj)              (G_TYPE_INSTANCE_GET_CLASS ((obj), ATSPI_TYPE_STATE_SET, AtspiStateSetClass))
10
11 typedef struct _AtspiStateSet AtspiStateSet;
12 struct _AtspiStateSet
13 {
14   GObject parent;
15   struct _AtspiAccessible *accessible;
16   gint64 states;
17 };
18
19 typedef struct _AtspiStateSetClass AtspiStateSetClass;
20 struct _AtspiStateSetClass
21 {
22   GObjectClass parent_class;
23 };
24
25 GType atspi_state_set_get_type (void);
26
27 AtspiStateSet * atspi_state_set_new (GArray *states);
28
29 void atspi_state_set_set_by_name (AtspiStateSet *set, const gchar *name, gboolean enabled);
30
31 void atspi_state_set_add (AtspiStateSet *set, AtspiStateType state);
32
33 AtspiStateSet * atspi_state_set_compare (AtspiStateSet *set, AtspiStateSet *set2);
34
35 gboolean atspi_state_set_contains (AtspiStateSet *set, AtspiStateType state);
36
37 gboolean atspi_state_set_equals (AtspiStateSet *set, AtspiStateSet *set2);
38
39 GArray * atspi_state_set_get_states (AtspiStateSet *set);
40
41 gboolean atspi_state_set_is_empty (AtspiStateSet *set);
42
43 void atspi_state_set_remove (AtspiStateSet *set, AtspiStateType state);
44
45 AtspiStateSet * _atspi_state_set_new_internal (struct _AtspiAccessible *accessible, gint64 states);
46
47 #endif  /* _ATSPI_STATE_SET_H_ */