diff options
author | Arnaud Versini <arnaud.versini@gmail.com> | 2018-04-29 20:15:02 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2018-04-29 22:11:46 +0200 |
commit | 9f3e8cb4af359c387d575d34b9a3d59db7dbe3b0 (patch) | |
tree | 7ae396465360272a71bad60be080b1e8a662ad8f /accessibility/source | |
parent | 5b77e676f57bab2de61dc430e8725c447b73354a (diff) |
accessibility : remove useless guards and optimisze a litle
Change-Id: I1162f364d948b73b943fb973222103772fffddc3
Reviewed-on: https://gerrit.libreoffice.org/53629
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'accessibility/source')
-rw-r--r-- | accessibility/source/standard/vclxaccessibletoolbox.cxx | 28 |
1 files changed, 20 insertions, 8 deletions
diff --git a/accessibility/source/standard/vclxaccessibletoolbox.cxx b/accessibility/source/standard/vclxaccessibletoolbox.cxx index 7f744038d505..c9258d402be8 100644 --- a/accessibility/source/standard/vclxaccessibletoolbox.cxx +++ b/accessibility/source/standard/vclxaccessibletoolbox.cxx @@ -839,14 +839,20 @@ sal_Int32 VCLXAccessibleToolBox::getSelectedAccessibleChildCount( ) OExternalLockGuard aGuard( this ); sal_Int32 nRet = 0; - for ( sal_Int32 i = 0, nCount = implGetAccessibleChildCount(); i < nCount; i++ ) + VclPtr< ToolBox > pToolBox = GetAs< ToolBox >(); + if (pToolBox) { - if ( isAccessibleChildSelected( i ) ) + sal_uInt16 nHighlightItemId = pToolBox->GetHighlightItemId(); + for ( size_t i = 0, nCount = pToolBox->GetItemCount(); i < nCount; i++ ) { - nRet = 1; - break; // a toolbox can only have (n)one selected child + if ( nHighlightItemId == pToolBox->GetItemId( i ) ) + { + nRet = 1; + break; // a toolbox can only have (n)one selected child + } } } + return nRet; } @@ -857,14 +863,20 @@ Reference< XAccessible > VCLXAccessibleToolBox::getSelectedAccessibleChild( sal_ throw IndexOutOfBoundsException(); Reference< XAccessible > xChild; - for ( sal_Int32 i = 0, nCount = implGetAccessibleChildCount(); i < nCount; i++ ) + VclPtr< ToolBox > pToolBox = GetAs< ToolBox >(); + if (pToolBox) { - if ( isAccessibleChildSelected( i ) ) + sal_uInt16 nHighlightItemId = pToolBox->GetHighlightItemId(); + for ( sal_Int32 i = 0, nCount = pToolBox->GetItemCount(); i < nCount; i++ ) { - xChild = getAccessibleChild( i ); - break; + if ( nHighlightItemId == pToolBox->GetItemId( i ) ) + { + xChild = getAccessibleChild( i ); + break; + } } } + if (!xChild) throw IndexOutOfBoundsException(); |