20#ifndef INCLUDED_SVX_ACCESSIBLECONTROLSHAPE_HXX
21#define INCLUDED_SVX_ACCESSIBLECONTROLSHAPE_HXX
23#include <com/sun/star/beans/XPropertyChangeListener.hpp>
24#include <com/sun/star/container/XContainerListener.hpp>
25#include <com/sun/star/lang/EventObject.hpp>
26#include <com/sun/star/uno/Reference.hxx>
27#include <com/sun/star/util/XModeChangeListener.hpp>
32#include <rtl/ustring.hxx>
41 namespace awt {
class XControl; }
43 namespace beans {
class XPropertySetInfo; }
44 namespace beans {
struct PropertyChangeEvent; }
45 namespace container {
struct ContainerEvent; }
46 namespace lang {
class XComponent; }
47 namespace lang {
class XTypeProvider; }
48 namespace uno {
class XAggregation; }
49 namespace util {
struct ModeChangeEvent; }
54 class OWrappedAccessibleChildrenManager;
59 class AccessibleShapeInfo;
60 class AccessibleShapeTreeInfo;
63 , css::util::XModeChangeListener
64 , css::container::XContainerListener
65 , css::accessibility::XAccessibleEventListener
80 const css::uno::Reference< css::beans::XPropertySet >&
GetControlModel( )
const {
return m_xControlModel;}
86 virtual void SAL_CALL grabFocus( )
override;
89 virtual sal_Int64 SAL_CALL getAccessibleChildCount( )
override;
90 virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int64 i )
override;
91 virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( )
override;
100 DECLARE_XTYPEPROVIDER( )
103 virtual
void SAL_CALL propertyChange( const css::beans::PropertyChangeEvent& _rEvent ) override;
106 virtual
void SAL_CALL disposing( ) override;
109 virtual
void SAL_CALL disposing(const css::lang::EventObject& Source) override;
112 virtual
void SAL_CALL modeChanged( const css::util::ModeChangeEvent& _rSource ) override;
115 virtual
void SAL_CALL notifyEvent( const css::
accessibility::AccessibleEventObject& aEvent ) override;
118 virtual
void SAL_CALL elementInserted( const css::container::ContainerEvent& Event ) override;
119 virtual
void SAL_CALL elementRemoved( const css::container::ContainerEvent& Event ) override;
120 virtual
void SAL_CALL elementReplaced( const css::container::ContainerEvent& Event ) override;
125 virtual
void Init( ) override;
129 CreateAccessibleBaseName( ) override;
135 CreateAccessibleName( ) override;
138 OUString CreateAccessibleDescription();
142 virtual bool SetState( sal_Int64 _nState )
override;
146 OUString getControlModelStringProperty(
const OUString& _rPropertyName )
const;
149 bool ensureControlModelAccess( );
152 bool ensureListeningState(
const bool _bCurrentlyListening,
const bool _bNeedNewListening,
153 const OUString& _rPropertyName );
156 void startStateMultiplexing( );
158 void stopStateMultiplexing( );
164 void adjustAccessibleRole( );
172 void initializeComposedState( );
177 css::uno::Reference< css::beans::XPropertySet >
179 css::uno::Reference< css::beans::XPropertySetInfo >
181 css::uno::Reference< css::awt::XControl >
184 css::uno::WeakReference< css::accessibility::XAccessibleContext >
186 css::uno::Reference< css::uno::XAggregation >
188 css::uno::Reference< css::lang::XTypeProvider >
190 css::uno::Reference< css::lang::XComponent >
css::uno::WeakReference< css::accessibility::XAccessibleContext > m_aControlContext
bool m_bWaitingForControl
css::uno::Reference< css::lang::XComponent > m_xControlContextComponent
const css::uno::Reference< css::beans::XPropertySet > & GetControlModel() const
AccessibleControlShape(const AccessibleControlShape &)=delete
rtl::Reference<::comphelper::OWrappedAccessibleChildrenManager > m_pChildManager
bool m_bMultiplexingStates
css::uno::Reference< css::beans::XPropertySet > m_xControlModel
css::uno::Reference< css::lang::XTypeProvider > m_xControlContextTypeAccess
css::uno::Reference< css::beans::XPropertySetInfo > m_xModelPropsMeta
css::uno::Reference< css::uno::XAggregation > m_xControlContextProxy
bool m_bDisposeNativeContext
css::uno::Reference< css::awt::XControl > m_xUnoControl
@descr This class is a container for the information specific for a single shape that is passed to th...
This class bundles all information that is passed down the tree of accessible shapes so that each sha...
This base class provides a base implementation for all shapes.
::cppu::ImplHelper4< css::beans::XPropertyChangeListener, css::util::XModeChangeListener, css::container::XContainerListener, css::accessibility::XAccessibleEventListener > AccessibleControlShape_Base
class SAL_NO_VTABLE XPropertySet
class SvxPropertySetInfoPool
OUString getImplementationName()
#define DECLARE_XINTERFACE()