LibreOffice Module accessibility (master) 1
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
accessibility::AccessibleGridControl Class Referencefinal

This class represents the complete accessible Grid Control object. More...

#include <AccessibleGridControl.hxx>

Inheritance diagram for accessibility::AccessibleGridControl:
[legend]
Collaboration diagram for accessibility::AccessibleGridControl:
[legend]

Public Member Functions

void commitCellEvent (sal_Int16 nEventId, const css::uno::Any &rNewValue, const css::uno::Any &rOldValue)
 commitCellEvent commit the event at all listeners of the table More...
 
void commitTableEvent (sal_Int16 nEventId, const css::uno::Any &rNewValue, const css::uno::Any &rOldValue)
 commitTableEvent commit the event at all listeners of the table More...
 
- Public Member Functions inherited from accessibility::AccessibleGridControlBase
 AccessibleGridControlBase (css::uno::Reference< css::accessibility::XAccessible > xParent, ::vcl::table::IAccessibleTable &rTable, ::vcl::table::AccessibleTableControlObjType eObjType)
 Constructor. More...
 
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleParent () override
 
virtual sal_Int64 SAL_CALL getAccessibleIndexInParent () override
 
virtual OUString SAL_CALL getAccessibleDescription () override
 
virtual OUString SAL_CALL getAccessibleName () override
 
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet () override
 
virtual sal_Int64 SAL_CALL getAccessibleStateSet () override
 
virtual css::lang::Locale SAL_CALL getLocale () override
 
virtual sal_Int16 SAL_CALL getAccessibleRole () override
 
virtual sal_Bool SAL_CALL containsPoint (const css::awt::Point &rPoint) override
 
virtual css::awt::Rectangle SAL_CALL getBounds () override
 
virtual css::awt::Point SAL_CALL getLocation () override
 
virtual css::awt::Point SAL_CALL getLocationOnScreen () override
 
virtual css::awt::Size SAL_CALL getSize () override
 
virtual sal_Int32 SAL_CALL getForeground () override
 
virtual sal_Int32 SAL_CALL getBackground () override
 
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint (const css::awt::Point &rPoint) override
 
virtual void SAL_CALL addAccessibleEventListener (const css::uno::Reference< css::accessibility::XAccessibleEventListener > &rxListener) override
 Adds a new event listener. More...
 
virtual void SAL_CALL removeAccessibleEventListener (const css::uno::Reference< css::accessibility::XAccessibleEventListener > &rxListener) override
 Removes an event listener. More...
 
virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId () override
 
virtual sal_Bool SAL_CALL supportsService (const OUString &rServiceName) override
 
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames () override
 
inline ::vcl::table::AccessibleTableControlObjType getType () const
 
virtual void commitEvent (sal_Int16 nEventId, const css::uno::Any &rNewValue, const css::uno::Any &rOldValue)
 Commits an event to all listeners. More...
 
bool isAlive () const
 

Private Member Functions

 AccessibleGridControl (const css::uno::Reference< css::accessibility::XAccessible > &_rxParent, const css::uno::Reference< css::accessibility::XAccessible > &_rxCreator, ::vcl::table::IAccessibleTable &_rTable)
 
virtual ~AccessibleGridControl () override=default
 
virtual void SAL_CALL disposing () override
 Commits DeFunc event to listeners and cleans up members. More...
 
virtual sal_Int64 SAL_CALL getAccessibleChildCount () override
 
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleChild (sal_Int64 nChildIndex) override
 
virtual sal_Int16 SAL_CALL getAccessibleRole () override
 
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint (const css::awt::Point &rPoint) override
 
virtual void SAL_CALL grabFocus () override
 Grabs the focus to the Grid Control. More...
 
virtual OUString SAL_CALL getImplementationName () override
 
virtual tools::Rectangle implGetBoundingBox () override
 
virtual tools::Rectangle implGetBoundingBoxOnScreen () override
 
css::uno::Reference< css::accessibility::XAccessible > implGetTable ()
 This method creates (once) and returns the accessible data table child. More...
 
