Kaydet (Commit) 96fa0df1 authored tarafından Daniel Robertson's avatar Daniel Robertson Kaydeden (comit) Noel Grandin

comphelper: replace for_each with range-based for

Replace complex uses of ::std::for_each with a range-based for-loop.

Change-Id: I57d3d2e830e7700b793e1836777cbe72504c6825
Reviewed-on: https://gerrit.libreoffice.org/18817Tested-by: 's avatarJenkins <ci@libreoffice.org>
Reviewed-by: 's avatarNoel Grandin <noelgrandin@gmail.com>
üst 74ce05b9
......@@ -151,16 +151,11 @@ css::uno::Any SAL_CALL NamedPropertyValuesContainer::getByName( const OUString&
css::uno::Sequence< OUString > SAL_CALL NamedPropertyValuesContainer::getElementNames( )
throw(css::uno::RuntimeException, std::exception)
{
NamedPropertyValues::iterator aIter = maProperties.begin();
const NamedPropertyValues::iterator aEnd = maProperties.end();
uno::Sequence< OUString > aNames( maProperties.size() );
OUString* pNames = aNames.getArray();
while( aIter != aEnd )
{
*pNames++ = (*aIter++).first;
}
for( const auto& rProperty : maProperties )
*pNames++ = rProperty.first;
return aNames;
}
......
......@@ -196,11 +196,10 @@ EmbeddedObjectContainer::~EmbeddedObjectContainer()
void EmbeddedObjectContainer::CloseEmbeddedObjects()
{
EmbeddedObjectContainerNameMap::iterator aIt = pImpl->maObjectContainer.begin();
while ( aIt != pImpl->maObjectContainer.end() )
for( const auto& rObj : pImpl->maObjectContainer )
{
uno::Reference < util::XCloseable > xClose( (*aIt).second, uno::UNO_QUERY );
if ( xClose.is() )
uno::Reference < util::XCloseable > xClose( rObj.second, uno::UNO_QUERY );
if( xClose.is() )
{
try
{
......@@ -210,8 +209,6 @@ void EmbeddedObjectContainer::CloseEmbeddedObjects()
{
}
}
++aIt;
}
}
......@@ -234,10 +231,11 @@ OUString EmbeddedObjectContainer::CreateUniqueObjectName()
uno::Sequence < OUString > EmbeddedObjectContainer::GetObjectNames()
{
uno::Sequence < OUString > aSeq( pImpl->maObjectContainer.size() );
EmbeddedObjectContainerNameMap::iterator aIt = pImpl->maObjectContainer.begin();
sal_Int32 nIdx=0;
while ( aIt != pImpl->maObjectContainer.end() )
aSeq[nIdx++] = (*aIt++).first;
OUString* pNames = aSeq.getArray();
for( const auto& rObj : pImpl->maObjectContainer )
*pNames++ = rObj.first;
return aSeq;
}
......@@ -260,15 +258,11 @@ bool EmbeddedObjectContainer::HasEmbeddedObject( const OUString& rName )
bool EmbeddedObjectContainer::HasEmbeddedObject( const uno::Reference < embed::XEmbeddedObject >& xObj )
{
EmbeddedObjectContainerNameMap::iterator aIt = pImpl->maObjectContainer.begin();
while ( aIt != pImpl->maObjectContainer.end() )
for( const auto& rObj : pImpl->maObjectContainer )
{
if ( (*aIt).second == xObj )
if( rObj.second == xObj )
return true;
else
++aIt;
}
return false;
}
......@@ -283,15 +277,11 @@ bool EmbeddedObjectContainer::HasInstantiatedEmbeddedObject( const OUString& rNa
OUString EmbeddedObjectContainer::GetEmbeddedObjectName( const css::uno::Reference < css::embed::XEmbeddedObject >& xObj )
{
EmbeddedObjectContainerNameMap::iterator aIt = pImpl->maObjectContainer.begin();
while ( aIt != pImpl->maObjectContainer.end() )
for( const auto& rObj : pImpl->maObjectContainer )
{
if ( (*aIt).second == xObj )
return (*aIt).first;
else
++aIt;
if( rObj.second == xObj )
return rObj.first;
}
SAL_WARN( "comphelper.container", "Unknown object!" );
return OUString();
}
......@@ -434,13 +424,15 @@ void EmbeddedObjectContainer::AddEmbeddedObject( const css::uno::Reference < css
// look for object in temporary container
if ( pImpl->mpTempObjectContainer )
{
aIt = pImpl->mpTempObjectContainer->pImpl->maObjectContainer.begin();
while ( aIt != pImpl->mpTempObjectContainer->pImpl->maObjectContainer.end() )
EmbeddedObjectContainerNameMap::iterator aEnd = pImpl->mpTempObjectContainer->pImpl->maObjectContainer.end();
for( EmbeddedObjectContainerNameMap::iterator aIter = pImpl->mpTempObjectContainer->pImpl->maObjectContainer.end();
aIter != aEnd;
++aIter )
{
if ( (*aIt).second == xObj )
if ( aIter->second == xObj )
{
// copy replacement image from temporary container (if there is any)
OUString aTempName = (*aIt).first;
OUString aTempName = aIter->first;
OUString aMediaType;
uno::Reference < io::XInputStream > xStream = pImpl->mpTempObjectContainer->GetGraphicStream( xObj, &aMediaType );
if ( xStream.is() )
......@@ -464,11 +456,9 @@ void EmbeddedObjectContainer::AddEmbeddedObject( const css::uno::Reference < css
}
// temp. container needs to forget the object
pImpl->mpTempObjectContainer->pImpl->maObjectContainer.erase( aIt );
pImpl->mpTempObjectContainer->pImpl->maObjectContainer.erase( aIter );
break;
}
else
++aIt;
}
}
}
......@@ -857,17 +847,17 @@ bool EmbeddedObjectContainer::MoveEmbeddedObject( EmbeddedObjectContainer& rSrc,
{
// now remove the object from the former container
bRet = false;
EmbeddedObjectContainerNameMap::iterator aIt = rSrc.pImpl->maObjectContainer.begin();
while ( aIt != rSrc.pImpl->maObjectContainer.end() )
EmbeddedObjectContainerNameMap::iterator aEnd = rSrc.pImpl->maObjectContainer.end();
for( EmbeddedObjectContainerNameMap::iterator aIter = rSrc.pImpl->maObjectContainer.begin();
aIter != aEnd;
++aIter )
{
if ( (*aIt).second == xObj )
if ( aIter->second == xObj )
{
rSrc.pImpl->maObjectContainer.erase( aIt );
rSrc.pImpl->maObjectContainer.erase( aIter );
bRet = true;
break;
}
++aIt;
}
SAL_WARN_IF( !bRet, "comphelper.container", "Object not found for removal!" );
......@@ -1055,20 +1045,20 @@ bool EmbeddedObjectContainer::RemoveEmbeddedObject( const uno::Reference < embed
}
bool bFound = false;
EmbeddedObjectContainerNameMap::iterator aIt = pImpl->maObjectContainer.begin();
while ( aIt != pImpl->maObjectContainer.end() )
EmbeddedObjectContainerNameMap::iterator aEnd = pImpl->maObjectContainer.end();
for( EmbeddedObjectContainerNameMap::iterator aIter = pImpl->maObjectContainer.begin();
aIter != aEnd;
++aIter )
{
if ( (*aIt).second == xObj )
if ( aIter->second == xObj )
{
pImpl->maObjectContainer.erase( aIt );
pImpl->maObjectContainer.erase( aIter );
bFound = true;
uno::Reference < container::XChild > xChild( xObj, uno::UNO_QUERY );
if ( xChild.is() )
xChild->setParent( uno::Reference < uno::XInterface >() );
break;
}
++aIt;
}
SAL_WARN_IF( !bFound,"comphelper.container", "Object not found for removal!" );
......@@ -1103,17 +1093,17 @@ bool EmbeddedObjectContainer::CloseEmbeddedObject( const uno::Reference < embed:
// disconnect the object from the container and close it if possible
bool bFound = false;
EmbeddedObjectContainerNameMap::iterator aIt = pImpl->maObjectContainer.begin();
while ( aIt != pImpl->maObjectContainer.end() )
EmbeddedObjectContainerNameMap::iterator aEnd = pImpl->maObjectContainer.end();
for( EmbeddedObjectContainerNameMap::iterator aIter = pImpl->maObjectContainer.begin();
aIter != aEnd;
++aIter )
{
if ( (*aIt).second == xObj )
if ( aIter->second == xObj )
{
pImpl->maObjectContainer.erase( aIt );
pImpl->maObjectContainer.erase( aIter );
bFound = true;
break;
}
++aIt;
}
if ( bFound )
......
......@@ -160,15 +160,12 @@ Sequence< OUString > SAL_CALL NameContainer::getElementNames( )
{
MutexGuard aGuard( maMutex );
SvGenericNameContainerMapImpl::iterator aIter = maProperties.begin();
const SvGenericNameContainerMapImpl::iterator aEnd = maProperties.end();
Sequence< OUString > aNames( maProperties.size() );
OUString* pNames = aNames.getArray();
while( aIter != aEnd )
for( const auto& rProperty : maProperties )
{
*pNames++ = (*aIter++).first;
*pNames++ = rProperty.first;
}
return aNames;
......
......@@ -32,42 +32,6 @@ using namespace ::com::sun::star::lang;
namespace comphelper
{
struct RemoveEventListener
: public ::std::unary_function< AccessibleMap::value_type, void >
{
private:
Reference< XEventListener > m_xListener;
public:
explicit RemoveEventListener( const Reference< XEventListener >& _rxListener )
:m_xListener( _rxListener )
{
}
void operator()( const AccessibleMap::value_type& _rMapEntry ) const
{
Reference< XComponent > xComp( _rMapEntry.first, UNO_QUERY );
if ( xComp.is() )
xComp->removeEventListener( m_xListener );
}
};
struct DisposeMappedChild
: public ::std::unary_function< AccessibleMap::value_type, void >
{
void operator()( const AccessibleMap::value_type& _rMapEntry ) const
{
Reference< XComponent > xContextComponent;
if ( _rMapEntry.second.is() )
xContextComponent.set(_rMapEntry.second->getAccessibleContext(), css::uno::UNO_QUERY);
if ( xContextComponent.is() )
xContextComponent->dispose();
}
};
OWrappedAccessibleChildrenManager::OWrappedAccessibleChildrenManager( const Reference< XComponentContext >& _rxContext )
:m_xContext( _rxContext )
,m_bTransientChildren( true )
......@@ -99,8 +63,9 @@ namespace comphelper
if ( m_aChildrenMap.end() != aRemovedPos )
{ // it was cached
// remove ourself as event listener
RemoveEventListener aOperator( this );
aOperator( *aRemovedPos );
Reference< XComponent > xComp( aRemovedPos->first, UNO_QUERY );
if( xComp.is() )
xComp->removeEventListener( this );
// and remove the entry from the map
m_aChildrenMap.erase( aRemovedPos );
}
......@@ -110,7 +75,12 @@ namespace comphelper
void OWrappedAccessibleChildrenManager::invalidateAll( )
{
// remove as event listener from the map elements
::std::for_each( m_aChildrenMap.begin(), m_aChildrenMap.end(), RemoveEventListener( this ) );
for( const auto& rChild : m_aChildrenMap )
{
Reference< XComponent > xComp( rChild.first, UNO_QUERY );
if( xComp.is() )
xComp->removeEventListener( this );
}
// clear the map
AccessibleMap aMap;
m_aChildrenMap.swap( aMap );
......@@ -167,8 +137,20 @@ namespace comphelper
void OWrappedAccessibleChildrenManager::dispose()
{
// dispose our children
::std::for_each( m_aChildrenMap.begin(), m_aChildrenMap.end(), RemoveEventListener( this ) );
::std::for_each( m_aChildrenMap.begin(), m_aChildrenMap.end(), DisposeMappedChild( ) );
for( const auto rChild : m_aChildrenMap )
{
Reference< XComponent > xComp( rChild.first, UNO_QUERY );
if( xComp.is() )
xComp->removeEventListener( this );
Reference< XComponent > xContextComponent;
if( rChild.second.is() )
xContextComponent.set( rChild.second->getAccessibleContext(),
::css::uno::UNO_QUERY );
if( xContextComponent.is() )
xContextComponent->dispose();
}
// clear our children
AccessibleMap aMap;
m_aChildrenMap.swap( aMap );
......
......@@ -78,12 +78,8 @@ MasterPropertySet::MasterPropertySet( comphelper::MasterPropertySetInfo* pInfo,
MasterPropertySet::~MasterPropertySet()
throw()
{
SlaveMap::iterator aEnd = maSlaveMap.end(), aIter = maSlaveMap.begin();
while (aIter != aEnd )
{
delete (*aIter).second;
++aIter;
}
for( auto& rSlave : maSlaveMap )
delete rSlave.second;
}
// XPropertySet
......@@ -248,15 +244,13 @@ void SAL_CALL MasterPropertySet::setPropertyValues( const Sequence< OUString >&
}
_postSetValues();
SlaveMap::const_iterator aSlaveIter = maSlaveMap.begin(), aSlaveEnd = maSlaveMap.end();
while (aSlaveIter != aSlaveEnd)
for( const auto& rSlave : maSlaveMap )
{
if ( (*aSlaveIter).second->IsInit())
if( rSlave.second->IsInit() )
{
(*aSlaveIter).second->mpSlave->_postSetValues();
(*aSlaveIter).second->SetInit ( false );
rSlave.second->mpSlave->_postSetValues();
rSlave.second->SetInit( false );
}
++aSlaveIter;
}
}
}
......@@ -313,15 +307,13 @@ Sequence< Any > SAL_CALL MasterPropertySet::getPropertyValues( const Sequence< O
}
_postSetValues();
SlaveMap::const_iterator aSlaveIter = maSlaveMap.begin(), aSlaveEnd = maSlaveMap.end();
while (aSlaveIter != aSlaveEnd)
for( const auto& rSlave : maSlaveMap )
{
if ( (*aSlaveIter).second->IsInit())
if( rSlave.second->IsInit() )
{
(*aSlaveIter).second->mpSlave->_postSetValues();
(*aSlaveIter).second->SetInit ( false );
rSlave.second->mpSlave->_postSetValues();
rSlave.second->SetInit( false );
}
++aSlaveIter;
}
}
return aValues;
......@@ -415,15 +407,13 @@ Sequence< PropertyState > SAL_CALL MasterPropertySet::getPropertyStates( const S
}
}
_postGetPropertyState();
SlaveMap::const_iterator aSlaveIter = maSlaveMap.begin(), aSlaveEnd = maSlaveMap.end();
while (aSlaveIter != aSlaveEnd)
for( const auto& rSlave : maSlaveMap )
{
if ( (*aSlaveIter).second->IsInit())
if( rSlave.second->IsInit() )
{
comphelper::ChainablePropertySet::_postGetPropertyState();
(*aSlaveIter).second->SetInit ( false );
rSlave.second->SetInit( false );
}
++aSlaveIter;
}
}
return aStates;
......
......@@ -46,27 +46,21 @@ MasterPropertySetInfo::MasterPropertySetInfo( PropertyInfo const * pMap )
MasterPropertySetInfo::~MasterPropertySetInfo()
throw()
{
PropertyDataHash::iterator aEnd = maMap.end(), aIter = maMap.begin();
while (aIter != aEnd )
{
delete (*aIter).second;
++aIter;
}
for( auto& rObj : maMap )
delete rObj.second;
}
void MasterPropertySetInfo::add( PropertyInfoHash &rHash, sal_uInt8 nMapId )
{
if( maProperties.getLength() )
maProperties.realloc( 0 );
PropertyInfoHash::iterator aIter = rHash.begin(), aEnd = rHash.end();
while ( aIter != aEnd )
for( const auto& rObj : rHash )
{
SAL_WARN_IF(
maMap.find(aIter->first) != maMap.end(),
"comphelper", "Duplicate property name \"" << aIter->first << "\"");
maMap[(*aIter).first] = new PropertyData ( nMapId, (*aIter).second );
++aIter;
maMap.find(rObj.first) != maMap.end(),
"comphelper", "Duplicate property name \"" << rObj.first << "\"");
maMap[rObj.first] = new PropertyData ( nMapId, rObj.second );
}
}
......
......@@ -93,11 +93,9 @@ Sequence< Property > PropertyMapImpl::getProperties() throw()
maProperties = Sequence< Property >( maPropertyMap.size() );
Property* pProperties = maProperties.getArray();
PropertyMap::iterator aIter = maPropertyMap.begin();
const PropertyMap::iterator aEnd = maPropertyMap.end();
while( aIter != aEnd )
for( const auto& rProperty : maPropertyMap )
{
PropertyMapEntry const * pEntry = (*aIter).second;
PropertyMapEntry const * pEntry = rProperty.second;
pProperties->Name = pEntry->maName;
pProperties->Handle = pEntry->mnHandle;
......@@ -105,7 +103,6 @@ Sequence< Property > PropertyMapImpl::getProperties() throw()
pProperties->Attributes = pEntry->mnAttributes;
++pProperties;
++aIter;
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment