ia2AccessibleTableCell.h (2419B)
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_TABLECELL_H 9 #define _ACCESSIBLE_TABLECELL_H 10 11 #include "AccessibleTableCell.h" 12 #include "ia2AccessibleHypertext.h" 13 #include "IUnknownImpl.h" 14 #include "UiaGridItem.h" 15 16 namespace mozilla { 17 namespace a11y { 18 class TableCellAccessible; 19 20 class ia2AccessibleTableCell : public IAccessibleTableCell, 21 public UiaGridItem, 22 public ia2AccessibleHypertext { 23 public: 24 // IUnknown 25 DECL_IUNKNOWN_INHERITED 26 IMPL_IUNKNOWN_REFCOUNTING_INHERITED(ia2AccessibleHypertext) 27 28 // IAccessibleTableCell 29 30 virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_table( 31 /* [out, retval] */ IUnknown** table); 32 33 virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_columnExtent( 34 /* [out, retval] */ long* nColumnsSpanned); 35 36 virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_columnHeaderCells( 37 /* [out, size_is(,*nColumnHeaderCells,)] */ IUnknown*** cellAccessibles, 38 /* [out, retval] */ long* nColumnHeaderCells); 39 40 virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_columnIndex( 41 /* [out, retval] */ long* columnIndex); 42 43 virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_rowExtent( 44 /* [out, retval] */ long* nRowsSpanned); 45 46 virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_rowHeaderCells( 47 /* [out, size_is(,*nRowHeaderCells,)] */ IUnknown*** cellAccessibles, 48 /* [out, retval] */ long* nRowHeaderCells); 49 50 virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_rowIndex( 51 /* [out, retval] */ long* rowIndex); 52 53 virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_rowColumnExtents( 54 /* [out] */ long* row, 55 /* [out] */ long* column, 56 /* [out] */ long* rowExtents, 57 /* [out] */ long* columnExtents, 58 /* [out, retval] */ boolean* isSelected); 59 60 virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_isSelected( 61 /* [out, retval] */ boolean* isSelected); 62 63 protected: 64 using ia2AccessibleHypertext::ia2AccessibleHypertext; 65 66 private: 67 TableCellAccessible* CellAcc(); 68 }; 69 70 } // namespace a11y 71 } // namespace mozilla 72 73 #endif