diff options
Diffstat (limited to 'accessibility/source/extended/accessibletabbar.cxx')
-rw-r--r-- | accessibility/source/extended/accessibletabbar.cxx | 86 |
1 files changed, 33 insertions, 53 deletions
diff --git a/accessibility/source/extended/accessibletabbar.cxx b/accessibility/source/extended/accessibletabbar.cxx index a1393d067a59..711d2a7b8c5c 100644 --- a/accessibility/source/extended/accessibletabbar.cxx +++ b/accessibility/source/extended/accessibletabbar.cxx @@ -24,12 +24,13 @@ #include <com/sun/star/accessibility/AccessibleRole.hpp> #include <com/sun/star/accessibility/AccessibleStateType.hpp> #include <com/sun/star/awt/XDevice.hpp> -#include <com/sun/star/awt/XWindowPeer.hpp> +#include <com/sun/star/awt/XVclWindowPeer.hpp> #include <com/sun/star/lang/IndexOutOfBoundsException.hpp> +#include <comphelper/accessiblecontexthelper.hxx> #include <cppuhelper/supportsservice.hxx> -#include <unotools/accessiblestatesethelper.hxx> #include <unotools/accessiblerelationsethelper.hxx> #include <i18nlangtag/languagetag.hxx> +#include <o3tl/safeint.hxx> #include <vcl/svapp.hxx> #include <vcl/settings.hxx> #include <toolkit/awt/vclxfont.hxx> @@ -50,7 +51,7 @@ namespace accessibility AccessibleTabBar::AccessibleTabBar( TabBar* pTabBar ) - :AccessibleTabBarBase( pTabBar ) + :ImplInheritanceHelper( pTabBar ) { if ( m_pTabBar ) m_aAccessibleChildren.assign( m_pTabBar->GetAccessibleChildWindowCount() + 1, Reference< XAccessible >() ); @@ -112,29 +113,29 @@ namespace accessibility } - void AccessibleTabBar::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet ) + void AccessibleTabBar::FillAccessibleStateSet( sal_Int64& rStateSet ) { if ( !m_pTabBar ) return; if ( m_pTabBar->IsEnabled() ) { - rStateSet.AddState( AccessibleStateType::ENABLED ); - rStateSet.AddState( AccessibleStateType::SENSITIVE ); + rStateSet |= AccessibleStateType::ENABLED; + rStateSet |= AccessibleStateType::SENSITIVE; } - rStateSet.AddState( AccessibleStateType::FOCUSABLE ); + rStateSet |= AccessibleStateType::FOCUSABLE; if ( m_pTabBar->HasFocus() ) - rStateSet.AddState( AccessibleStateType::FOCUSED ); + rStateSet |= AccessibleStateType::FOCUSED; - rStateSet.AddState( AccessibleStateType::VISIBLE ); + rStateSet |= AccessibleStateType::VISIBLE; if ( m_pTabBar->IsVisible() ) - rStateSet.AddState( AccessibleStateType::SHOWING ); + rStateSet |= AccessibleStateType::SHOWING; if ( m_pTabBar->GetStyle() & WB_SIZEABLE ) - rStateSet.AddState( AccessibleStateType::RESIZABLE ); + rStateSet |= AccessibleStateType::RESIZABLE; } @@ -151,18 +152,6 @@ namespace accessibility } - // XInterface - - - IMPLEMENT_FORWARD_XINTERFACE2( AccessibleTabBar, OAccessibleExtendedComponentHelper, AccessibleTabBar_BASE ) - - - // XTypeProvider - - - IMPLEMENT_FORWARD_XTYPEPROVIDER2( AccessibleTabBar, OAccessibleExtendedComponentHelper, AccessibleTabBar_BASE ) - - // XComponent @@ -186,7 +175,7 @@ namespace accessibility OUString AccessibleTabBar::getImplementationName() { - return "com.sun.star.comp.svtools.AccessibleTabBar"; + return u"com.sun.star.comp.svtools.AccessibleTabBar"_ustr; } @@ -198,7 +187,7 @@ namespace accessibility Sequence< OUString > AccessibleTabBar::getSupportedServiceNames() { - return { "com.sun.star.awt.AccessibleTabBar" }; + return { u"com.sun.star.awt.AccessibleTabBar"_ustr }; } @@ -216,7 +205,7 @@ namespace accessibility // XAccessibleContext - sal_Int32 AccessibleTabBar::getAccessibleChildCount() + sal_Int64 AccessibleTabBar::getAccessibleChildCount() { OExternalLockGuard aGuard( this ); @@ -224,11 +213,11 @@ namespace accessibility } - Reference< XAccessible > AccessibleTabBar::getAccessibleChild( sal_Int32 i ) + Reference< XAccessible > AccessibleTabBar::getAccessibleChild( sal_Int64 i ) { OExternalLockGuard aGuard( this ); - if ( i < 0 || i >= static_cast<sal_Int32>(m_aAccessibleChildren.size()) ) + if ( i < 0 || o3tl::make_unsigned(i) >= m_aAccessibleChildren.size() ) throw IndexOutOfBoundsException(); Reference< XAccessible > xChild = m_aAccessibleChildren[i]; @@ -274,11 +263,11 @@ namespace accessibility } - sal_Int32 AccessibleTabBar::getAccessibleIndexInParent( ) + sal_Int64 AccessibleTabBar::getAccessibleIndexInParent( ) { OExternalLockGuard aGuard( this ); - sal_Int32 nIndexInParent = -1; + sal_Int64 nIndexInParent = -1; if ( m_pTabBar ) { vcl::Window* pParent = m_pTabBar->GetAccessibleParentWindow(); @@ -307,58 +296,49 @@ namespace accessibility return AccessibleRole::PANEL; } - OUString AccessibleTabBar::getAccessibleDescription( ) { OExternalLockGuard aGuard( this ); - OUString sDescription; - if ( m_pTabBar ) - sDescription = m_pTabBar->GetAccessibleDescription(); + if (m_pTabBar) + return m_pTabBar->GetAccessibleDescription(); - return sDescription; + return OUString(); } - OUString AccessibleTabBar::getAccessibleName( ) { OExternalLockGuard aGuard( this ); - OUString sName; - if ( m_pTabBar ) - sName = m_pTabBar->GetAccessibleName(); + if (m_pTabBar) + return m_pTabBar->GetAccessibleName(); - return sName; + return OUString(); } - Reference< XAccessibleRelationSet > AccessibleTabBar::getAccessibleRelationSet( ) { OExternalLockGuard aGuard( this ); - utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper; - Reference< XAccessibleRelationSet > xSet = pRelationSetHelper; - return xSet; + return new utl::AccessibleRelationSetHelper; } - - Reference< XAccessibleStateSet > AccessibleTabBar::getAccessibleStateSet( ) + sal_Int64 AccessibleTabBar::getAccessibleStateSet( ) { OExternalLockGuard aGuard( this ); - utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper; - Reference< XAccessibleStateSet > xSet = pStateSetHelper; + sal_Int64 nStateSet = 0; if ( !rBHelper.bDisposed && !rBHelper.bInDispose ) { - FillAccessibleStateSet( *pStateSetHelper ); + FillAccessibleStateSet( nStateSet ); } else { - pStateSetHelper->AddState( AccessibleStateType::DEFUNC ); + nStateSet |= AccessibleStateType::DEFUNC; } - return xSet; + return nStateSet; } @@ -388,7 +368,7 @@ namespace accessibility { tools::Rectangle aRect = VCLRectangle( xComp->getBounds() ); Point aPos = VCLPoint( rPoint ); - if ( aRect.IsInside( aPos ) ) + if ( aRect.Contains( aPos ) ) { xChild = xAcc; break; @@ -469,7 +449,7 @@ namespace accessibility aFont = m_pTabBar->GetControlFont(); else aFont = m_pTabBar->GetFont(); - VCLXFont* pVCLXFont = new VCLXFont; + rtl::Reference<VCLXFont> pVCLXFont = new VCLXFont; pVCLXFont->Init( *xDev, aFont ); xFont = pVCLXFont; } |