diff options
author | Daniel Robertson <danlrobertson89@gmail.com> | 2015-10-08 14:48:15 -0400 |
---|---|---|
committer | Noel Grandin <noelgrandin@gmail.com> | 2015-10-09 07:09:22 +0000 |
commit | 6e8f1a3bd1c9110fe0a1b7978991800377e2908e (patch) | |
tree | 59b35d7005763f9afdc46cc3ab0c90de404b0183 /slideshow/source/engine/slide | |
parent | f0e3fe840b6f103c589f044bbde18b2faa345279 (diff) |
slideshow: replace for_each with range-based for
Replace ::std::for_each for a more readable range-based for loop in
cases in which the function object to be applied by for_each is more
readable as the body of a for loop.
Change-Id: I5798293cdd0d784cc4c95c67e3fc6a0b930db8bb
Reviewed-on: https://gerrit.libreoffice.org/19261
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
Diffstat (limited to 'slideshow/source/engine/slide')
-rw-r--r-- | slideshow/source/engine/slide/layer.cxx | 64 | ||||
-rw-r--r-- | slideshow/source/engine/slide/layermanager.cxx | 56 | ||||
-rw-r--r-- | slideshow/source/engine/slide/shapemanagerimpl.cxx | 12 | ||||
-rw-r--r-- | slideshow/source/engine/slide/slideimpl.cxx | 64 | ||||
-rw-r--r-- | slideshow/source/engine/slide/userpaintoverlay.cxx | 9 |
5 files changed, 65 insertions, 140 deletions
diff --git a/slideshow/source/engine/slide/layer.cxx b/slideshow/source/engine/slide/layer.cxx index 61544aff06bb..5f6ebfadc965 100644 --- a/slideshow/source/engine/slide/layer.cxx +++ b/slideshow/source/engine/slide/layer.cxx @@ -129,25 +129,16 @@ namespace slideshow { rShape->clearAllViewLayers(); - std::for_each( maViewEntries.begin(), - maViewEntries.end(), - boost::bind(&Shape::addViewLayer, - boost::cref(rShape), - boost::bind(&ViewEntry::getViewLayer, - _1), - false )); + for( const auto& rViewEntry : maViewEntries ) + rShape->addViewLayer( rViewEntry.getViewLayer(), false ); } void Layer::setPriority( const ::basegfx::B1DRange& rPrioRange ) { if( !mbBackgroundLayer ) { - std::for_each( maViewEntries.begin(), - maViewEntries.end(), - boost::bind( &ViewLayer::setPriority, - boost::bind( &ViewEntry::getViewLayer, - _1 ), - boost::cref(rPrioRange))); + for( const auto& rViewEntry : maViewEntries ) + rViewEntry.getViewLayer()->setPriority( rPrioRange ); } } @@ -208,13 +199,8 @@ namespace slideshow void Layer::clearContent() { // clear content on all view layers - std::for_each( maViewEntries.begin(), - maViewEntries.end(), - boost::bind( - &ViewLayer::clearAll, - boost::bind( - &ViewEntry::getViewLayer, - _1))); + for( const auto& rViewEntry : maViewEntries ) + rViewEntry.getViewLayer()->clearAll(); // layer content cleared, update areas are not sensible // anymore. @@ -250,24 +236,16 @@ namespace slideshow // resulting clip polygon will be empty. if( aClip.count() ) { - // set clip to all view layers - std::for_each( maViewEntries.begin(), - maViewEntries.end(), - boost::bind( - &ViewLayer::setClip, - boost::bind( - &ViewEntry::getViewLayer, - _1), - boost::cref(aClip))); - - // clear update area on all view layers - std::for_each( maViewEntries.begin(), - maViewEntries.end(), - boost::bind( - &ViewLayer::clear, - boost::bind( - &ViewEntry::getViewLayer, - _1))); + for( const auto& rViewEntry : maViewEntries ) + { + ViewLayerSharedPtr pViewLayer = rViewEntry.getViewLayer(); + + // set clip to all view layers and + pViewLayer->setClip( aClip ); + + // clear update area on all view layers + pViewLayer->clear(); + } mbClipSet = true; } @@ -283,14 +261,8 @@ namespace slideshow mbClipSet = false; basegfx::B2DPolyPolygon aEmptyClip; - std::for_each( maViewEntries.begin(), - maViewEntries.end(), - boost::bind( - &ViewLayer::setClip, - boost::bind( - &ViewEntry::getViewLayer, - _1), - boost::cref(aEmptyClip))); + for( const auto& rViewEntry : maViewEntries ) + rViewEntry.getViewLayer()->setClip( aEmptyClip ); } clearUpdateRanges(); diff --git a/slideshow/source/engine/slide/layermanager.cxx b/slideshow/source/engine/slide/layermanager.cxx index 3a2f07b9d5ac..aa555a84b4da 100644 --- a/slideshow/source/engine/slide/layermanager.cxx +++ b/slideshow/source/engine/slide/layermanager.cxx @@ -95,11 +95,8 @@ namespace slideshow maPageBounds )); // init views - std::for_each( mrViews.begin(), - mrViews.end(), - ::boost::bind(&LayerManager::viewAdded, - this, - _1) ); + for( const auto& rView : mrViews ) + this->viewAdded( rView ); } void LayerManager::activate( bool bSlideBackgoundPainted ) @@ -110,24 +107,19 @@ namespace slideshow if( !bSlideBackgoundPainted ) { - std::for_each(mrViews.begin(), - mrViews.end(), - boost::mem_fn(&View::clearAll)); + for( const auto& pView : mrViews ) + pView->clearAll(); // force update of whole slide area - std::for_each( maLayers.begin(), - maLayers.end(), - boost::bind( &Layer::addUpdateRange, - _1, - boost::cref(maPageBounds) )); + for( const auto& pLayer : maLayers ) + pLayer->addUpdateRange( maPageBounds ); } else { // clear all possibly pending update areas - content // is there, already - std::for_each( maLayers.begin(), - maLayers.end(), - boost::mem_fn( &Layer::clearUpdateRanges )); + for( const auto& pLayer : maLayers ) + pLayer->clearUpdateRanges(); } updateShapeLayers( bSlideBackgoundPainted ); @@ -189,11 +181,8 @@ namespace slideshow // in case we haven't reached all layers from the // maAllShapes, issue addView again for good measure - std::for_each( maLayers.begin(), - maLayers.end(), - boost::bind( &Layer::addView, - _1, - boost::cref(rView) )); + for( const auto& pLayer : maLayers ) + pLayer->addView( rView ); } void LayerManager::viewRemoved( const UnoViewSharedPtr& rView ) @@ -214,11 +203,8 @@ namespace slideshow // in case we haven't reached all layers from the // maAllShapes, issue removeView again for good measure - std::for_each( maLayers.begin(), - maLayers.end(), - boost::bind( &Layer::removeView, - _1, - boost::cref(rView) )); + for( const auto& pLayer : maLayers ) + pLayer->removeView( rView ); } void LayerManager::viewChanged( const UnoViewSharedPtr& rView ) @@ -240,17 +226,14 @@ namespace slideshow return; // clear view area - ::std::for_each( mrViews.begin(), - mrViews.end(), - ::boost::mem_fn(&View::clearAll) ); + for( const auto& pView : mrViews ) + pView->clearAll(); // TODO(F3): resize and repaint all layers // render all shapes - std::for_each( maAllShapes.begin(), - maAllShapes.end(), - []( const LayerShapeMap::value_type& cp ) - { cp.first->render(); } ); + for( const auto& rShape : maAllShapes ) + rShape.first->render(); } void LayerManager::addShape( const ShapeSharedPtr& rShape ) @@ -744,11 +727,8 @@ namespace slideshow // create ViewLayers for all registered views, and add to // newly created layer. - ::std::for_each( mrViews.begin(), - mrViews.end(), - boost::bind( &Layer::addView, - boost::cref(pLayer), - _1 )); + for( const auto& rView : mrViews ) + pLayer->addView( rView ); return pLayer; } diff --git a/slideshow/source/engine/slide/shapemanagerimpl.cxx b/slideshow/source/engine/slide/shapemanagerimpl.cxx index a74253f647d4..9867f09684b0 100644 --- a/slideshow/source/engine/slide/shapemanagerimpl.cxx +++ b/slideshow/source/engine/slide/shapemanagerimpl.cxx @@ -64,16 +64,12 @@ void ShapeManagerImpl::activate( bool bSlideBackgoundPainted ) // clone listener map uno::Reference<presentation::XShapeEventListener> xDummyListener; - std::for_each( mrGlobalListenersMap.begin(), - mrGlobalListenersMap.end(), - [&xDummyListener, this]( const ShapeEventListenerMap::value_type& cp ) - { this->listenerAdded(xDummyListener, cp.first); } ); + for( const auto& rListener : mrGlobalListenersMap ) + this->listenerAdded( xDummyListener, rListener.first ); // clone cursor map - std::for_each( mrGlobalCursorMap.begin(), - mrGlobalCursorMap.end(), - [this]( const ShapeCursorMap::value_type& cp ) - { this->cursorChanged(cp.first, cp.second); } ); + for( const auto& rListener : mrGlobalCursorMap ) + this->cursorChanged( rListener.first, rListener.second ); if( mpLayerManager ) mpLayerManager->activate( bSlideBackgoundPainted ); diff --git a/slideshow/source/engine/slide/slideimpl.cxx b/slideshow/source/engine/slide/slideimpl.cxx index 0d26285a5aec..4bb090b9e84a 100644 --- a/slideshow/source/engine/slide/slideimpl.cxx +++ b/slideshow/source/engine/slide/slideimpl.cxx @@ -64,7 +64,6 @@ #include <boost/bind.hpp> #include <iterator> -#include <algorithm> #include <functional> #include <iostream> @@ -284,42 +283,30 @@ private: -class SlideRenderer +void slideRenderer( SlideImpl* pSlide, const UnoViewSharedPtr& rView ) { -public: - explicit SlideRenderer( SlideImpl& rSlide ) : - mrSlide( rSlide ) - { - } - - void operator()( const UnoViewSharedPtr& rView ) - { - // fully clear view content to background color - rView->clearAll(); - - SlideBitmapSharedPtr pBitmap( mrSlide.getCurrentSlideBitmap( rView ) ); - ::cppcanvas::CanvasSharedPtr pCanvas( rView->getCanvas() ); + // fully clear view content to background color + rView->clearAll(); - const ::basegfx::B2DHomMatrix aViewTransform( rView->getTransformation() ); - const ::basegfx::B2DPoint aOutPosPixel( aViewTransform * ::basegfx::B2DPoint() ); + SlideBitmapSharedPtr pBitmap( pSlide->getCurrentSlideBitmap( rView ) ); + ::cppcanvas::CanvasSharedPtr pCanvas( rView->getCanvas() ); - // setup a canvas with device coordinate space, the slide - // bitmap already has the correct dimension. - ::cppcanvas::CanvasSharedPtr pDevicePixelCanvas( pCanvas->clone() ); - pDevicePixelCanvas->setTransformation( ::basegfx::B2DHomMatrix() ); + const ::basegfx::B2DHomMatrix aViewTransform( rView->getTransformation() ); + const ::basegfx::B2DPoint aOutPosPixel( aViewTransform * ::basegfx::B2DPoint() ); - // render at given output position - pBitmap->move( aOutPosPixel ); + // setup a canvas with device coordinate space, the slide + // bitmap already has the correct dimension. + ::cppcanvas::CanvasSharedPtr pDevicePixelCanvas( pCanvas->clone() ); + pDevicePixelCanvas->setTransformation( ::basegfx::B2DHomMatrix() ); - // clear clip (might have been changed, e.g. from comb - // transition) - pBitmap->clip( ::basegfx::B2DPolyPolygon() ); - pBitmap->draw( pDevicePixelCanvas ); - } + // render at given output position + pBitmap->move( aOutPosPixel ); -private: - SlideImpl& mrSlide; -}; + // clear clip (might have been changed, e.g. from comb + // transition) + pBitmap->clip( ::basegfx::B2DPolyPolygon() ); + pBitmap->draw( pDevicePixelCanvas ); +} @@ -388,11 +375,8 @@ SlideImpl::SlideImpl( const uno::Reference< drawing::XDrawPage >& xDra mbPaintOverlayActive( false ) { // clone already existing views for slide bitmaps - std::for_each( rViewContainer.begin(), - rViewContainer.end(), - boost::bind( &SlideImpl::viewAdded, - this, - _1 )); + for( const auto& rView : rViewContainer ) + this->viewAdded( rView ); // register screen update (LayerManager needs to signal pending // updates) @@ -462,13 +446,9 @@ bool SlideImpl::show( bool bSlideBackgoundPainted ) // render slide to screen, if requested if( !bSlideBackgoundPainted ) { - std::for_each(maContext.mrViewContainer.begin(), - maContext.mrViewContainer.end(), - boost::mem_fn(&View::clearAll)); + for( const auto& rContext : maContext.mrViewContainer ) + slideRenderer( this, rContext ); - std::for_each( maContext.mrViewContainer.begin(), - maContext.mrViewContainer.end(), - SlideRenderer(*this) ); maContext.mrScreenUpdater.notifyUpdate(); } diff --git a/slideshow/source/engine/slide/userpaintoverlay.cxx b/slideshow/source/engine/slide/userpaintoverlay.cxx index 33899122264c..960794fbf1fa 100644 --- a/slideshow/source/engine/slide/userpaintoverlay.cxx +++ b/slideshow/source/engine/slide/userpaintoverlay.cxx @@ -36,7 +36,6 @@ #include "screenupdater.hxx" #include "vieweventhandler.hxx" -#include <boost/bind.hpp> #include <boost/noncopyable.hpp> #include "slide.hxx" #include "cursormanager.hxx" @@ -76,11 +75,9 @@ namespace slideshow mnSize(100), mbActive( bActive ) { - std::for_each( rViews.begin(), - rViews.end(), - boost::bind( &PaintOverlayHandler::viewAdded, - this, - _1 )); + for( const auto& rView : rViews ) + this->viewAdded( rView ); + drawPolygons(); } |