Index: ui/accessibility/platform/ax_platform_node_win.h |
diff --git a/ui/accessibility/platform/ax_platform_node_win.h b/ui/accessibility/platform/ax_platform_node_win.h |
index 3c9cf34a81fb39aac8b7090765a5ce15f092d153..30e4f0cfca3c8651f8c5cd6caa06a50dfaadabd1 100644 |
--- a/ui/accessibility/platform/ax_platform_node_win.h |
+++ b/ui/accessibility/platform/ax_platform_node_win.h |
@@ -40,6 +40,9 @@ class AX_EXPORT __declspec(uuid("26f5641a-246d-457b-a96d-07f3fae6acf2")) |
&IID_IAccessible2, |
&LIBID_IAccessible2Lib>, |
public IAccessibleText, |
+ public IAccessibleTable, |
+ public IAccessibleTable2, |
+ public IAccessibleTableCell, |
public IServiceProvider, |
public AXPlatformNodeBase { |
public: |
@@ -50,6 +53,9 @@ class AX_EXPORT __declspec(uuid("26f5641a-246d-457b-a96d-07f3fae6acf2")) |
COM_INTERFACE_ENTRY(IAccessible2) |
COM_INTERFACE_ENTRY(IAccessible2_2) |
COM_INTERFACE_ENTRY(IAccessibleText) |
+ COM_INTERFACE_ENTRY(IAccessibleTable) |
+ COM_INTERFACE_ENTRY(IAccessibleTable2) |
+ COM_INTERFACE_ENTRY(IAccessibleTableCell) |
COM_INTERFACE_ENTRY(IServiceProvider) |
END_COM_MAP() |
@@ -228,6 +234,147 @@ class AX_EXPORT __declspec(uuid("26f5641a-246d-457b-a96d-07f3fae6acf2")) |
LONG* offset) override; |
// |
+ // IAccessibleTable methods. |
+ // |
+ |
+ // get_description - also used by IAccessibleImage |
+ |
+ STDMETHODIMP get_accessibleAt(long row, |
+ long column, |
+ IUnknown** accessible) override; |
+ |
+ STDMETHODIMP get_caption(IUnknown** accessible) override; |
+ |
+ STDMETHODIMP get_childIndex(long row_index, |
+ long column_index, |
+ long* cell_index) override; |
+ |
+ STDMETHODIMP get_columnDescription(long column, BSTR* description) override; |
+ |
+ STDMETHODIMP |
+ get_columnExtentAt(long row, long column, long* n_columns_spanned) override; |
+ |
+ STDMETHODIMP |
+ get_columnHeader(IAccessibleTable** accessible_table, |
+ long* starting_row_index) override; |
+ |
+ STDMETHODIMP get_columnIndex(long cell_index, long* column_index) override; |
+ |
+ STDMETHODIMP get_nColumns(long* column_count) override; |
+ |
+ STDMETHODIMP get_nRows(long* row_count) override; |
+ |
+ STDMETHODIMP get_nSelectedChildren(long* cell_count) override; |
+ |
+ STDMETHODIMP get_nSelectedColumns(long* column_count) override; |
+ |
+ STDMETHODIMP get_nSelectedRows(long* row_count) override; |
+ |
+ STDMETHODIMP get_rowDescription(long row, BSTR* description) override; |
+ |
+ STDMETHODIMP get_rowExtentAt(long row, |
+ long column, |
+ long* n_rows_spanned) override; |
+ |
+ STDMETHODIMP |
+ get_rowHeader(IAccessibleTable** accessible_table, |
+ long* starting_column_index) override; |
+ |
+ STDMETHODIMP get_rowIndex(long cell_index, long* row_index) override; |
+ |
+ STDMETHODIMP get_selectedChildren(long max_children, |
+ long** children, |
+ long* n_children) override; |
+ |
+ STDMETHODIMP get_selectedColumns(long max_columns, |
+ long** columns, |
+ long* n_columns) override; |
+ |
+ STDMETHODIMP get_selectedRows(long max_rows, |
+ long** rows, |
+ long* n_rows) override; |
+ |
+ STDMETHODIMP get_summary(IUnknown** accessible) override; |
+ |
+ STDMETHODIMP |
+ get_isColumnSelected(long column, boolean* is_selected) override; |
+ |
+ STDMETHODIMP get_isRowSelected(long row, boolean* is_selected) override; |
+ |
+ STDMETHODIMP get_isSelected(long row, |
+ long column, |
+ boolean* is_selected) override; |
+ |
+ STDMETHODIMP |
+ get_rowColumnExtentsAtIndex(long index, |
+ long* row, |
+ long* column, |
+ long* row_extents, |
+ long* column_extents, |
+ boolean* is_selected) override; |
+ |
+ STDMETHODIMP selectRow(long row) override; |
+ |
+ STDMETHODIMP selectColumn(long column) override; |
+ |
+ STDMETHODIMP unselectRow(long row) override; |
+ |
+ STDMETHODIMP unselectColumn(long column) override; |
+ |
+ STDMETHODIMP |
+ get_modelChange(IA2TableModelChange* model_change) override; |
+ |
+ // |
+ // IAccessibleTable2 methods. |
+ // |
+ // (Most of these are duplicates of IAccessibleTable methods, only the |
+ // unique ones are included here.) |
+ // |
+ |
+ STDMETHODIMP get_cellAt(long row, long column, IUnknown** cell) override; |
+ |
+ STDMETHODIMP get_nSelectedCells(long* cell_count) override; |
+ |
+ STDMETHODIMP |
+ get_selectedCells(IUnknown*** cells, long* n_selected_cells) override; |
+ |
+ STDMETHODIMP get_selectedColumns(long** columns, long* n_columns) override; |
+ |
+ STDMETHODIMP get_selectedRows(long** rows, long* n_rows) override; |
+ |
+ // |
+ // IAccessibleTableCell methods. |
+ // |
+ |
+ STDMETHODIMP |
+ get_columnExtent(long* n_columns_spanned) override; |
+ |
+ STDMETHODIMP |
+ get_columnHeaderCells(IUnknown*** cell_accessibles, |
+ long* n_column_header_cells) override; |
+ |
+ STDMETHODIMP get_columnIndex(long* column_index) override; |
+ |
+ STDMETHODIMP get_rowExtent(long* n_rows_spanned) override; |
+ |
+ STDMETHODIMP |
+ get_rowHeaderCells(IUnknown*** cell_accessibles, |
+ long* n_row_header_cells) override; |
+ |
+ STDMETHODIMP get_rowIndex(long* row_index) override; |
+ |
+ STDMETHODIMP get_isSelected(boolean* is_selected) override; |
+ |
+ STDMETHODIMP |
+ get_rowColumnExtents(long* row, |
+ long* column, |
+ long* row_extents, |
+ long* column_extents, |
+ boolean* is_selected) override; |
+ |
+ STDMETHODIMP get_table(IUnknown** table) override; |
+ |
+ // |
// IAccessibleText methods not implemented. |
// |