css::uno::Reference< css::accessibility::XAccessible > implGetHeaderBar (::vcl::table::AccessibleTableControlObjType eObjType)
 This method creates (once) and returns the specified header bar. More...
 
css::uno::Reference< css::accessibility::XAccessible > implGetFixedChild (sal_Int64 nChildIndex)
 This method returns one of the children that are always present: Data table, row and column header bar or corner control. More...
 
rtl::Reference< AccessibleGridControlTablecreateAccessibleTable ()
 This method creates and returns an accessible table. More...
 
sal_Int64 implGetAccessibleChildCount ()
 
virtual void SAL_CALL disposing () override
 Cleans up members. More...
 

Private Attributes

css::uno::WeakReference< css::accessibility::XAccessible > m_aCreator
 the css::accessibility::XAccessible which created the AccessibleGridControl More...
 
rtl::Reference< AccessibleGridControlTablem_xTable
 The data table child. More...
 
rtl::Reference< AccessibleGridControlHeaderm_xRowHeaderBar
 The header bar for rows. More...
 
rtl::Reference< AccessibleGridControlHeaderm_xColumnHeaderBar
 The header bar for columns (first row of the table). More...
 

Friends

class AccessibleGridControlAccess
 

Additional Inherited Members

- Protected Member Functions inherited from accessibility::AccessibleGridControlBase
virtual ~AccessibleGridControlBase () override
 
virtual void SAL_CALL disposing () override
 Commits DeFunc event to listeners and cleans up members. More...
 
bool implIsShowing ()
 Determines whether the Grid control is really showing inside of its parent accessible window. More...
 
virtual tools::Rectangle implGetBoundingBox ()=0
 Derived classes return the bounding box relative to the parent window. More...
 
virtual tools::Rectangle implGetBoundingBoxOnScreen ()=0
 ‍** Derived classes return the bounding box in screen coordinates. More...
 
virtual sal_Int64 implCreateStateSet ()
 Creates a bitset of states of the current object. More...
 
void ensureIsAlive () const
 
tools::Rectangle getBoundingBox ()
 Locks all mutex's and calculates the bounding box relative to the parent window. More...
 
tools::Rectangle getBoundingBoxOnScreen ()
 ‍** Locks all mutex's and calculates the bounding box in screen More...
 
::comphelper::AccessibleEventNotifier::TClientId getClientId () const
 
void setClientId (::comphelper::AccessibleEventNotifier::TClientId _aNewClientId)
 
- Protected Attributes inherited from accessibility::AccessibleGridControlBase
css::uno::Reference< css::accessibility::XAccessible > m_xParent
 The parent accessible object. More...
 
::vcl::table::IAccessibleTablem_aTable
 The SVT Table control. More...
 
::vcl::table::AccessibleTableControlObjType m_eObjType
 The type of this object (for names, descriptions, state sets, ...). More...
 
- Protected Attributes inherited from cppu::BaseMutex
mutable::osl::Mutex m_aMutex
 

Detailed Description

This class represents the complete accessible Grid Control object.

Definition at line 35 of file AccessibleGridControl.hxx.

Constructor & Destructor Documentation

◆ AccessibleGridControl()

accessibility::AccessibleGridControl::AccessibleGridControl ( const css::uno::Reference< css::accessibility::XAccessible > &  _rxParent,
const css::uno::Reference< css::accessibility::XAccessible > &  _rxCreator,
::vcl::table::IAccessibleTable _rTable 
)
private

Definition at line 41 of file AccessibleGridControl.cxx.

References TCTYPE_GRIDCONTROL.

◆ ~AccessibleGridControl()

virtual accessibility::AccessibleGridControl::~AccessibleGridControl ( )
overrideprivatevirtualdefault

Member Function Documentation

◆ commitCellEvent()

void accessibility::AccessibleGridControl::commitCellEvent ( sal_Int16  nEventId,
const css::uno::Any &  rNewValue,
const css::uno::Any &  rOldValue 
)

◆ commitTableEvent()

void accessibility::AccessibleGridControl::commitTableEvent ( sal_Int16  nEventId,
const css::uno::Any &  rNewValue,
const css::uno::Any &  rOldValue 
)

