1 #include "AccessibleUtils.h"
4 char *state_to_char(AtspiStateType state)
7 case ATSPI_STATE_INVALID:
8 return strdup("ATSPI_STATE_INVALID");
9 case ATSPI_STATE_ACTIVE:
10 return strdup("ATSPI_STATE_ACTIVE");
11 case ATSPI_STATE_ARMED:
12 return strdup("ATSPI_STATE_ARMED");
13 case ATSPI_STATE_BUSY:
14 return strdup("ATSPI_STATE_BUSY");
15 case ATSPI_STATE_CHECKED:
16 return strdup("ATSPI_STATE_CHECKED");
17 case ATSPI_STATE_COLLAPSED:
18 return strdup("ATSPI_STATE_COLLAPSED");
19 case ATSPI_STATE_DEFUNCT:
20 return strdup("ATSPI_STATE_DEFUNCT");
21 case ATSPI_STATE_EDITABLE:
22 return strdup("ATSPI_STATE_EDITABLE");
23 case ATSPI_STATE_ENABLED:
24 return strdup("ATSPI_STATE_ENABLED");
25 case ATSPI_STATE_EXPANDABLE:
26 return strdup("ATSPI_STATE_EXPANDABLE");
27 case ATSPI_STATE_EXPANDED:
28 return strdup("ATSPI_STATE_EXPANDED");
29 case ATSPI_STATE_FOCUSABLE:
30 return strdup("ATSPI_STATE_FOCUSABLE");
31 case ATSPI_STATE_FOCUSED:
32 return strdup("ATSPI_STATE_FOCUSED");
33 case ATSPI_STATE_HAS_TOOLTIP:
34 return strdup("ATSPI_STATE_HAS_TOOLTIP");
35 case ATSPI_STATE_HORIZONTAL:
36 return strdup("ATSPI_STATE_HORIZONTAL");
37 case ATSPI_STATE_ICONIFIED:
38 return strdup("ATSPI_STATE_ICONIFIED");
39 case ATSPI_STATE_MULTI_LINE:
40 return strdup("ATSPI_STATE_MULTI_LINE");
41 case ATSPI_STATE_MULTISELECTABLE:
42 return strdup("ATSPI_STATE_MULTISELECTABLE");
43 case ATSPI_STATE_OPAQUE:
44 return strdup("ATSPI_STATE_OPAQUE");
45 case ATSPI_STATE_PRESSED:
46 return strdup("ATSPI_STATE_PRESSED");
47 case ATSPI_STATE_RESIZABLE:
48 return strdup("ATSPI_STATE_RESIZABLE");
49 case ATSPI_STATE_SELECTABLE:
50 return strdup("ATSPI_STATE_SELECTABLE");
51 case ATSPI_STATE_SELECTED:
52 return strdup("ATSPI_STATE_SELECTED");
53 case ATSPI_STATE_SENSITIVE:
54 return strdup("ATSPI_STATE_SENSITIVE");
55 case ATSPI_STATE_SHOWING:
56 return strdup("ATSPI_STATE_SHOWING");
57 case ATSPI_STATE_SINGLE_LINE:
58 return strdup("ATSPI_STATE_SINGLE_LINE");
59 case ATSPI_STATE_STALE:
60 return strdup("ATSPI_STATE_STALE");
61 case ATSPI_STATE_TRANSIENT:
62 return strdup("ATSPI_STATE_TRANSIENT");
63 case ATSPI_STATE_VERTICAL:
64 return strdup("ATSPI_STATE_VERTICAL");
65 case ATSPI_STATE_VISIBLE:
66 return strdup("ATSPI_STATE_VISIBLE");
67 case ATSPI_STATE_MANAGES_DESCENDANTS:
68 return strdup("ATSPI_STATE_MANAGES_DESCENDANTS");
69 case ATSPI_STATE_INDETERMINATE:
70 return strdup("ATSPI_STATE_INDETERMINATE");
71 case ATSPI_STATE_REQUIRED:
72 return strdup("ATSPI_STATE_REQUIRED");
73 case ATSPI_STATE_TRUNCATED:
74 return strdup("ATSPI_STATE_TRUNCATED");
75 case ATSPI_STATE_ANIMATED:
76 return strdup("ATSPI_STATE_ANIMATED");
77 case ATSPI_STATE_INVALID_ENTRY:
78 return strdup("ATSPI_STATE_INVALID_ENTRY");
79 case ATSPI_STATE_SUPPORTS_AUTOCOMPLETION:
80 return strdup("ATSPI_STATE_SUPPORTS_AUTOCOMPLETION");
81 case ATSPI_STATE_SELECTABLE_TEXT:
82 return strdup("ATSPI_STATE_SELECTABLE_TEXT");
83 case ATSPI_STATE_IS_DEFAULT:
84 return strdup("ATSPI_STATE_IS_DEFAULT");
85 case ATSPI_STATE_VISITED:
86 return strdup("ATSPI_STATE_VISITED");
87 case ATSPI_STATE_CHECKABLE:
88 return strdup("ATSPI_STATE_CHECKABLE");
89 case ATSPI_STATE_HAS_POPUP:
90 return strdup("ATSPI_STATE_HAS_POPUP");
91 case ATSPI_STATE_READ_ONLY:
92 return strdup("ATSPI_STATE_READ_ONLY");
93 case ATSPI_STATE_LAST_DEFINED:
94 return strdup("ATSPI_STATE_LAST_DEFINED");
95 case ATSPI_STATE_MODAL:
96 return strdup("ATSPI_STATE_MODAL");
102 static void debug( AtspiStateSet *stateSet)
104 if (!stateSet) return;
105 GArray *states = atspi_state_set_get_states(stateSet);
108 char *state_name = NULL;
110 LOG_F(INFO, "check ss:%p s:%p, len:%d", stateSet, states, states->len);
111 for (int i = 0; states && (i < states->len); ++i) {
112 stat = g_array_index(states, AtspiStateType, i);
113 state_name = state_to_char(stat);
114 LOG_SCOPE_F(INFO, "state: %s", state_name);
117 g_array_free(states, 1);