diff options
author | Thorsten Behrens <tbehrens@suse.com> | 2011-11-03 09:48:52 +0100 |
---|---|---|
committer | Thorsten Behrens <tbehrens@suse.com> | 2011-11-03 09:52:50 +0100 |
commit | 7c22d03fb6394ae4b9a82061cb160c1bcd7df8da (patch) | |
tree | b7f6a57a7570a375ed3efc367b8ae2fd755bd630 /canvas | |
parent | 223aa43ad4e7f5529c003d12138a3c50ddb918c8 (diff) |
Better fix for removed RangeExpander
The sole reason for that late class was the overloaded
Range::expand() method - but it's actually quite easy to
disambiguate that for boost::bind.
Diffstat (limited to 'canvas')
-rw-r--r-- | canvas/source/tools/spriteredrawmanager.cxx | 22 |
1 files changed, 3 insertions, 19 deletions
diff --git a/canvas/source/tools/spriteredrawmanager.cxx b/canvas/source/tools/spriteredrawmanager.cxx index 730361c78e62..8f6f306946f8 100644 --- a/canvas/source/tools/spriteredrawmanager.cxx +++ b/canvas/source/tools/spriteredrawmanager.cxx @@ -222,24 +222,6 @@ namespace canvas SpriteRedrawManager::SpriteConnectedRanges& mrUpdater; const SpriteRedrawManager::VectorOfChangeRecords& mrChangeContainer; }; - - class RangeExpander - { - private: - basegfx::B2DRange& mrBounds; - - public: - typedef void result_type; - - RangeExpander( basegfx::B2DRange& rBounds ) : mrBounds( rBounds ) - { - } - - void operator()( const basegfx::B2DRange& rBounds ) - { - mrBounds.expand( rBounds ); - } - }; } void SpriteRedrawManager::setupUpdateAreas( SpriteConnectedRanges& rUpdateAreas ) const @@ -441,7 +423,9 @@ namespace canvas ::basegfx::B2DRange aTrueArea( aBegin->second.getUpdateArea() ); ::std::for_each( aBegin, aEnd, - ::boost::bind( RangeExpander(aTrueArea), + ::boost::bind( (void (basegfx::B2DRange::*)(const basegfx::B2DRange&))( + &basegfx::B2DRange::expand), + aTrueArea, ::boost::bind( &SpriteInfo::getUpdateArea, ::boost::bind( ::o3tl::select2nd<AreaComponent>(), _1 ) ) ) ); |