commitTableEvent commit the event at all listeners of the table

Parameters
nEventIdthe event id
rNewValuethe new value
rOldValuethe old value

Definition at line 288 of file AccessibleGridControl.cxx.

References Any, vcl::table::IAccessibleTable::GetCurrentColumn(), vcl::table::IAccessibleTable::GetCurrentRow(), accessibility::AccessibleGridControlBase::m_aTable, and m_xTable.

Referenced by accessibility::AccessibleGridControlAccess::commitTableEvent().

◆ createAccessibleTable()

rtl::Reference< AccessibleGridControlTable > accessibility::AccessibleGridControl::createAccessibleTable ( )
private

This method creates and returns an accessible table.

Returns
An AccessibleGridControlTable.

Definition at line 257 of file AccessibleGridControl.cxx.

References m_aCreator, and accessibility::AccessibleGridControlBase::m_aTable.

Referenced by implGetTable().

◆ disposing() [1/2]

void SAL_CALL accessibility::AccessibleGridControlBase::disposing ( )
overrideprivatevirtual

Cleans up members.

Reimplemented from accessibility::AccessibleGridControlBase.

Definition at line 72 of file AccessibleGridControlBase.cxx.

◆ disposing() [2/2]

void SAL_CALL accessibility::AccessibleGridControl::disposing ( )
overrideprivatevirtual

Commits DeFunc event to listeners and cleans up members.

Reimplemented from accessibility::AccessibleGridControlBase.

Definition at line 50 of file AccessibleGridControl.cxx.

References accessibility::AccessibleGridControlBase::disposing(), m_aCreator, m_xColumnHeaderBar, m_xRowHeaderBar, and m_xTable.

◆ getAccessibleAtPoint()

css::uno::Reference< css::accessibility::XAccessible > SAL_CALL accessibility::AccessibleGridControl::getAccessibleAtPoint ( const css::awt::Point &  rPoint)
overrideprivatevirtual

◆ getAccessibleChild()

css::uno::Reference< css::accessibility::XAccessible > SAL_CALL accessibility::AccessibleGridControl::getAccessibleChild ( sal_Int64  nChildIndex)
overrideprivatevirtual

◆ getAccessibleChildCount()

sal_Int64 SAL_CALL accessibility::AccessibleGridControl::getAccessibleChildCount ( )
overrideprivatevirtual
Returns
The count of visible children.

Definition at line 82 of file AccessibleGridControl.cxx.

References accessibility::AccessibleGridControlBase::ensureIsAlive(), and implGetAccessibleChildCount().

◆ getAccessibleRole()

sal_Int16 SAL_CALL accessibility::AccessibleGridControl::getAccessibleRole ( )
overrideprivatevirtual
Returns
The role of this object (a table).

Reimplemented from accessibility::AccessibleGridControlBase.

Definition at line 130 of file AccessibleGridControl.cxx.

References accessibility::AccessibleGridControlBase::ensureIsAlive().

◆ getImplementationName()

OUString SAL_CALL accessibility::AccessibleGridControl::getImplementationName ( )
overrideprivatevirtual
Returns
The name of this class.

Definition at line 180 of file AccessibleGridControl.cxx.

◆ grabFocus()

void SAL_CALL accessibility::AccessibleGridControl::grabFocus ( )
overrideprivatevirtual

◆ implGetAccessibleChildCount()

sal_Int64 accessibility::AccessibleGridControl::implGetAccessibleChildCount ( )
inlineprivate

◆ implGetBoundingBox()

tools::Rectangle accessibility::AccessibleGridControl::implGetBoundingBox ( )
overrideprivatevirtual
Attention: \n This method requires locked mutex's and a living object.
Returns
The bounding box (VCL rect.) relative to the parent window.

Implements accessibility::AccessibleGridControlBase.

Definition at line 188 of file AccessibleGridControl.cxx.

References vcl::table::IAccessibleTable::GetAccessibleParentWindow(), vcl::table::IAccessibleTable::GetWindowExtentsRelative(), and accessibility::AccessibleGridControlBase::m_aTable.

