diff options
author | Noel Grandin <noelgrandin@gmail.com> | 2021-08-07 09:24:46 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2021-08-07 21:34:33 +0200 |
commit | 86abf3a682b424dc0fcbccf030f5a0b9bfb81d8c (patch) | |
tree | ba40de884231f604bbd8eedb610834d92afb86ae /embeddedobj/source/commonembedding/miscobj.cxx | |
parent | 2cd1442f83d41af1f2b663ccb8bfab6a954009f1 (diff) |
create comphelper::OMultiTypeInterfaceContainerHelper2 and use it
based on OInterfaceContainerHelper2 which is considerably
faster than the original OInterfaceContainerHelper
Change-Id: I9c8b6d0e5382018824bf7188a26343703abf2d51
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120161
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'embeddedobj/source/commonembedding/miscobj.cxx')
-rw-r--r-- | embeddedobj/source/commonembedding/miscobj.cxx | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/embeddedobj/source/commonembedding/miscobj.cxx b/embeddedobj/source/commonembedding/miscobj.cxx index ab9f2b53c0ff..8d2cb7332a40 100644 --- a/embeddedobj/source/commonembedding/miscobj.cxx +++ b/embeddedobj/source/commonembedding/miscobj.cxx @@ -29,6 +29,7 @@ #include <com/sun/star/ucb/SimpleFileAccess.hpp> #include <com/sun/star/io/TempFile.hpp> +#include <comphelper/multicontainer2.hxx> #include <comphelper/storagehelper.hxx> #include <cppuhelper/queryinterface.hxx> @@ -355,7 +356,7 @@ void OCommonEmbeddedObject::PostEvent_Impl( const OUString& aEventName ) if ( !m_pInterfaceContainer ) return; - ::cppu::OInterfaceContainerHelper* pIC = m_pInterfaceContainer->getContainer( + comphelper::OInterfaceContainerHelper2* pIC = m_pInterfaceContainer->getContainer( cppu::UnoType<document::XEventListener>::get()); if( !pIC ) return; @@ -366,7 +367,7 @@ void OCommonEmbeddedObject::PostEvent_Impl( const OUString& aEventName ) // For now all the events are sent as object events // aEvent.Source = ( xSource.is() ? xSource // : uno::Reference< uno::XInterface >( static_cast< ::cppu::OWeakObject* >( this ) ) ); - ::cppu::OInterfaceIteratorHelper aIt( *pIC ); + comphelper::OInterfaceIteratorHelper2 aIt( *pIC ); while( aIt.hasMoreElements() ) { try @@ -486,7 +487,7 @@ void SAL_CALL OCommonEmbeddedObject::addStateChangeListener( const uno::Referenc throw lang::DisposedException(); // TODO if ( !m_pInterfaceContainer ) - m_pInterfaceContainer.reset(new ::cppu::OMultiTypeInterfaceContainerHelper( m_aMutex )); + m_pInterfaceContainer.reset(new comphelper::OMultiTypeInterfaceContainerHelper2( m_aMutex )); m_pInterfaceContainer->addInterface( cppu::UnoType<embed::XStateChangeListener>::get(), xListener ); @@ -514,11 +515,11 @@ void SAL_CALL OCommonEmbeddedObject::close( sal_Bool bDeliverOwnership ) if ( m_pInterfaceContainer ) { - ::cppu::OInterfaceContainerHelper* pContainer = + comphelper::OInterfaceContainerHelper2* pContainer = m_pInterfaceContainer->getContainer( cppu::UnoType<util::XCloseListener>::get()); if ( pContainer != nullptr ) { - ::cppu::OInterfaceIteratorHelper pIterator(*pContainer); + comphelper::OInterfaceIteratorHelper2 pIterator(*pContainer); while (pIterator.hasMoreElements()) { try @@ -536,7 +537,7 @@ void SAL_CALL OCommonEmbeddedObject::close( sal_Bool bDeliverOwnership ) cppu::UnoType<util::XCloseListener>::get()); if ( pContainer != nullptr ) { - ::cppu::OInterfaceIteratorHelper pCloseIterator(*pContainer); + comphelper::OInterfaceIteratorHelper2 pCloseIterator(*pContainer); while (pCloseIterator.hasMoreElements()) { try @@ -606,7 +607,7 @@ void SAL_CALL OCommonEmbeddedObject::addCloseListener( const uno::Reference< uti throw lang::DisposedException(); // TODO if ( !m_pInterfaceContainer ) - m_pInterfaceContainer.reset(new ::cppu::OMultiTypeInterfaceContainerHelper(m_aMutex)); + m_pInterfaceContainer.reset(new comphelper::OMultiTypeInterfaceContainerHelper2(m_aMutex)); m_pInterfaceContainer->addInterface( cppu::UnoType<util::XCloseListener>::get(), xListener ); } @@ -628,7 +629,7 @@ void SAL_CALL OCommonEmbeddedObject::addEventListener( const uno::Reference< doc throw lang::DisposedException(); // TODO if ( !m_pInterfaceContainer ) - m_pInterfaceContainer.reset(new ::cppu::OMultiTypeInterfaceContainerHelper(m_aMutex)); + m_pInterfaceContainer.reset(new comphelper::OMultiTypeInterfaceContainerHelper2(m_aMutex)); m_pInterfaceContainer->addInterface( cppu::UnoType<document::XEventListener>::get(), xListener ); } |