1*b1cdbd2cSJim Jagielski/**************************************************************
2*b1cdbd2cSJim Jagielski *
3*b1cdbd2cSJim Jagielski * Licensed to the Apache Software Foundation (ASF) under one
4*b1cdbd2cSJim Jagielski * or more contributor license agreements.  See the NOTICE file
5*b1cdbd2cSJim Jagielski * distributed with this work for additional information
6*b1cdbd2cSJim Jagielski * regarding copyright ownership.  The ASF licenses this file
7*b1cdbd2cSJim Jagielski * to you under the Apache License, Version 2.0 (the
8*b1cdbd2cSJim Jagielski * "License"); you may not use this file except in compliance
9*b1cdbd2cSJim Jagielski * with the License.  You may obtain a copy of the License at
10*b1cdbd2cSJim Jagielski *
11*b1cdbd2cSJim Jagielski *   http://www.apache.org/licenses/LICENSE-2.0
12*b1cdbd2cSJim Jagielski *
13*b1cdbd2cSJim Jagielski * Unless required by applicable law or agreed to in writing,
14*b1cdbd2cSJim Jagielski * software distributed under the License is distributed on an
15*b1cdbd2cSJim Jagielski * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*b1cdbd2cSJim Jagielski * KIND, either express or implied.  See the License for the
17*b1cdbd2cSJim Jagielski * specific language governing permissions and limitations
18*b1cdbd2cSJim Jagielski * under the License.
19*b1cdbd2cSJim Jagielski *
20*b1cdbd2cSJim Jagielski *************************************************************/
21*b1cdbd2cSJim Jagielski
22*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_accessibility_XAccessibleTable_idl__
23*b1cdbd2cSJim Jagielski#define __com_sun_star_accessibility_XAccessibleTable_idl__
24*b1cdbd2cSJim Jagielski
25*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_uno_XInterface_idl__
26*b1cdbd2cSJim Jagielski#include <com/sun/star/uno/XInterface.idl>
27*b1cdbd2cSJim Jagielski#endif
28*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_lang_IndexOutOfBoundsException_idl__
29*b1cdbd2cSJim Jagielski#include <com/sun/star/lang/IndexOutOfBoundsException.idl>
30*b1cdbd2cSJim Jagielski#endif
31*b1cdbd2cSJim Jagielski
32*b1cdbd2cSJim Jagielskimodule com { module sun { module star { module accessibility {
33*b1cdbd2cSJim Jagielski
34*b1cdbd2cSJim Jagielski published interface XAccessible;
35*b1cdbd2cSJim Jagielski
36*b1cdbd2cSJim Jagielski/** Implement this interface to give access to a two-dimensional table.
37*b1cdbd2cSJim Jagielski
38*b1cdbd2cSJim Jagielski   <p>The <type>XAccessibleTable</type> interface is used to represent
39*b1cdbd2cSJim Jagielski   two-dimensional tables.  This interface combines the two interfaces
40*b1cdbd2cSJim Jagielski   <code>javax.accessibility.AccessibleTable</code> and
41*b1cdbd2cSJim Jagielski   <code>javax.accessibility.AccessibleExtendedTable</code> of the Java Accessibility API
42*b1cdbd2cSJim Jagielski   (version 1.4).</p>
43*b1cdbd2cSJim Jagielski
44*b1cdbd2cSJim Jagielski   <p>All <type>XAccessible</type> objects that represent cells or
45*b1cdbd2cSJim Jagielski   cell-clusters of a table have to be at the same time children of the
46*b1cdbd2cSJim Jagielski   table.  This is necessary to be able to convert row and column indices
47*b1cdbd2cSJim Jagielski   into child indices and vice versa with the methods
48*b1cdbd2cSJim Jagielski   <member>XAccessibleTable::getAccessibleIndex</member>,
49*b1cdbd2cSJim Jagielski   <member>XAccessibleTable::getAccessibleRow</member>, and
50*b1cdbd2cSJim Jagielski   <member>XAccessibleTable::getAccessibleColumn</member>.</p>
51*b1cdbd2cSJim Jagielski
52*b1cdbd2cSJim Jagielski   <p>The range of valid coordinates for this interface are implementation
53*b1cdbd2cSJim Jagielski   dependent.  However, that range includes at least the intervals from the
54*b1cdbd2cSJim Jagielski   from the first row or column with the index 0 up to the last (but not
55*b1cdbd2cSJim Jagielski   including) used row or column as returned by
56*b1cdbd2cSJim Jagielski   <member>XAccessibleTable::getAccessibleRowCount</member> and
57*b1cdbd2cSJim Jagielski   <member>XAccessibleTable::getAccessibleColumnCount</member>.  In case of
58*b1cdbd2cSJim Jagielski   the Calc the current range of valid indices for retrieving data include
59*b1cdbd2cSJim Jagielski   the maximal table size--256 columns and 32000 rows--minus one.</p>
60*b1cdbd2cSJim Jagielski
61*b1cdbd2cSJim Jagielski    @since OpenOffice 1.1.2
62*b1cdbd2cSJim Jagielski*/
63*b1cdbd2cSJim Jagielskipublished interface XAccessibleTable : ::com::sun::star::uno::XInterface
64*b1cdbd2cSJim Jagielski{
65*b1cdbd2cSJim Jagielski    /** Returns the number of used rows in the table.
66*b1cdbd2cSJim Jagielski
67*b1cdbd2cSJim Jagielski        <p>The implementation, however, may allow the access of columns
68*b1cdbd2cSJim Jagielski        beyond this number.</p>
69*b1cdbd2cSJim Jagielski
70*b1cdbd2cSJim Jagielski        @return
71*b1cdbd2cSJim Jagielski            Returns the number of used rows in the table or 0 for an empty
72*b1cdbd2cSJim Jagielski            table.
73*b1cdbd2cSJim Jagielski    */
74*b1cdbd2cSJim Jagielski    long getAccessibleRowCount ();
75*b1cdbd2cSJim Jagielski
76*b1cdbd2cSJim Jagielski    /** Returns the number of used columns in the table.
77*b1cdbd2cSJim Jagielski
78*b1cdbd2cSJim Jagielski        <p>The implementation, however, may allow the access of columns
79*b1cdbd2cSJim Jagielski        beyond this number.</p>
80*b1cdbd2cSJim Jagielski
81*b1cdbd2cSJim Jagielski        @return
82*b1cdbd2cSJim Jagielski            Returns the number of used columns in the table or 0 for an empty
83*b1cdbd2cSJim Jagielski            table.
84*b1cdbd2cSJim Jagielski    */
85*b1cdbd2cSJim Jagielski    long getAccessibleColumnCount ();
86*b1cdbd2cSJim Jagielski
87*b1cdbd2cSJim Jagielski    /** Returns the description text of the specified row in the
88*b1cdbd2cSJim Jagielski        table.
89*b1cdbd2cSJim Jagielski
90*b1cdbd2cSJim Jagielski        @param nRow
91*b1cdbd2cSJim Jagielski            The index of the row for which to retrieve the description.
92*b1cdbd2cSJim Jagielski
93*b1cdbd2cSJim Jagielski        @return
94*b1cdbd2cSJim Jagielski            Returns the description text of the specified row in the table
95*b1cdbd2cSJim Jagielski            if such a description exists.  Otherwise an empty string is
96*b1cdbd2cSJim Jagielski            returned.
97*b1cdbd2cSJim Jagielski        @throws ::com::sun::star::lang::IndexOutOfBoundsException
98*b1cdbd2cSJim Jagielski            if the specified row index is not valid, i.e. lies not inside
99*b1cdbd2cSJim Jagielski            the valide range of 0 up to
100*b1cdbd2cSJim Jagielski            <member>XAccessibleTable::getAccessibleRowCount()</member> - 1.
101*b1cdbd2cSJim Jagielski
102*b1cdbd2cSJim Jagielski    */
103*b1cdbd2cSJim Jagielski    string getAccessibleRowDescription ([in] long nRow)
104*b1cdbd2cSJim Jagielski        raises (::com::sun::star::lang::IndexOutOfBoundsException);
105*b1cdbd2cSJim Jagielski
106*b1cdbd2cSJim Jagielski    /** Returns the description text of the specified column in the
107*b1cdbd2cSJim Jagielski        table.
108*b1cdbd2cSJim Jagielski
109*b1cdbd2cSJim Jagielski        @param nColumn
110*b1cdbd2cSJim Jagielski            The index of the column for which to retrieve the description.
111*b1cdbd2cSJim Jagielski
112*b1cdbd2cSJim Jagielski        @return
113*b1cdbd2cSJim Jagielski            Returns the description text of the specified row in the table
114*b1cdbd2cSJim Jagielski            if such a description exists.  Otherwise an empty string is
115*b1cdbd2cSJim Jagielski            returned.
116*b1cdbd2cSJim Jagielski        @throws ::com::sun::star::lang::IndexOutOfBoundsException
117*b1cdbd2cSJim Jagielski            if the specified column index is not valid, i.e. lies not inside
118*b1cdbd2cSJim Jagielski            the valide range of 0 up to
119*b1cdbd2cSJim Jagielski            <member>XAccessibleTable::getAccessibleColumnCount()</member> - 1.
120*b1cdbd2cSJim Jagielski	*/
121*b1cdbd2cSJim Jagielski    string getAccessibleColumnDescription ([in] long nColumn)
122*b1cdbd2cSJim Jagielski        raises (::com::sun::star::lang::IndexOutOfBoundsException);
123*b1cdbd2cSJim Jagielski
124*b1cdbd2cSJim Jagielski    /** Returns the number of rows occupied by the Accessible at the
125*b1cdbd2cSJim Jagielski        specified row and column in the table.
126*b1cdbd2cSJim Jagielski
127*b1cdbd2cSJim Jagielski        <p>The result differs from 1 if the specified cell spans multiple
128*b1cdbd2cSJim Jagielski        rows.</p>
129*b1cdbd2cSJim Jagielski
130*b1cdbd2cSJim Jagielski        @param nRow
131*b1cdbd2cSJim Jagielski            Row index of the accessible for which to return the column
132*b1cdbd2cSJim Jagielski            extent.
133*b1cdbd2cSJim Jagielski
134*b1cdbd2cSJim Jagielski        @param nColumn
135*b1cdbd2cSJim Jagielski            Column index of the accessible for which to return the column
136*b1cdbd2cSJim Jagielski            extent.
137*b1cdbd2cSJim Jagielski
138*b1cdbd2cSJim Jagielski        @return
139*b1cdbd2cSJim Jagielski            Returns the row extent of the specified cell.
140*b1cdbd2cSJim Jagielski
141*b1cdbd2cSJim Jagielski        @throws ::com::sun::star::lang::IndexOutOfBoundsException
142*b1cdbd2cSJim Jagielski            if the specified row index is not valid, i.e. lies not inside
143*b1cdbd2cSJim Jagielski            the valide range of 0 up to
144*b1cdbd2cSJim Jagielski            <member>XAccessibleTable::getAccessibleRowCount()</member> - 1.
145*b1cdbd2cSJim Jagielski    */
146*b1cdbd2cSJim Jagielski    long getAccessibleRowExtentAt ([in] long nRow, [in] long nColumn)
147*b1cdbd2cSJim Jagielski        raises (::com::sun::star::lang::IndexOutOfBoundsException);
148*b1cdbd2cSJim Jagielski
149*b1cdbd2cSJim Jagielski    /** Returns the number of columns occupied by the Accessible at the
150*b1cdbd2cSJim Jagielski        specified row and column in the table.
151*b1cdbd2cSJim Jagielski
152*b1cdbd2cSJim Jagielski        <p>The result differs from 1 if the specified cell spans multiple
153*b1cdbd2cSJim Jagielski        columns.</p>
154*b1cdbd2cSJim Jagielski
155*b1cdbd2cSJim Jagielski        @param nRow
156*b1cdbd2cSJim Jagielski            Row index of the accessible for which to return the column
157*b1cdbd2cSJim Jagielski            extent.
158*b1cdbd2cSJim Jagielski
159*b1cdbd2cSJim Jagielski        @param nColumn
160*b1cdbd2cSJim Jagielski            Column index of the accessible for which to return the column
161*b1cdbd2cSJim Jagielski            extent.
162*b1cdbd2cSJim Jagielski
163*b1cdbd2cSJim Jagielski        @return
164*b1cdbd2cSJim Jagielski            Returns the column extent of the specified.
165*b1cdbd2cSJim Jagielski
166*b1cdbd2cSJim Jagielski        @throws ::com::sun::star::lang::IndexOutOfBoundsException
167*b1cdbd2cSJim Jagielski            if the specified column index is not valid, i.e. lies not inside
168*b1cdbd2cSJim Jagielski            the valide range of 0 up to
169*b1cdbd2cSJim Jagielski            <member>XAccessibleTable::getAccessibleColumnCount()</member> - 1.
170*b1cdbd2cSJim Jagielski    */
171*b1cdbd2cSJim Jagielski    long getAccessibleColumnExtentAt ([in] long nRow, [in] long nColumn)
172*b1cdbd2cSJim Jagielski        raises (::com::sun::star::lang::IndexOutOfBoundsException);
173*b1cdbd2cSJim Jagielski
174*b1cdbd2cSJim Jagielski    /** Returns the row headers as an <type>XAccessibleTable</type>
175*b1cdbd2cSJim Jagielski        object.
176*b1cdbd2cSJim Jagielski
177*b1cdbd2cSJim Jagielski        <p>Content and size of the returned table are implementation
178*b1cdbd2cSJim Jagielski        dependent.</p>
179*b1cdbd2cSJim Jagielski
180*b1cdbd2cSJim Jagielski        @return
181*b1cdbd2cSJim Jagielski            Returns allways a valid reference to an
182*b1cdbd2cSJim Jagielski            <type>XAccessibleTable</type> object.
183*b1cdbd2cSJim Jagielski    */
184*b1cdbd2cSJim Jagielski    XAccessibleTable getAccessibleRowHeaders ();
185*b1cdbd2cSJim Jagielski
186*b1cdbd2cSJim Jagielski    /** Returns the column headers as an <type>XAccessibleTable</type>
187*b1cdbd2cSJim Jagielski        object.
188*b1cdbd2cSJim Jagielski
189*b1cdbd2cSJim Jagielski        <p>Content and size of the returned table are implementation
190*b1cdbd2cSJim Jagielski        dependent.</p>
191*b1cdbd2cSJim Jagielski
192*b1cdbd2cSJim Jagielski        @return
193*b1cdbd2cSJim Jagielski            Returns allways a valid reference to an
194*b1cdbd2cSJim Jagielski            <type>XAccessibleTable</type> object.
195*b1cdbd2cSJim Jagielski    */
196*b1cdbd2cSJim Jagielski    XAccessibleTable getAccessibleColumnHeaders ();
197*b1cdbd2cSJim Jagielski
198*b1cdbd2cSJim Jagielski    /** Returns a list of the indices of completely selected rows in a
199*b1cdbd2cSJim Jagielski        table.
200*b1cdbd2cSJim Jagielski
201*b1cdbd2cSJim Jagielski        @return
202*b1cdbd2cSJim Jagielski            The returned sequence contains indices of all completely
203*b1cdbd2cSJim Jagielski            selected rows in the table.  This sequence is in ascending
204*b1cdbd2cSJim Jagielski            order.  If no row is selected then the sequence is empty.
205*b1cdbd2cSJim Jagielski    */
206*b1cdbd2cSJim Jagielski    sequence<long> getSelectedAccessibleRows ();
207*b1cdbd2cSJim Jagielski
208*b1cdbd2cSJim Jagielski    /** Returns a list of the indices of completely selected columns in a
209*b1cdbd2cSJim Jagielski        table.
210*b1cdbd2cSJim Jagielski
211*b1cdbd2cSJim Jagielski        @return
212*b1cdbd2cSJim Jagielski            The returned sequence contains indices of all completely
213*b1cdbd2cSJim Jagielski            selected columns in the table.  This sequence is in ascending
214*b1cdbd2cSJim Jagielski            order.  If no column is selected then the sequence is empty.
215*b1cdbd2cSJim Jagielski    */
216*b1cdbd2cSJim Jagielski    sequence<long> getSelectedAccessibleColumns ();
217*b1cdbd2cSJim Jagielski
218*b1cdbd2cSJim Jagielski    /** Returns a boolean value indicating whether the specified row is
219*b1cdbd2cSJim Jagielski        completely selected.
220*b1cdbd2cSJim Jagielski
221*b1cdbd2cSJim Jagielski        @param nRow
222*b1cdbd2cSJim Jagielski            Index of the row for which to determine whether it is selected.
223*b1cdbd2cSJim Jagielski
224*b1cdbd2cSJim Jagielski        @return
225*b1cdbd2cSJim Jagielski            Returns <TRUE/> if the specified row is selected completely and
226*b1cdbd2cSJim Jagielski            <FALSE/> otherwise.
227*b1cdbd2cSJim Jagielski
228*b1cdbd2cSJim Jagielski        @throws ::com::sun::star::lang::IndexOutOfBoundsException
229*b1cdbd2cSJim Jagielski            if the specified row index is not valid, i.e. lies not inside
230*b1cdbd2cSJim Jagielski            the valide range of 0 up to
231*b1cdbd2cSJim Jagielski            <member>XAccessibleTable::getAccessibleRowCount()</member> - 1.
232*b1cdbd2cSJim Jagielski    */
233*b1cdbd2cSJim Jagielski    boolean isAccessibleRowSelected ([in] long nRow)
234*b1cdbd2cSJim Jagielski        raises (::com::sun::star::lang::IndexOutOfBoundsException);
235*b1cdbd2cSJim Jagielski
236*b1cdbd2cSJim Jagielski    /** Returns a boolean value indicating whether the specified column
237*b1cdbd2cSJim Jagielski        is completely selected.
238*b1cdbd2cSJim Jagielski
239*b1cdbd2cSJim Jagielski        @param nColumn
240*b1cdbd2cSJim Jagielski            Index of the column for which to determine whether it is
241*b1cdbd2cSJim Jagielski            selected.
242*b1cdbd2cSJim Jagielski
243*b1cdbd2cSJim Jagielski        @return
244*b1cdbd2cSJim Jagielski            Returns <TRUE/> if the specified column is selected completely
245*b1cdbd2cSJim Jagielski            and <FALSE/> otherwise.
246*b1cdbd2cSJim Jagielski
247*b1cdbd2cSJim Jagielski        @throws ::com::sun::star::lang::IndexOutOfBoundsException
248*b1cdbd2cSJim Jagielski            if the specified column index is not valid, i.e. lies not inside
249*b1cdbd2cSJim Jagielski            the valide range of 0 up to
250*b1cdbd2cSJim Jagielski            <member>XAccessibleTable::getAccessibleColumnCount()</member> - 1.
251*b1cdbd2cSJim Jagielski    */
252*b1cdbd2cSJim Jagielski    boolean isAccessibleColumnSelected ([in] long nColumn)
253*b1cdbd2cSJim Jagielski        raises (::com::sun::star::lang::IndexOutOfBoundsException);
254*b1cdbd2cSJim Jagielski
255*b1cdbd2cSJim Jagielski    /** Returns the <type>XAccessible</type> object at the specified row
256*b1cdbd2cSJim Jagielski        and column in the table.
257*b1cdbd2cSJim Jagielski
258*b1cdbd2cSJim Jagielski        <p>This method has been renamed from the Java name
259*b1cdbd2cSJim Jagielski        <code>getAccessibleAt</code> to
260*b1cdbd2cSJim Jagielski        <member>XAccessibleTable::getAccessibleCellAt</member> to avoid
261*b1cdbd2cSJim Jagielski        ambiguities with the
262*b1cdbd2cSJim Jagielski        <member>XAccessibleComponent::getAccessibleAt</member> method when
263*b1cdbd2cSJim Jagielski        accessed, for instance, from StarBasic.</p>
264*b1cdbd2cSJim Jagielski
265*b1cdbd2cSJim Jagielski        @param nRow
266*b1cdbd2cSJim Jagielski            The row index for which to retrieve the cell.
267*b1cdbd2cSJim Jagielski
268*b1cdbd2cSJim Jagielski        @param nColumn
269*b1cdbd2cSJim Jagielski            The column index for which to retrieve the cell.
270*b1cdbd2cSJim Jagielski
271*b1cdbd2cSJim Jagielski        @return
272*b1cdbd2cSJim Jagielski            If both row and column index are valid then the corresponding
273*b1cdbd2cSJim Jagielski            <type>XAccessible</type> object is returned that represents the
274*b1cdbd2cSJim Jagielski            requested cell regardless of whether the cell is currently
275*b1cdbd2cSJim Jagielski            visible (on the screen).
276*b1cdbd2cSJim Jagielski
277*b1cdbd2cSJim Jagielski        @throws ::com::sun::star::lang::IndexOutOfBoundsException
278*b1cdbd2cSJim Jagielski            if the specified column and/or row index is not valid, i.e. lies not inside
279*b1cdbd2cSJim Jagielski            the valide range of 0 up to
280*b1cdbd2cSJim Jagielski            <member>XAccessibleTable::getAccessibleColumnCount()</member> - 1.
281*b1cdbd2cSJim Jagielski    */
282*b1cdbd2cSJim Jagielski    XAccessible getAccessibleCellAt ([in] long nRow, [in] long nColumn)
283*b1cdbd2cSJim Jagielski        raises (::com::sun::star::lang::IndexOutOfBoundsException);
284*b1cdbd2cSJim Jagielski
285*b1cdbd2cSJim Jagielski    /** Returns the caption for the table.
286*b1cdbd2cSJim Jagielski
287*b1cdbd2cSJim Jagielski        @return
288*b1cdbd2cSJim Jagielski            If the table has a caption then a reference to it is returned,
289*b1cdbd2cSJim Jagielski            else an empty reference is returned.
290*b1cdbd2cSJim Jagielski    */
291*b1cdbd2cSJim Jagielski    XAccessible getAccessibleCaption ();
292*b1cdbd2cSJim Jagielski
293*b1cdbd2cSJim Jagielski    /** Returns the summary description of the table.
294*b1cdbd2cSJim Jagielski
295*b1cdbd2cSJim Jagielski        @return
296*b1cdbd2cSJim Jagielski            Returns a reference to an implementation dependent
297*b1cdbd2cSJim Jagielski            <type>XAccessible</type> object representing the table's summary
298*b1cdbd2cSJim Jagielski            or an empty reference if the table does not support a summary.
299*b1cdbd2cSJim Jagielski    */
300*b1cdbd2cSJim Jagielski    XAccessible getAccessibleSummary ();
301*b1cdbd2cSJim Jagielski
302*b1cdbd2cSJim Jagielski    /** Returns a boolean value indicating whether the accessible at the
303*b1cdbd2cSJim Jagielski        specified row and column is selected.
304*b1cdbd2cSJim Jagielski
305*b1cdbd2cSJim Jagielski        @param nRow
306*b1cdbd2cSJim Jagielski            Row index of the cell for which to determine if the accessible
307*b1cdbd2cSJim Jagielski            object that spans that cell is selected.
308*b1cdbd2cSJim Jagielski
309*b1cdbd2cSJim Jagielski        @param nColumn
310*b1cdbd2cSJim Jagielski            Column index of the cell for which to determine if the
311*b1cdbd2cSJim Jagielski            accessible object that spans that cell is selected.
312*b1cdbd2cSJim Jagielski
313*b1cdbd2cSJim Jagielski        @return
314*b1cdbd2cSJim Jagielski            Returns <TRUE/> if the given row and column indices are valid
315*b1cdbd2cSJim Jagielski            and the specified accessible object is selected.  Otherwise
316*b1cdbd2cSJim Jagielski            <FALSE/> is returned.
317*b1cdbd2cSJim Jagielski    */
318*b1cdbd2cSJim Jagielski    boolean isAccessibleSelected ([in] long nRow, [in] long nColumn)
319*b1cdbd2cSJim Jagielski        raises (::com::sun::star::lang::IndexOutOfBoundsException);
320*b1cdbd2cSJim Jagielski
321*b1cdbd2cSJim Jagielski    /** Returns the child index of the accessible object that spans the
322*b1cdbd2cSJim Jagielski        specified cell.
323*b1cdbd2cSJim Jagielski
324*b1cdbd2cSJim Jagielski        <p>This is the same index that would be returned by calling
325*b1cdbd2cSJim Jagielski        <member>XAccessibleContext::getAccessibleIndexInParent</member> for
326*b1cdbd2cSJim Jagielski        that accessible object.</p>
327*b1cdbd2cSJim Jagielski
328*b1cdbd2cSJim Jagielski        @param nRow
329*b1cdbd2cSJim Jagielski            Row index of the accessible object for which to return the child
330*b1cdbd2cSJim Jagielski            index.
331*b1cdbd2cSJim Jagielski
332*b1cdbd2cSJim Jagielski        @param nColumn
333*b1cdbd2cSJim Jagielski            Row index of the accessible object for which to return the child
334*b1cdbd2cSJim Jagielski            index.
335*b1cdbd2cSJim Jagielski
336*b1cdbd2cSJim Jagielski        @return
337*b1cdbd2cSJim Jagielski            Child index of the specified accessible object or -1 if one or
338*b1cdbd2cSJim Jagielski            both of the given indices is/are invalid.
339*b1cdbd2cSJim Jagielski    */
340*b1cdbd2cSJim Jagielski    long getAccessibleIndex ([in] long nRow, [in] long nColumn)
341*b1cdbd2cSJim Jagielski        raises (::com::sun::star::lang::IndexOutOfBoundsException);
342*b1cdbd2cSJim Jagielski
343*b1cdbd2cSJim Jagielski    /** Translate the given child index into the corresponding row
344*b1cdbd2cSJim Jagielski        index.
345*b1cdbd2cSJim Jagielski
346*b1cdbd2cSJim Jagielski        @param nChildIndex
347*b1cdbd2cSJim Jagielski            Index of the child of the table for which to return the row
348*b1cdbd2cSJim Jagielski            index.
349*b1cdbd2cSJim Jagielski
350*b1cdbd2cSJim Jagielski        @return
351*b1cdbd2cSJim Jagielski            Returns the row index of the cell of the specified child or the
352*b1cdbd2cSJim Jagielski            index of the first row if the child spans multiple rows.
353*b1cdbd2cSJim Jagielski
354*b1cdbd2cSJim Jagielski        @throws ::com::sun::star::lang::IndexOutOfBoundsException
355*b1cdbd2cSJim Jagielski            if nChildIndex addresses an invalid row.
356*b1cdbd2cSJim Jagielski    */
357*b1cdbd2cSJim Jagielski    long getAccessibleRow ([in] long nChildIndex)
358*b1cdbd2cSJim Jagielski        raises (::com::sun::star::lang::IndexOutOfBoundsException);
359*b1cdbd2cSJim Jagielski
360*b1cdbd2cSJim Jagielski    /** Translate the given child index into the corresponding column
361*b1cdbd2cSJim Jagielski        index.
362*b1cdbd2cSJim Jagielski
363*b1cdbd2cSJim Jagielski        @param nChildIndex
364*b1cdbd2cSJim Jagielski            Index of the child of the table for which to return the column
365*b1cdbd2cSJim Jagielski            index.
366*b1cdbd2cSJim Jagielski
367*b1cdbd2cSJim Jagielski        @return
368*b1cdbd2cSJim Jagielski            Returns the column index of the cell of the specified child or
369*b1cdbd2cSJim Jagielski            the index of the first column if the child spans multiple
370*b1cdbd2cSJim Jagielski            columns.
371*b1cdbd2cSJim Jagielski
372*b1cdbd2cSJim Jagielski        @throws ::com::sun::star::lang::IndexOutOfBoundsException
373*b1cdbd2cSJim Jagielski            if nChildIndex addresses an invalid column.
374*b1cdbd2cSJim Jagielski    */
375*b1cdbd2cSJim Jagielski    long getAccessibleColumn ([in] long nChildIndex)
376*b1cdbd2cSJim Jagielski        raises (::com::sun::star::lang::IndexOutOfBoundsException);
377*b1cdbd2cSJim Jagielski};
378*b1cdbd2cSJim Jagielski
379*b1cdbd2cSJim Jagielski}; }; }; };
380*b1cdbd2cSJim Jagielski
381*b1cdbd2cSJim Jagielski#endif
382