20#ifndef INCLUDED_COMPHELPER_ACCESSIBLEWRAPPER_HXX
21#define INCLUDED_COMPHELPER_ACCESSIBLEWRAPPER_HXX
23#include <config_options.h>
29#include <com/sun/star/accessibility/XAccessible.hpp>
30#include <com/sun/star/accessibility/XAccessibleContext.hpp>
31#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
32#include <com/sun/star/accessibility/XAccessibleEventListener.hpp>
52 class OAccessibleContextWrapper;
53 class OWrappedAccessibleChildrenManager;
70 css::uno::Reference< css::accessibility::XAccessible >
72 css::uno::WeakReference< css::accessibility::XAccessibleContext >
74 css::uno::Reference< css::accessibility::XAccessible >
89 const css::uno::Reference< css::uno::XComponentContext >& _rxContext,
90 const css::uno::Reference< css::accessibility::XAccessible >& _rxInnerAccessible,
91 const css::uno::Reference< css::accessibility::XAccessible >& _rxParentAccessible
98 getContextNoCreate( ) const;
101 virtual css::
uno::Reference< css::
accessibility::XAccessibleContext > SAL_CALL
102 getAccessibleContext( ) override;
105 getParent()
const {
return m_xParentAccessible; }
109 const css::uno::Reference< css::accessibility::XAccessibleContext >& _rxInnerContext
148 css::uno::Reference< css::accessibility::XAccessibleContext >
151 css::uno::Reference< css::accessibility::XAccessible >
154 css::uno::Reference< css::accessibility::XAccessible >
178 const css::uno::Reference< css::uno::XComponentContext >& _rxContext,
180 const css::uno::Reference< css::accessibility::XAccessibleContext >& _rxInnerAccessibleContext,
181 const css::uno::Reference< css::accessibility::XAccessible >& _rxOwningAccessible,
182 const css::uno::Reference< css::accessibility::XAccessible >& _rxParentAccessible
187 oslInterlockedCount& _rRefCount,
193 css::uno::Any SAL_CALL
queryInterface(
const css::uno::Type& _rType )
override;
200 sal_Int64 baseGetAccessibleChildCount( );
203 css::
uno::Reference< css::
accessibility::XAccessible > baseGetAccessibleChild( sal_Int64 i );
205 css::
uno::Reference< css::
accessibility::XAccessibleRelationSet > baseGetAccessibleRelationSet( );
208 virtual
void SAL_CALL notifyEvent( const css::
accessibility::AccessibleEventObject&
aEvent ) override;
211 virtual
void SAL_CALL disposing( const css::lang::EventObject& Source ) override;
214 virtual
void SAL_CALL dispose() override;
227 virtual
void notifyTranslatedEvent( const css::
accessibility::AccessibleEventObject& _rEvent ) = 0;
244 :public
cppu::BaseMutex
270 const css::uno::Reference< css::uno::XComponentContext >& _rxContext,
271 const css::uno::Reference< css::accessibility::XAccessibleContext >& _rxInnerAccessibleContext,
272 const css::uno::Reference< css::accessibility::XAccessible >& _rxOwningAccessible,
273 const css::uno::Reference< css::accessibility::XAccessible >& _rxParentAccessible
282 virtual sal_Int64 SAL_CALL getAccessibleChildCount( ) override;
283 virtual css::
uno::Reference< css::
accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int64 i ) override;
284 virtual css::
uno::Reference< css::
accessibility::XAccessible > SAL_CALL getAccessibleParent( ) override;
285 virtual sal_Int64 SAL_CALL getAccessibleIndexInParent( ) override;
286 virtual sal_Int16 SAL_CALL getAccessibleRole( ) override;
287 virtual OUString SAL_CALL getAccessibleDescription( ) override;
288 virtual OUString SAL_CALL getAccessibleName( ) override;
289 virtual css::
uno::Reference< css::
accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) override;
290 virtual sal_Int64 SAL_CALL getAccessibleStateSet( ) override;
291 virtual css::lang::Locale SAL_CALL getLocale( ) override;
294 virtual
void SAL_CALL addAccessibleEventListener( const css::
uno::Reference< css::
accessibility::XAccessibleEventListener >& xListener ) override;
295 virtual
void SAL_CALL removeAccessibleEventListener( const css::
uno::Reference< css::
accessibility::XAccessibleEventListener >& xListener ) override;
298 virtual
void notifyTranslatedEvent( const css::
accessibility::AccessibleEventObject& _rEvent ) override;
302 virtual
void SAL_CALL disposing() override;
321 typedef ::
cppu::WeakImplHelper< css::lang::XEventListener
327 css::uno::Reference< css::uno::XComponentContext >
329 css::uno::WeakReference< css::accessibility::XAccessible >
332 bool m_bTransientChildren;
336 OWrappedAccessibleChildrenManager(
337 const css::uno::Reference< css::uno::XComponentContext >& _rxContext
343 void setTransientChildren(
bool _bSet );
348 void setOwningAccessible(
const css::uno::Reference< css::accessibility::XAccessible >& _rxAcc );
351 css::uno::Reference< css::accessibility::XAccessible >
352 getAccessibleWrapperFor(
353 const css::uno::Reference< css::accessibility::XAccessible >& _rxKey
357 void removeFromCache(
const css::uno::Reference< css::accessibility::XAccessible >& _rxKey );
360 void invalidateAll( );
371 void handleChildNotification(
const css::accessibility::AccessibleEventObject& _rEvent );
376 void translateAccessibleEvent(
377 const css::accessibility::AccessibleEventObject& _rEvent,
378 css::accessibility::AccessibleEventObject& _rTranslatedEvent
383 virtual void SAL_CALL disposing(
const css::lang::EventObject&
Source )
override;
385 void implTranslateChildEventValue(
const css::uno::Any& _rInValue, css::uno::Any& _rOutValue );
387 virtual ~OWrappedAccessibleChildrenManager( )
override;
389 OWrappedAccessibleChildrenManager(
const OWrappedAccessibleChildrenManager& ) =
delete;
390 OWrappedAccessibleChildrenManager& operator=(
const OWrappedAccessibleChildrenManager& ) =
delete;
Reference< XComponentContext > m_xContext
Helper for wrapping an XAccessibleContext by aggregating a proxy for it.
css::uno::Reference< css::accessibility::XAccessible > m_xParentAccessible
the XAccessible which is to be returned in getAccessibleParent
rtl::Reference< OWrappedAccessibleChildrenManager > m_xChildMapper
css::uno::Reference< css::accessibility::XAccessibleContext > m_xInnerContext
the context we're wrapping (properly typed, in opposite to OComponentProxyAggregationHelper::m_xInner...
OAccessibleContextWrapperHelper(const css::uno::Reference< css::uno::XComponentContext > &_rxContext, ::cppu::OBroadcastHelper &_rBHelper, const css::uno::Reference< css::accessibility::XAccessibleContext > &_rxInnerAccessibleContext, const css::uno::Reference< css::accessibility::XAccessible > &_rxOwningAccessible, const css::uno::Reference< css::accessibility::XAccessible > &_rxParentAccessible)
ctor
css::uno::Reference< css::accessibility::XAccessible > m_xOwningAccessible
the XAccessible which created this context
OAccessibleContextWrapper(const css::uno::Reference< css::uno::XComponentContext > &_rxContext, const css::uno::Reference< css::accessibility::XAccessibleContext > &_rxInnerAccessibleContext, const css::uno::Reference< css::accessibility::XAccessible > &_rxOwningAccessible, const css::uno::Reference< css::accessibility::XAccessible > &_rxParentAccessible)
ctor
::comphelper::AccessibleEventNotifier::TClientId m_nNotifierClient
a class which aggregates a proxy for an XAccessible, and wrapping the context returned by this XAcces...
OAccessibleWrapper & operator=(const OAccessibleWrapper &)=delete
css::uno::Reference< css::accessibility::XAccessible > m_xParentAccessible
OAccessibleWrapper(const css::uno::Reference< css::uno::XComponentContext > &_rxContext, const css::uno::Reference< css::accessibility::XAccessible > &_rxInnerAccessible, const css::uno::Reference< css::accessibility::XAccessible > &_rxParentAccessible)
ctor
css::uno::WeakReference< css::accessibility::XAccessibleContext > m_aContext
OAccessibleWrapper(const OAccessibleWrapper &)=delete
css::uno::Reference< css::accessibility::XAccessible > m_xInnerAccessible
a helper class for aggregating a proxy to an XComponent
#define COMPHELPER_DLLPUBLIC
::std::map< css::uno::Reference< css::accessibility::XAccessible >, rtl::Reference< comphelper::OAccessibleWrapper > > AccessibleMap
::cppu::ImplHelper1< css::accessibility::XAccessibleEventListener > OAccessibleContextWrapperHelper_Base
::cppu::WeakComponentImplHelper< css::accessibility::XAccessibleEventBroadcaster, css::accessibility::XAccessibleContext > OAccessibleContextWrapper_CBase
::cppu::WeakImplHelper< css::lang::XEventListener > OWrappedAccessibleChildrenManager_Base
class UNLESS_MERGELIBS(COMPHELPER_DLLPUBLIC) OStreamSection
implements handling for compatibly reading/writing data from/into an input/output stream.
css::uno::Any SAL_CALL queryInterface(const css::uno::Type &rType, Interface1 *p1)
~OAccessibleWrapper_Base()
#define DECLARE_XTYPEPROVIDER()
#define DECLARE_XINTERFACE()