1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/other-licenses/ia2/AccessibleTableCell.idl Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,194 @@ 1.4 +/************************************************************************* 1.5 + * 1.6 + * File Name (AccessibleTableCell.idl) 1.7 + * 1.8 + * IAccessible2 IDL Specification 1.9 + * 1.10 + * Copyright (c) 2007, 2013 Linux Foundation 1.11 + * Copyright (c) 2006 IBM Corporation 1.12 + * Copyright (c) 2000, 2006 Sun Microsystems, Inc. 1.13 + * All rights reserved. 1.14 + * 1.15 + * 1.16 + * Redistribution and use in source and binary forms, with or without 1.17 + * modification, are permitted provided that the following conditions 1.18 + * are met: 1.19 + * 1.20 + * 1. Redistributions of source code must retain the above copyright 1.21 + * notice, this list of conditions and the following disclaimer. 1.22 + * 1.23 + * 2. Redistributions in binary form must reproduce the above 1.24 + * copyright notice, this list of conditions and the following 1.25 + * disclaimer in the documentation and/or other materials 1.26 + * provided with the distribution. 1.27 + * 1.28 + * 3. Neither the name of the Linux Foundation nor the names of its 1.29 + * contributors may be used to endorse or promote products 1.30 + * derived from this software without specific prior written 1.31 + * permission. 1.32 + * 1.33 + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 1.34 + * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, 1.35 + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 1.36 + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 1.37 + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR 1.38 + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 1.39 + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 1.40 + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 1.41 + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 1.42 + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 1.43 + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 1.44 + * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 1.45 + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 1.46 + * 1.47 + * This BSD License conforms to the Open Source Initiative "Simplified 1.48 + * BSD License" as published at: 1.49 + * http://www.opensource.org/licenses/bsd-license.php 1.50 + * 1.51 + * IAccessible2 is a trademark of the Linux Foundation. The IAccessible2 1.52 + * mark may be used in accordance with the Linux Foundation Trademark 1.53 + * Policy to indicate compliance with the IAccessible2 specification. 1.54 + * 1.55 + ************************************************************************/ 1.56 + 1.57 +import "objidl.idl"; 1.58 +import "oaidl.idl"; 1.59 +import "oleacc.idl"; 1.60 +import "Accessible2.idl"; 1.61 + 1.62 +/** @brief This interface gives access to the cells of a two-dimensional table. 1.63 + 1.64 + Please also refer to the IAccessibleTable2 interface. 1.65 + 1.66 +*/ 1.67 +[object, uuid(594116B1-C99F-4847-AD06-0A7A86ECE645)] 1.68 +interface IAccessibleTableCell : IUnknown 1.69 +{ 1.70 + 1.71 + /** @brief Returns the number of columns occupied by this cell accessible. 1.72 + 1.73 + The result is greater than 1 if the specified cell spans multiple columns. 1.74 + @param [out] nColumnsSpanned 1.75 + Returns the 1 based column extent of the specified cell. 1.76 + @retval S_OK 1.77 + */ 1.78 + [propget] HRESULT columnExtent 1.79 + ( 1.80 + [out, retval] long *nColumnsSpanned 1.81 + ); 1.82 + 1.83 + /** @brief Returns the column headers as an array of cell accessibles. 1.84 + 1.85 + @param [out] cellAccessibles 1.86 + Pointer to an array of references to cell accessibles. The array is allocated 1.87 + by the server. The client must free it with CoTaskMemFree. 1.88 + @param [out] nColumnHeaderCells 1.89 + The number of accessibles returned; the size of the returned array. 1.90 + @retval S_OK 1.91 + @retval S_FALSE if there is no header, [out] values are NULL and 0 respectively 1.92 + */ 1.93 + [propget] HRESULT columnHeaderCells 1.94 + ( 1.95 + [out, size_is(,*nColumnHeaderCells)] IUnknown ***cellAccessibles, 1.96 + [out, retval] long *nColumnHeaderCells 1.97 + ); 1.98 + 1.99 + /** @brief Translates this cell accessible into the corresponding column index. 1.100 + 1.101 + @param [out] columnIndex 1.102 + Returns the 0 based column index of the cell of the specified cell or the index of 1.103 + the first column if the cell spans multiple columns. 1.104 + @retval S_OK 1.105 + */ 1.106 + [propget] HRESULT columnIndex 1.107 + ( 1.108 + [out, retval] long *columnIndex 1.109 + ); 1.110 + 1.111 + /** @brief Returns the number of rows occupied by this cell accessible. 1.112 + 1.113 + @param [out] nRowsSpanned 1.114 + Returns the row extent of the specified cell. 1.115 + @retval S_OK 1.116 + */ 1.117 + [propget] HRESULT rowExtent 1.118 + ( 1.119 + [out, retval] long *nRowsSpanned 1.120 + ); 1.121 + 1.122 + /** @brief Returns the row headers as an array of cell accessibles. 1.123 + 1.124 + @param [out] cellAccessibles 1.125 + Pointer to an array of references to cell accessibles. The array is allocated 1.126 + by the server. The client must free it with CoTaskMemFree. 1.127 + @param [out] nRowHeaderCells 1.128 + The number of accessibles returned; the size of the returned array. 1.129 + @retval S_OK 1.130 + @retval S_FALSE if there is no header, [out] values are NULL and 0 respectively 1.131 + */ 1.132 + [propget] HRESULT rowHeaderCells 1.133 + ( 1.134 + [out, size_is(,*nRowHeaderCells)] IUnknown ***cellAccessibles, 1.135 + [out, retval] long *nRowHeaderCells 1.136 + ); 1.137 + 1.138 + /** @brief Translates this cell accessible into the corresponding row index. 1.139 + 1.140 + @param [out] rowIndex 1.141 + Returns the 0 based row index of the specified cell or the index of 1.142 + the first row if the cell spans multiple rows. 1.143 + @retval S_OK 1.144 + */ 1.145 + [propget] HRESULT rowIndex 1.146 + ( 1.147 + [out, retval] long *rowIndex 1.148 + ); 1.149 + 1.150 + /** @brief Returns a boolean value indicating whether this cell is selected. 1.151 + 1.152 + @param [out] isSelected 1.153 + Returns TRUE if the specified cell is selected and FALSE otherwise. 1.154 + @retval S_OK 1.155 + */ 1.156 + [propget] HRESULT isSelected 1.157 + ( 1.158 + [out, retval] boolean *isSelected 1.159 + ); 1.160 + 1.161 + /** @brief Gets the row and column indexes and extents of this cell accessible 1.162 + and whether or not it is selected. 1.163 + 1.164 + This is a convenience function. It is not mandatory to implement it. 1.165 + @param [out] row 1.166 + 0 based row index. 1.167 + @param [out] column 1.168 + 0 based column index. 1.169 + @param [out] rowExtents 1.170 + Number of cells spanned by this cell in this row. 1.171 + @param [out] columnExtents 1.172 + Number of cells spanned by this cell in this column. 1.173 + @param [out] isSelected 1.174 + Indicates if the specified cell is selected. 1.175 + @retval S_OK 1.176 + */ 1.177 + [propget] HRESULT rowColumnExtents 1.178 + ( 1.179 + [out] long *row, 1.180 + [out] long *column, 1.181 + [out] long *rowExtents, 1.182 + [out] long *columnExtents, 1.183 + [out, retval] boolean *isSelected 1.184 + ); 1.185 + 1.186 + /** @brief Returns a reference to the accessbile of the containing table. 1.187 + 1.188 + @param [out] table 1.189 + Returns a reference to the IUnknown of the containing table. 1.190 + @retval S_OK 1.191 + */ 1.192 + [propget] HRESULT table 1.193 + ( 1.194 + [out, retval] IUnknown **table 1.195 + ); 1.196 + 1.197 +}