◆ implGetBoundingBoxOnScreen()

tools::Rectangle accessibility::AccessibleGridControl::implGetBoundingBoxOnScreen ( )
overrideprivatevirtual
Attention: \n This method requires locked mutex's and a living object.
Returns
The bounding box (VCL rect.) in screen coordinates.

Implements accessibility::AccessibleGridControlBase.

Definition at line 196 of file AccessibleGridControl.cxx.

References vcl::table::IAccessibleTable::GetWindowExtentsAbsolute(), and accessibility::AccessibleGridControlBase::m_aTable.

◆ implGetFixedChild()

css::uno::Reference< css::accessibility::XAccessible > accessibility::AccessibleGridControl::implGetFixedChild ( sal_Int64  nChildIndex)
private

This method returns one of the children that are always present: Data table, row and column header bar or corner control.

Attention: \n This method requires locked mutex's and a living object.
Returns
The XAccessible interface of the specified child.

Child index of the column header bar (first row).

Child index of the row header bar ("handle column").

Child index of the data table.

Definition at line 236 of file AccessibleGridControl.cxx.

References implGetHeaderBar(), implGetTable(), TCTYPE_COLUMNHEADERBAR, and TCTYPE_ROWHEADERBAR.

Referenced by getAccessibleAtPoint().

◆ implGetHeaderBar()

css::uno::Reference< css::accessibility::XAccessible > accessibility::AccessibleGridControl::implGetHeaderBar ( ::vcl::table::AccessibleTableControlObjType  eObjType)
private

This method creates (once) and returns the specified header bar.

Attention: \n This method requires locked mutex's and a living object.
Returns
The XAccessible interface of the header bar.

Definition at line 213 of file AccessibleGridControl.cxx.

References m_aCreator, accessibility::AccessibleGridControlBase::m_aTable, m_xColumnHeaderBar, m_xRowHeaderBar, TCTYPE_COLUMNHEADERBAR, and TCTYPE_ROWHEADERBAR.

Referenced by implGetFixedChild().

◆ implGetTable()

css::uno::Reference< css::accessibility::XAccessible > accessibility::AccessibleGridControl::implGetTable ( )
private

This method creates (once) and returns the accessible data table child.

Attention: \n This method requires locked mutex's and a living object.
Returns
The XAccessible interface of the data table.

Definition at line 202 of file AccessibleGridControl.cxx.

References createAccessibleTable(), and m_xTable.

Referenced by implGetFixedChild().

Friends And Related Function Documentation

◆ AccessibleGridControlAccess

friend class AccessibleGridControlAccess
friend

Definition at line 37 of file AccessibleGridControl.hxx.

Member Data Documentation

◆ m_aCreator

css::uno::WeakReference< css::accessibility::XAccessible > accessibility::AccessibleGridControl::m_aCreator
private

the css::accessibility::XAccessible which created the AccessibleGridControl

Definition at line 141 of file AccessibleGridControl.hxx.

Referenced by createAccessibleTable(), disposing(), getAccessibleChild(), and implGetHeaderBar().

◆ m_xColumnHeaderBar

rtl::Reference<AccessibleGridControlHeader> accessibility::AccessibleGridControl::m_xColumnHeaderBar
private

The header bar for columns (first row of the table).

Definition at line 150 of file AccessibleGridControl.hxx.

Referenced by disposing(), getAccessibleChild(), and implGetHeaderBar().

◆ m_xRowHeaderBar

rtl::Reference<AccessibleGridControlHeader> accessibility::AccessibleGridControl::m_xRowHeaderBar
private

The header bar for rows.

Definition at line 147 of file AccessibleGridControl.hxx.

Referenced by disposing(), getAccessibleChild(), and implGetHeaderBar().

◆ m_xTable

rtl::Reference<AccessibleGridControlTable> accessibility::AccessibleGridControl::m_xTable
private

The data table child.

Definition at line 144 of file AccessibleGridControl.hxx.

Referenced by commitCellEvent(), commitTableEvent(), disposing(), getAccessibleChild(), and implGetTable().


The documentation for this class was generated from the following files: