summaryrefslogtreecommitdiff
path: root/slideshow/source/engine/slide/layer.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'slideshow/source/engine/slide/layer.cxx')
-rw-r--r--slideshow/source/engine/slide/layer.cxx11
1 files changed, 6 insertions, 5 deletions
diff --git a/slideshow/source/engine/slide/layer.cxx b/slideshow/source/engine/slide/layer.cxx
index 080594a3350f..be67b220962e 100644
--- a/slideshow/source/engine/slide/layer.cxx
+++ b/slideshow/source/engine/slide/layer.cxx
@@ -33,7 +33,7 @@
#include <basegfx/range/b2drange.hxx>
#include <basegfx/range/b1drange.hxx>
-#include <basegfx/range/b2dmultirange.hxx>
+#include <basegfx/range/b2dpolyrange.hxx>
#include <basegfx/matrix/b2dhommatrix.hxx>
#include <basegfx/polygon/b2dpolypolygon.hxx>
@@ -199,7 +199,8 @@ namespace slideshow
{
// TODO(Q1): move this to B2DMultiRange
if( !rUpdateRange.isEmpty() )
- maUpdateAreas.addRange( rUpdateRange );
+ maUpdateAreas.appendElement( rUpdateRange,
+ basegfx::ORIENTATION_POSITIVE );
}
void Layer::updateBounds( ShapeSharedPtr const& rShape )
@@ -245,7 +246,7 @@ namespace slideshow
void Layer::clearUpdateRanges()
{
- maUpdateAreas.reset();
+ maUpdateAreas.clear();
}
void Layer::clearContent()
@@ -281,12 +282,12 @@ namespace slideshow
Layer::EndUpdater Layer::beginUpdate()
{
- if( !maUpdateAreas.isEmpty() )
+ if( maUpdateAreas.count() )
{
// perform proper layer update. That means, setup proper
// clipping, and render each shape that intersects with
// the calculated update area
- ::basegfx::B2DPolyPolygon aClip( maUpdateAreas.getPolyPolygon() );
+ ::basegfx::B2DPolyPolygon aClip( maUpdateAreas.solveCrossovers() );
// actually, if there happen to be shapes with zero
// update area in the maUpdateAreas vector, the