26#include <com/sun/star/accessibility/AccessibleEventId.hpp>
27#include <com/sun/star/accessibility/AccessibleRole.hpp>
28#include <com/sun/star/accessibility/AccessibleStateType.hpp>
115 sal_Int64 nStateType=AccessibleStateType::ENABLED;
118 nStateType = AccessibleStateType::VISIBLE;
120 std::array<Any, 2> aOldValue, aNewValue;
123 aOldValue[0] <<= AccessibleStateType::SENSITIVE;
124 aOldValue[1] <<= nStateType;
128 aNewValue[0] <<= nStateType;
129 aNewValue[1] <<= AccessibleStateType::SENSITIVE;
132 NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue[0], aNewValue[0] );
133 NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue[1], aNewValue[1] );
141 Any aOldValue, aNewValue;
143 aOldValue <<= AccessibleStateType::FOCUSED;
145 aNewValue <<= AccessibleStateType::FOCUSED;
147 NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
156 Any aOldValue, aNewValue;
158 aOldValue <<= AccessibleStateType::VISIBLE;
160 aNewValue <<= AccessibleStateType::VISIBLE;
162 NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
171 Any aOldValue, aNewValue;
173 aOldValue <<= AccessibleStateType::SELECTED;
175 aNewValue <<= AccessibleStateType::SELECTED;
177 NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
186 Any aOldValue, aNewValue;
188 aOldValue <<= AccessibleStateType::CHECKED;
190 aNewValue <<= AccessibleStateType::CHECKED;
192 NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
244 NotifyAccessibleEvent( AccessibleEventId::SELECTION_CHANGED,
Any(),
Any() );
299 pComp->NotifyAccessibleEvent(AccessibleEventId::ROLE_CHANGED,
Any(),
Any());
333 if (
m_pMenu->GetItemType(
static_cast<sal_uInt16
>(
i) ) == MenuItemType::SEPARATOR )
368 for ( sal_Int64
i = 0,
nCount = getAccessibleChildCount();
i <
nCount; ++
i )
373 Reference< XAccessibleComponent > xComp( xAcc->getAccessibleContext(), UNO_QUERY );
410 pComp->
SetItemPos(
static_cast<sal_uInt16
>(j) );
418 Any aOldValue, aNewValue;
419 aNewValue <<= xChild;
420 NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldValue, aNewValue );
444 pComp->
SetItemPos(
static_cast<sal_uInt16
>(j) );
451 Any aOldValue, aNewValue;
452 aOldValue <<= xChild;
453 NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldValue, aNewValue );
455 Reference< XComponent > xComponent( xChild, UNO_QUERY );
456 if ( xComponent.is() )
457 xComponent->dispose();
470 bool bChildHighlighted =
false;
479 bChildHighlighted =
true;
485 return bChildHighlighted;
492 if ( getAccessibleRole() == AccessibleRole::MENU && !
IsPopupMenuOpen() )
497 m_pMenu->HighlightItem(
static_cast<sal_uInt16
>(
i) );
510 bool bSelected =
false;
532 OSL_ENSURE( rEvent.GetMenu(),
"OAccessibleMenuBaseComponent - Menu?" );
533 ProcessMenuEvent( rEvent );
539 sal_uInt16 nItemPos = rVclMenuEvent.
GetItemPos();
541 switch ( rVclMenuEvent.
GetId() )
543 case VclEventId::MenuShow:
544 case VclEventId::MenuHide:
549 case VclEventId::MenuHighlight:
556 case VclEventId::MenuDehighlight:
562 case VclEventId::MenuSubmenuActivate:
566 case VclEventId::MenuSubmenuDeactivate:
571 case VclEventId::MenuEnable:
576 case VclEventId::MenuDisable:
581 case VclEventId::MenuSubmenuChanged:
587 case VclEventId::MenuInsertItem:
592 case VclEventId::MenuRemoveItem:
597 case VclEventId::MenuAccessibleNameChanged:
602 case VclEventId::MenuItemRoleChanged:
607 case VclEventId::MenuItemTextChanged:
613 case VclEventId::MenuItemChecked:
618 case VclEventId::MenuItemUnchecked:
623 case VclEventId::ObjectDying:
634 Reference< XComponent > xComponent(
i, UNO_QUERY );
635 if ( xComponent.is() )
636 xComponent->dispose();
655 OAccessibleExtendedComponentHelper::disposing();
667 Reference< XComponent > xComponent(
i, UNO_QUERY );
668 if ( xComponent.is() )
669 xComponent->dispose();
689 OExternalLockGuard aGuard(
this );
700 OExternalLockGuard aGuard(
this );
702 sal_Int64 nStateSet = 0;
704 if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
710 nStateSet |= AccessibleStateType::DEFUNC;
inline ::tools::Rectangle VCLRectangle(const css::awt::Rectangle &rAWTRect)
inline ::Point VCLPoint(const css::awt::Point &rAWTPoint)
#define LINK(Instance, Class, Member)
bool CPPUHELPER_DLLPUBLIC supportsService(css::lang::XServiceInfo *implementation, rtl::OUString const &name)
constexpr std::enable_if_t< std::is_signed_v< T >, std::make_unsigned_t< T > > make_unsigned(T value)