* cspi/cspi-lowlevel.h cspi/spi-impl.h cspi/spi-listener.h
[platform/core/uifw/at-spi2-atk.git] / cspi / spi-statetypes.h
1 /*
2  * AT-SPI - Assistive Technology Service Provider Interface
3  * (Gnome Accessibility Project; http://developer.gnome.org/projects/gap)
4  *
5  * Copyright 2001 Sun Microsystems Inc.
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Library General Public
9  * License as published by the Free Software Foundation; either
10  * version 2 of the License, or (at your option) any later version.
11  *
12  * This library is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15  * Library General Public License for more details.
16  *
17  * You should have received a copy of the GNU Library General Public
18  * License along with this library; if not, write to the
19  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20  * Boston, MA 02111-1307, USA.
21  */
22
23 #ifndef _SPI_STATETYPES_H_
24 #define _SPI_STATETYPES_H_
25
26 #ifdef  __cplusplus
27 extern "C" {
28 #endif
29
30 /* Enumerated type for accessible state */
31
32 typedef enum
33 {
34   SPI_STATE_INVALID,
35   /* Indicates a window is currently the active window */
36   SPI_STATE_ACTIVE,
37   /* Indicates that the object is armed */
38   SPI_STATE_ARMED,
39   /* Indicates the current object is busy */
40   SPI_STATE_BUSY,
41   /* Indicates this object is currently checked */
42   SPI_STATE_CHECKED,
43   /* Indicates this object is collapsed */
44   SPI_STATE_COLLAPSED,
45   /* Indicates the user interface object corresponding to this object no longer exists */
46   SPI_STATE_DEFUNCT,
47   /* Indicates the user can change the contents of this object */
48   SPI_STATE_EDITABLE,
49   /* Indicates that this object is enabled */
50   SPI_STATE_ENABLED,
51   /* Indicates this object allows progressive disclosure of its children */
52   SPI_STATE_EXPANDABLE,
53   /* Indicates this object its expanded */
54   SPI_STATE_EXPANDED,
55   /*
56    * Indicates this object can accept keyboard focus, which means all
57    * events resulting from typing on the keyboard will normally be passed
58    * to it when it has focus
59    */
60   SPI_STATE_FOCUSABLE,
61   /* Indicates this object currently has the keyboard focus */
62   SPI_STATE_FOCUSED,
63   /* Indicates the orientation of thsi object is horizontal */
64   SPI_STATE_HORIZONTAL,
65   /* Indicates this object is minimized and is represented only by an icon */
66   SPI_STATE_ICONIFIED,
67   /*
68    * Indicates something must be done with this object before the user can
69    * interact with an object in a different window.
70    */
71   SPI_STATE_MODAL,
72   /* Indicates this (text) object can contain multiple lines of text */
73   SPI_STATE_MULTI_LINE,
74   /*
75    * Indicates this object allows more than one of its children to be
76    * selected at the same time
77    */
78   SPI_STATE_MULTISELECTABLE,
79   /* Indicates this object paints every pixel within its rectangular region. */
80   SPI_STATE_OPAQUE,
81   /* Indicates this object is currently pressed */
82   SPI_STATE_PRESSED,
83   /* Indicates the size of this object is not fixed */
84   SPI_STATE_RESIZABLE,
85   /*
86    * Indicates this object is the child of an object that allows its
87    * children to be selected and that this child is one of those children
88    * that can be selected.
89    */
90   SPI_STATE_SELECTABLE,
91   /*
92    * Indicates this object is the child of an object that allows its
93    * children to be selected and that this child is one of those children
94    * that has been selected.
95    */
96   SPI_STATE_SELECTED,
97   /* Indicates this object is sensitive */
98   SPI_STATE_SENSITIVE,
99   /*
100    * Indicates this object, the object's parent, the object's parent's
101    * parent, and so on, are all visible
102    */
103   SPI_STATE_SHOWING,
104   /* Indicates this (text) object can contain only a single line of text */
105   SPI_STATE_SINGLE_LINE,
106   /* Indicates that the index associated with this object has changed since the user accessed the object. */
107   SPI_STATE_STALE,
108   /* Indicates this object is transient */
109   SPI_STATE_TRANSIENT,
110   /* Indicates the orientation of this object is vertical */
111   SPI_STATE_VERTICAL,
112   /* Indicates this object is visible */
113   SPI_STATE_VISIBLE,
114   SPI_STATE_LAST_DEFINED
115 } AccessibleState;
116
117 #ifdef  __cplusplus
118 }
119 #endif
120
121 #endif