From e11bdb3f32b140167107176296b48ee069e4734a Mon Sep 17 00:00:00 2001 From: Markus Mohrhard Date: Mon, 8 Jul 2013 21:59:27 +0200 Subject: use a functor and standard algorithms Change-Id: I0cb7b603b4495d78e217153fb0339a5ba2b71157 --- sc/source/filter/oox/stylesbuffer.cxx | 32 +++++++++++++++++++++++++------- 1 file changed, 25 insertions(+), 7 deletions(-) diff --git a/sc/source/filter/oox/stylesbuffer.cxx b/sc/source/filter/oox/stylesbuffer.cxx index 854cdb3c01cc..9c025403f413 100644 --- a/sc/source/filter/oox/stylesbuffer.cxx +++ b/sc/source/filter/oox/stylesbuffer.cxx @@ -77,6 +77,8 @@ #include "globstr.hrc" #include "xlconst.hxx" +#include + using ::com::sun::star::table::BorderLine2; namespace oox { namespace xls { @@ -3435,19 +3437,35 @@ void StylesBuffer::writeStyleXfToPropertySet( PropertySet& rPropSet, sal_Int32 n pXf->writeToPropertySet( rPropSet ); } -TableStyleRef StylesBuffer::getTableStyle( OUString& rTableStyleName ) +namespace { + +struct FindTableStyleByName { - for( ::std::vector< TableStyleRef >::iterator i = maTableStyles.begin(); i < maTableStyles.end(); ++i) + FindTableStyleByName( const OUString& rName ): + mrName(rName) {} + + bool operator()(const TableStyleRef& pStyle) { - if( ((*i)->getTableStyleName() ).equals(rTableStyleName) ) - { - return(*i); - } + return mrName == pStyle->getTableStyleName(); } + +private: + const OUString& mrName; +}; + +} + +TableStyleRef StylesBuffer::getTableStyle( OUString& rTableStyleName ) +{ + std::vector< TableStyleRef >::const_iterator itr = std::find_if( + maTableStyles.begin(), maTableStyles.end(), FindTableStyleByName(rTableStyleName)); + + if(itr != maTableStyles.end()) + return *itr; + return 0; } -// ============================================================================ } // namespace xls } // namespace oox -- cgit