26#include <com/sun/star/accessibility/AccessibleStateType.hpp>
27#include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
36 void checkIndex_Impl( sal_Int32 _nIndex, std::u16string_view _sText )
38 if ( _nIndex >=
static_cast<sal_Int32
>(_sText.size()) )
39 throw css::lang::IndexOutOfBoundsException();
45 using ::com::sun::star::accessibility::XAccessible;
47 using namespace ::
vcl;
58 ,m_nRowPos( _nRowPos )
59 ,m_nColPos( _nColPos )
84 assert(
false &&
"Unhandled table cell type");
119 const css::uno::Type& rType )
121 Any aRet = AccessibleGridControlCell::queryInterface(rType);
122 if ( !aRet.hasValue() )
130 AccessibleGridControlCell::acquire();
136 AccessibleGridControlCell::release();
145 throw IndexOutOfBoundsException();
164 return "com.sun.star.accessibility.AccessibleGridControlTableCell";
176 throw css::lang::IndexOutOfBoundsException();
183 sal_Int64 nStateSet = 0;
189 nStateSet |= AccessibleStateType::SHOWING;
194 nStateSet |= AccessibleStateType::DEFUNC;
231 throw IndexOutOfBoundsException();
248 throw IndexOutOfBoundsException();
250 return css::uno::Sequence< css::beans::PropertyValue >();
276 throw IndexOutOfBoundsException();
315 checkIndex_Impl( nStartIndex, sText );
316 checkIndex_Impl( nEndIndex, sText );
329 DBG_ASSERT( pParent,
"implGetBoundingBox - missing parent window" );
The GridControl accessible objects inherit from this base class.
::vcl::table::IAccessibleTable & m_aTable
The SVT Table control.
bool implIsShowing()
Determines whether the Grid control is really showing inside of its parent accessible window.
void ensureIsAlive() const
::vcl::table::AccessibleTableControlObjType m_eObjType
The type of this object (for names, descriptions, state sets, ...).
sal_Int32 getRowPos() const
sal_Int32 getColumnPos() const
virtual void SAL_CALL grabFocus() override
AccessibleGridControlCell(const css::uno::Reference< css::accessibility::XAccessible > &_rxParent, ::vcl::table::IAccessibleTable &_rTable, sal_Int32 _nRowPos, sal_uInt16 _nColPos, ::vcl::table::AccessibleTableControlObjType _eType)
virtual OUString SAL_CALL getAccessibleName() override
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleChild(sal_Int64 nChildIndex) override
virtual css::uno::Reference< css::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext() override
virtual void SAL_CALL acquire() noexcept override
Acquires the object (calls acquire() on base class).
virtual css::lang::Locale implGetLocale() override
virtual css::accessibility::TextSegment SAL_CALL getTextAtIndex(sal_Int32 nIndex, sal_Int16 aTextType) override
virtual OUString SAL_CALL getTextRange(sal_Int32 nStartIndex, sal_Int32 nEndIndex) override
virtual css::accessibility::TextSegment SAL_CALL getTextBehindIndex(sal_Int32 nIndex, sal_Int16 aTextType) override
css::uno::Any SAL_CALL queryInterface(const css::uno::Type &rType) override
Queries for a new interface.
virtual sal_Bool SAL_CALL setSelection(sal_Int32 nStartIndex, sal_Int32 nEndIndex) override
virtual sal_Int32 SAL_CALL getSelectionStart() override
virtual sal_Bool SAL_CALL scrollSubstringTo(sal_Int32 nStartIndex, sal_Int32 nEndIndex, css::accessibility::AccessibleScrollType aScrollType) override
virtual sal_Int64 SAL_CALL getAccessibleIndexInParent() override
virtual css::uno::Sequence< css::beans::PropertyValue > SAL_CALL getCharacterAttributes(sal_Int32 nIndex, const css::uno::Sequence< OUString > &aRequestedAttributes) override
virtual css::accessibility::TextSegment SAL_CALL getTextBeforeIndex(sal_Int32 nIndex, sal_Int16 aTextType) override
AccessibleGridControlTableCell(const css::uno::Reference< css::accessibility::XAccessible > &_rxParent, ::vcl::table::IAccessibleTable &_rTable, sal_Int32 _nRowId, sal_uInt16 _nColId)
virtual tools::Rectangle implGetBoundingBox() override
Derived classes return the bounding box relative to the parent window.
virtual sal_Int32 SAL_CALL getSelectionEnd() override
virtual tools::Rectangle implGetBoundingBoxOnScreen() override
** Derived classes return the bounding box in screen coordinates.
virtual sal_Int32 SAL_CALL getCharacterCount() override
virtual void SAL_CALL release() noexcept override
Releases the object (calls release() on base class).
virtual void implGetSelection(sal_Int32 &nStartIndex, sal_Int32 &nEndIndex) override final
virtual OUString SAL_CALL getImplementationName() override
virtual OUString implGetText() override
virtual css::awt::Rectangle SAL_CALL getCharacterBounds(sal_Int32 nIndex) override
virtual sal_Int32 SAL_CALL getCaretPosition() override
virtual OUString SAL_CALL getText() override
virtual sal_Unicode SAL_CALL getCharacter(sal_Int32 nIndex) override
virtual sal_Bool SAL_CALL copyText(sal_Int32 nStartIndex, sal_Int32 nEndIndex) override
virtual sal_Int32 SAL_CALL getIndexAtPoint(const css::awt::Point &aPoint) override
virtual OUString SAL_CALL getSelectedText() override
sal_Int64 implCreateStateSet() override
Return a bitset of states of the current object.
virtual sal_Bool SAL_CALL setCaretPosition(sal_Int32 nIndex) override
virtual sal_Int64 SAL_CALL getAccessibleChildCount() override
css::accessibility::TextSegment getTextBeforeIndex(sal_Int32 nIndex, sal_Int16 aTextType)
css::accessibility::TextSegment getTextAtIndex(sal_Int32 nIndex, sal_Int16 aTextType)
static bool implIsValidIndex(sal_Int32 nIndex, sal_Int32 nLength)
static bool implIsValidRange(sal_Int32 nStartIndex, sal_Int32 nEndIndex, sal_Int32 nLength)
static sal_Unicode implGetCharacter(std::u16string_view rText, sal_Int32 nIndex)
css::accessibility::TextSegment getTextBehindIndex(sal_Int32 nIndex, sal_Int16 aTextType)
static OUString implGetTextRange(std::u16string_view rText, sal_Int32 nStartIndex, sal_Int32 nEndIndex)
virtual css::uno::Any SAL_CALL queryInterface(css::uno::Type const &rType) SAL_OVERRIDE
virtual sal_Int32 GetFieldIndexAtPoint(sal_Int32 _nRow, sal_Int32 _nColumnPos, const Point &_rPoint)=0
virtual void GoToCell(sal_Int32 _nColumnPos, sal_Int32 _nRow)=0
virtual tools::Rectangle GetFieldCharacterBounds(sal_Int32 _nRow, sal_Int32 _nColumnPos, sal_Int32 nIndex)=0
virtual OUString GetAccessibleCellText(sal_Int32 _nRowPos, sal_Int32 _nColPos) const=0
virtual vcl::Window * GetAccessibleParentWindow() const=0
virtual css::uno::Reference< css::accessibility::XAccessible > GetAccessible()=0
virtual tools::Rectangle GetWindowExtentsRelative(const vcl::Window &rRelativeWindow) const=0
virtual tools::Rectangle GetWindowExtentsAbsolute() const=0
virtual tools::Rectangle calcCellRect(sal_Int32 _nRowPos, sal_Int32 _nColPos)=0
virtual sal_Int32 GetColumnCount() const=0
virtual void FillAccessibleStateSetForCell(sal_Int64 &_rStateSet, sal_Int32 _nRow, sal_uInt16 _nColumnPos) const=0
virtual OUString GetAccessibleObjectName(AccessibleTableControlObjType eObjType, sal_Int32 _nRow, sal_Int32 _nCol) const=0
css::awt::Rectangle AWTRectangle(const ::tools::Rectangle &rVCLRect)
inline ::Point VCLPoint(const css::awt::Point &rAWTPoint)
#define DBG_ASSERT(sCon, aError)
double getLength(const B2DPolygon &rCandidate)
AccessibleTableControlObjType