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

Reply via email to