1 /*************************************************************************
3 * File Name (AccessibleEventID.idl)
5 * IAccessible2 IDL Specification
7 * Copyright (c) 2007, 2010 Linux Foundation
8 * Copyright (c) 2006 IBM Corporation
9 * Copyright (c) 2000, 2006 Sun Microsystems, Inc.
10 * All rights reserved.
13 * Redistribution and use in source and binary forms, with or without
14 * modification, are permitted provided that the following conditions
17 * 1. Redistributions of source code must retain the above copyright
18 * notice, this list of conditions and the following disclaimer.
20 * 2. Redistributions in binary form must reproduce the above
21 * copyright notice, this list of conditions and the following
22 * disclaimer in the documentation and/or other materials
23 * provided with the distribution.
25 * 3. Neither the name of the Linux Foundation nor the names of its
26 * contributors may be used to endorse or promote products
27 * derived from this software without specific prior written
30 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
31 * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
32 * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
33 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
34 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
35 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
36 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
37 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
38 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
39 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
40 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
41 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
42 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
44 * This BSD License conforms to the Open Source Initiative "Simplified
45 * BSD License" as published at:
46 * http://www.opensource.org/licenses/bsd-license.php
48 * IAccessible2 is a trademark of the Linux Foundation. The IAccessible2
49 * mark may be used in accordance with the Linux Foundation Trademark
50 * Policy to indicate compliance with the IAccessible2 specification.
52 ************************************************************************/
54 /** %IAccessible2 specific event constants
56 This enum defines the event IDs fired by %IAccessible2 objects. The event IDs
57 are in addition to those used by MSAA.
61 /** The change of the number or attributes of actions of an accessible
62 object is signaled by events of this type.
64 IA2_EVENT_ACTION_CHANGED
= 0x101,
66 /** <b>Deprecated.</b> The active descendant of a component has changed.
68 Note: This event constant is misspelled and thus is deprecated and will be
69 removed in a later version. Please use the correctly spelled version which
72 IA2_EVENT_ACTIVE_DECENDENT_CHANGED
,
74 /** The active descendant of a component has changed. The active descendant
75 is used in objects with transient children.
77 Note: Due to the fact that MSAA's WinEvents don't allow the active child index
78 to be passed on the IA2_EVENT_ACTIVE_DESCENDANT_CHANGED event the manages
79 descendants scheme can't be used. Instead the active child object has to fire
80 MSAA's EVENT_OBJECT_FOCUS. In a future release a new event mechanism may be
81 added to provide for event specific data to be passed with the event. At that
82 time the IA2_EVENT_ACTIVE_DECENDENT_CHANGED event and
83 IA2_STATE_MANAGES_DESCENDANTS state would be useful.
85 IA2_EVENT_ACTIVE_DESCENDANT_CHANGED
= IA2_EVENT_ACTIVE_DECENDENT_CHANGED
,
87 /** The document wide attributes of the document object have changed.
89 IA2_EVENT_DOCUMENT_ATTRIBUTE_CHANGED
,
91 /** The contents of the document have changed.
93 IA2_EVENT_DOCUMENT_CONTENT_CHANGED
,
95 /** The loading of the document has completed.
97 IA2_EVENT_DOCUMENT_LOAD_COMPLETE
,
99 /** The loading of the document was interrupted.
101 IA2_EVENT_DOCUMENT_LOAD_STOPPED
,
103 /** The document contents are being reloaded.
105 IA2_EVENT_DOCUMENT_RELOAD
,
107 /** The ending index of this link within the containing string has changed.
109 IA2_EVENT_HYPERLINK_END_INDEX_CHANGED
,
111 /** The number of anchors associated with this hyperlink object has changed.
113 IA2_EVENT_HYPERLINK_NUMBER_OF_ANCHORS_CHANGED
,
115 /** The hyperlink selected state changed from selected to unselected or
116 from unselected to selected.
118 IA2_EVENT_HYPERLINK_SELECTED_LINK_CHANGED
,
120 /** One of the links associated with the hypertext object has been activated.
122 IA2_EVENT_HYPERTEXT_LINK_ACTIVATED
,
124 /** One of the links associated with the hypertext object has been selected.
126 IA2_EVENT_HYPERTEXT_LINK_SELECTED
,
128 /** The starting index of this link within the containing string has changed.
130 IA2_EVENT_HYPERLINK_START_INDEX_CHANGED
,
132 /** Focus has changed from one hypertext object to another, or focus moved
133 from a non-hypertext object to a hypertext object, or focus moved from a
134 hypertext object to a non-hypertext object.
136 IA2_EVENT_HYPERTEXT_CHANGED
,
138 /** The number of hyperlinks associated with a hypertext object changed
140 IA2_EVENT_HYPERTEXT_NLINKS_CHANGED
,
142 /** An object's attributes changed.
143 Also see ::IA2_EVENT_TEXT_ATTRIBUTE_CHANGED.
145 IA2_EVENT_OBJECT_ATTRIBUTE_CHANGED
,
147 /** A slide changed in a presentation document or a page boundary was
148 crossed in a word processing document.
150 IA2_EVENT_PAGE_CHANGED
,
152 /** The caret moved from one section to the next.
154 IA2_EVENT_SECTION_CHANGED
,
156 /** A table caption changed.
158 IA2_EVENT_TABLE_CAPTION_CHANGED
,
160 /** A table's column description changed.
162 IA2_EVENT_TABLE_COLUMN_DESCRIPTION_CHANGED
,
164 /** A table's column header changed.
166 IA2_EVENT_TABLE_COLUMN_HEADER_CHANGED
,
168 /** A table's data changed.
170 IA2_EVENT_TABLE_MODEL_CHANGED
,
172 /** A table's row description changed.
174 IA2_EVENT_TABLE_ROW_DESCRIPTION_CHANGED
,
176 /** A table's row header changed.
178 IA2_EVENT_TABLE_ROW_HEADER_CHANGED
,
180 /** A table's summary changed.
182 IA2_EVENT_TABLE_SUMMARY_CHANGED
,
184 /** A text object's attributes changed.
185 Also see ::IA2_EVENT_OBJECT_ATTRIBUTE_CHANGED.
187 IA2_EVENT_TEXT_ATTRIBUTE_CHANGED
,
189 /** The caret has moved to a new position.
191 IA2_EVENT_TEXT_CARET_MOVED
,
193 /** <b>Deprecated.</b> This event is equivalent to ::IA2_EVENT_TEXT_UPDATED.
195 IA2_EVENT_TEXT_CHANGED
,
197 /** The caret moved from one column to the next.
199 IA2_EVENT_TEXT_COLUMN_CHANGED
,
201 /** Text was inserted.
203 IA2_EVENT_TEXT_INSERTED
,
205 /** Text was removed.
207 IA2_EVENT_TEXT_REMOVED
,
209 /** This event indicates general text changes, i.e. changes to text that are
210 exposed through the IAccessibleText interface. For compatibility with ATK/AT-SPI
211 which does not have an equivalent event, servers can alternatively fire
212 ::IA2_EVENT_TEXT_REMOVED and ::IA2_EVENT_TEXT_INSERTED.
214 IA2_EVENT_TEXT_UPDATED
,
216 /** The text selection changed. Later versions of Microsoft development environments
217 have an equivalent event identified, EVENT_OBJECT_TEXTSELECTIONCHANGED. Servers
218 should use that if it is available and use IA2_EVENT_TEXT_SELECTION_CHANGED otherwise.
219 Clients should be prepared to respond to either event.
222 IA2_EVENT_TEXT_SELECTION_CHANGED
,
224 /** A visible data event indicates the change of the visual appearance
225 of an accessible object. This includes for example most of the
226 attributes available via the IAccessibleComponent interface.
228 IA2_EVENT_VISIBLE_DATA_CHANGED
,
230 /** The role changed. This should only be used if the interfaces supported by the object
231 did not also change. If the interfaces need to change, the object should be destroyed
232 and a new object created.
234 IA2_EVENT_ROLE_CHANGED