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
