tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

ia2AccessibleTable.h (6295B)


      1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
      2 /* vim:expandtab:shiftwidth=2:tabstop=2:
      3 */
      4 /* This Source Code Form is subject to the terms of the Mozilla Public
      5 * License, v. 2.0. If a copy of the MPL was not distributed with this
      6 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
      7 
      8 #ifndef _ACCESSIBLE_TABLE_H
      9 #define _ACCESSIBLE_TABLE_H
     10 
     11 #include "AccessibleTable.h"
     12 #include "AccessibleTable2.h"
     13 #include "ia2AccessibleHypertext.h"
     14 #include "IUnknownImpl.h"
     15 #include "UiaGrid.h"
     16 
     17 namespace mozilla {
     18 namespace a11y {
     19 
     20 class TableAccessible;
     21 
     22 class ia2AccessibleTable : public IAccessibleTable,
     23                           public IAccessibleTable2,
     24                           public UiaGrid,
     25                           public ia2AccessibleHypertext {
     26 public:
     27  // IUnknown
     28  DECL_IUNKNOWN_INHERITED
     29  IMPL_IUNKNOWN_REFCOUNTING_INHERITED(ia2AccessibleHypertext)
     30 
     31  // IAccessibleTable
     32  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_accessibleAt(
     33      /* [in] */ long row,
     34      /* [in] */ long column,
     35      /* [retval][out] */ IUnknown** accessible);
     36 
     37  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_caption(
     38      /* [retval][out] */ IUnknown** accessible);
     39 
     40  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_childIndex(
     41      /* [in] */ long rowIndex,
     42      /* [in] */ long columnIndex,
     43      /* [retval][out] */ long* childIndex);
     44 
     45  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_columnDescription(
     46      /* [in] */ long column,
     47      /* [retval][out] */ BSTR* description);
     48 
     49  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_columnExtentAt(
     50      /* [in] */ long row,
     51      /* [in] */ long column,
     52      /* [retval][out] */ long* nColumnsSpanned);
     53 
     54  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_columnHeader(
     55      /* [out] */ IAccessibleTable** accessibleTable,
     56      /* [retval][out] */ long* startingRowIndex);
     57 
     58  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_columnIndex(
     59      /* [in] */ long childIndex,
     60      /* [retval][out] */ long* columnIndex);
     61 
     62  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_nColumns(
     63      /* [retval][out] */ long* columnCount);
     64 
     65  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_nRows(
     66      /* [retval][out] */ long* rowCount);
     67 
     68  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_nSelectedChildren(
     69      /* [retval][out] */ long* childCount);
     70 
     71  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_nSelectedColumns(
     72      /* [retval][out] */ long* columnCount);
     73 
     74  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_nSelectedRows(
     75      /* [retval][out] */ long* rowCount);
     76 
     77  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_rowDescription(
     78      /* [in] */ long row,
     79      /* [retval][out] */ BSTR* description);
     80 
     81  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_rowExtentAt(
     82      /* [in] */ long row,
     83      /* [in] */ long column,
     84      /* [retval][out] */ long* nRowsSpanned);
     85 
     86  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_rowHeader(
     87      /* [out] */ IAccessibleTable** accessibleTable,
     88      /* [retval][out] */ long* startingColumnIndex);
     89 
     90  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_rowIndex(
     91      /* [in] */ long childIndex,
     92      /* [retval][out] */ long* rowIndex);
     93 
     94  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_selectedChildren(
     95      /* [in] */ long maxChildren,
     96      /* [length_is][length_is][size_is][size_is][out] */ long** children,
     97      /* [retval][out] */ long* nChildren);
     98 
     99  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_selectedColumns(
    100      /* [in] */ long maxColumns,
    101      /* [length_is][length_is][size_is][size_is][out] */ long** columns,
    102      /* [retval][out] */ long* nColumns);
    103 
    104  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_selectedRows(
    105      /* [in] */ long maxRows,
    106      /* [length_is][length_is][size_is][size_is][out] */ long** rows,
    107      /* [retval][out] */ long* nRows);
    108 
    109  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_summary(
    110      /* [retval][out] */ IUnknown** accessible);
    111 
    112  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_isColumnSelected(
    113      /* [in] */ long column,
    114      /* [retval][out] */ boolean* isSelected);
    115 
    116  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_isRowSelected(
    117      /* [in] */ long row,
    118      /* [retval][out] */ boolean* isSelected);
    119 
    120  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_isSelected(
    121      /* [in] */ long row,
    122      /* [in] */ long column,
    123      /* [retval][out] */ boolean* isSelected);
    124 
    125  virtual HRESULT STDMETHODCALLTYPE selectRow(
    126      /* [in] */ long row);
    127 
    128  virtual HRESULT STDMETHODCALLTYPE selectColumn(
    129      /* [in] */ long column);
    130 
    131  virtual HRESULT STDMETHODCALLTYPE unselectRow(
    132      /* [in] */ long row);
    133 
    134  virtual HRESULT STDMETHODCALLTYPE unselectColumn(
    135      /* [in] */ long column);
    136 
    137  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_rowColumnExtentsAtIndex(
    138      /* [in] */ long index,
    139      /* [out] */ long* row,
    140      /* [out] */ long* column,
    141      /* [out] */ long* rowExtents,
    142      /* [out] */ long* columnExtents,
    143      /* [retval][out] */ boolean* isSelected);
    144 
    145  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_modelChange(
    146      /* [retval][out] */ IA2TableModelChange* modelChange);
    147 
    148  // IAccessibleTable2
    149 
    150  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_cellAt(
    151      /* [in] */ long row,
    152      /* [in] */ long column,
    153      /* [out, retval] */ IUnknown** cell);
    154 
    155  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_nSelectedCells(
    156      /* [out, retval] */ long* cellCount);
    157 
    158  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_selectedCells(
    159      /* [out, size_is(,*nSelectedCells,)] */ IUnknown*** cells,
    160      /* [out, retval] */ long* nSelectedCells);
    161 
    162  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_selectedColumns(
    163      /* [out, size_is(,*nColumns)] */ long** selectedColumns,
    164      /* [out, retval] */ long* nColumns);
    165 
    166  virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_selectedRows(
    167      /* [out, size_is(,*nRows)] */ long** selectedRows,
    168      /* [out, retval] */ long* nRows);
    169 
    170 protected:
    171  using ia2AccessibleHypertext::ia2AccessibleHypertext;
    172 
    173 private:
    174  TableAccessible* TableAcc();
    175 };
    176 
    177 }  // namespace a11y
    178 }  // namespace mozilla
    179 
    180 #endif