23 #include <com/sun/star/accessibility/XAccessible.hpp>
24 #include <com/sun/star/accessibility/XAccessibleStateSet.hpp>
25 #include <com/sun/star/accessibility/AccessibleStateType.hpp>
26 #include <com/sun/star/accessibility/AccessibleEventId.hpp>
27 #include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
58 m_isShowingState = GetMap() && IsShowing( *(GetMap()) );
61 m_isEditableState = pVSh && IsEditable( pVSh );
62 m_isOpaqueState = pVSh && IsOpaque( pVSh );
63 m_isDefuncState =
false;
68 std::scoped_lock aGuard( m_Mutex );
70 uno::Reference < XAccessible > xParent( pParent );
71 m_xWeakParent = xParent;
76 std::scoped_lock aGuard( m_Mutex );
78 uno::Reference< XAccessible > xParent( m_xWeakParent );
89 OSL_ENSURE( pVSh,
"no view shell" );
93 OSL_ENSURE( pWin,
"no window" );
102 SwViewShell* pViewShell = GetMap() ? GetMap()->GetShell() :
nullptr;
103 OSL_ENSURE( pViewShell,
"no view shell" );
110 const SwViewShell* pViewShell = GetMap() ? GetMap()->GetShell() :
nullptr;
111 OSL_ENSURE( pViewShell,
"no view shell" );
118 SCROLLED_IN, SCROLLED_OUT };
123 const SwRect& rOldVisArea )
125 const SwRect& rNewVisArea = GetVisArea();
130 while( aIter != aList.
end() )
137 if( aBox.Overlaps( rNewVisArea ) )
139 if( aBox.Overlaps( rOldVisArea ) )
141 eAction = Action::SCROLLED_WITHIN;
145 if ( bVisibleChildrenOnly &&
148 eAction = Action::SCROLLED_IN;
152 eAction = Action::SCROLLED;
156 else if( aBox.Overlaps( rOldVisArea ) )
158 if ( bVisibleChildrenOnly &&
161 eAction = Action::SCROLLED_OUT;
165 eAction = Action::SCROLLED;
168 else if( !bVisibleChildrenOnly ||
173 eAction = Action::SCROLLED;
180 "<SwAccessibleContext::ChildrenScrolled(..)> - always included child not considered!" );
183 GetMap()->GetContextImpl( pLower );
188 case Action::SCROLLED:
189 xAccImpl->Scrolled( rOldVisArea );
191 case Action::SCROLLED_WITHIN:
192 xAccImpl->ScrolledWithin( rOldVisArea );
194 case Action::SCROLLED_IN:
195 xAccImpl->ScrolledIn();
197 case Action::SCROLLED_OUT:
198 xAccImpl->ScrolledOut( rOldVisArea );
206 ChildrenScrolled( pLower, rOldVisArea );
212 "<SwAccessibleContext::ChildrenScrolled(..)> - always included child not considered!" );
220 case Action::SCROLLED:
221 case Action::SCROLLED_WITHIN:
222 xAccImpl->ViewForwarderChanged();
224 case Action::SCROLLED_IN:
225 ScrolledInShape( xAccImpl.get() );
227 case Action::SCROLLED_OUT:
229 xAccImpl->ViewForwarderChanged();
247 "<SwAccessibleContext::ChildrenScrolled(..)> - not always included child not considered!" );
252 ( !bVisibleChildrenOnly ||
253 aBox.Overlaps( rOldVisArea ) ||
254 aBox.Overlaps( rNewVisArea ) ) )
257 ChildrenScrolled( rLower.
GetSwFrame(), rOldVisArea );
265 SetVisArea( GetMap()->GetVisArea() );
267 ChildrenScrolled( GetFrame(), rOldVisArea );
269 bool bIsOldShowingState;
270 bool bIsNewShowingState = IsShowing( *(GetMap()) );
272 std::scoped_lock aGuard( m_Mutex );
273 bIsOldShowingState = m_isShowingState;
274 m_isShowingState = bIsNewShowingState;
277 if( bIsOldShowingState != bIsNewShowingState )
278 FireStateChangedEvent( AccessibleStateType::SHOWING,
279 bIsNewShowingState );
284 SetVisArea( GetMap()->GetVisArea() );
286 ChildrenScrolled( GetFrame(), rOldVisArea );
288 FireVisibleDataEvent();
296 OSL_ENSURE( GetVisArea() == GetMap()->GetVisArea(),
297 "Visible area of child is wrong. Did it exist already?" );
300 const SwFrame* pParent = GetParent();
302 GetMap()->GetContextImpl( pParent,
false ) );
303 uno::Reference < XAccessibleContext > xThis(
this );
304 if( !xParentImpl.is() )
309 AccessibleEventObject
aEvent;
310 aEvent.EventId = AccessibleEventId::CHILD;
311 aEvent.NewValue <<= xThis;
313 xParentImpl->FireAccessibleEvent( aEvent );
320 FireStateChangedEvent( AccessibleStateType::FOCUSED,
true );
327 SetVisArea( GetMap()->GetVisArea() );
335 ChildrenScrolled( GetFrame(), rOldVisArea );
340 FireStateChangedEvent( AccessibleStateType::SHOWING,
false );
355 while( aIter != aVisList.
end() )
363 xAccImpl = GetMap()->GetContextImpl( pLower,
false );
365 xAccImpl->InvalidateStates( _nStates );
367 InvalidateChildrenStates( pLower, _nStates );
384 bool bCanSkipInvisible)
388 while( aIter != aVisList.
end() )
397 xAccImpl->Dispose( bRecursive );
404 GetMap()->RemoveContext(pLower);
410 DisposeChildren(pLower, bRecursive, bCanSkipInvisible);
424 DisposeChild(rLower,
false, bCanSkipInvisible);
444 OSL_ENSURE( GetFrame(),
"fire event for disposed frame?" );
448 if( !rEvent.Source.is() )
450 uno::Reference < XAccessibleContext > xThis(
this );
451 rEvent.Source = xThis;
460 AccessibleEventObject
aEvent;
461 aEvent.EventId = AccessibleEventId::VISIBLE_DATA_CHANGED;
463 FireAccessibleEvent( aEvent );
469 AccessibleEventObject
aEvent;
471 aEvent.EventId = AccessibleEventId::STATE_CHANGED;
473 aEvent.NewValue <<= nState;
475 aEvent.OldValue <<= nState;
477 FireAccessibleEvent( aEvent );
486 if (m_isShowingState)
487 rStateSet.
AddState( AccessibleStateType::SHOWING );
490 if (m_isEditableState)
493 rStateSet.
AddState( AccessibleStateType::EDITABLE );
494 rStateSet.
AddState( AccessibleStateType::RESIZABLE );
495 rStateSet.
AddState( AccessibleStateType::MOVEABLE );
498 rStateSet.
AddState( AccessibleStateType::ENABLED );
502 rStateSet.
AddState( AccessibleStateType::OPAQUE );
508 rStateSet.
AddState( AccessibleStateType::DEFUNC );
515 std::scoped_lock aGuard( m_Mutex );
516 bRet = m_isEditableState;
524 if (!(GetFrame() && GetMap()))
526 throw lang::DisposedException(
"object is nonfunctional",
527 static_cast<cppu::OWeakObject*>(
this));
532 sal_Int16
const nRole,
540 , m_isDisposing(
false )
541 , m_isRegisteredAtAccessibleMap( true )
542 , m_isSelectedInDoc(
false)
554 std::shared_ptr<SwAccessibleMap> pMap(
m_wMap.lock());
561 uno::Reference< XAccessibleContext > SAL_CALL
564 uno::Reference < XAccessibleContext > xRet(
this );
577 uno::Reference< XAccessible> SAL_CALL
587 uno::Reference < XAccessibleContext > xThis(
this );
588 lang::IndexOutOfBoundsException aExcept(
589 "index out of bounds",
594 uno::Reference< XAccessible > xChild;
599 if( xChildImpl.is() )
601 xChildImpl->SetParent(
this );
602 xChild = xChildImpl.get();
610 if( xChildImpl.is() )
611 xChild = xChildImpl.get();
621 css::uno::Sequence<uno::Reference<XAccessible>> SAL_CALL
628 std::list< sw::access::SwAccessibleChild > aChildren;
631 std::vector<uno::Reference<XAccessible>> aRet;
632 aRet.reserve(aChildren.size());
633 for (
const auto & rSwChild : aChildren)
635 uno::Reference< XAccessible > xChild;
636 if( rSwChild.GetSwFrame() )
640 if( xChildImpl.is() )
642 xChildImpl->SetParent(
this );
643 xChild = xChildImpl.get();
646 else if ( rSwChild.GetDrawObject() )
649 GetMap()->GetContextImpl( rSwChild.GetDrawObject(),
651 if( xChildImpl.is() )
652 xChild = xChildImpl.get();
654 else if ( rSwChild.GetWindow() )
656 xChild = rSwChild.GetWindow()->GetAccessible();
658 aRet.push_back(xChild);
668 OSL_ENSURE( pUpper !=
nullptr ||
m_isDisposing,
"no upper found" );
670 uno::Reference< XAccessible > xAcc;
678 std::scoped_lock aWeakParentGuard(
m_Mutex );
701 OSL_ENSURE( pUpper !=
nullptr ||
m_isDisposing,
"no upper found" );
708 OSL_ENSURE( xAccImpl.is() ||
m_isDisposing,
"no parent found" );
726 uno::Reference< XAccessibleRelationSet> SAL_CALL
734 uno::Reference<XAccessibleStateSet> SAL_CALL
742 new ::utl::AccessibleStateSetHelper;
745 pStateSet->AddState( AccessibleStateType::SELECTED );
761 const uno::Reference< XAccessibleEventListener >& xListener )
773 const uno::Reference< XAccessibleEventListener >& xListener )
780 if ( !nListenerCount )
792 const awt::Rectangle & aRect)
798 nDiffX >= 0 && nDiffX < aRect.Width && nDiffY >= 0 &&
799 nDiffY < aRect.Height;
804 const awt::Point& aPoint )
814 const awt::Point& aPoint )
820 uno::Reference< XAccessible > xAcc;
825 throw uno::RuntimeException(
"no Window", static_cast<cppu::OWeakObject*>(
this));
828 Point aPixPoint( aPoint.X, aPoint.Y );
833 aPixPoint.setX(aPixPoint.getX() + aPixPos.getX());
834 aPixPoint.setY(aPixPoint.getY() + aPixPos.getY());
879 OSL_ENSURE( pParent,
"no Parent found" );
884 throw uno::RuntimeException(
"no Parent", static_cast<cppu::OWeakObject*>(
this));
888 throw uno::RuntimeException(
"no Window", static_cast<cppu::OWeakObject*>(
this));
894 static_cast < const SwPageFrame * >(
GetFrame() )->IsEmptyPage() )
896 OSL_ENSURE(
GetShell()->IsPreview(),
"empty page accessible?" );
900 sal_uInt16 nPageNum =
902 aLogBounds.
SSize(
GetMap()->GetPreviewPageSize( nPageNum ) );
912 aPixBounds.
Move( -aParentPixPos.getX(), -aParentPixPos.getY() );
916 awt::Rectangle aBox( aPixBounds.
Left(), aPixBounds.
Top(),
930 awt::Point aPoint(aRect.X, aRect.Y);
939 Point aPixPos(aRect.X, aRect.Y);
944 throw uno::RuntimeException(
"no Window", static_cast<cppu::OWeakObject*>(
this));
948 awt::Point aPoint(aPixPos.getX(), aPixPos.getY());
956 awt::Size aSize( aRect.Width, aRect.Height );
972 Select( const_cast < SdrObject * >( pObj ),
false );
980 pCFrame = static_cast< const SwLayoutFrame * >(
GetFrame() )->ContainsContent();
991 SwPaM aPaM( aStartPos );
1019 if( !xAccImpl.is() )
1022 AccessibleEventObject
aEvent;
1023 aEvent.EventId = AccessibleEventId::CHILD;
1024 uno::Reference< XAccessible > xAcc( xAccImpl );
1025 aEvent.OldValue <<= xAcc;
1029 xAccImpl->dispose();
1034 if(
nullptr == pAccImpl)
1038 AccessibleEventObject
aEvent;
1039 aEvent.EventId = AccessibleEventId::CHILD;
1040 uno::Reference< XAccessible > xAcc( pAccImpl );
1041 aEvent.NewValue <<= xAcc;
1044 if( !pAccImpl->
GetState( AccessibleStateType::FOCUSED ) )
1050 AccessibleEventObject aStateChangedEvent;
1051 aStateChangedEvent.EventId = AccessibleEventId::STATE_CHANGED;
1052 aStateChangedEvent.NewValue <<= AccessibleStateType::FOCUSED;
1053 aStateChangedEvent.Source = xAcc;
1065 "invalid visible area for dispose" );
1075 uno::Reference < XAccessibleContext > xThis(
this );
1082 AccessibleEventObject
aEvent;
1083 aEvent.EventId = AccessibleEventId::CHILD;
1084 aEvent.OldValue <<= xThis;
1091 std::scoped_lock aDefuncStateGuard(
m_Mutex );
1111 bool bRecursive,
bool bCanSkipInvisible )
1115 if ( !bCanSkipInvisible ||
1128 xAccImpl->Dispose( bRecursive );
1139 else if ( rChildFrameOrObj.
GetWindow() )
1141 AccessibleEventObject
aEvent;
1142 aEvent.EventId = AccessibleEventId::CHILD;
1143 uno::Reference< XAccessible > xAcc =
1145 aEvent.OldValue <<= xAcc;
1149 else if( bRecursive && rChildFrameOrObj.
GetSwFrame() )
1157 OSL_ENSURE(
GetFrame() && !
GetFrame()->getFrameArea().IsEmpty(),
"context should have a size" );
1159 bool bIsOldShowingState;
1162 std::scoped_lock aShowingStateGuard(
m_Mutex );
1167 if( bIsOldShowingState != bIsNewShowingState )
1170 bIsNewShowingState );
1172 else if( bIsNewShowingState )
1181 if( !bIsNewShowingState &&
1197 const SwRect& rOldFrame )
1205 "sw.a11y",
"child context should have a size");
1214 const bool bNew = rOldFrame.
IsEmpty() ||
1215 ( rOldFrame.
Left() == 0 && rOldFrame.
Top() == 0 );
1221 if( bNew || (bVisibleChildrenOnly && !
IsShowing( rOldFrame )) )
1228 xAccImpl->ScrolledIn();
1236 if ( xAccImpl.is() )
1242 OSL_FAIL(
"<SwAccessibleContext::InvalidateChildPosOrSize(..)> - no accessible shape found." );
1245 else if ( rChildFrameOrObj.
GetWindow() )
1247 AccessibleEventObject
aEvent;
1248 aEvent.EventId = AccessibleEventId::CHILD;
1260 if( bVisibleChildrenOnly &&
1267 xAccImpl->SetParent(
this );
1268 xAccImpl->Dispose(
true );
1278 else if ( rChildFrameOrObj.
GetWindow() )
1280 OSL_FAIL(
"<SwAccessibleContext::InvalidateChildPosOrSize(..)> - not expected to handle dispose of child of type <vcl::Window>." );
1318 bool bIsOldEditableState;
1319 bool bIsNewEditableState =
IsEditable( pVSh );
1321 std::scoped_lock aGuard(
m_Mutex );
1326 if( bIsOldEditableState != bIsNewEditableState )
1328 bIsNewEditableState );
1332 bool bIsOldOpaqueState;
1333 bool bIsNewOpaqueState =
IsOpaque( pVSh );
1335 std::scoped_lock aGuard(
m_Mutex );
1340 if( bIsOldOpaqueState != bIsNewOpaqueState )
1342 bIsNewOpaqueState );
1351 AccessibleEventObject
aEvent;
1352 aEvent.EventId = nType;
1360 AccessibleEventObject
aEvent;
1361 aEvent.EventId = AccessibleEventId::TEXT_SELECTION_CHANGED;
1369 AccessibleEventObject
aEvent;
1370 aEvent.EventId = AccessibleEventId::TEXT_ATTRIBUTE_CHANGED;
1408 bool bCallShowCursor =
false;
1412 Point aPt( LONG_MIN, LONG_MIN );
1414 bCallShowCursor =
true;
1417 if( pWrtShell && pPaM->
HasMark() )
1428 if( bCallShowCursor )
1437 const OUString *pArg1,
1438 const OUString *pArg2)
1440 OUString sStr =
SwResId(pResId);
1444 sStr = sStr.replaceFirst(
"$(ARG1)", *pArg1 );
1448 sStr = sStr.replaceFirst(
"$(ARG2)", *pArg2 );
1480 vcl::Window* pAdditionalAccessibleChild(
nullptr );
1487 pAdditionalAccessibleChild =
1492 return pAdditionalAccessibleChild;
css::uno::Reference< css::linguistic2::XProofreadingIterator > get(css::uno::Reference< css::uno::XComponentContext > const &context)
void ScrolledOut(const SwRect &rOldVisArea)
css::uno::Reference< css::accessibility::XAccessible > getAccessibleParentImpl()
std::weak_ptr< SwAccessibleMap > m_wMap
note: the m_pMap is guaranteed to be valid until we hit the dtor ~SwAccessibleContext, then m_wMap must be checked if it's still alive, after locking SolarMutex (alternatively, Dispose clears m_pMap)
Base class of the Writer layout elements.
Represents the visualization of a paragraph.
virtual css::awt::Point SAL_CALL getLocation() override
virtual css::awt::Point SAL_CALL getLocationOnScreen() override
virtual sal_Bool SAL_CALL containsPoint(const css::awt::Point &aPoint) override
virtual css::awt::Size SAL_CALL getSize() override
void FireAccessibleEvent(css::accessibility::AccessibleEventObject &rEvent)
void RemoveContext(const SwFrame *pFrame)
Marks a position in the document model.
vcl::Window * GetSidebarWinForFrameByIndex(const SwFrame &rFrame, const sal_Int32 nIndex)
virtual void InvalidateCursorPos_()
virtual void InvalidateChildPosOrSize(const sw::access::SwAccessibleChild &rFrameOrObj, const SwRect &rFrame)
void ChildrenScrolled(const SwFrame *pFrame, const SwRect &rOldVisArea)
virtual sal_Int32 SAL_CALL getAccessibleChildCount() override
void SetParent(SwAccessibleContext *pParent)
void Left(const tools::Long nLeft)
virtual sal_Int32 SAL_CALL getForeground() override
#define SAL_INFO_IF(condition, area, stream)
void DisposeChildren(const SwFrame *pFrame, bool bRecursive, bool bCanSkipInvisible)
vcl::Window * GetWindow()
static bool lcl_PointInRectangle(const awt::Point &aPoint, const awt::Rectangle &aRect)
static const AllSettings & GetSettings()
const SwPosition * GetMark() const
void Scrolled(const SwRect &rOldVisArea)
virtual void SAL_CALL grabFocus() override
SwViewShell * GetShell()
convenience method to get the SwViewShell through accessibility map
virtual css::lang::Locale SAL_CALL getLocale() override
Return the parents locale or throw exception if this object has no parent yet/anymore.
vcl::Window * GetAdditionalAccessibleChild(const sal_Int32 nIndex)
#i88070# - get additional accessible child by index
Of course Writer needs its own rectangles.
SwAccessibleContext(std::shared_ptr< SwAccessibleMap > const &pMap, sal_Int16 nRole, const SwFrame *pFrame)
static sal_Int32 GetChildCount(SwAccessibleMap &rAccMap, const SwRect &rVisArea, const SwFrame *pFrame, bool bInPagePreviewr)
bool GetState(sal_Int16 aState)
Used by the UI to modify the document model.
OUString SwResId(TranslateId aId)
SwCursorShell * GetCursorShell()
convenience method to get SwCursorShell through accessibility map
virtual sal_Bool SAL_CALL supportsService(const OUString &sServiceName) override
Return whether the specified service is supported by this class.
SwViewShell * GetShell() const
::rtl::Reference< SwAccessibleContext > GetContextImpl(const SwFrame *pFrame, bool bCreate=true)
static sw::access::SwAccessibleChild GetChild(SwAccessibleMap &rAccMap, const SwRect &rVisArea, const SwFrame &rFrame, sal_Int32 &rPos, bool bInPagePreview)
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet() override
const SdrObject * GetDrawObject() const
const SwFrame * GetFrame() const
const SwRect & getFrameArea() const
css::uno::Reference< css::accessibility::XAccessible > GetAccessible(bool bCreate=true)
bool CPPUHELPER_DLLPUBLIC supportsService(css::lang::XServiceInfo *implementation, rtl::OUString const &name)
void GetAdditionalAccessibleChildren(std::vector< vcl::Window * > *pChildren)
#i88070# - get all additional accessible children
virtual void InvalidateContent_(bool bVisibleDataFired)
virtual void DisposeChild(const sw::access::SwAccessibleChild &rFrameOrObj, bool bRecursive, bool bCanSkipInvisible)
bool IsVisibleChildrenOnly() const
virtual void SAL_CALL addAccessibleEventListener(const css::uno::Reference< css::accessibility::XAccessibleEventListener > &xListener) override
TextFrameIndex GetOffset() const
void GetAllSidebarWinForFrame(const SwFrame &rFrame, std::vector< vcl::Window * > *pChildren)
bool Select(SwPaM *pPaM, SdrObject *pObj, bool bAdd)
bool IsOpaque(SwViewShell const *pVSh) const
void FireStateChangedEvent(sal_Int16 nState, bool bNewState)
const SwFrame * GetSwFrame() const
PaM is Point and Mark: a selection of the document model.
SwTextNode * GetTextNodeFirst()
static void GetChildren(SwAccessibleMap &rAccMap, const SwRect &rVisArea, const SwFrame &rFrame, std::list< sw::access::SwAccessibleChild > &rChildren, bool bInPagePreview)
const SwPosition * GetPoint() const
const_iterator begin() const
bool FinishOLEObj()
Shutdown server.
static OUString GetResource(TranslateId pResId, const OUString *pArg1=nullptr, const OUString *pArg2=nullptr)
static sal_Int32 removeEventListener(const TClientId _nClient, const css::uno::Reference< css::accessibility::XAccessibleEventListener > &_rxListener)
bool HasAdditionalAccessibleChildren()
void InvalidateChildrenStates(const SwFrame *_pFrame, AccessibleStates _nStates)
bool HasMark() const
A PaM marks a selection if Point and Mark are distinct positions.
void InvalidateStates(AccessibleStates _nStates)
void InvalidateAttr()
#i88069# - attributes has changed
void SetSelection(const SwPaM &rCursor)
bool m_isRegisteredAtAccessibleMap
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleParent() override
bool AlwaysIncludeAsChild() const
indicating, if accessible child is included even, if the corresponding object is not visible...
void InvalidateRelation(sal_uInt16 nType)
virtual void InvalidatePosOrSize(const SwRect &rFrame)
void SSize(const Size &rNew)
const_iterator end() const
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleChild(sal_Int32 nIndex) override
css::uno::WeakReference< css::accessibility::XAccessible > m_xWeakParent
SwRect GetBounds(const SwAccessibleMap &rAccMap, const SwFrame *pFrame=nullptr)
A page of the document layout.
static void revokeClientNotifyDisposing(const TClientId _nClient, const css::uno::Reference< css::uno::XInterface > &_rxEventSource)
static void SetParent(std::shared_ptr< const SfxItemSet > &rpAttrSet, const SwContentNode &rNode, const SwFormat *pParentFormat, const SwFormat *pConditionalFormat)
Point OutputToAbsoluteScreenPixel(const Point &rPos) const
virtual css::awt::Rectangle SAL_CALL getBounds() override
void ScrolledWithin(const SwRect &rOldVisArea)
bool HasFrameConnectedSidebarWins(const SwFrame &rFrame)
void ScrolledInShape(::accessibility::AccessibleShape *pAccImpl)
void DisposeShape(const SdrObject *pObj,::accessibility::AccessibleShape *pAccImpl)
css::awt::Rectangle getBoundsImpl(bool bRelative)
Get bounding box.
bool IsLayoutFrame() const
virtual sal_Int32 SAL_CALL getAccessibleIndexInParent() override
SwTextNode is a paragraph in the document model.
bool IsEditable(SwViewShell const *pVSh) const
virtual sal_Int32 SAL_CALL getBackground() override
void RemoveFrameFromAccessibleMap()
virtual OUString SAL_CALL getAccessibleName() override
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet() override
general base class for all free-flowing frames
static void revokeClient(const TClientId _nClient)
virtual void Dispose(bool bRecursive, bool bCanSkipInvisible=true)
vcl::Window * GetWin() const
css::uno::Sequence< DstElementType > containerToSequence(const SrcType &i_Container)
const ::std::vector< Color > ImpSvNumberformatScan::StandardColor COL_WHITE
virtual void GetStates(::utl::AccessibleStateSetHelper &rStateSet)
bool IsAccessible(bool bPagePreview) const
void InvalidateCursorPos()
void Top(const tools::Long nTop)
tools::Rectangle CoreToPixel(const SwRect &rRect) const
const SwFrame * GetParent() const
size_t IsObjSelected() const
const ::std::vector< Color > ImpSvNumberformatScan::StandardColor COL_BLACK
css::uno::Reference< css::accessibility::XAccessible > GetContext(const SwFrame *pFrame, bool bCreate=true)
bool SelectObj(const Point &rSelPt, sal_uInt8 nFlag=0, SdrObject *pObj=nullptr)
If an object has been given, exactly this object is selected (instead of searching over position)...
void InvalidateTextSelection()
#i27301# - text selection has changed
css::uno::Reference< css::accessibility::XAccessible > GetWeakParent() const
SwAccessibleMap * GetMap()
vcl::Window * GetWindow() const
virtual void InvalidateFocus_()
const SwPostItMgr * GetPostItMgr() const
virtual void SAL_CALL removeAccessibleEventListener(const css::uno::Reference< css::accessibility::XAccessibleEventListener > &xListener) override
SwRect GetBox(const SwAccessibleMap &rAccMap) const
static void addEvent(const TClientId _nClient, const css::accessibility::AccessibleEventObject &_rEvent)
void Dispose(const T &xInterface)
const SwRect & GetVisArea() const
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint(const css::awt::Point &aPoint) override
virtual sal_Int16 SAL_CALL getAccessibleRole() override
virtual css::uno::Reference< css::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext() override
void AddState(sal_Int16 aState)
void FireVisibleDataEvent()
static TClientId registerClient()
SwPosition MapViewToModelPos(TextFrameIndex nIndex) const
virtual css::uno::Sequence< css::uno::Reference< css::accessibility::XAccessible > > SAL_CALL getAccessibleChildren() override
bool IsFrameSelected() const
virtual ~SwAccessibleContext() override
virtual bool SetSelectedState(bool bSelected)
static sal_Int32 addEventListener(const TClientId _nClient, const css::uno::Reference< css::accessibility::XAccessibleEventListener > &_rxListener)
bool m_bDetectedRangeSegmentation false
static sw::access::SwAccessibleChild GetChildAtPixel(const SwRect &rVisArea, const SwFrame &rFrame, const Point &rPos, bool bInPagePreview, SwAccessibleMap &rAccMap)
bool IsShowing(const SwAccessibleMap &rAccMap, const sw::access::SwAccessibleChild &rFrameOrObj) const