1 /* ATK - Accessibility Toolkit
2 * Copyright 2001 Sun Microsystems Inc.
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Library General Public
6 * License as published by the Free Software Foundation; either
7 * version 2 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Library General Public License for more details.
14 * You should have received a copy of the GNU Library General Public
15 * License along with this library; if not, write to the
16 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17 * Boston, MA 02111-1307, USA.
20 #ifndef __ATK_STATE_H__
21 #define __ATK_STATE_H__
25 #endif /* __cplusplus */
27 #include <glib-object.h>
32 /* Indicates a window is currently the active window */
34 /* Indicates that the object is armed */
36 /* Indicates the current object is busy */
38 /* Indicates this object is currently checked */
40 /* Indicates this object is collapsed */
43 * Indicates the user interface object corresponding to this object
47 /* Indicates the user can change the contents of this object */
49 /* Indicates this object allows progressive disclosure of its children */
51 /* Indicates this object its expanded */
54 * Indicates this object can accept keyboard focus, which means all
55 * events resulting from typing on the keyboard will normally be passed
56 * to it when it has focus
59 /* Indicates this object currently has the keyboard focus */
61 /* Indicates the orientation of this object is horizontal */
63 /* Indicates this object is minimized and is represented only by an icon */
66 * Indicates something must be done with this object before the user can
67 * interact with an object in a different window.
70 /* Indicates this (text) object can contain multiple lines of text */
73 * Indicates this object allows more than one of its children to be
74 * selected at the same time
76 ATK_STATE_MULTISELECTABLE,
77 /* Indicates this object paints every pixel within its rectangular region. */
79 /* Indicates this object is currently pressed */
81 /* Indicates the size of this object is not fixed */
84 * Indicates this object is the child of an object that allows its
85 * children to be selected and that this child is one of those children
86 * that can be selected.
90 * Indicates this object is the child of an object that allows its
91 * children to be selected and that this child is one of those children
92 * that has been selected.
95 /* Indicates this object is sensitive */
98 * Indicates this object, the object's parent, the object's parent's
99 * parent, and so on, are all visible
102 /* Indicates this (text) object can contain only a single line of text */
103 ATK_STATE_SINGLE_LINE,
104 /* Indicates this object is transient */
106 /* Indicates the orientation of this object is vertical */
108 /* Indicates this object is visible */
110 ATK_STATE_LAST_DEFINED
113 typedef guint64 AtkState;
115 AtkStateType atk_state_type_register (const gchar *name);
117 G_CONST_RETURN gchar* atk_state_type_get_name (AtkStateType type);
118 AtkStateType atk_state_type_for_name (const gchar *name);
122 #endif /* __cplusplus */
124 #endif /* __ATK_STATE_H__ */