From a1dd84c2159c9f9c69fb7a70cb0a550f451050ce Mon Sep 17 00:00:00 2001 From: James Teh Date: Tue, 25 Sep 2012 17:08:06 +1000 Subject: [PATCH] Updates for 1.3pre from 20120917. --- api/Accessible2.idl | 84 +++++++++--- api/Accessible2_2.idl | 123 ++++++++++++++++++ api/AccessibleDocument.idl | 77 +++++++++++ api/AccessibleEditableText.idl | 5 +- api/AccessibleHypertext2.idl | 89 +++++++++++++ api/AccessibleRelation.idl | 29 ++++- api/AccessibleTable2.idl | 10 +- api/AccessibleTableCell.idl | 6 +- api/AccessibleText.idl | 4 +- api/AccessibleText2.idl | 120 +++++++++++++++++ api/IA2TypeLibrary.idl | 10 +- api/api_all_headers.idl | 55 ++++++++ buildapi.sh | 130 +++++++++---------- changelog.txt | 111 +++++++--------- doxygen.conf | 143 +++++++++++++-------- footer.html | 2 +- header.html | 6 +- how-to-build-ia2-idl.txt | 22 +++- ia2-1.2-errata.html => ia2-1.3-errata.html | 49 +++---- 19 files changed, 826 insertions(+), 249 deletions(-) create mode 100644 api/Accessible2_2.idl create mode 100644 api/AccessibleDocument.idl create mode 100644 api/AccessibleHypertext2.idl create mode 100644 api/AccessibleText2.idl create mode 100644 api/api_all_headers.idl rename ia2-1.2-errata.html => ia2-1.3-errata.html (77%) diff --git a/api/Accessible2.idl b/api/Accessible2.idl index 71b1ef6..a9f9a36 100644 --- a/api/Accessible2.idl +++ b/api/Accessible2.idl @@ -4,7 +4,7 @@ * * IAccessible2 IDL Specification * - * Copyright (c) 2007, 2010 Linux Foundation + * Copyright (c) 2007, 2012 Linux Foundation * Copyright (c) 2006 IBM Corporation * Copyright (c) 2000, 2006 Sun Microsystems, Inc. * All rights reserved. @@ -54,19 +54,22 @@ /** @mainpage @section _interfaces Interfaces - IAccessible2\n + IAccessible2_2\n IAccessibleAction\n IAccessibleApplication\n IAccessibleComponent\n - IAccessibleHypertext\n + IAccessibleDocument\n + IAccessibleEditableText\n + IAccessibleHypertext [Deprecated]\n + IAccessibleHypertext2\n IAccessibleHyperlink\n IAccessibleImage\n - IAccessibleRelation\n + IAccessibleRelation [Deprecated]\n IAccessibleTable [Deprecated]\n IAccessibleTable2\n IAccessibleTableCell\n - IAccessibleText\n - IAccessibleEditableText\n + IAccessibleText [Deprecated]\n + IAccessibleText2\n IAccessibleValue @section _structs Structs @@ -209,9 +212,9 @@ CoTaskMemAlloc and any BSTRs with SysAllocString. The client must use CoTaskMemFree to free the array and any BSTRs must be freed with SysFreeString. - Also, the IDL for those six methods includes an extraneous [in] parameter for the - caller to specify the max size of the array. This parameter will be ignored by - the COM server. + Also, the IDL for IAccessible2::extendedStates, IAccessible2::localizedExtendedStates, + and IAccessibleAction::keyBinding includes an extraneous [in] parameter for the caller + to specify the max size of the array. This parameter will be ignored by the COM server. @section _indexes Zero and One Based Indexes Unless otherwise specified all offsets and indexes are 0 based. @@ -372,6 +375,7 @@ interface IAccessible2 : IAccessible /** @brief Returns the number of accessible relations for this object. @param [out] nRelations @retval S_OK + @deprecated */ [propget] HRESULT nRelations ( @@ -384,6 +388,7 @@ interface IAccessible2 : IAccessible @param [out] relation @retval S_OK @retval E_INVALIDARG if bad [in] passed + @deprecated */ [propget] HRESULT relation ( @@ -402,6 +407,7 @@ interface IAccessible2 : IAccessible actual number of relations in the returned array (not more than maxRelations) @retval S_OK @retval S_FALSE if there are no relations, nRelations is set to 0 + @deprecated */ [propget] HRESULT relations ( @@ -543,9 +549,6 @@ interface IAccessible2 : IAccessible An extended state is a state which is dynamically generated by the application. It is not predefined by the %IAccessible2 specification. - @param [in] maxExtendedStates - This parameter is ignored. Refer to @ref _arrayConsideration - "Special Consideration when using Arrays" for more details. @param [out] extendedStates This array is allocated by the server. Free it with CoTaskMemFree. @param [out] nExtendedStates @@ -555,15 +558,11 @@ interface IAccessible2 : IAccessible */ [propget] HRESULT extendedStates ( - [in] long maxExtendedStates, - [out, size_is(,maxExtendedStates), length_is(,*nExtendedStates)] BSTR **extendedStates, + [out, size_is(,*nExtendedStates)] BSTR **extendedStates, [out, retval] long *nExtendedStates ); /** @brief Returns the localized extended states (array of strings). - @param [in] maxLocalizedExtendedStates - This parameter is ignored. Refer to @ref _arrayConsideration - "Special Consideration when using Arrays" for more details. @param [out] localizedExtendedStates This array is allocated by the server. Free it with CoTaskMemFree. @param [out] nLocalizedExtendedStates @@ -573,8 +572,7 @@ interface IAccessible2 : IAccessible */ [propget] HRESULT localizedExtendedStates ( - [in] long maxLocalizedExtendedStates, - [out, size_is(,maxLocalizedExtendedStates), length_is(,*nLocalizedExtendedStates)] BSTR **localizedExtendedStates, + [out, size_is(,*nLocalizedExtendedStates)] BSTR **localizedExtendedStates, [out, retval] long *nLocalizedExtendedStates ); @@ -665,7 +663,7 @@ interface IAccessible2 : IAccessible [out, retval] IA2Locale *locale ); - /** @brief Returns the attributes specific to this %IAccessible2 object, such as a cell's formula. + /** @brief Returns the attributes specific to this object, such as a cell's formula. @param [out] attributes @retval S_OK @retval S_FALSE returned if there is nothing to return, [out] value is NULL @@ -675,5 +673,51 @@ interface IAccessible2 : IAccessible [out, retval] BSTR *attributes ); + /** @brief Returns the attribute value of a specified attribute specific to this object. + @param [in] name + @param [out] attribute + @retval S_OK + @retval S_FALSE returned if there is nothing to return, [out] value is NULL. + @retval E_INVALIDARG if bad [in] passed. + */ + [propget] HRESULT attribute + ( + [in] BSTR name, + [out, retval] BSTR *attribute + ); + + /** @brief Returns the hypertext accessible in the subtree of this object, and the caret offset within it. + @param [out] accessible + @param [out] caretOffset + @retval S_OK + @retval S_FALSE returned if there is no caret in any of the objects in the subtree, [out] accessible is NULL and [out] caretOffset is -1. + */ + [propget] HRESULT accessibleWithCaret + ( + [out] IUnknown **accessible, + [out, retval] long *caretOffset + ); + + /** @brief Returns relation targets for a specified target type. + @param [in] type + The requested relation type. + @param [in] maxTargets + The number of targets requested. 0 indicates that all targets should be returned. + @param [out] targets + This array is allocated by the server. Free it with CoTaskMemFree. + @param [out] nTargets + The number of targets returned; the size of the returned array. + @retval S_OK + @retval S_FALSE if there are no targets, [out] values are NULL and 0 respectively. + @retval E_INVALIDARG if bad [in] passed. + */ + [propget] HRESULT relationTargetsOfType + ( + [in] BSTR type, + [in] long maxTargets, + [out, size_is(,*nTargets)] IUnknown ***targets, + [out, retval] long *nTargets + ); + } diff --git a/api/Accessible2_2.idl b/api/Accessible2_2.idl new file mode 100644 index 0000000..a1a4474 --- /dev/null +++ b/api/Accessible2_2.idl @@ -0,0 +1,123 @@ +/************************************************************************* + * + * File Name (Accessible2_2.idl) + * + * IAccessible2 IDL Specification + * + * Copyright (c) 2007, 2012 Linux Foundation + * Copyright (c) 2006 IBM Corporation + * Copyright (c) 2000, 2006 Sun Microsystems, Inc. + * All rights reserved. + * + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * 3. Neither the name of the Linux Foundation nor the names of its + * contributors may be used to endorse or promote products + * derived from this software without specific prior written + * permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * This BSD License conforms to the Open Source Initiative "Simplified + * BSD License" as published at: + * http://www.opensource.org/licenses/bsd-license.php + * + * IAccessible2 is a trademark of the Linux Foundation. The IAccessible2 + * mark may be used in accordance with the Linux Foundation Trademark + * Policy to indicate compliance with the IAccessible2 specification. + * + ************************************************************************/ + +import "objidl.idl"; +import "oaidl.idl"; +import "oleacc.idl"; +import "Accessible2.idl"; + +/** @brief This interface exposes the primary set of information about an + IAccessible2 enabled accessible object. + + This interface must always be provided for objects that support some + portion of the collection of the %IAccessible2 interfaces. + + Please refer to @ref _changingInterfaces "Changing between Accessible Interfaces" + for special considerations related to use of the MSAA IAccessible interface and + the set of %IAccessible2 interfaces. + */ +[object, uuid(6C9430E9-299D-4E6F-BD01-A82A1E88D3FF)] +interface IAccessible2_2 : IAccessible2 +{ + /** @brief Returns the attribute value of a specified attribute specific to this object. + @param [in] name + @param [out] attribute + @retval S_OK + @retval S_FALSE returned if there is nothing to return, [out] value is NULL. + @retval E_INVALIDARG if bad [in] passed. + @note The output value is a VARIANT. Typically it will be a VT_BSTR, but there + are some cases where it will be a VT_I4 or VT_BOOL. Refer to the + Object Attributes specification for more information. + */ + [propget] HRESULT attribute + ( + [in] BSTR name, + [out, retval] VARIANT *attribute + ); + + /** @brief Returns the hypertext accessible in the subtree of this object, and the caret offset within it. + @param [out] accessible + @param [out] caretOffset + @retval S_OK + @retval S_FALSE returned if there is no caret in any of the objects in the subtree, [out] accessible is NULL and [out] caretOffset is -1. + */ + [propget] HRESULT accessibleWithCaret + ( + [out] IUnknown **accessible, + [out, retval] long *caretOffset + ); + + /** @brief Returns relation targets for a specified target type. + @param [in] type + The requested relation type. + @param [in] maxTargets + The number of targets requested. 0 indicates that all targets should be returned. + @param [out] targets + This array is allocated by the server. Free it with CoTaskMemFree. + @param [out] nTargets + The number of targets returned; the size of the returned array. + @retval S_OK + @retval S_FALSE if there are no targets, [out] values are NULL and 0 respectively. + @retval E_INVALIDARG if bad [in] passed. + */ + [propget] HRESULT relationTargetsOfType + ( + [in] BSTR type, + [in] long maxTargets, + [out, size_is(,*nTargets)] IUnknown ***targets, + [out, retval] long *nTargets + ); + +} + diff --git a/api/AccessibleDocument.idl b/api/AccessibleDocument.idl new file mode 100644 index 0000000..c4447a1 --- /dev/null +++ b/api/AccessibleDocument.idl @@ -0,0 +1,77 @@ +/************************************************************************* + * + * File Name (AccessibleDocument.idl) + * + * IAccessible2 IDL Specification + * + * Copyright (c) 2012 Linux Foundation + * All rights reserved. + * + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * 3. Neither the name of the Linux Foundation nor the names of its + * contributors may be used to endorse or promote products + * derived from this software without specific prior written + * permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * This BSD License conforms to the Open Source Initiative "Simplified + * BSD License" as published at: + * http://www.opensource.org/licenses/bsd-license.php + * + * IAccessible2 is a trademark of the Linux Foundation. The IAccessible2 + * mark may be used in accordance with the Linux Foundation Trademark + * Policy to indicate compliance with the IAccessible2 specification. + * + ************************************************************************/ + +import "objidl.idl"; +import "oaidl.idl"; +import "oleacc.idl"; + +/** @brief This interface represents documents. + + This interface is used for a representation of documents. +*/ +[object, uuid(C48C7FCF-4AB5-4056-AFA6-902D6E1D1149)] +interface IAccessibleDocument : IUnknown +{ + /** @brief Returns the most recently used anchor target within an HTML document. + + Anchor targets are those which has been defined with the tag. An HTML page's + most recently targeted in-page anchor is returned. + + @param [out] accessible + @retval S_OK + @retval S_FALSE if there are no existing valid anchor targets, [out] value is NULL. + */ + [propget] HRESULT anchorTarget + ( + [out, retval] IUnknown **accessible + ); + +} diff --git a/api/AccessibleEditableText.idl b/api/AccessibleEditableText.idl index 7e020d8..830fd44 100644 --- a/api/AccessibleEditableText.idl +++ b/api/AccessibleEditableText.idl @@ -4,7 +4,7 @@ * * IAccessible2 IDL Specification * - * Copyright (c) 2007, 2010 Linux Foundation + * Copyright (c) 2007, 2012 Linux Foundation * Copyright (c) 2006 IBM Corporation * Copyright (c) 2000, 2006 Sun Microsystems, Inc. * All rights reserved. @@ -96,6 +96,7 @@ interface IAccessibleEditableText : IUnknown "Special Offsets for use in the IAccessibleText and IAccessibleEditableText Methods" for information about special offsets that can be used in %IAccessibleEditableText methods. + @deprecated This function is available via the application's GUI. */ HRESULT copyText ( @@ -167,6 +168,7 @@ interface IAccessibleEditableText : IUnknown "Special Offsets for use in the IAccessibleText and IAccessibleEditableText Methods" for information about special offsets that can be used in %IAccessibleEditableText methods. + @deprecated This function is available via the application's GUI. */ HRESULT cutText ( @@ -192,6 +194,7 @@ interface IAccessibleEditableText : IUnknown methods. @retval S_OK @retval E_INVALIDARG if bad [in] passed + @deprecated This function is available via the application's GUI. */ HRESULT pasteText ( diff --git a/api/AccessibleHypertext2.idl b/api/AccessibleHypertext2.idl new file mode 100644 index 0000000..33be6a1 --- /dev/null +++ b/api/AccessibleHypertext2.idl @@ -0,0 +1,89 @@ +/************************************************************************* + * + * File Name (AccessibleHypertext2.idl) + * + * IAccessible2 IDL Specification + * + * Copyright (c) 2007, 2012 Linux Foundation + * Copyright (c) 2006 IBM Corporation + * Copyright (c) 2000, 2006 Sun Microsystems, Inc. + * All rights reserved. + * + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * 3. Neither the name of the Linux Foundation nor the names of its + * contributors may be used to endorse or promote products + * derived from this software without specific prior written + * permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * This BSD License conforms to the Open Source Initiative "Simplified + * BSD License" as published at: + * http://www.opensource.org/licenses/bsd-license.php + * + * IAccessible2 is a trademark of the Linux Foundation. The IAccessible2 + * mark may be used in accordance with the Linux Foundation Trademark + * Policy to indicate compliance with the IAccessible2 specification. + * + ************************************************************************/ + +import "objidl.idl"; +import "oaidl.idl"; +import "oleacc.idl"; +import "AccessibleHypertext.idl"; +import "AccessibleHyperlink.idl"; + +/** @brief This interface exposes information about hypertext in a document. + + The %IAccessibleHypertext interface is the main interface to expose + hyperlinks in a document, typically a text document, that are used + to reference other documents. A typical implementation is to implement + this interface on the smallest text object such as a paragraph of text. +*/ +[object, uuid(CF64D89F-8287-4B44-8501-A827453A6077)] +interface IAccessibleHypertext2 : IAccessibleHypertext +{ + + /** @brief Returns the links for this object. + + The returned IAccessibleHyperlink objects encapsulate the hyperlink and + provides several kinds of information describing it. + + @param [out] hyperlinks + This array is allocated by the server. Free it with CoTaskMemFree. + @param [out] nHyperlinks + The number of links returned; the size of the returned array. + @retval S_OK + @retval S_FALSE if there are no links, [out] values are NULL and 0 respectively + */ + [propget] HRESULT hyperlinks + ( + [out, size_is(,*nHyperlinks)] IAccessibleHyperlink ***hyperlinks, + [out, retval] long *nHyperlinks + ); + +} diff --git a/api/AccessibleRelation.idl b/api/AccessibleRelation.idl index 109f698..99d91f1 100644 --- a/api/AccessibleRelation.idl +++ b/api/AccessibleRelation.idl @@ -4,7 +4,7 @@ * * IAccessible2 IDL Specification * - * Copyright (c) 2007, 2010 Linux Foundation + * Copyright (c) 2007, 2012 Linux Foundation * Copyright (c) 2006 IBM Corporation * Copyright (c) 2000, 2006 Sun Microsystems, Inc. * All rights reserved. @@ -92,6 +92,9 @@ const WCHAR *const IA2_RELATION_FLOWS_FROM = L"flowsFrom"; /** Content flows from this object to a target object. */ const WCHAR *const IA2_RELATION_FLOWS_TO = L"flowsTo"; +/** This object is a grouping object for the target object. */ +const WCHAR *const IA2_RELATION_GROUPING_OBJECT_FOR = L"groupingObjectFor"; + /** This object is label for a target object. */ const WCHAR *const IA2_RELATION_LABEL_FOR = L"labelFor"; @@ -111,9 +114,15 @@ const WCHAR *const IA2_RELATION_LABELLED_BY = L"labelledBy"; */ const WCHAR *const IA2_RELATION_MEMBER_OF = L"memberOf"; +/** The target object is the next object in the tab order. */ +const WCHAR *const IA2_RELATION_NEXT_TABBABLE = L"nextTabbable"; + /** This object is a child of a target object. */ const WCHAR *const IA2_RELATION_NODE_CHILD_OF = L"nodeChildOf"; +/** This object is a parent of a target object. */ +const WCHAR *const IA2_RELATION_NODE_PARENT_OF = L"nodeParentOf"; + /** This object is a parent window of the target object. */ const WCHAR *const IA2_RELATION_PARENT_WINDOW_OF = L"parentWindowOf"; @@ -122,9 +131,27 @@ const WCHAR *const IA2_RELATION_PARENT_WINDOW_OF = L"parentWindowOf"; */ const WCHAR *const IA2_RELATION_POPUP_FOR = L"popupFor"; +/** This object is the initiator for the target popup object. */ +const WCHAR *const IA2_RELATION_POPUP_INITIATOR_FOR = L"popInitiatorFor"; + +/** The target object is the previous object in the tab order. */ +const WCHAR *const IA2_RELATION_PREVIOUS_TABBABLE = L"previousTabbable"; + /** This object is a sub window of a target object. */ const WCHAR *const IA2_RELATION_SUBWINDOW_OF = L"subwindowOf"; +/** The target object is the containing document object. */ +const WCHAR *const IA2_RELATION_CONTAINING_DOCUMENT = L"containingDocument"; + +/** The target object is the containing tab pane object. */ +const WCHAR *const IA2_RELATION_CONTAINING_TAB_PANE = L"containingTabPane"; + +/** The target object is the containing window object. */ +const WCHAR *const IA2_RELATION_CONTAINING_WINDOW = L"containingWindow"; + +/** The target object is the containing application object. */ +const WCHAR *const IA2_RELATION_CONTAINING_APPLICATION = L"containingApplication"; + ///@} /// This interface gives access to an object's set of relations. diff --git a/api/AccessibleTable2.idl b/api/AccessibleTable2.idl index d975b16..0d39cd3 100644 --- a/api/AccessibleTable2.idl +++ b/api/AccessibleTable2.idl @@ -4,7 +4,7 @@ * * IAccessible2 IDL Specification * - * Copyright (c) 2007, 2010 Linux Foundation + * Copyright (c) 2007, 2012 Linux Foundation * Copyright (c) 2006 IBM Corporation * Copyright (c) 2000, 2006 Sun Microsystems, Inc. * All rights reserved. @@ -94,7 +94,8 @@ interface IAccessibleTable2 : IUnknown If the table has a caption then a reference to it is returned, else a NULL pointer is returned. @retval S_OK - @retval S_FALSE if there is nothing to return, [out] value is NULL + @retval S_FALSE if there is nothing to return, [out] value is NULL + @deprecated use a describedBy relation */ [propget] HRESULT caption ( @@ -196,7 +197,7 @@ interface IAccessibleTable2 : IUnknown */ [propget] HRESULT selectedCells ( - [out, size_is(,*nSelectedCells,)] IUnknown ***cells, + [out, size_is(,*nSelectedCells)] IUnknown ***cells, [out, retval] long *nSelectedCells ); @@ -239,7 +240,8 @@ interface IAccessibleTable2 : IUnknown representing the table's summary or a NULL pointer if the table does not support a summary. @retval S_OK - @retval S_FALSE if there is nothing to return, [out] value is NULL + @retval S_FALSE if there is nothing to return, [out] value is NULL + @deprecated Use the labeledBy relation */ [propget] HRESULT summary ( diff --git a/api/AccessibleTableCell.idl b/api/AccessibleTableCell.idl index b57a24f..da5ada7 100644 --- a/api/AccessibleTableCell.idl +++ b/api/AccessibleTableCell.idl @@ -4,7 +4,7 @@ * * IAccessible2 IDL Specification * - * Copyright (c) 2007, 2010 Linux Foundation + * Copyright (c) 2007, 2012 Linux Foundation * Copyright (c) 2006 IBM Corporation * Copyright (c) 2000, 2006 Sun Microsystems, Inc. * All rights reserved. @@ -89,7 +89,7 @@ interface IAccessibleTableCell : IUnknown */ [propget] HRESULT columnHeaderCells ( - [out, size_is(,*nColumnHeaderCells,)] IUnknown ***cellAccessibles, + [out, size_is(,*nColumnHeaderCells)] IUnknown ***cellAccessibles, [out, retval] long *nColumnHeaderCells ); @@ -128,7 +128,7 @@ interface IAccessibleTableCell : IUnknown */ [propget] HRESULT rowHeaderCells ( - [out, size_is(,*nRowHeaderCells,)] IUnknown ***cellAccessibles, + [out, size_is(,*nRowHeaderCells)] IUnknown ***cellAccessibles, [out, retval] long *nRowHeaderCells ); diff --git a/api/AccessibleText.idl b/api/AccessibleText.idl index c06f327..af6392a 100644 --- a/api/AccessibleText.idl +++ b/api/AccessibleText.idl @@ -468,8 +468,8 @@ interface IAccessibleText : IUnknown NULL pointer is returned. @param [in] offset - Index of the character for which to return the text part before it. The index - character will not be part of the returned string. The valid range is 0..length. + Index of the character for which to return the text part it belongs to. The valid + range is 0..length. Refer to @ref _specialOffsets "Special Offsets for use in the IAccessibleText and IAccessibleEditableText Methods" for information about special offsets that can be used in %IAccessibleText methods. diff --git a/api/AccessibleText2.idl b/api/AccessibleText2.idl new file mode 100644 index 0000000..cfcf157 --- /dev/null +++ b/api/AccessibleText2.idl @@ -0,0 +1,120 @@ +/************************************************************************* + * + * File Name (AccessibleText2.idl) + * + * IAccessible2 IDL Specification + * + * Copyright (c) 2007, 2012 Linux Foundation + * Copyright (c) 2006 IBM Corporation + * Copyright (c) 2000, 2006 Sun Microsystems, Inc. + * All rights reserved. + * + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * 3. Neither the name of the Linux Foundation nor the names of its + * contributors may be used to endorse or promote products + * derived from this software without specific prior written + * permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * This BSD License conforms to the Open Source Initiative "Simplified + * BSD License" as published at: + * http://www.opensource.org/licenses/bsd-license.php + * + * IAccessible2 is a trademark of the Linux Foundation. The IAccessible2 + * mark may be used in accordance with the Linux Foundation Trademark + * Policy to indicate compliance with the IAccessible2 specification. + * + ************************************************************************/ + +import "objidl.idl"; +import "oaidl.idl"; +import "oleacc.idl"; +import "IA2CommonTypes.idl"; +import "AccessibleText.idl"; + +/** @brief This interface gives read-only access to text. + + The %IAccessibleText interface should be implemented by all components + that present textual information on the display like buttons, + text entry fields, or text portions of the document window. The interface + provides access to the text's content, attributes, and spatial location. + However, text can not be modified with this interface. That is the task + of the IAccessibleEditableText interface. + + The text length, i.e. the number of characters in the text, is + returned by IAccessibleText::nCharacters. All methods that operate + on particular characters (e.g. IAccessibleText::textAtOffset) use character + indices from 0 to length-1. All methods that operate on character positions + (e.g. IAccessibleText::text) use indices from 0 to length. + + Please note that accessible text does not necessarily support selection. + In this case it should behave as if there where no selection. An empty + selection is used for example to express the current cursor position. + + Refer to @ref _specialOffsets + "Special Offsets for use in the IAccessibleText and IAccessibleEditableText Methods" + for information about special offsets that can be used in %IAccessibleText methods. + + E_FAIL is returned in the following cases + @li endOffset < startOffset + @li endoffset > length +*/ +[object, uuid(9690A9CC-5C80-4DF5-852E-2D5AE4189A54)] +interface IAccessibleText2 : IAccessibleText +{ + + /** @brief Returns the range and of the specified set of attributes. + + Return the range (start and end offsets) and text attributes that correspond + to the given attributes filter at the given offset. + + @param [in] offset + The offset at which to search for the attributes specified in the filter. + @param [in] filter + The requested attribute names. The filter format is "attribute1, attribute2". + @param [out] startOffset + The starting (0-based) offset of the text containing the specified attributes. + @param [out] endOffset + The (0-based) offset one past the last character of the text containing the + specified attributes. + @param [out] attributeValues + The values of the requested attributes. + @retval S_OK + @retval S_FALSE if nothing to return, [out] values are -1, -1, NULL respectively. + @retval E_INVALIDARG if bad [in] passed. + */ + [propget] HRESULT attributeRange + ( + [in] long offset, + [in] BSTR filter, + [out] long *startOffset, + [out] long *endOffset, + [out, retval] BSTR *attributeValues + ); + +} diff --git a/api/IA2TypeLibrary.idl b/api/IA2TypeLibrary.idl index 37a1c7d..da32d5e 100644 --- a/api/IA2TypeLibrary.idl +++ b/api/IA2TypeLibrary.idl @@ -4,7 +4,7 @@ * * IAccessible2 IDL Specification * - * Copyright (c) 2007, 2010 Linux Foundation + * Copyright (c) 2007, 2012 Linux Foundation * Copyright (c) 2006 IBM Corporation * Copyright (c) 2000, 2006 Sun Microsystems, Inc. * All rights reserved. @@ -59,9 +59,9 @@ cpp_quote("// Type Library Definitions") cpp_quote("") [ - uuid(c974e070-3787-490a-87b0-e333b06ca1e2), + uuid(CE3F726E-D1D3-44FE-B995-FF1DB3B48B2B), helpstring("IAccessible2 Type Library"), - version(1.2), + version(1.3), hidden ] @@ -70,18 +70,22 @@ library IAccessible2Lib importlib ("stdole2.tlb"); importlib ("oleacc.dll"); interface IAccessible2; + interface IAccessible2_2; interface IAccessibleAction; interface IAccessibleApplication; interface IAccessibleComponent; + interface IAccessibleDocument; interface IAccessibleEditableText; interface IAccessibleHyperlink; interface IAccessibleHypertext; + interface IAccessibleHypertext2; interface IAccessibleImage; interface IAccessibleRelation; interface IAccessibleTable; interface IAccessibleTable2; interface IAccessibleTableCell; interface IAccessibleText; + interface IAccessibleText2; interface IAccessibleValue; enum IA2CoordinateType; enum IA2EventID; diff --git a/api/api_all_headers.idl b/api/api_all_headers.idl new file mode 100644 index 0000000..5b1e770 --- /dev/null +++ b/api/api_all_headers.idl @@ -0,0 +1,55 @@ +/************************************************************************* + * + * File Name (api_all_headers.idl) + * + * IAccessible2 IDL Specification + * + * Copyright (c) 2012 Linux Foundation + * All rights reserved. + * + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * 3. Neither the name of the Linux Foundation nor the names of its + * contributors may be used to endorse or promote products + * derived from this software without specific prior written + * permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * This BSD License conforms to the Open Source Initiative "Simplified + * BSD License" as published at: + * http://www.opensource.org/licenses/bsd-license.php + * + * IAccessible2 is a trademark of the Linux Foundation. The IAccessible2 + * mark may be used in accordance with the Linux Foundation Trademark + * Policy to indicate compliance with the IAccessible2 specification. + * + ************************************************************************/ + +import "objidl.idl"; +import "oaidl.idl"; +import "oleacc.idl"; + diff --git a/buildapi.sh b/buildapi.sh index edfce4a..5379f7a 100644 --- a/buildapi.sh +++ b/buildapi.sh @@ -1,65 +1,65 @@ -# run build.sh from the IA2 directory - -# make sure we have Cygwin -if [ ! -d /cygdrive/c ]; then - echo 'Expected to find Cygwin' - exit 1 -fi - -# make sure we have the proper directory structure -if [ ! -d api ]; then - echo 'Expected to find ./api' - exit 1 -fi - -# make sure we have Doxygen -if [ ! -x /cygdrive/c/program\ files/doxygen/bin/doxygen.exe ]; then - echo 'Expected to find c:/program files/doxygen/bin/doxygen.exe' - exit 1 -fi - -cd api - -# make sure we have a Doxygen configuration file -if [ ! -f ../doxygen.conf ]; then - echo 'Expected to find doxygen.conf' - exit 1 -fi - -# clean up test dir -if [ -f ../IDL-Test/dlldata.c ]; then - rm ../IDL-Test/*.c - rm ../IDL-Test/*.h -fi - -cp ../IDL-Test/StdAfxSave/*.* ../IDL-Test - -# remove previous autogenerated Doxygen files -if [ -d ../docs ]; then - rm -rf ../docs -fi - -# generate IDL documentation with Doxygen -/cygdrive/c/program\ files/doxygen/bin/doxygen ../doxygen.conf - -# remove any previous autogenerated merged IDL file -if [ -f ../ia2_api_all.idl ]; then - rm ../ia2_api_all.idl -fi - -# generate merged IDL file - IA2TypeLibrary.idl must be at the end -cat IA2CommonTypes.idl AccessibleRelation.idl AccessibleAction.idl AccessibleRole.idl AccessibleStates.idl Accessible2.idl AccessibleComponent.idl AccessibleValue.idl AccessibleText.idl AccessibleEditableText.idl AccessibleHyperlink.idl AccessibleHypertext.idl AccessibleTable.idl AccessibleTable2.idl AccessibleTableCell.idl AccessibleImage.idl AccessibleEventId.idl AccessibleApplication.idl IA2TypeLibrary.idl | sed -e 's/import "[A-Z].*$//g' - > ../ia2_api_all.idl - -cd .. - -# remove previous autogenerated zip file -if [ -f ia2-api-`date +%Y%m%d`.zip ]; then - rm ia2-api-`date +%Y%m%d`.zip -fi - -# package merged IDL file and documentation -zip -9r ia2-api-`date +%Y%m%d`.zip ia2_api_all.idl api/*.idl docs - -# list packaged file for visual confirmation -echo '' -ls -l ia2-api-`date +%Y%m%d`.zip +# run build.sh from the IA2 directory + +# make sure we have Cygwin +if [ ! -d /cygdrive/c ]; then + echo 'Expected to find Cygwin' + exit 1 +fi + +# make sure we have the proper directory structure +if [ ! -d api ]; then + echo 'Expected to find ./api' + exit 1 +fi + +# make sure we have Doxygen +if [ ! -x /cygdrive/c/program\ files/doxygen/bin/doxygen.exe ]; then + echo 'Expected to find c:/program files/doxygen/bin/doxygen.exe' + exit 1 +fi + +cd api + +# make sure we have a Doxygen configuration file +if [ ! -f ../doxygen.conf ]; then + echo 'Expected to find doxygen.conf' + exit 1 +fi + +# clean up test dir +if [ -f ../IDL-Test/dlldata.c ]; then + rm ../IDL-Test/*.c + rm ../IDL-Test/*.h +fi + +cp ../IDL-Test/StdAfxSave/*.* ../IDL-Test + +# remove previous autogenerated Doxygen files +if [ -d ../docs ]; then + rm -rf ../docs +fi + +# generate IDL documentation with Doxygen +/cygdrive/c/program\ files/doxygen/bin/doxygen ../doxygen.conf + +# remove any previous autogenerated merged IDL file +if [ -f ../ia2_api_all.idl ]; then + rm ../ia2_api_all.idl +fi + +# generate merged IDL file - IA2TypeLibrary.idl must be at the end +cat IA2CommonTypes.idl AccessibleRelation.idl AccessibleAction.idl AccessibleRole.idl AccessibleStates.idl Accessible2.idl Accessible2_2.idl AccessibleComponent.idl AccessibleValue.idl AccessibleText.idl AccessibleText2.idl AccessibleEditableText.idl AccessibleHyperlink.idl AccessibleHyperText.idl AccessibleHypertext2.idl AccessibleTable2.idl AccessibleTableCell.idl AccessibleImage.idl AccessibleEventId.idl AccessibleApplication.idl AccessibleDocument.idl IA2TypeLibrary.idl | sed -e 's/import "[A-Za-z0-9].*$//g' - | cat api_all_headers.idl - > ../ia2_api_all.idl + +cd .. + +# remove previous autogenerated zip file +if [ -f ia2-api-`date +%Y%m%d`.zip ]; then + rm ia2-api-`date +%Y%m%d`.zip +fi + +# package merged IDL file and documentation +zip -9r ia2-api-`date +%Y%m%d`.zip ia2_api_all.idl api/*.idl docs + +# list packaged file for visual confirmation +echo '' +ls -l ia2-api-`date +%Y%m%d`.zip diff --git a/changelog.txt b/changelog.txt index 3fd8798..e48ca66 100755 --- a/changelog.txt +++ b/changelog.txt @@ -1,82 +1,65 @@ -2011-January-21 Pete Brunet +2012-September-17 Pete Brunet - Changes from 1.2 to 1.2.1 + Changes from 1.2.1 to 1.3 * doxygen.conf - - Changed version from 1.2 to 1.2.1 - - * api\AccessibleRole.idl - - Added IA2_ROLE_COMPLEMENTARY_CONTENT - - For the heading role, the associated object attribute is level, not heading-level - - * api\AccessibleStates.idl - - Added IA2_STATE_CHECKABLE and IA2_STATE_PINNED - - Provided a better description of IA2_STATE_EDITABLE + - Change version from 1.2.1 to 1.3. * api\Accessible2.idl - - Fix typos specified in bugs 288, 289 - - Remove warning to not implement reliance on IA2 deriving from IAccessible (see bug 117) - - Fix bug 434: In General Information, Memory Management, Special Consideration - when using Arrays remove mention of "best practices" - - In that same section mention that arrays are allocated with CoTaskMemAlloc - and BSTRs are allocated with SysAllocString - - Remove mention of any required return values when HRESULT is E_INVALIDARG - - groupPosition: - - For S_FALSE indicate that [out] values are 0s - - The comments about a combo box should indicate a non-edit combo box - - Describe which controls expose this property + - Deprecate the nRelation, relation, relations methods. + - Update the documentation on the extaneous [in] parameters of + IAccessible2's maxExtendedStates and maxLocalizedExtendedStates methods, + and IAccessibleAction's keyBinding method. - * api\AccessibleAction.idl - - Fix typo specified in bug 431 - - Fix typo: change relations to key bindings - - Remove mention of any required return values when HRESULT is E_INVALIDARG + * api\Accessible2_2.idl + - This is a new interface; it subclasses and extends IAccessible2. + - It adds the attribute, accessibleWithCaret, relationTargetsOfType methods. - * api\AccessibleApplication - - Don't overspecify the version string, e.g. use "3.6.0" rather than "3.6.0.v201005131500". + * api\AccessibleDocument + - This is a new interface. - * api\AccessibleHyperlink.idl - - valid: This method is deprecated - - Clarifed what valid method returns (even though it's deprecated) - - Remove mention of any required return values when HRESULT is E_INVALIDARG - - anchor and anchorTarget: remove return value of S_FALSE + * api\AccessibleEditableText.idl + - Document that copyText, cutText, and pasteText are deprecated. + - Update the copyright date. - * api\AccessibleHypertext.idl - - Remove mention of any required return values when HRESULT is E_INVALIDARG + * api\AccessibleHypertext2.idl + - This is a new interface; it subclasses and extends IAccessibleHypertext. + - Add hyperlinks method. + - Add import for AccessibleHypertext.idl. * api\AccessibleRelation.idl - - Remove mention of any required return values when HRESULT is E_INVALIDARG - - Fix typo, change loose to lose. - - target and targets: remove S_FALSE - - targets: add E_INVALIDARG (for negative maxValue) + - Update the copyright date. + - Add new relations: + IA2_RELATION_GROUPING_OBJECT_FOR + IA2_RELATION_NEXT_TABBABLE + IA2_RELATION_NODE_PARENT_OF + IA2_RELATION_POPUP_INITIATOR_FOR + IA2_RELATION_PREVIOUS_TABBABLE + IA2_RELATION_CONTAINING_DOCUMENT + IA2_RELATION_CONTAINING_TAB_PANE + IA2_RELATION_CONTAINING_WINDOW + IA2_RELATION_CONTAINING_APPLICATION * api\AccessibleTable2.idl - - Fix bug 435, i.e. mention using CoTaskMemAlloc to allocate arrays - - Remove mention of any required return values when HRESULT is E_INVALIDARG + - Update the copyright date. + - Document that caption and summary are deprecated. + - Remove extraneous comma on size_is spec of selectedCells. - * api\AccessibleText.idl - - Fix typos specified in bugs 290, 429, 432 - - Fix bug 437: add mention of special offsets - - selection: describe what offset should be returned when text is represented - in a hierarchical structure (as is common with Firefox) - - old/newText: when returning S_FALSE the values IA2TextSegment are - text = NULL, start = 0, end = 0 - - Remove mention of any required return values when HRESULT is E_INVALIDARG - - selection: remove return value of S_FALSE - - offsetAtPoint: add return value of S_FALSE + * api\AccessibleTableCell.idl + - Remove extraneous comma on size_is spec of columnHeaderCells and rowHeaderCells. + - Update the copyright date. - * api\AccessibleEditableText.idl - - Fix bug 437: add mention of special offsets - - replaceText/setAttributes typo on endOffset, should be End, not Start - - cutText: set selection to specified offsets; copy selected text to the clipboard; - delete selected text - - copyText: set selection to specified offsets; copy selected text to the clipboard - - pasteText: remove any selections; insert text - - pasteText: the pasted contents may not necessarily be plain text + * api\AccessibleText.idl + - Update the copyright date. + - Fix documentation of the offset parameter of textAtOffset. - * api\AccessibleValue.idl - - Fix typo specificed in bug 430 - - currentValue: when returning S_FALSE specify that [out] value is an empty variant - - minimum/maximumValue: Add S_FALSE + * api\AccessibleText2.idl + - This is a new interface; it subclasses and extends IAccessibleText. + - Add attributeRange method. * api\IA2TypeLibrary.idl - - add: importlib ("oleacc.dll"); + - Update the copyright date. + - Update the GUID. + - Update the version number. + - Add interface statements for IAccessible2_2, IAccessibleDocument, + IAccessibleHypertext2, IAccessibleText2. diff --git a/doxygen.conf b/doxygen.conf index 6861c06..aa7ad25 100644 --- a/doxygen.conf +++ b/doxygen.conf @@ -1,11 +1,13 @@ -# Doxyfile 1.5.8 +# Doxyfile 1.8.2 #--------------------------------------------------------------------------- # Project related configuration options #--------------------------------------------------------------------------- DOXYFILE_ENCODING = UTF-8 PROJECT_NAME = "IAccessible2 API " -PROJECT_NUMBER = "Version 1.2.1 " +PROJECT_NUMBER = "Version 1.3 " +PROJECT_BRIEF = +PROJECT_LOGO = OUTPUT_DIRECTORY = ..\docs CREATE_SUBDIRS = NO OUTPUT_LANGUAGE = English @@ -25,8 +27,8 @@ ABBREVIATE_BRIEF = "The $name class " \ ALWAYS_DETAILED_SEC = NO INLINE_INHERITED_MEMB = NO FULL_PATH_NAMES = NO -STRIP_FROM_PATH = -STRIP_FROM_INC_PATH = +STRIP_FROM_PATH = +STRIP_FROM_INC_PATH = SHORT_NAMES = NO JAVADOC_AUTOBRIEF = NO QT_AUTOBRIEF = NO @@ -34,25 +36,32 @@ MULTILINE_CPP_IS_BRIEF = NO INHERIT_DOCS = YES SEPARATE_MEMBER_PAGES = NO TAB_SIZE = 8 -ALIASES = +ALIASES = +TCL_SUBST = OPTIMIZE_OUTPUT_FOR_C = NO OPTIMIZE_OUTPUT_JAVA = NO OPTIMIZE_FOR_FORTRAN = NO OPTIMIZE_OUTPUT_VHDL = NO -EXTENSION_MAPPING = +EXTENSION_MAPPING = +MARKDOWN_SUPPORT = YES +AUTOLINK_SUPPORT = YES BUILTIN_STL_SUPPORT = NO CPP_CLI_SUPPORT = NO SIP_SUPPORT = NO IDL_PROPERTY_SUPPORT = NO DISTRIBUTE_GROUP_DOC = NO SUBGROUPING = YES +INLINE_GROUPED_CLASSES = NO +INLINE_SIMPLE_STRUCTS = NO TYPEDEF_HIDES_STRUCT = NO SYMBOL_CACHE_SIZE = 0 +LOOKUP_CACHE_SIZE = 0 #--------------------------------------------------------------------------- # Build related configuration options #--------------------------------------------------------------------------- EXTRACT_ALL = YES EXTRACT_PRIVATE = YES +EXTRACT_PACKAGE = NO EXTRACT_STATIC = YES EXTRACT_LOCAL_CLASSES = YES EXTRACT_LOCAL_METHODS = NO @@ -65,23 +74,26 @@ INTERNAL_DOCS = NO CASE_SENSE_NAMES = NO HIDE_SCOPE_NAMES = NO SHOW_INCLUDE_FILES = YES +FORCE_LOCAL_INCLUDES = NO INLINE_INFO = YES SORT_MEMBER_DOCS = YES SORT_BRIEF_DOCS = NO +SORT_MEMBERS_CTORS_1ST = NO SORT_GROUP_NAMES = NO SORT_BY_SCOPE_NAME = NO +STRICT_PROTO_MATCHING = NO GENERATE_TODOLIST = YES GENERATE_TESTLIST = YES GENERATE_BUGLIST = YES GENERATE_DEPRECATEDLIST= YES -ENABLED_SECTIONS = +ENABLED_SECTIONS = MAX_INITIALIZER_LINES = 30 SHOW_USED_FILES = YES -SHOW_DIRECTORIES = YES SHOW_FILES = YES SHOW_NAMESPACES = NO -FILE_VERSION_FILTER = -LAYOUT_FILE = +FILE_VERSION_FILTER = +LAYOUT_FILE = +CITE_BIB_FILES = #--------------------------------------------------------------------------- # configuration options related to warning and progress messages #--------------------------------------------------------------------------- @@ -91,11 +103,11 @@ WARN_IF_UNDOCUMENTED = YES WARN_IF_DOC_ERROR = YES WARN_NO_PARAMDOC = NO WARN_FORMAT = "$file:$line: $text " -WARN_LOGFILE = +WARN_LOGFILE = #--------------------------------------------------------------------------- # configuration options related to the input files #--------------------------------------------------------------------------- -INPUT = +INPUT = INPUT_ENCODING = UTF-8 FILE_PATTERNS = *.c \ *.cc \ @@ -123,17 +135,18 @@ FILE_PATTERNS = *.c \ *.mm \ *.dox RECURSIVE = NO -EXCLUDE = +EXCLUDE = EXCLUDE_SYMLINKS = NO -EXCLUDE_PATTERNS = -EXCLUDE_SYMBOLS = -EXAMPLE_PATH = +EXCLUDE_PATTERNS = +EXCLUDE_SYMBOLS = +EXAMPLE_PATH = EXAMPLE_PATTERNS = * EXAMPLE_RECURSIVE = NO -IMAGE_PATH = -INPUT_FILTER = -FILTER_PATTERNS = +IMAGE_PATH = +INPUT_FILTER = +FILTER_PATTERNS = FILTER_SOURCE_FILES = NO +FILTER_SOURCE_PATTERNS = #--------------------------------------------------------------------------- # configuration options related to source browsing #--------------------------------------------------------------------------- @@ -150,7 +163,7 @@ VERBATIM_HEADERS = NO #--------------------------------------------------------------------------- ALPHABETICAL_INDEX = NO COLS_IN_ALPHA_INDEX = 5 -IGNORE_PREFIX = +IGNORE_PREFIX = #--------------------------------------------------------------------------- # configuration options related to the HTML output #--------------------------------------------------------------------------- @@ -160,31 +173,48 @@ HTML_FILE_EXTENSION = .html HTML_HEADER = ..\header.html HTML_FOOTER = ..\footer.html HTML_STYLESHEET = ..\doxygen.css -HTML_ALIGN_MEMBERS = YES +HTML_EXTRA_STYLESHEET = +HTML_EXTRA_FILES = +HTML_COLORSTYLE_HUE = 220 +HTML_COLORSTYLE_SAT = 100 +HTML_COLORSTYLE_GAMMA = 80 +HTML_TIMESTAMP = YES HTML_DYNAMIC_SECTIONS = NO +HTML_INDEX_NUM_ENTRIES = 100 GENERATE_DOCSET = NO DOCSET_FEEDNAME = "Doxygen generated docs" DOCSET_BUNDLE_ID = org.doxygen.Project +DOCSET_PUBLISHER_ID = org.doxygen.Publisher +DOCSET_PUBLISHER_NAME = Publisher GENERATE_HTMLHELP = NO -CHM_FILE = -HHC_LOCATION = +CHM_FILE = +HHC_LOCATION = GENERATE_CHI = NO -CHM_INDEX_ENCODING = +CHM_INDEX_ENCODING = BINARY_TOC = NO TOC_EXPAND = NO GENERATE_QHP = NO -QCH_FILE = -QHP_NAMESPACE = +QCH_FILE = +QHP_NAMESPACE = QHP_VIRTUAL_FOLDER = doc -QHP_CUST_FILTER_NAME = -QHP_CUST_FILTER_ATTRS = -QHP_SECT_FILTER_ATTRS = -QHG_LOCATION = +QHP_CUST_FILTER_NAME = +QHP_CUST_FILTER_ATTRS = +QHP_SECT_FILTER_ATTRS = +QHG_LOCATION = +GENERATE_ECLIPSEHELP = NO +ECLIPSE_DOC_ID = org.doxygen.Project DISABLE_INDEX = NO -ENUM_VALUES_PER_LINE = 1 GENERATE_TREEVIEW = NO +ENUM_VALUES_PER_LINE = 1 TREEVIEW_WIDTH = 250 +EXT_LINKS_IN_WINDOW = NO FORMULA_FONTSIZE = 10 +FORMULA_TRANSPARENT = YES +USE_MATHJAX = NO +MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest +MATHJAX_EXTENSIONS = +SEARCHENGINE = NO +SERVER_BASED_SEARCH = NO #--------------------------------------------------------------------------- # configuration options related to the LaTeX output #--------------------------------------------------------------------------- @@ -194,12 +224,15 @@ LATEX_CMD_NAME = latex MAKEINDEX_CMD_NAME = makeindex COMPACT_LATEX = NO PAPER_TYPE = a4wide -EXTRA_PACKAGES = -LATEX_HEADER = +EXTRA_PACKAGES = +LATEX_HEADER = +LATEX_FOOTER = PDF_HYPERLINKS = NO USE_PDFLATEX = NO LATEX_BATCHMODE = NO LATEX_HIDE_INDICES = NO +LATEX_SOURCE_CODE = NO +LATEX_BIB_STYLE = plain #--------------------------------------------------------------------------- # configuration options related to the RTF output #--------------------------------------------------------------------------- @@ -207,8 +240,8 @@ GENERATE_RTF = NO RTF_OUTPUT = rtf COMPACT_RTF = NO RTF_HYPERLINKS = NO -RTF_STYLESHEET_FILE = -RTF_EXTENSIONS_FILE = +RTF_STYLESHEET_FILE = +RTF_EXTENSIONS_FILE = #--------------------------------------------------------------------------- # configuration options related to the man page output #--------------------------------------------------------------------------- @@ -221,8 +254,8 @@ MAN_LINKS = NO #--------------------------------------------------------------------------- GENERATE_XML = NO XML_OUTPUT = xml -XML_SCHEMA = -XML_DTD = +XML_SCHEMA = +XML_DTD = XML_PROGRAMLISTING = YES #--------------------------------------------------------------------------- # configuration options for the AutoGen Definitions output @@ -234,41 +267,43 @@ GENERATE_AUTOGEN_DEF = NO GENERATE_PERLMOD = NO PERLMOD_LATEX = NO PERLMOD_PRETTY = YES -PERLMOD_MAKEVAR_PREFIX = +PERLMOD_MAKEVAR_PREFIX = #--------------------------------------------------------------------------- -# Configuration options related to the preprocessor +# Configuration options related to the preprocessor #--------------------------------------------------------------------------- ENABLE_PREPROCESSING = YES MACRO_EXPANSION = NO EXPAND_ONLY_PREDEF = NO SEARCH_INCLUDES = YES -INCLUDE_PATH = -INCLUDE_FILE_PATTERNS = -PREDEFINED = -EXPAND_AS_DEFINED = +INCLUDE_PATH = +INCLUDE_FILE_PATTERNS = +PREDEFINED = +EXPAND_AS_DEFINED = SKIP_FUNCTION_MACROS = YES #--------------------------------------------------------------------------- -# Configuration::additions related to external references +# Configuration::additions related to external references #--------------------------------------------------------------------------- -TAGFILES = -GENERATE_TAGFILE = +TAGFILES = +GENERATE_TAGFILE = ALLEXTERNALS = NO EXTERNAL_GROUPS = YES PERL_PATH = /usr/bin/perl #--------------------------------------------------------------------------- -# Configuration options related to the dot tool +# Configuration options related to the dot tool #--------------------------------------------------------------------------- CLASS_DIAGRAMS = YES -MSCGEN_PATH = +MSCGEN_PATH = HIDE_UNDOC_RELATIONS = YES HAVE_DOT = NO +DOT_NUM_THREADS = 0 DOT_FONTNAME = FreeSans DOT_FONTSIZE = 10 -DOT_FONTPATH = +DOT_FONTPATH = CLASS_GRAPH = YES COLLABORATION_GRAPH = YES GROUP_GRAPHS = YES UML_LOOK = NO +UML_LIMIT_NUM_FIELDS = 10 TEMPLATE_RELATIONS = NO INCLUDE_GRAPH = YES INCLUDED_BY_GRAPH = YES @@ -277,15 +312,13 @@ CALLER_GRAPH = NO GRAPHICAL_HIERARCHY = YES DIRECTORY_GRAPH = YES DOT_IMAGE_FORMAT = png -DOT_PATH = -DOTFILE_DIRS = +INTERACTIVE_SVG = NO +DOT_PATH = +DOTFILE_DIRS = +MSCFILE_DIRS = DOT_GRAPH_MAX_NODES = 50 MAX_DOT_GRAPH_DEPTH = 1000 DOT_TRANSPARENT = NO DOT_MULTI_TARGETS = NO GENERATE_LEGEND = YES DOT_CLEANUP = YES -#--------------------------------------------------------------------------- -# Options related to the search engine -#--------------------------------------------------------------------------- -SEARCHENGINE = NO diff --git a/footer.html b/footer.html index 24c2c10..98c868b 100644 --- a/footer.html +++ b/footer.html @@ -35,7 +35,7 @@ alt="Open Accessibility Workgroup" style="float:right; border: 0;" />
Generated on $datetime for $projectname $projectnumber by  doxygen 1.5.6
+style="border:0;" /> 1.8.2 diff --git a/header.html b/header.html index 28f6ee4..70f4f3d 100644 --- a/header.html +++ b/header.html @@ -7,8 +7,8 @@ - - + + @@ -31,7 +31,7 @@ dc:subject="IA2" dc:subject="Accessibility" dc:subject="API" - dc:subject="version 1.2.1" + dc:subject="version 1.3" dc:subject="windows" dc:subject="Microsoft Windows" dc:subject="BSD" diff --git a/how-to-build-ia2-idl.txt b/how-to-build-ia2-idl.txt index e27a1c7..fb2ec12 100644 --- a/how-to-build-ia2-idl.txt +++ b/how-to-build-ia2-idl.txt @@ -1,3 +1,17 @@ +Setup + +After cygwin install had to +- install the cygwin zip utility (in the Archive category) +- install openssh and rsync (in the Net category) +- run this at the command prompt + mkpasswd -l > /etc/passwd + Note: On a later install on another machine I didn't have to do this + +Had to update my doxygen.conf from 1.5.8 to 1.8.2 (to be compatible with the latest version) using + doxygen -s -u doxygen.conf (-s = no comments, -u = update) + Note: If the config file spec hasn't changed this won't be necessary + + How to build the IA2 docs, a merged IDL file, a zip file containing the docs and IDL files. - The directory tree... - ia2 contains: @@ -7,6 +21,7 @@ How to build the IA2 docs, a merged IDL file, a zip file containing the docs and - doxygen.css: the doxygen css file (tweaked from the doxygen distribution) - header.html: contains metadata - footer.html: contains the footer seen on each page + - ia2--errata.html: info about changes and bug reporting - changelog.txt: lists changes made since the last release - a merged IDL file with all the IDL concatenated together - a zip file containing IDL and doxygen output @@ -18,9 +33,10 @@ How to build the IA2 docs, a merged IDL file, a zip file containing the docs and - for VC 2008 Express - IA2 IDL Test.sln/vcproj, IA2 Merged IDL Test.vcproj, StdAfx.cpp/h - The build procedure - - don't forget to change the version number is doxygen.conf, header.html, and IA2TypeLibrary.idl + - don't forget to change the version number in doxygen.conf, header.html, and IA2TypeLibrary.idl note: the type library version number can only be in major.minor format, e.g. not 1.2.1. - - don't forget to change the version and date in the errata file + - create a new errata file; don't forget to change the version and date + - update header.html and footer.html, e.g. date, version #; also doxygen version # - don't forget to create a changelog.txt file - start cygwin - CD to the directory containing the above files @@ -28,7 +44,7 @@ How to build the IA2 docs, a merged IDL file, a zip file containing the docs and - notepad sh.out (to check for errors) - exit cygwin - the doxgen generated files, merged idl file, and the zip file will be built - - CD to the ia2\IDL-Test directory + - move to the IDL-Test directory - activate the sln file - There are two projects, one for the individual idl files, one for the merged idl file - Build, Batch Build, Choose the non-merged IDL project diff --git a/ia2-1.2-errata.html b/ia2-1.3-errata.html similarity index 77% rename from ia2-1.2-errata.html rename to ia2-1.3-errata.html index 454842d..cd73b4f 100644 --- a/ia2-1.2-errata.html +++ b/ia2-1.3-errata.html @@ -3,12 +3,12 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> -Errata for IAccessible2 1.2 +Errata for IAccessible2 1.3 - - + + - + @@ -19,20 +19,20 @@ - - + + @@ -52,7 +52,7 @@ longdesc="http://a11y.org/a11yweb/images/longdesc/OpenA11y.html" alt="Open Accessibility Workgroup" style="float:right; border: 0;" />

Errata for IAccessible2, version 1.2 Documentation

+>Errata for IAccessible2, version 1.3 Documentation
@@ -62,9 +62,10 @@

Revision History
Permenant Link: http://a11y.org/ia2-errata
-
Current Version: 2010-06-15 -
-
Previous Version: none
+
Current Version: 2012-09-17 +
+
Previous Version: 2010-12-02 +
@@ -83,10 +84,10 @@

Introduction

This document contains errata and corrections to Documentation for IAccessible2, -1.2. Note that individual bugs logged against the -IAccessible2, version 1.2 specification, are +1.3. Note that individual bugs logged against the +IAccessible2, version 1.3 specification, are contained in a Bugzilla interface, under the component "IAccessible2", and, therefore, are not logged in this document. @@ -94,7 +95,7 @@

Introduction

This errata document refers to the stable online reference version of the -documentation for IAccessible2, version 1.2, which +documentation for IAccessible2, version 1.3, which is available at: http://a11y.org/ia2-spec.

@@ -111,7 +112,7 @@

Submitting Feedback and Reporting E

-To submit feedback on IAccessible2, version 1.2, +To submit feedback on IAccessible2, version 1.3, please use the Bugzilla interface located at: http://bugs.linuxfoundation.org/. When using Bugzilla please be sure to select @@ -123,11 +124,11 @@

Submitting Feedback and Reporting E

-
+

-

Errata for IAccessible2, Version 1.2

+

Errata for IAccessible2, Version 1.3

@@ -147,8 +148,8 @@

Errata for IAccessible2, Version 1.2

-Document created 2010-06-15
-Last updated 2010-06-15 +Document created 2012-09-17
+Last updated 2010-09-17