slideshow: replace for_each with range-based loop
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: Ib0b488b36ed58c65c56357e04391b85096d043aa Reviewed-on: https://gerrit.libreoffice.org/17930 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
This commit is contained in:
committed by
Thorsten Behrens
parent
0a76c1fd68
commit
ead5bc3cfb
@@ -28,9 +28,6 @@
|
||||
|
||||
#include "layer.hxx"
|
||||
|
||||
#include <boost/bind.hpp>
|
||||
|
||||
|
||||
using namespace ::com::sun::star;
|
||||
|
||||
namespace slideshow
|
||||
@@ -68,10 +65,8 @@ namespace slideshow
|
||||
const ViewEntryVector::iterator aEnd( maViewEntries.end() );
|
||||
if( (aIter=std::find_if( maViewEntries.begin(),
|
||||
aEnd,
|
||||
boost::bind<bool>(
|
||||
std::equal_to< ViewSharedPtr >(),
|
||||
boost::bind( &ViewEntry::getView, _1 ),
|
||||
boost::cref( rNewView )))) != aEnd )
|
||||
[&rNewView]( const ViewEntry& rViewEntry )
|
||||
{ return rNewView == rViewEntry.getView(); } ) ) != aEnd )
|
||||
{
|
||||
// already added - just return existing layer
|
||||
return aIter->mpViewLayer;
|
||||
@@ -101,10 +96,8 @@ namespace slideshow
|
||||
const ViewEntryVector::iterator aEnd( maViewEntries.end() );
|
||||
if( (aIter=std::find_if( maViewEntries.begin(),
|
||||
aEnd,
|
||||
boost::bind<bool>(
|
||||
std::equal_to< ViewSharedPtr >(),
|
||||
boost::bind( &ViewEntry::getView, _1 ),
|
||||
boost::cref( rView )))) == aEnd )
|
||||
[&rView]( const ViewEntry& rViewEntry )
|
||||
{ return rView == rViewEntry.getView(); } ) ) == aEnd )
|
||||
{
|
||||
// View was not added/is already removed
|
||||
return ViewLayerSharedPtr();
|
||||
@@ -112,10 +105,8 @@ namespace slideshow
|
||||
|
||||
OSL_ENSURE( std::count_if( maViewEntries.begin(),
|
||||
aEnd,
|
||||
boost::bind<bool>(
|
||||
std::equal_to< ViewSharedPtr >(),
|
||||
boost::bind( &ViewEntry::getView, _1 ),
|
||||
boost::cref( rView ))) == 1,
|
||||
[&rView]( const ViewEntry& rViewEntry )
|
||||
{ return rView == rViewEntry.getView(); } ) == 1,
|
||||
"Layer::removeView(): view added multiple times" );
|
||||
|
||||
ViewLayerSharedPtr pRet( aIter->mpViewLayer );
|
||||
@@ -128,25 +119,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 );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -182,12 +164,12 @@ namespace slideshow
|
||||
return false;
|
||||
|
||||
maBounds = maNewBounds;
|
||||
|
||||
if( std::count_if( maViewEntries.begin(),
|
||||
maViewEntries.end(),
|
||||
boost::bind( &ViewLayer::resize,
|
||||
boost::bind( &ViewEntry::getViewLayer,
|
||||
_1 ),
|
||||
boost::cref(maBounds)) ) == 0 )
|
||||
[this](const ViewEntry& rViewEntry)
|
||||
{ return rViewEntry.getViewLayer()->resize( this->maBounds ); }
|
||||
) == 0 )
|
||||
{
|
||||
return false;
|
||||
}
|
||||
@@ -207,13 +189,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.
|
||||
@@ -249,24 +226,15 @@ 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)));
|
||||
for( const auto& rViewEntry : maViewEntries ) {
|
||||
ViewLayerSharedPtr pViewLayer = rViewEntry.getViewLayer();
|
||||
|
||||
// clear update area on all view layers
|
||||
std::for_each( maViewEntries.begin(),
|
||||
maViewEntries.end(),
|
||||
boost::bind(
|
||||
&ViewLayer::clear,
|
||||
boost::bind(
|
||||
&ViewEntry::getViewLayer,
|
||||
_1)));
|
||||
// set clip to all view layers
|
||||
pViewLayer->setClip( aClip );
|
||||
|
||||
// clear update area of view layer
|
||||
pViewLayer->clear();
|
||||
}
|
||||
|
||||
mbClipSet = true;
|
||||
}
|
||||
@@ -282,14 +250,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();
|
||||
|
@@ -53,11 +53,9 @@ namespace slideshow
|
||||
{
|
||||
LayerSharedPtr pCurrLayer;
|
||||
ViewLayerSharedPtr pCurrViewLayer;
|
||||
LayerShapeMap::const_iterator aIter( maAllShapes.begin() );
|
||||
const LayerShapeMap::const_iterator aEnd ( maAllShapes.end() );
|
||||
while( aIter != aEnd )
|
||||
for( const auto& rShape : maAllShapes )
|
||||
{
|
||||
LayerSharedPtr pLayer = aIter->second.lock();
|
||||
LayerSharedPtr pLayer = rShape.second.lock();
|
||||
if( pLayer && pLayer != pCurrLayer )
|
||||
{
|
||||
pCurrLayer = pLayer;
|
||||
@@ -65,9 +63,7 @@ namespace slideshow
|
||||
}
|
||||
|
||||
if( pCurrViewLayer )
|
||||
shapeFunc(aIter->first,pCurrViewLayer);
|
||||
|
||||
++aIter;
|
||||
shapeFunc( rShape.first, pCurrViewLayer );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -95,11 +91,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 +103,19 @@ namespace slideshow
|
||||
|
||||
if( !bSlideBackgoundPainted )
|
||||
{
|
||||
std::for_each(mrViews.begin(),
|
||||
mrViews.end(),
|
||||
boost::mem_fn(&View::clearAll));
|
||||
for( const auto& rView : mrViews )
|
||||
rView->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 +177,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 +199,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 +222,14 @@ namespace slideshow
|
||||
return;
|
||||
|
||||
// clear view area
|
||||
::std::for_each( mrViews.begin(),
|
||||
mrViews.end(),
|
||||
::boost::mem_fn(&View::clearAll) );
|
||||
for( const auto& rView : mrViews )
|
||||
rView->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 )
|
||||
@@ -487,16 +466,14 @@ namespace slideshow
|
||||
// send update() calls to every shape in the
|
||||
// maUpdateShapes set, which is _animated_ (i.e. a
|
||||
// sprite).
|
||||
const ShapeUpdateSet::const_iterator aEnd=maUpdateShapes.end();
|
||||
ShapeUpdateSet::const_iterator aCurrShape=maUpdateShapes.begin();
|
||||
while( aCurrShape != aEnd )
|
||||
for( const auto& pShape : maUpdateShapes )
|
||||
{
|
||||
if( (*aCurrShape)->isBackgroundDetached() )
|
||||
if( pShape->isBackgroundDetached() )
|
||||
{
|
||||
// can update shape directly, without
|
||||
// affecting layer content (shape is
|
||||
// currently displayed in a sprite)
|
||||
if( !(*aCurrShape)->update() )
|
||||
if( !pShape->update() )
|
||||
bRet = false; // delay error exit
|
||||
}
|
||||
else
|
||||
@@ -509,10 +486,8 @@ namespace slideshow
|
||||
// cannot update shape directly, it's not
|
||||
// animated and update() calls will prolly
|
||||
// overwrite other page content.
|
||||
addUpdateArea( *aCurrShape );
|
||||
addUpdateArea( pShape );
|
||||
}
|
||||
|
||||
++aCurrShape;
|
||||
}
|
||||
|
||||
maUpdateShapes.clear();
|
||||
@@ -545,11 +520,9 @@ namespace slideshow
|
||||
bool bIsCurrLayerUpdating(false);
|
||||
Layer::EndUpdater aEndUpdater;
|
||||
LayerSharedPtr pCurrLayer;
|
||||
LayerShapeMap::const_iterator aIter( maAllShapes.begin() );
|
||||
const LayerShapeMap::const_iterator aEnd ( maAllShapes.end() );
|
||||
while( aIter != aEnd )
|
||||
for( const auto& rShape : maAllShapes )
|
||||
{
|
||||
LayerSharedPtr pLayer = aIter->second.lock();
|
||||
LayerSharedPtr pLayer = rShape.second.lock();
|
||||
if( pLayer != pCurrLayer )
|
||||
{
|
||||
pCurrLayer = pLayer;
|
||||
@@ -560,14 +533,12 @@ namespace slideshow
|
||||
}
|
||||
|
||||
if( bIsCurrLayerUpdating &&
|
||||
!aIter->first->isBackgroundDetached() &&
|
||||
pCurrLayer->isInsideUpdateArea(aIter->first) )
|
||||
rShape.first->isBackgroundDetached() &&
|
||||
pCurrLayer->isInsideUpdateArea( rShape.first ) )
|
||||
{
|
||||
if( !aIter->first->render() )
|
||||
if( rShape.first->render() )
|
||||
bRet = false;
|
||||
}
|
||||
|
||||
++aIter;
|
||||
}
|
||||
|
||||
return bRet;
|
||||
@@ -656,9 +627,7 @@ namespace slideshow
|
||||
bool bRet( true );
|
||||
ViewLayerSharedPtr pTmpLayer( new DummyLayer( rTargetCanvas ) );
|
||||
|
||||
LayerShapeMap::const_iterator aIter( maAllShapes.begin() );
|
||||
const LayerShapeMap::const_iterator aEnd ( maAllShapes.end() );
|
||||
while( aIter != aEnd )
|
||||
for( const auto& rShape : maAllShapes )
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -667,11 +636,11 @@ namespace slideshow
|
||||
// ViewLayer. Since we add the shapes in the
|
||||
// maShapeSet order (which is also the render order),
|
||||
// this is equivalent to a subsequent render() call)
|
||||
aIter->first->addViewLayer( pTmpLayer,
|
||||
rShape.first->addViewLayer( pTmpLayer,
|
||||
true );
|
||||
|
||||
// and remove again, this is only temporary
|
||||
aIter->first->removeViewLayer( pTmpLayer );
|
||||
rShape.first->removeViewLayer( pTmpLayer );
|
||||
}
|
||||
catch( uno::Exception& )
|
||||
{
|
||||
@@ -684,8 +653,6 @@ namespace slideshow
|
||||
// at least one shape could not be rendered
|
||||
bRet = false;
|
||||
}
|
||||
|
||||
++aIter;
|
||||
}
|
||||
|
||||
return bRet;
|
||||
@@ -744,11 +711,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;
|
||||
}
|
||||
|
@@ -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 );
|
||||
|
@@ -61,8 +61,6 @@
|
||||
#include "targetpropertiescreator.hxx"
|
||||
#include "tools.hxx"
|
||||
|
||||
|
||||
#include <boost/bind.hpp>
|
||||
#include <iterator>
|
||||
#include <algorithm>
|
||||
#include <functional>
|
||||
@@ -282,49 +280,6 @@ private:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
class SlideRenderer
|
||||
{
|
||||
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() );
|
||||
|
||||
const ::basegfx::B2DHomMatrix aViewTransform( rView->getTransformation() );
|
||||
const ::basegfx::B2DPoint aOutPosPixel( aViewTransform * ::basegfx::B2DPoint() );
|
||||
|
||||
// setup a canvas with device coordinate space, the slide
|
||||
// bitmap already has the correct dimension.
|
||||
::cppcanvas::CanvasSharedPtr pDevicePixelCanvas( pCanvas->clone() );
|
||||
pDevicePixelCanvas->setTransformation( ::basegfx::B2DHomMatrix() );
|
||||
|
||||
// render at given output position
|
||||
pBitmap->move( aOutPosPixel );
|
||||
|
||||
// clear clip (might have been changed, e.g. from comb
|
||||
// transition)
|
||||
pBitmap->clip( ::basegfx::B2DPolyPolygon() );
|
||||
pBitmap->draw( pDevicePixelCanvas );
|
||||
}
|
||||
|
||||
private:
|
||||
SlideImpl& mrSlide;
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
SlideImpl::SlideImpl( const uno::Reference< drawing::XDrawPage >& xDrawPage,
|
||||
const uno::Reference<drawing::XDrawPagesSupplier>& xDrawPages,
|
||||
const uno::Reference< animations::XAnimationNode >& xRootNode,
|
||||
@@ -388,11 +343,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 +414,30 @@ 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& rView : maContext.mrViewContainer ) {
|
||||
// fully clear view content to background color
|
||||
rView->clearAll();
|
||||
|
||||
SlideBitmapSharedPtr pBitmap( this->getCurrentSlideBitmap( rView ) );
|
||||
::cppcanvas::CanvasSharedPtr pCanvas( rView->getCanvas() );
|
||||
|
||||
const ::basegfx::B2DHomMatrix aViewTransform( rView->getTransformation() );
|
||||
const ::basegfx::B2DPoint aOutPosPixel( aViewTransform * ::basegfx::B2DPoint() );
|
||||
|
||||
// setup a canvas with device coordinate space, the slide
|
||||
// bitmap already has the correct dimension.
|
||||
::cppcanvas::CanvasSharedPtr pDevicePixelCanvas( pCanvas->clone() );
|
||||
pDevicePixelCanvas->setTransformation( ::basegfx::B2DHomMatrix() );
|
||||
|
||||
// render at given output position
|
||||
pBitmap->move( aOutPosPixel );
|
||||
|
||||
// clear clip (might have been changed, e.g. from comb
|
||||
// transition)
|
||||
pBitmap->clip( ::basegfx::B2DPolyPolygon() );
|
||||
pBitmap->draw( pDevicePixelCanvas );
|
||||
}
|
||||
|
||||
std::for_each( maContext.mrViewContainer.begin(),
|
||||
maContext.mrViewContainer.end(),
|
||||
SlideRenderer(*this) );
|
||||
maContext.mrScreenUpdater.notifyUpdate();
|
||||
}
|
||||
|
||||
|
@@ -332,27 +332,23 @@ namespace internal
|
||||
uno::Sequence< animations::TargetProperties > aRes( aShapeHash.size() );
|
||||
|
||||
::std::size_t nCurrIndex(0);
|
||||
XShapeHash::const_iterator aCurr( aShapeHash.begin() );
|
||||
const XShapeHash::const_iterator aEnd ( aShapeHash.end() );
|
||||
while( aCurr != aEnd )
|
||||
for( const auto& rShapeHash : aShapeHash )
|
||||
{
|
||||
animations::TargetProperties& rCurrProps( aRes[ nCurrIndex++ ] );
|
||||
|
||||
if( aCurr->first.mnParagraphIndex == -1 )
|
||||
if( rShapeHash.first.mnParagraphIndex == -1 )
|
||||
{
|
||||
rCurrProps.Target = uno::makeAny( aCurr->first.mxRef );
|
||||
rCurrProps.Target = uno::makeAny( rShapeHash.first.mxRef );
|
||||
}
|
||||
else
|
||||
{
|
||||
rCurrProps.Target = uno::makeAny(
|
||||
presentation::ParagraphTarget(
|
||||
aCurr->first.mxRef,
|
||||
aCurr->first.mnParagraphIndex ) );
|
||||
rShapeHash.first.mxRef,
|
||||
rShapeHash.first.mnParagraphIndex ) );
|
||||
}
|
||||
|
||||
rCurrProps.Properties = ::comphelper::containerToSequence( aCurr->second );
|
||||
|
||||
++aCurr;
|
||||
rCurrProps.Properties = ::comphelper::containerToSequence( rShapeHash.second );
|
||||
}
|
||||
|
||||
return aRes;
|
||||
|
@@ -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();
|
||||
}
|
||||
|
||||
|
@@ -886,18 +886,17 @@ ActivitySharedPtr SlideShowImpl::createSlideTransition(
|
||||
PolygonMap::iterator SlideShowImpl::findPolygons( uno::Reference<drawing::XDrawPage> const& xDrawPage)
|
||||
{
|
||||
// TODO(P2) : Optimze research in the map.
|
||||
bool bFound = false;
|
||||
PolygonMap::iterator aIter=maPolygons.begin();
|
||||
|
||||
while(aIter!=maPolygons.end() && !bFound)
|
||||
PolygonMap::iterator aEnd = maPolygons.end();
|
||||
for( auto aIter = maPolygons.begin();
|
||||
aIter != aEnd;
|
||||
++aIter )
|
||||
{
|
||||
if(aIter->first == xDrawPage)
|
||||
bFound = true;
|
||||
else
|
||||
++aIter;
|
||||
return aIter;
|
||||
}
|
||||
|
||||
return aIter;
|
||||
// if no element is found return the element
|
||||
// one past the last valid element in the map
|
||||
return aEnd;
|
||||
}
|
||||
|
||||
SlideSharedPtr SlideShowImpl::makeSlide(
|
||||
@@ -1131,10 +1130,8 @@ void SlideShowImpl::displaySlide(
|
||||
// push new transformation to all views, if size changed
|
||||
if( !mpPreviousSlide || oldSlideSize != slideSize )
|
||||
{
|
||||
std::for_each( maViewContainer.begin(),
|
||||
maViewContainer.end(),
|
||||
boost::bind( &View::setViewSize, _1,
|
||||
boost::cref(slideSize) ));
|
||||
for( const auto& rView : maViewContainer )
|
||||
rView->setViewSize( slideSize );
|
||||
|
||||
// explicitly notify view change here,
|
||||
// because transformation might have changed:
|
||||
@@ -1447,18 +1444,16 @@ void SlideShowImpl::registerUserPaintPolygons( const uno::Reference< lang::XMult
|
||||
aPropLayer <<= false;
|
||||
xLayerPropSet->setPropertyValue("IsLocked", aPropLayer);
|
||||
|
||||
PolygonMap::iterator aIter=maPolygons.begin();
|
||||
|
||||
PolyPolygonVector aPolygons;
|
||||
::cppcanvas::PolyPolygonSharedPtr pPolyPoly;
|
||||
::basegfx::B2DPolyPolygon b2DPolyPoly;
|
||||
|
||||
//Register polygons for each slide
|
||||
while(aIter!=maPolygons.end())
|
||||
for( const auto& rPoly : maPolygons )
|
||||
{
|
||||
aPolygons = aIter->second;
|
||||
aPolygons = rPoly.second;
|
||||
//Get shapes for the slide
|
||||
::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapes > Shapes(aIter->first, ::com::sun::star::uno::UNO_QUERY);
|
||||
::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapes > Shapes(rPoly.first, ::com::sun::star::uno::UNO_QUERY);
|
||||
//Retrieve polygons for one slide
|
||||
for( PolyPolygonVector::iterator aIterPoly=aPolygons.begin(),
|
||||
aEnd=aPolygons.end();
|
||||
@@ -1534,7 +1529,6 @@ void SlideShowImpl::registerUserPaintPolygons( const uno::Reference< lang::XMult
|
||||
}
|
||||
}
|
||||
}
|
||||
++aIter;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1961,11 +1955,8 @@ bool SlideShowImpl::requestCursor( sal_Int16 nCursorShape )
|
||||
const sal_Int16 nActualCursor = calcActiveCursor(mnCurrentCursor);
|
||||
|
||||
// change all views to the requested cursor ID
|
||||
std::for_each( maViewContainer.begin(),
|
||||
maViewContainer.end(),
|
||||
boost::bind( &View::setCursorShape,
|
||||
_1,
|
||||
nActualCursor ));
|
||||
for( const auto& rView : maViewContainer )
|
||||
rView->setCursorShape( nActualCursor );
|
||||
|
||||
return nActualCursor==nCursorShape;
|
||||
}
|
||||
@@ -1974,12 +1965,11 @@ void SlideShowImpl::resetCursor()
|
||||
{
|
||||
mnCurrentCursor = awt::SystemPointer::ARROW;
|
||||
|
||||
const sal_Int16 nActualCursor = calcActiveCursor( mnCurrentCursor );
|
||||
|
||||
// change all views to the default cursor ID
|
||||
std::for_each( maViewContainer.begin(),
|
||||
maViewContainer.end(),
|
||||
boost::bind( &View::setCursorShape,
|
||||
_1,
|
||||
calcActiveCursor(mnCurrentCursor) ));
|
||||
for( const auto& rView : maViewContainer )
|
||||
rView->setCursorShape( nActualCursor );
|
||||
}
|
||||
|
||||
sal_Bool SlideShowImpl::update( double & nNextTimeout )
|
||||
@@ -2121,13 +2111,11 @@ sal_Bool SlideShowImpl::update( double & nNextTimeout )
|
||||
(!bRet ||
|
||||
nNextTimeout > 1.0) )
|
||||
{
|
||||
UnoViewVector::const_iterator aCurr(maViewContainer.begin());
|
||||
const UnoViewVector::const_iterator aEnd(maViewContainer.end());
|
||||
while( aCurr != aEnd )
|
||||
for( const auto& pView : maViewContainer )
|
||||
{
|
||||
try
|
||||
{
|
||||
uno::Reference< presentation::XSlideShowView > xView( (*aCurr)->getUnoView(),
|
||||
uno::Reference< presentation::XSlideShowView > xView( pView->getUnoView(),
|
||||
uno::UNO_QUERY_THROW );
|
||||
uno::Reference< util::XUpdatable > xUpdatable( xView->getCanvas(),
|
||||
uno::UNO_QUERY_THROW );
|
||||
@@ -2143,8 +2131,6 @@ sal_Bool SlideShowImpl::update( double & nNextTimeout )
|
||||
comphelper::anyToString( cppu::getCaughtException() ),
|
||||
RTL_TEXTENCODING_UTF8 ).getStr() );
|
||||
}
|
||||
|
||||
++aCurr;
|
||||
}
|
||||
|
||||
mbSlideShowIdle = true;
|
||||
|
@@ -283,23 +283,19 @@ class LayerSpriteContainer
|
||||
SpriteVector aValidSprites;
|
||||
|
||||
// check all sprites for validity and set new priority
|
||||
SpriteVector::iterator aCurrSprite( maSprites.begin() );
|
||||
const SpriteVector::iterator aEnd( maSprites.end() );
|
||||
while( aCurrSprite != aEnd )
|
||||
for( const auto& rSprite : maSprites )
|
||||
{
|
||||
cppcanvas::CustomSpriteSharedPtr pCurrSprite( aCurrSprite->mpSprite.lock() );
|
||||
cppcanvas::CustomSpriteSharedPtr pCurrSprite( rSprite.mpSprite.lock() );
|
||||
|
||||
if( pCurrSprite )
|
||||
{
|
||||
// only copy still valid sprites over to the refreshed
|
||||
// sprite vector.
|
||||
aValidSprites.push_back( *aCurrSprite );
|
||||
aValidSprites.push_back( rSprite );
|
||||
|
||||
pCurrSprite->setPriority(
|
||||
getSpritePriority( aValidSprites.size()-1 ));
|
||||
}
|
||||
|
||||
++aCurrSprite;
|
||||
}
|
||||
|
||||
// replace sprite list with pruned one
|
||||
@@ -1147,11 +1143,9 @@ void SlideView::pruneLayers( bool bWithViewLayerUpdate ) const
|
||||
getTransformation() );
|
||||
|
||||
// check all layers for validity, and retain only the live ones
|
||||
ViewLayerVector::const_iterator aCurr( maViewLayers.begin() );
|
||||
const ViewLayerVector::const_iterator aEnd( maViewLayers.end() );
|
||||
while( aCurr != aEnd )
|
||||
for( const auto& rViewLayer : maViewLayers )
|
||||
{
|
||||
boost::shared_ptr< SlideViewLayer > pCurrLayer( aCurr->lock() );
|
||||
boost::shared_ptr< SlideViewLayer > pCurrLayer( rViewLayer.lock() );
|
||||
|
||||
if( pCurrLayer )
|
||||
{
|
||||
@@ -1161,8 +1155,6 @@ void SlideView::pruneLayers( bool bWithViewLayerUpdate ) const
|
||||
pCurrLayer->updateView( rCurrTransform,
|
||||
maUserSize );
|
||||
}
|
||||
|
||||
++aCurr;
|
||||
}
|
||||
|
||||
// replace layer list with pruned one
|
||||
|
@@ -29,7 +29,6 @@
|
||||
#include "slidechangebase.hxx"
|
||||
#include "tools.hxx"
|
||||
|
||||
#include <boost/bind.hpp>
|
||||
#include <algorithm>
|
||||
|
||||
using namespace com::sun::star;
|
||||
@@ -180,11 +179,8 @@ void SlideChangeBase::prefetch( const AnimatableShapeSharedPtr&,
|
||||
mrEventMultiplexer.addViewHandler( shared_from_this() );
|
||||
|
||||
// init views and create slide bitmaps
|
||||
std::for_each( mrViewContainer.begin(),
|
||||
mrViewContainer.end(),
|
||||
boost::bind( &SlideChangeBase::viewAdded,
|
||||
this,
|
||||
_1 ));
|
||||
for( const auto& rView : mrViewContainer )
|
||||
this->viewAdded( rView );
|
||||
|
||||
mbPrefetched = true;
|
||||
}
|
||||
@@ -415,11 +411,9 @@ void SlideChangeBase::viewRemoved( const UnoViewSharedPtr& rView )
|
||||
std::remove_if(
|
||||
maViewData.begin(),
|
||||
maViewData.end(),
|
||||
boost::bind(
|
||||
std::equal_to<UnoViewSharedPtr>(),
|
||||
rView,
|
||||
// select view:
|
||||
boost::bind( &ViewEntry::getView, _1 ))),
|
||||
[&rView]( const ViewEntry& rViewEntry )
|
||||
// select and compare view
|
||||
{ return rView == rViewEntry.getView(); } ),
|
||||
maViewData.end() );
|
||||
}
|
||||
|
||||
@@ -434,11 +428,8 @@ void SlideChangeBase::viewChanged( const UnoViewSharedPtr& rView )
|
||||
std::find_if(
|
||||
maViewData.begin(),
|
||||
maViewData.end(),
|
||||
boost::bind(
|
||||
std::equal_to<UnoViewSharedPtr>(),
|
||||
rView,
|
||||
// select view:
|
||||
boost::bind( &ViewEntry::getView, _1 ) )));
|
||||
[&rView]( const ViewEntry& rViewEntry )
|
||||
{ return rView == rViewEntry.getView(); } ) );
|
||||
|
||||
OSL_ASSERT( aModifiedEntry != maViewData.end() );
|
||||
if( aModifiedEntry == maViewData.end() )
|
||||
|
@@ -45,9 +45,6 @@
|
||||
#include "combtransition.hxx"
|
||||
#include "tools.hxx"
|
||||
|
||||
#include <boost/bind.hpp>
|
||||
|
||||
|
||||
/***************************************************
|
||||
*** ***
|
||||
*** Slide Transition Effects ***
|
||||
@@ -189,10 +186,8 @@ public:
|
||||
|
||||
virtual bool operator()( double t ) SAL_OVERRIDE
|
||||
{
|
||||
std::for_each(maTransitions.begin(),
|
||||
maTransitions.end(),
|
||||
boost::bind( &TransitionViewPair::update,
|
||||
_1, t) );
|
||||
for( const auto& pTransition : maTransitions )
|
||||
pTransition->update( t );
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@@ -22,8 +22,6 @@
|
||||
|
||||
#include <osl/diagnose.h>
|
||||
|
||||
#include <boost/bind.hpp>
|
||||
|
||||
#include <algorithm>
|
||||
|
||||
|
||||
@@ -45,14 +43,11 @@ namespace slideshow
|
||||
// check whether same view is already added
|
||||
|
||||
// already added?
|
||||
const uno::Reference< presentation::XSlideShowView > rShowView = rView->getUnoView();
|
||||
if( ::std::any_of( maViews.begin(),
|
||||
maViews.end(),
|
||||
::boost::bind(
|
||||
::std::equal_to< uno::Reference< presentation::XSlideShowView > >(),
|
||||
rView->getUnoView(),
|
||||
::boost::bind(
|
||||
&UnoView::getUnoView,
|
||||
_1 ) ) ) )
|
||||
[&rShowView]( const UnoViewSharedPtr& pUnoView )
|
||||
{ return rShowView == pUnoView->getUnoView(); } ) )
|
||||
{
|
||||
// yes, nothing to do
|
||||
return false;
|
||||
@@ -73,12 +68,8 @@ namespace slideshow
|
||||
// added in the first place?
|
||||
if( (aIter=::std::find_if( maViews.begin(),
|
||||
aEnd,
|
||||
::boost::bind(
|
||||
::std::equal_to< uno::Reference< presentation::XSlideShowView > >(),
|
||||
::boost::cref( xView ),
|
||||
::boost::bind(
|
||||
&UnoView::getUnoView,
|
||||
_1 ) ) ) ) == aEnd )
|
||||
[&xView]( const UnoViewSharedPtr& pUnoView )
|
||||
{ return xView == pUnoView->getUnoView(); } ) ) == aEnd )
|
||||
{
|
||||
// nope, nothing to do
|
||||
return UnoViewSharedPtr();
|
||||
@@ -88,12 +79,8 @@ namespace slideshow
|
||||
::std::count_if(
|
||||
maViews.begin(),
|
||||
aEnd,
|
||||
::boost::bind(
|
||||
::std::equal_to< uno::Reference< presentation::XSlideShowView > >(),
|
||||
::boost::cref( xView ),
|
||||
::boost::bind(
|
||||
&UnoView::getUnoView,
|
||||
_1 ))) == 1,
|
||||
[&xView]( const UnoViewSharedPtr& pUnoView )
|
||||
{ return xView == pUnoView->getUnoView(); } ) == 1,
|
||||
"UnoViewContainer::removeView(): View was added multiple times" );
|
||||
|
||||
UnoViewSharedPtr pView( *aIter );
|
||||
@@ -106,9 +93,8 @@ namespace slideshow
|
||||
|
||||
void UnoViewContainer::dispose()
|
||||
{
|
||||
::std::for_each( maViews.begin(),
|
||||
maViews.end(),
|
||||
::boost::mem_fn(&UnoView::_dispose) );
|
||||
for( const auto& rView : maViews )
|
||||
rView->_dispose();
|
||||
maViews.clear();
|
||||
}
|
||||
}
|
||||
|
@@ -143,9 +143,8 @@ public:
|
||||
bRet = !rVec.empty();
|
||||
|
||||
// registered node found -> fire all events in the vector
|
||||
std::for_each( rVec.begin(), rVec.end(),
|
||||
boost::bind( &EventQueue::addEvent,
|
||||
boost::ref( mrEventQueue ), _1 ) );
|
||||
for( const auto& pEvent : rVec )
|
||||
mrEventQueue.addEvent( pEvent );
|
||||
|
||||
rVec.clear();
|
||||
}
|
||||
|
@@ -67,10 +67,8 @@ WaitSymbol::WaitSymbol( uno::Reference<rendering::XBitmap> const & xBitmap,
|
||||
mrScreenUpdater( rScreenUpdater ),
|
||||
mbVisible(false)
|
||||
{
|
||||
std::for_each( rViewContainer.begin(),
|
||||
rViewContainer.end(),
|
||||
[this]( const UnoViewSharedPtr& sp )
|
||||
{ this->viewAdded(sp); } );
|
||||
for( const auto& pView : rViewContainer )
|
||||
this->viewAdded( pView );
|
||||
}
|
||||
|
||||
void WaitSymbol::setVisible( const bool bVisible )
|
||||
|
Reference in New Issue
Block a user