diff options
author | Julien Nabet <serval2412@yahoo.fr> | 2017-11-04 14:45:32 +0100 |
---|---|---|
committer | Julien Nabet <serval2412@yahoo.fr> | 2017-11-04 17:54:28 +0100 |
commit | 393fa77d278eae7a72a8dc78f81082bbdd63a656 (patch) | |
tree | 91da8f3d8f332b328f5b37cc8cbad610c635a5f8 /animations | |
parent | 33157a11536da2704f036aeb9ab559b04419cf77 (diff) |
Replace lists by vectors in animation parts (sd/animations)
Change-Id: Ie5306041e5cde5617e460ae4d98861e8d26e389d
Reviewed-on: https://gerrit.libreoffice.org/44297
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Diffstat (limited to 'animations')
-rw-r--r-- | animations/source/animcore/animcore.cxx | 48 |
1 files changed, 21 insertions, 27 deletions
diff --git a/animations/source/animcore/animcore.cxx b/animations/source/animcore/animcore.cxx index 05b7a4747970..f4af2aada347 100644 --- a/animations/source/animcore/animcore.cxx +++ b/animations/source/animcore/animcore.cxx @@ -56,7 +56,7 @@ #include <cppuhelper/implbase.hxx> #include <osl/mutex.hxx> -#include <list> +#include <vector> #include <algorithm> #include <string.h> @@ -100,10 +100,6 @@ using namespace ::com::sun::star::animations::AnimationNodeType; namespace animcore { - -typedef std::list< Reference< XAnimationNode > > ChildList_t; - - class AnimationNodeBase : public XAnimateMotion, public XAnimateColor, public XTransitionFilter, @@ -344,14 +340,14 @@ private: double mfIterateInterval; /** sorted list of child nodes for XTimeContainer*/ - ChildList_t maChildren; + std::vector< Reference< XAnimationNode > > maChildren; }; class TimeContainerEnumeration : public ::cppu::WeakImplHelper< XEnumeration > { public: - explicit TimeContainerEnumeration( const ChildList_t &rChildren ); + explicit TimeContainerEnumeration( const std::vector< Reference< XAnimationNode > > &rChildren ); // Methods virtual sal_Bool SAL_CALL hasMoreElements() override; @@ -359,16 +355,16 @@ public: private: /** sorted list of child nodes */ - ChildList_t maChildren; + std::vector< Reference< XAnimationNode > > maChildren; /** current iteration position */ - ChildList_t::iterator maIter; + std::vector< Reference< XAnimationNode > >::iterator maIter; /** our first, last and only protection from multi-threads! */ Mutex maMutex; }; -TimeContainerEnumeration::TimeContainerEnumeration( const ChildList_t &rChildren ) +TimeContainerEnumeration::TimeContainerEnumeration( const std::vector< Reference< XAnimationNode > > &rChildren ) : maChildren( rChildren ) { maIter = maChildren.begin(); @@ -1192,11 +1188,9 @@ Reference< XCloneable > SAL_CALL AnimationNode::createClone() Reference< XTimeContainer > xContainer( xNewNode, UNO_QUERY ); if( xContainer.is() ) { - ChildList_t::iterator aIter( maChildren.begin() ); - ChildList_t::iterator aEnd( maChildren.end() ); - while( aIter != aEnd ) + for (auto const& child : maChildren) { - Reference< XCloneable > xCloneable((*aIter++), UNO_QUERY ); + Reference< XCloneable > xCloneable(child, UNO_QUERY ); if( xCloneable.is() ) try { Reference< XAnimationNode > xNewChildNode( xCloneable->createClone(), UNO_QUERY ); @@ -1768,13 +1762,13 @@ Reference< XAnimationNode > SAL_CALL AnimationNode::insertBefore( const Referenc if( !newChild.is() || !refChild.is() ) throw IllegalArgumentException(); - ChildList_t::iterator before = std::find(maChildren.begin(), maChildren.end(), refChild); - if( before == maChildren.end() ) - throw NoSuchElementException(); - if( std::find(maChildren.begin(), maChildren.end(), newChild) != maChildren.end() ) throw ElementExistException(); + auto before = std::find(maChildren.begin(), maChildren.end(), refChild); + if( before == maChildren.end() ) + throw NoSuchElementException(); + maChildren.insert( before, newChild ); Reference< XInterface > xThis( static_cast< OWeakObject * >(this) ); @@ -1792,13 +1786,13 @@ Reference< XAnimationNode > SAL_CALL AnimationNode::insertAfter( const Reference if( !newChild.is() || !refChild.is() ) throw IllegalArgumentException(); - ChildList_t::iterator before = std::find(maChildren.begin(), maChildren.end(), refChild); - if( before == maChildren.end() ) - throw NoSuchElementException(); - if( std::find(maChildren.begin(), maChildren.end(), newChild) != maChildren.end() ) throw ElementExistException(); + auto before = std::find(maChildren.begin(), maChildren.end(), refChild); + if( before == maChildren.end() ) + throw NoSuchElementException(); + ++before; if( before != maChildren.end() ) maChildren.insert( before, newChild ); @@ -1820,13 +1814,13 @@ Reference< XAnimationNode > SAL_CALL AnimationNode::replaceChild( const Referenc if( !newChild.is() || !oldChild.is() ) throw IllegalArgumentException(); - ChildList_t::iterator replace = std::find(maChildren.begin(), maChildren.end(), oldChild); - if( replace == maChildren.end() ) - throw NoSuchElementException(); - if( std::find(maChildren.begin(), maChildren.end(), newChild) != maChildren.end() ) throw ElementExistException(); + auto replace = std::find(maChildren.begin(), maChildren.end(), oldChild); + if( replace == maChildren.end() ) + throw NoSuchElementException(); + Reference< XInterface > xNull( nullptr ); oldChild->setParent( xNull ); @@ -1847,7 +1841,7 @@ Reference< XAnimationNode > SAL_CALL AnimationNode::removeChild( const Reference if( !oldChild.is() ) throw IllegalArgumentException(); - ChildList_t::iterator old = std::find(maChildren.begin(), maChildren.end(), oldChild); + auto old = std::find(maChildren.begin(), maChildren.end(), oldChild); if( old == maChildren.end() ) throw NoSuchElementException(); |