summaryrefslogtreecommitdiff
path: root/accessibility/source/extended/accessibletabbar.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'accessibility/source/extended/accessibletabbar.cxx')
-rw-r--r--accessibility/source/extended/accessibletabbar.cxx86
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;
}