ToolBox::GetItemCommand/GetItemWindow/EnableItem take IDs

...not positions in the [0..GetItemCount()) range, so what's probably missing
here is to map from positions to IDs.  Code was originally introduced with
8a429819aab795e131bb2567f08cc0c2d1784624 "findbar01: enhancements for findbar".

Change-Id: Ia95b65e14bb81dac940269b167434f83cefbd4d8
Reviewed-on: https://gerrit.libreoffice.org/35102
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
diff --git a/svx/source/tbxctrls/tbunosearchcontrollers.cxx b/svx/source/tbxctrls/tbunosearchcontrollers.cxx
index e293e42..430fa8c 100644
--- a/svx/source/tbxctrls/tbunosearchcontrollers.cxx
+++ b/svx/source/tbxctrls/tbunosearchcontrollers.cxx
@@ -92,20 +92,21 @@ void impl_executeSearch( const css::uno::Reference< css::uno::XComponentContext 
        sal_uInt16 nItemCount = pToolBox->GetItemCount();
        for ( sal_uInt16 i=0; i<nItemCount; ++i )
        {
            OUString sItemCommand = pToolBox->GetItemCommand(i);
            sal_uInt16 id = pToolBox->GetItemId(i);
            OUString sItemCommand = pToolBox->GetItemCommand(id);
            if ( sItemCommand == COMMAND_FINDTEXT )
            {
                vcl::Window* pItemWin = pToolBox->GetItemWindow(i);
                vcl::Window* pItemWin = pToolBox->GetItemWindow(id);
                if (pItemWin)
                    sFindText = pItemWin->GetText();
            } else if ( sItemCommand == COMMAND_MATCHCASE )
            {
                CheckBox* pItemWin = static_cast<CheckBox*>( pToolBox->GetItemWindow(i) );
                CheckBox* pItemWin = static_cast<CheckBox*>( pToolBox->GetItemWindow(id) );
                if (pItemWin)
                    aMatchCase = pItemWin->IsChecked();
            } else if ( sItemCommand == COMMAND_SEARCHFORMATTED )
            {
                CheckBox* pItemWin = static_cast<CheckBox*>( pToolBox->GetItemWindow(i) );
                CheckBox* pItemWin = static_cast<CheckBox*>( pToolBox->GetItemWindow(id) );
                if (pItemWin)
                    bSearchFormatted = pItemWin->IsChecked();
            }
@@ -529,10 +530,11 @@ void SAL_CALL FindTextToolbarController::initialize( const css::uno::Sequence< c
        for ( sal_uInt16 i=0; i<nItemCount; ++i )
        {
            OUString sItemCommand = pToolBox->GetItemCommand(i);
            sal_uInt16 id = pToolBox->GetItemId(i);
            if ( sItemCommand == COMMAND_DOWNSEARCH )
                m_nDownSearchId = i;
                m_nDownSearchId = id;
            else if ( sItemCommand == COMMAND_UPSEARCH )
                m_nUpSearchId = i;
                m_nUpSearchId = id;
        }
    }

@@ -1436,10 +1438,11 @@ void SAL_CALL FindbarDispatcher::dispatch( const css::util::URL& aURL, const css
            sal_uInt16 nItemCount = pToolBox->GetItemCount();
            for ( sal_uInt16 i=0; i<nItemCount; ++i )
            {
                OUString sItemCommand = pToolBox->GetItemCommand(i);
                sal_uInt16 id = pToolBox->GetItemId(i);
                OUString sItemCommand = pToolBox->GetItemCommand(id);
                if ( sItemCommand == COMMAND_FINDTEXT )
                {
                    vcl::Window* pItemWin = pToolBox->GetItemWindow( i );
                    vcl::Window* pItemWin = pToolBox->GetItemWindow( id );
                    if ( pItemWin )
                    {
                        SolarMutexGuard aSolarMutexGuard;