The current draft of IATable2 is at: http://dev.linuxfoundation.org/~ptbrunet/ia2/api/AccessibleTable2.idl -- Pete Brunet wrote: > I don't think we need it, but want to check... > > The old row/columnHeader method returned which column/row index that > the header started at. Presently that is not in the IATable2 equivalent. > > In cases where headers are not at the top or left or when there are > multiple sets of headers I think it's better for the app to decide > which header cells are meaningful for a given cell and I don't think > the starting index is useful. > > Pete > -- > Pete Brunet wrote: >> Since cell indexes are no longer used we can get rid of the >> "table-cell-index" object attribute, at least when IATable is >> eventually removed from implementations in favor of IATable2. >> >> Pete >> -- >> Pete Brunet wrote: >>> I'm going to change IUknown ***pppAccessible to IUnknown >>> ***papAccessible, i.e. use the Hugarian prefix of pap instead of ppp >>> to make it clear that the variable is a pointer to an array of pointers. >>> >>> Pete Brunet wrote: >>>> There is a small typo in note d, i.e **long, instead of long **. >>>> Here it is again with that fixed: >>>> >>>> d) The prior notation was long **varname and is now IUnknown >>>> ***pppAccessible, i.e. the pointer to an array of longs has been >>>> replaced by a pointer to an array of *IUnknowns. >>>> >>>> Pete >>>> -- >>>> Pete Brunet wrote: >>>>> Here's an updated proposal for IAccessibleTable2: >>>>> >>>>> 1) Remove childIndex >>>>> >>>>> 2) Rename nSelectedChildren to nSelectedCells >>>>> >>>>> 3) Rename/redefinition of selectedChildren to use a reference to >>>>> an accessible instead of a cell index and to remove the unused max >>>>> [in] parameter. See notes c, d, and e below. >>>>> >>>>> HRESULT selectedCells ( >>>>> [out, size_is( , *nSelectedCells , )] IUnknown ***pppAccessible, >>>>> [out, retval] long *nSelectedCells >>>>> ) >>>>> >>>>> 4) Redefinition of columnIndex to use a reference to an accessible >>>>> instead of a cell index: >>>>> >>>>> HRESULT columnIndex ( >>>>> [in] IUnknown *pAccessible, >>>>> [out, retval] long *columnIndex >>>>> ) >>>>> >>>>> 5) Redefinition of rowIndex to use a reference to an accessible >>>>> instead of a cell index: >>>>> >>>>> HRESULT rowIndex ( >>>>> [in] IUnknown *pAccessible, >>>>> [out, retval] long *rowIndex >>>>> ) >>>>> >>>>> 6) Redefinition of rowColumnExtentsAtIndex to use a reference to >>>>> an accessible instead of a cell index. >>>>> >>>>> HRESULT rowColumnExtentsAtIndex ( >>>>> [in] IUnknown *pAccessible, >>>>> [out] long *row, >>>>> [out] long *column, >>>>> [out] long *rowExtents, >>>>> [out] long *columnExtents, >>>>> [out, retval] boolean *isSelected >>>>> ) >>>>> >>>>> 7) Redefinition of columnExtentAt to use a reference to an >>>>> accessible instead of row and column. Also see note b below. >>>>> >>>>> HRESULT columnExtentAt ( >>>>> [in] IUnknown *pAccessible, >>>>> [out, retval] long *nColumnsSpanned >>>>> ) >>>>> >>>>> 8) Redefinition of rowExtentAt to use a reference to an accessible >>>>> instead of row and column. Also see note b below. >>>>> >>>>> HRESULT rowExtentAt ( >>>>> [in] IUnknown *pAccessible, >>>>> [out, retval] long *nRowsSpanned >>>>> ) >>>>> >>>>> 9) Redefinition of isSelected to use a reference to an accessible >>>>> instead of row and column. Also see note b below. >>>>> >>>>> HRESULT isSelected ( >>>>> [in] IUnknown *pAccessible, >>>>> [out, retval] boolean *isSelected) >>>>> >>>>> 10) Add new means of getting row headers. Also see notes b, d, >>>>> and e below. >>>>> >>>>> HRESULT rowHeaderCells( >>>>> [in] IUnknown *pAccessible, >>>>> [out, size_is( , *nRowHeaderCells , )] IUnknown ***pppAccessible, >>>>> [out, retval] long * nRowHeaderCells >>>>> ) >>>>> >>>>> 11) Add new means of getting column headers. Also see notes b, d, >>>>> and e below. >>>>> >>>>> HRESULT columnHeaderCells( >>>>> [in] IUnknown *pAccessible, >>>>> [out, size_is( , *nColumnHeaderCells , )] IUnknown ***pppAccessible, >>>>> [out, retval] long * nColumnHeaderCells >>>>> ) >>>>> >>>>> 12) Fix the array definition of selectedColumns to remove the >>>>> unused max [in] parameter. See notes c and e below. >>>>> >>>>> HRESULT selectedColumns ( >>>>> [out, size_is( , *nColumns)] long **ppColumnIndex, >>>>> [out, retval] long *nColumns >>>>> ) >>>>> >>>>> 13) Fix the array definition of selectedRows to remove the unused >>>>> max [in] parameter. See notes c and e below. >>>>> >>>>> HRESULT selectedRows ( >>>>> [out, size_is( , *nRows)] long **ppRowIndex, >>>>> [out, retval] long *nRows >>>>> ) >>>>> >>>>> 14) Add the following note regarding the behavior of selectRow, >>>>> unselectRow, selectColumn, and unselectColumn. Also see note g. >>>>> >>>>> a) For selectRow: When selecting a row and one of the cells in >>>>> the row spans multiple rows, all the rows that are spanned by the >>>>> spanning cell will be included in the selection. All other rows >>>>> will be unselected. >>>>> b) A similar note will be added to unselectRow, selectColumn, and >>>>> unselectColumn. >>>>> >>>>> Notes: >>>>> >>>>> a) accessibleAt was not renamed. >>>>> >>>>> b) accessibleAt can be used to provide an accessible if the AT's >>>>> GUI only provides row and column indexes. >>>>> >>>>> c) Removed the unused max [in] parameter from selectedCells, >>>>> selectedColumns, and selectedRows. I'll have to update the >>>>> comment at: >>>>> http://accessibility.freestandards.org/a11yspecs/ia2/docs/html/_generalinfo.html#_arrayConsideration >>>>> >>>>> d) The prior notation was **long and is now IUnknown >>>>> ***pppAccessible, i.e. the pointer to an array of longs has been >>>>> replaced by a pointer to an array of *IUnknowns. >>>>> >>>>> e) This size_is notation specifies a pointer to an array of >>>>> pointers. The second pointer in the series of pointers can be >>>>> incremented a finite number of times, as specified by the second >>>>> value in the list, to access the pointers held in the array. For >>>>> more information see the fifth and seventh examples at: >>>>> http://msdn.microsoft.com/en-us/library/aa367164%28VS.85%29.aspx >>>>> or this Microsoft System Journal article by Don Box: >>>>> http://www.microsoft.com/msj/1196/activex1196.aspx >>>>> >>>>> f) Pending discussion of whether the old rowHeader and >>>>> columnHeader should be removed. These are the methods that return >>>>> a table instead of an array of cells. >>>>> >>>>> g) Pending the following discussion: This behavior is modeled on >>>>> that of Excel. The behavior needs to be specified for the case, >>>>> such as Firefox, where there is no GUI. In the case where there >>>>> is GUI behavior and the GUI behavior is different than Excel (and >>>>> the IA2 spec), e.g. MS Word, OOo, and Symphony, should the >>>>> behavior be allow to divert from the specification to match that >>>>> of the GUI? >>>>> >>>>> -- >>>>> *Pete Brunet* >>>>> >>>>> a11ysoft - Accessibility Architecture and Development >>>>> (512) 238-6967 >>>>> pete @ a11ysoft.com >>>>> http://www.a11ysoft.com/about/ >>>>> http://www.linkedin.com/in/petebrunet >>>>> Ionosphere: WS4G >>>>> >>>>> ------------------------------------------------------------------------ >>>>> >>>>> _______________________________________________ >>>>> Accessibility-ia2 mailing list >>>>> [email protected] >>>>> https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2 >>>>> >>>> ------------------------------------------------------------------------ >>>> >>>> _______________________________________________ >>>> Accessibility-ia2 mailing list >>>> [email protected] >>>> https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2 >>>> >>> ------------------------------------------------------------------------ >>> >>> _______________________________________________ >>> Accessibility-ia2 mailing list >>> [email protected] >>> https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2 >>> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> Accessibility-ia2 mailing list >> [email protected] >> https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2 >> > > -- > *Pete Brunet* > > a11ysoft - Accessibility Architecture and Development > (512) 238-6967 > pete @ a11ysoft.com > http://www.a11ysoft.com/about/ > http://www.linkedin.com/in/petebrunet > Ionosphere: WS4G > ------------------------------------------------------------------------ > > _______________________________________________ > Accessibility-ia2 mailing list > [email protected] > https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2 >
_______________________________________________ Accessibility-ia2 mailing list [email protected] https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2
