michael@0: /************************************************************************* michael@0: * michael@0: * File Name (AccessibleEventID.idl) michael@0: * michael@0: * IAccessible2 IDL Specification michael@0: * michael@0: * Copyright (c) 2007, 2010 Linux Foundation michael@0: * Copyright (c) 2006 IBM Corporation michael@0: * Copyright (c) 2000, 2006 Sun Microsystems, Inc. michael@0: * All rights reserved. michael@0: * michael@0: * michael@0: * Redistribution and use in source and binary forms, with or without michael@0: * modification, are permitted provided that the following conditions michael@0: * are met: michael@0: * michael@0: * 1. Redistributions of source code must retain the above copyright michael@0: * notice, this list of conditions and the following disclaimer. michael@0: * michael@0: * 2. Redistributions in binary form must reproduce the above michael@0: * copyright notice, this list of conditions and the following michael@0: * disclaimer in the documentation and/or other materials michael@0: * provided with the distribution. michael@0: * michael@0: * 3. Neither the name of the Linux Foundation nor the names of its michael@0: * contributors may be used to endorse or promote products michael@0: * derived from this software without specific prior written michael@0: * permission. michael@0: * michael@0: * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND michael@0: * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, michael@0: * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF michael@0: * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE michael@0: * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR michael@0: * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, michael@0: * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT michael@0: * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; michael@0: * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) michael@0: * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN michael@0: * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR michael@0: * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, michael@0: * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. michael@0: * michael@0: * This BSD License conforms to the Open Source Initiative "Simplified michael@0: * BSD License" as published at: michael@0: * http://www.opensource.org/licenses/bsd-license.php michael@0: * michael@0: * IAccessible2 is a trademark of the Linux Foundation. The IAccessible2 michael@0: * mark may be used in accordance with the Linux Foundation Trademark michael@0: * Policy to indicate compliance with the IAccessible2 specification. michael@0: * michael@0: ************************************************************************/ michael@0: michael@0: /** %IAccessible2 specific event constants michael@0: michael@0: This enum defines the event IDs fired by %IAccessible2 objects. The event IDs michael@0: are in addition to those used by MSAA. michael@0: */ michael@0: enum IA2EventID { michael@0: michael@0: /** The change of the number or attributes of actions of an accessible michael@0: object is signaled by events of this type. michael@0: */ michael@0: IA2_EVENT_ACTION_CHANGED = 0x101, michael@0: michael@0: /** Deprecated. The active descendant of a component has changed. michael@0: michael@0: Note: This event constant is misspelled and thus is deprecated and will be michael@0: removed in a later version. Please use the correctly spelled version which michael@0: follows. michael@0: */ michael@0: IA2_EVENT_ACTIVE_DECENDENT_CHANGED, michael@0: michael@0: /** The active descendant of a component has changed. The active descendant michael@0: is used in objects with transient children. michael@0: michael@0: Note: Due to the fact that MSAA's WinEvents don't allow the active child index michael@0: to be passed on the IA2_EVENT_ACTIVE_DESCENDANT_CHANGED event the manages michael@0: descendants scheme can't be used. Instead the active child object has to fire michael@0: MSAA's EVENT_OBJECT_FOCUS. In a future release a new event mechanism may be michael@0: added to provide for event specific data to be passed with the event. At that michael@0: time the IA2_EVENT_ACTIVE_DECENDENT_CHANGED event and michael@0: IA2_STATE_MANAGES_DESCENDANTS state would be useful. michael@0: */ michael@0: IA2_EVENT_ACTIVE_DESCENDANT_CHANGED = IA2_EVENT_ACTIVE_DECENDENT_CHANGED, michael@0: michael@0: /** The document wide attributes of the document object have changed. michael@0: */ michael@0: IA2_EVENT_DOCUMENT_ATTRIBUTE_CHANGED, michael@0: michael@0: /** The contents of the document have changed. michael@0: */ michael@0: IA2_EVENT_DOCUMENT_CONTENT_CHANGED, michael@0: michael@0: /** The loading of the document has completed. michael@0: */ michael@0: IA2_EVENT_DOCUMENT_LOAD_COMPLETE, michael@0: michael@0: /** The loading of the document was interrupted. michael@0: */ michael@0: IA2_EVENT_DOCUMENT_LOAD_STOPPED, michael@0: michael@0: /** The document contents are being reloaded. michael@0: */ michael@0: IA2_EVENT_DOCUMENT_RELOAD, michael@0: michael@0: /** The ending index of this link within the containing string has changed. michael@0: */ michael@0: IA2_EVENT_HYPERLINK_END_INDEX_CHANGED, michael@0: michael@0: /** The number of anchors associated with this hyperlink object has changed. michael@0: */ michael@0: IA2_EVENT_HYPERLINK_NUMBER_OF_ANCHORS_CHANGED, michael@0: michael@0: /** The hyperlink selected state changed from selected to unselected or michael@0: from unselected to selected. michael@0: */ michael@0: IA2_EVENT_HYPERLINK_SELECTED_LINK_CHANGED, michael@0: michael@0: /** One of the links associated with the hypertext object has been activated. michael@0: */ michael@0: IA2_EVENT_HYPERTEXT_LINK_ACTIVATED, michael@0: michael@0: /** One of the links associated with the hypertext object has been selected. michael@0: */ michael@0: IA2_EVENT_HYPERTEXT_LINK_SELECTED, michael@0: michael@0: /** The starting index of this link within the containing string has changed. michael@0: */ michael@0: IA2_EVENT_HYPERLINK_START_INDEX_CHANGED, michael@0: michael@0: /** Focus has changed from one hypertext object to another, or focus moved michael@0: from a non-hypertext object to a hypertext object, or focus moved from a michael@0: hypertext object to a non-hypertext object. michael@0: */ michael@0: IA2_EVENT_HYPERTEXT_CHANGED, michael@0: michael@0: /** The number of hyperlinks associated with a hypertext object changed michael@0: */ michael@0: IA2_EVENT_HYPERTEXT_NLINKS_CHANGED, michael@0: michael@0: /** An object's attributes changed. michael@0: Also see ::IA2_EVENT_TEXT_ATTRIBUTE_CHANGED. michael@0: */ michael@0: IA2_EVENT_OBJECT_ATTRIBUTE_CHANGED, michael@0: michael@0: /** A slide changed in a presentation document or a page boundary was michael@0: crossed in a word processing document. michael@0: */ michael@0: IA2_EVENT_PAGE_CHANGED, michael@0: michael@0: /** The caret moved from one section to the next. michael@0: */ michael@0: IA2_EVENT_SECTION_CHANGED, michael@0: michael@0: /** A table caption changed. michael@0: */ michael@0: IA2_EVENT_TABLE_CAPTION_CHANGED, michael@0: michael@0: /** A table's column description changed. michael@0: */ michael@0: IA2_EVENT_TABLE_COLUMN_DESCRIPTION_CHANGED, michael@0: michael@0: /** A table's column header changed. michael@0: */ michael@0: IA2_EVENT_TABLE_COLUMN_HEADER_CHANGED, michael@0: michael@0: /** A table's data changed. michael@0: */ michael@0: IA2_EVENT_TABLE_MODEL_CHANGED, michael@0: michael@0: /** A table's row description changed. michael@0: */ michael@0: IA2_EVENT_TABLE_ROW_DESCRIPTION_CHANGED, michael@0: michael@0: /** A table's row header changed. michael@0: */ michael@0: IA2_EVENT_TABLE_ROW_HEADER_CHANGED, michael@0: michael@0: /** A table's summary changed. michael@0: */ michael@0: IA2_EVENT_TABLE_SUMMARY_CHANGED, michael@0: michael@0: /** A text object's attributes changed. michael@0: Also see ::IA2_EVENT_OBJECT_ATTRIBUTE_CHANGED. michael@0: */ michael@0: IA2_EVENT_TEXT_ATTRIBUTE_CHANGED, michael@0: michael@0: /** The caret has moved to a new position. michael@0: */ michael@0: IA2_EVENT_TEXT_CARET_MOVED, michael@0: michael@0: /** Deprecated. This event is equivalent to ::IA2_EVENT_TEXT_UPDATED. michael@0: */ michael@0: IA2_EVENT_TEXT_CHANGED, michael@0: michael@0: /** The caret moved from one column to the next. michael@0: */ michael@0: IA2_EVENT_TEXT_COLUMN_CHANGED, michael@0: michael@0: /** Text was inserted. michael@0: */ michael@0: IA2_EVENT_TEXT_INSERTED, michael@0: michael@0: /** Text was removed. michael@0: */ michael@0: IA2_EVENT_TEXT_REMOVED, michael@0: michael@0: /** This event indicates general text changes, i.e. changes to text that are michael@0: exposed through the IAccessibleText interface. For compatibility with ATK/AT-SPI michael@0: which does not have an equivalent event, servers can alternatively fire michael@0: ::IA2_EVENT_TEXT_REMOVED and ::IA2_EVENT_TEXT_INSERTED. michael@0: */ michael@0: IA2_EVENT_TEXT_UPDATED, michael@0: michael@0: /** The text selection changed. Later versions of Microsoft development environments michael@0: have an equivalent event identified, EVENT_OBJECT_TEXTSELECTIONCHANGED. Servers michael@0: should use that if it is available and use IA2_EVENT_TEXT_SELECTION_CHANGED otherwise. michael@0: Clients should be prepared to respond to either event. michael@0: michael@0: */ michael@0: IA2_EVENT_TEXT_SELECTION_CHANGED, michael@0: michael@0: /** A visible data event indicates the change of the visual appearance michael@0: of an accessible object. This includes for example most of the michael@0: attributes available via the IAccessibleComponent interface. michael@0: */ michael@0: IA2_EVENT_VISIBLE_DATA_CHANGED michael@0: michael@0: };