Bug 850713 - Bump the required NDK version to 9. r=blassey.bugs,mh+mozilla
[gecko.git] / other-licenses / ia2 / AccessibleTableCell.idl
blob7bc9a2511cefa707dd76c1e9367ac5ec56601889
1 /*************************************************************************
3 * File Name (AccessibleTableCell.idl)
5 * IAccessible2 IDL Specification
7 * Copyright (c) Linux Foundation 2007, 2009
8 * Copyright (c) IBM Corp. 2006
9 * Copyright (c) Sun Microsystems, Inc. 2000, 2006
11 * This library is free software; you can redistribute it and/or
12 * modify it under the terms of the GNU Lesser General Public
13 * License version 2.1, as published by the Free Software Foundation; either
14 * version 2.1 of the License, or (at your option) any later version.
16 * This library is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19 * Lesser General Public License for more details.
21 * You should have received a copy of the GNU Lesser General Public
22 * License along with this library; if not, write to the Free Software
23 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
25 ************************************************************************/
27 import "objidl.idl";
28 import "oaidl.idl";
29 import "oleacc.idl";
30 import "Accessible2.idl";
32 /** @brief This interface gives access to the cells of a two-dimensional table.
34 Please also refer to the IAccessibleTable2 interface.
37 [object, uuid(594116B1-C99F-4847-AD06-0A7A86ECE645)]
38 interface IAccessibleTableCell : IUnknown
41 /** @brief Returns the number of columns occupied by this cell accessible.
43 The result is greater than 1 if the specified cell spans multiple columns.
44 @param [out] nColumnsSpanned
45 Returns the 1 based column extent of the specified cell.
46 @retval S_OK
48 [propget] HRESULT columnExtent
50 [out, retval] long *nColumnsSpanned
53 /** @brief Returns the column headers as an array of cell accessibles.
55 @param [out] cellAccessibles
56 Pointer to an array of references to cell accessibles. The array is allocated
57 by the server. Free it with CoTaskMemFree.
58 @param [out] nColumnHeaderCells
59 The number of accessibles returned; the size of the returned array.
60 @retval S_OK
61 @retval S_FALSE if there is no header, [out] values are NULL and 0 respectively
63 [propget] HRESULT columnHeaderCells
65 [out, size_is(,*nColumnHeaderCells,)] IUnknown ***cellAccessibles,
66 [out, retval] long *nColumnHeaderCells
69 /** @brief Translates this cell accessible into the corresponding column index.
71 @param [out] columnIndex
72 Returns the 0 based column index of the cell of the specified cell or the index of
73 the first column if the cell spans multiple columns.
74 @retval S_OK
76 [propget] HRESULT columnIndex
78 [out, retval] long *columnIndex
81 /** @brief Returns the number of rows occupied by this cell accessible.
83 @param [out] nRowsSpanned
84 Returns the row extent of the specified cell.
85 @retval S_OK
87 [propget] HRESULT rowExtent
89 [out, retval] long *nRowsSpanned
92 /** @brief Returns the row headers as an array of cell accessibles.
94 @param [out] cellAccessibles
95 Pointer to an array of references to cell accessibles. The array is allocated
96 by the server. Free it with CoTaskMemFree.
97 @param [out] nRowHeaderCells
98 The number of accessibles returned; the size of the returned array.
99 @retval S_OK
100 @retval S_FALSE if there is no header, [out] values are NULL and 0 respectively
102 [propget] HRESULT rowHeaderCells
104 [out, size_is(,*nRowHeaderCells,)] IUnknown ***cellAccessibles,
105 [out, retval] long *nRowHeaderCells
108 /** @brief Translates this cell accessible into the corresponding row index.
110 @param [out] rowIndex
111 Returns the 0 based row index of the specified cell or the index of
112 the first row if the cell spans multiple rows.
113 @retval S_OK
115 [propget] HRESULT rowIndex
117 [out, retval] long *rowIndex
120 /** @brief Returns a boolean value indicating whether this cell is selected.
122 @param [out] isSelected
123 Returns TRUE if the specified cell is selected and FALSE otherwise.
124 @retval S_OK
126 [propget] HRESULT isSelected
128 [out, retval] boolean *isSelected
131 /** @brief Gets the row and column indexes and extents of this cell accessible
132 and whether or not it is selected.
134 This is a convenience function. It is not mandatory to implement it.
135 @param [out] row
136 0 based row index.
137 @param [out] column
138 0 based column index.
139 @param [out] rowExtents
140 Number of cells spanned by this cell in this row.
141 @param [out] columnExtents
142 Number of cells spanned by this cell in this column.
143 @param [out] isSelected
144 Indicates if the specified cell is selected.
145 @retval S_OK
147 [propget] HRESULT rowColumnExtents
149 [out] long *row,
150 [out] long *column,
151 [out] long *rowExtents,
152 [out] long *columnExtents,
153 [out, retval] boolean *isSelected
156 /** @brief Returns a reference to the accessbile of the containing table.
158 @param [out] table
159 Returns a reference to the IUnknown of the containing table.
160 @retval S_OK
162 [propget] HRESULT table
164 [out, retval] IUnknown **table