[Libreoffice-commits] core.git: drawinglayer/inc drawinglayer/source include/drawinglayer include/svx svx/inc svx/source sw/source

Tomaž Vajngerl (via logerrit) logerrit at kemper.freedesktop.org
Mon Jun 21 00:23:14 UTC 2021


 drawinglayer/inc/primitive2d/texteffectprimitive2d.hxx                |    2 
 drawinglayer/inc/primitive2d/textlineprimitive2d.hxx                  |    2 
 drawinglayer/inc/primitive2d/textstrikeoutprimitive2d.hxx             |    2 
 drawinglayer/source/primitive2d/baseprimitive2d.cxx                   |    2 
 include/drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx |  106 ++++++++++
 include/drawinglayer/primitive2d/PolyPolygonColorPrimitive2D.hxx      |    3 
 include/drawinglayer/primitive2d/PolyPolygonGradientPrimitive2D.hxx   |    3 
 include/drawinglayer/primitive2d/PolyPolygonGraphicPrimitive2D.hxx    |    3 
 include/drawinglayer/primitive2d/PolyPolygonHairlinePrimitive2D.hxx   |    2 
 include/drawinglayer/primitive2d/PolyPolygonHatchPrimitive2D.hxx      |    3 
 include/drawinglayer/primitive2d/PolyPolygonMarkerPrimitive2D.hxx     |    2 
 include/drawinglayer/primitive2d/PolyPolygonSelectionPrimitive2D.hxx  |    3 
 include/drawinglayer/primitive2d/PolyPolygonStrokePrimitive2D.hxx     |    2 
 include/drawinglayer/primitive2d/backgroundcolorprimitive2d.hxx       |    2 
 include/drawinglayer/primitive2d/baseprimitive2d.hxx                  |   74 ------
 include/drawinglayer/primitive2d/bitmapprimitive2d.hxx                |    1 
 include/drawinglayer/primitive2d/borderlineprimitive2d.hxx            |    2 
 include/drawinglayer/primitive2d/controlprimitive2d.hxx               |    2 
 include/drawinglayer/primitive2d/embedded3dprimitive2d.hxx            |    2 
 include/drawinglayer/primitive2d/epsprimitive2d.hxx                   |    2 
 include/drawinglayer/primitive2d/fillgradientprimitive2d.hxx          |    2 
 include/drawinglayer/primitive2d/fillgraphicprimitive2d.hxx           |    2 
 include/drawinglayer/primitive2d/graphicprimitive2d.hxx               |    2 
 include/drawinglayer/primitive2d/gridprimitive2d.hxx                  |    2 
 include/drawinglayer/primitive2d/groupprimitive2d.hxx                 |    2 
 include/drawinglayer/primitive2d/helplineprimitive2d.hxx              |    2 
 include/drawinglayer/primitive2d/markerarrayprimitive2d.hxx           |    2 
 include/drawinglayer/primitive2d/mediaprimitive2d.hxx                 |    2 
 include/drawinglayer/primitive2d/metafileprimitive2d.hxx              |    2 
 include/drawinglayer/primitive2d/pagepreviewprimitive2d.hxx           |    2 
 include/drawinglayer/primitive2d/patternfillprimitive2d.hxx           |    2 
 include/drawinglayer/primitive2d/polygonprimitive2d.hxx               |    2 
 include/drawinglayer/primitive2d/primitivetools2d.hxx                 |    2 
 include/drawinglayer/primitive2d/sceneprimitive2d.hxx                 |    2 
 include/drawinglayer/primitive2d/svggradientprimitive2d.hxx           |    2 
 include/drawinglayer/primitive2d/textprimitive2d.hxx                  |    2 
 include/drawinglayer/primitive2d/wrongspellprimitive2d.hxx            |    2 
 include/svx/sdr/primitive2d/sdrframeborderprimitive2d.hxx             |    2 
 svx/inc/sdr/primitive2d/sdrcaptionprimitive2d.hxx                     |    2 
 svx/inc/sdr/primitive2d/sdrconnectorprimitive2d.hxx                   |    2 
 svx/inc/sdr/primitive2d/sdrcustomshapeprimitive2d.hxx                 |    2 
 svx/inc/sdr/primitive2d/sdrellipseprimitive2d.hxx                     |    2 
 svx/inc/sdr/primitive2d/sdrgrafprimitive2d.hxx                        |    2 
 svx/inc/sdr/primitive2d/sdrmeasureprimitive2d.hxx                     |    2 
 svx/inc/sdr/primitive2d/sdrolecontentprimitive2d.hxx                  |    2 
 svx/inc/sdr/primitive2d/sdrpathprimitive2d.hxx                        |    2 
 svx/inc/sdr/primitive2d/sdrrectangleprimitive2d.hxx                   |    2 
 svx/inc/sdr/primitive2d/sdrtextprimitive2d.hxx                        |    2 
 svx/source/table/viewcontactoftableobj.cxx                            |    1 
 sw/source/core/draw/dflyobj.cxx                                       |    2 
 50 files changed, 163 insertions(+), 116 deletions(-)

New commits:
commit 7e478166361248c3f3c923b9f0d18dc25d30ef15
Author:     Tomaž Vajngerl <tomaz.vajngerl at collabora.co.uk>
AuthorDate: Sun Jun 20 23:52:32 2021 +0900
Commit:     Tomaž Vajngerl <quikee at gmail.com>
CommitDate: Mon Jun 21 02:22:32 2021 +0200

    drawinglayer: put BufferedDecompositionPrimitive2D in its own file
    
    And fix includes all over the place...
    
    Change-Id: I6e2696bbeeac6ab7467cac70545fa7209aa981a8
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117528
    Tested-by: Jenkins
    Reviewed-by: Tomaž Vajngerl <quikee at gmail.com>

diff --git a/drawinglayer/inc/primitive2d/texteffectprimitive2d.hxx b/drawinglayer/inc/primitive2d/texteffectprimitive2d.hxx
index 45a21f67dab8..ce62b3110199 100644
--- a/drawinglayer/inc/primitive2d/texteffectprimitive2d.hxx
+++ b/drawinglayer/inc/primitive2d/texteffectprimitive2d.hxx
@@ -19,7 +19,7 @@
 
 #pragma once
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 
 namespace drawinglayer::primitive2d
diff --git a/drawinglayer/inc/primitive2d/textlineprimitive2d.hxx b/drawinglayer/inc/primitive2d/textlineprimitive2d.hxx
index c84deefd8547..423be7995879 100644
--- a/drawinglayer/inc/primitive2d/textlineprimitive2d.hxx
+++ b/drawinglayer/inc/primitive2d/textlineprimitive2d.hxx
@@ -19,7 +19,7 @@
 
 #pragma once
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <drawinglayer/primitive2d/textenumsprimitive2d.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 #include <basegfx/color/bcolor.hxx>
diff --git a/drawinglayer/inc/primitive2d/textstrikeoutprimitive2d.hxx b/drawinglayer/inc/primitive2d/textstrikeoutprimitive2d.hxx
index 1843d5ef9f11..9b93e28dbe0d 100644
--- a/drawinglayer/inc/primitive2d/textstrikeoutprimitive2d.hxx
+++ b/drawinglayer/inc/primitive2d/textstrikeoutprimitive2d.hxx
@@ -19,7 +19,7 @@
 
 #pragma once
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <drawinglayer/primitive2d/textenumsprimitive2d.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 #include <basegfx/color/bcolor.hxx>
diff --git a/drawinglayer/source/primitive2d/baseprimitive2d.cxx b/drawinglayer/source/primitive2d/baseprimitive2d.cxx
index 752bc3063a3b..3fb02b722033 100644
--- a/drawinglayer/source/primitive2d/baseprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/baseprimitive2d.cxx
@@ -19,7 +19,7 @@
 
 #include <sal/config.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <drawinglayer/primitive2d/Tools.hxx>
 #include <drawinglayer/geometry/viewinformation2d.hxx>
 #include <basegfx/utils/canvastools.hxx>
diff --git a/include/drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx b/include/drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx
new file mode 100644
index 000000000000..fe3c477752a4
--- /dev/null
+++ b/include/drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx
@@ -0,0 +1,106 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ *   Licensed to the Apache Software Foundation (ASF) under one or more
+ *   contributor license agreements. See the NOTICE file distributed
+ *   with this work for additional information regarding copyright
+ *   ownership. The ASF licenses this file to you under the Apache
+ *   License, Version 2.0 (the "License"); you may not use this file
+ *   except in compliance with the License. You may obtain a copy of
+ *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <drawinglayer/drawinglayerdllapi.h>
+
+#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <basegfx/range/b2drange.hxx>
+#include <cppuhelper/compbase.hxx>
+
+namespace drawinglayer::geometry
+{
+class ViewInformation2D;
+}
+
+namespace drawinglayer::primitive2d
+{
+/** BufferedDecompositionPrimitive2D class
+
+    Baseclass for all C++ implementations of css::graphic::XPrimitive2D
+    which want to buffer the decomposition result
+
+    Buffering the decomposition is the most-used buffering and is thus used my most
+    primitive implementations which support a decomposition as base class.
+
+    The buffering is done by holding the last decomposition in the local parameter
+    maBuffered2DDecomposition. The default implementation of get2DDecomposition checks
+    if maBuffered2DDecomposition is empty. If yes, it uses create2DDecomposition
+    to create the content. In all cases, maBuffered2DDecomposition is returned.
+
+    For view-dependent primitives derived from Primitive2DBufferDecomposition more needs
+    to be done when the decomposition depends on parts of the parameter ViewInformation2D.
+    This defines a standard method for processing these:
+
+    Implement a view-dependent get2DDecomposition doing the following steps:
+    (a) Locally extract needed parameters from ViewInformation2D to new, local parameters
+        (this may be a complete local copy of ViewInformation2D)
+    (b) If a buffered decomposition exists, ckeck if one of the new local parameters
+        differs from the corresponding locally remembered (as member) ones. If yes,
+        clear maBuffered2DDecomposition
+    (d) call baseclass::get2DDecomposition which will use create2DDecomposition
+        to fill maBuffered2DDecomposition if it's empty
+    (e) copy the new local parameters to the corresponding locally remembered ones
+        to identify if a new decomposition is needed at the next call
+    (f) return maBuffered2DDecomposition
+ */
+class DRAWINGLAYER_DLLPUBLIC BufferedDecompositionPrimitive2D : public BasePrimitive2D
+{
+private:
+    /// a sequence used for buffering the last create2DDecomposition() result
+    Primitive2DContainer maBuffered2DDecomposition;
+
+protected:
+    /** access methods to maBuffered2DDecomposition. The usage of this methods may allow
+        later thread-safe stuff to be added if needed. Only to be used by getDecomposition()
+        implementations for buffering the last decomposition.
+     */
+    const Primitive2DContainer& getBuffered2DDecomposition() const
+    {
+        return maBuffered2DDecomposition;
+    }
+    void setBuffered2DDecomposition(const Primitive2DContainer& rNew)
+    {
+        maBuffered2DDecomposition = rNew;
+    }
+
+    /** method which is to be used to implement the local decomposition of a 2D primitive. */
+    virtual void
+    create2DDecomposition(Primitive2DContainer& rContainer,
+                          const geometry::ViewInformation2D& rViewInformation) const = 0;
+
+public:
+    // constructor/destructor
+    BufferedDecompositionPrimitive2D();
+
+    /** The getDecomposition default implementation will on demand use create2DDecomposition() if
+        maBuffered2DDecomposition is empty. It will set maBuffered2DDecomposition to this obtained decomposition
+        to buffer it. If the decomposition is also ViewInformation2D-dependent, this method needs to be
+        overridden and the ViewInformation2D for the last decomposition need to be remembered, too, and
+        be used in the next call to decide if the buffered decomposition may be reused or not.
+     */
+    virtual void
+    get2DDecomposition(Primitive2DDecompositionVisitor& rVisitor,
+                       const geometry::ViewInformation2D& rViewInformation) const override;
+};
+
+} // end of namespace drawinglayer::primitive2d
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/include/drawinglayer/primitive2d/PolyPolygonColorPrimitive2D.hxx b/include/drawinglayer/primitive2d/PolyPolygonColorPrimitive2D.hxx
index 04f096108ba1..c9acbb00dd30 100644
--- a/include/drawinglayer/primitive2d/PolyPolygonColorPrimitive2D.hxx
+++ b/include/drawinglayer/primitive2d/PolyPolygonColorPrimitive2D.hxx
@@ -20,7 +20,8 @@
 #pragma once
 
 #include <drawinglayer/drawinglayerdllapi.h>
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
 #include <basegfx/color/bcolor.hxx>
 
diff --git a/include/drawinglayer/primitive2d/PolyPolygonGradientPrimitive2D.hxx b/include/drawinglayer/primitive2d/PolyPolygonGradientPrimitive2D.hxx
index 8bd253c5e3dd..9cdeee03f0b4 100644
--- a/include/drawinglayer/primitive2d/PolyPolygonGradientPrimitive2D.hxx
+++ b/include/drawinglayer/primitive2d/PolyPolygonGradientPrimitive2D.hxx
@@ -20,7 +20,8 @@
 #pragma once
 
 #include <drawinglayer/drawinglayerdllapi.h>
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
 #include <drawinglayer/attribute/fillgradientattribute.hxx>
 
diff --git a/include/drawinglayer/primitive2d/PolyPolygonGraphicPrimitive2D.hxx b/include/drawinglayer/primitive2d/PolyPolygonGraphicPrimitive2D.hxx
index ea49c2da78fe..82094a07ccc7 100644
--- a/include/drawinglayer/primitive2d/PolyPolygonGraphicPrimitive2D.hxx
+++ b/include/drawinglayer/primitive2d/PolyPolygonGraphicPrimitive2D.hxx
@@ -20,7 +20,8 @@
 #pragma once
 
 #include <drawinglayer/drawinglayerdllapi.h>
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
 #include <drawinglayer/attribute/fillgraphicattribute.hxx>
 
diff --git a/include/drawinglayer/primitive2d/PolyPolygonHairlinePrimitive2D.hxx b/include/drawinglayer/primitive2d/PolyPolygonHairlinePrimitive2D.hxx
index 11ef188daba9..1cab074fabf9 100644
--- a/include/drawinglayer/primitive2d/PolyPolygonHairlinePrimitive2D.hxx
+++ b/include/drawinglayer/primitive2d/PolyPolygonHairlinePrimitive2D.hxx
@@ -21,7 +21,7 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
 #include <basegfx/color/bcolor.hxx>
 
diff --git a/include/drawinglayer/primitive2d/PolyPolygonHatchPrimitive2D.hxx b/include/drawinglayer/primitive2d/PolyPolygonHatchPrimitive2D.hxx
index 10080446dccc..960d2e600d0e 100644
--- a/include/drawinglayer/primitive2d/PolyPolygonHatchPrimitive2D.hxx
+++ b/include/drawinglayer/primitive2d/PolyPolygonHatchPrimitive2D.hxx
@@ -20,7 +20,8 @@
 #pragma once
 
 #include <drawinglayer/drawinglayerdllapi.h>
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
 #include <basegfx/color/bcolor.hxx>
 #include <drawinglayer/attribute/fillhatchattribute.hxx>
diff --git a/include/drawinglayer/primitive2d/PolyPolygonMarkerPrimitive2D.hxx b/include/drawinglayer/primitive2d/PolyPolygonMarkerPrimitive2D.hxx
index e3fb007833ea..b2dc64630ecb 100644
--- a/include/drawinglayer/primitive2d/PolyPolygonMarkerPrimitive2D.hxx
+++ b/include/drawinglayer/primitive2d/PolyPolygonMarkerPrimitive2D.hxx
@@ -21,7 +21,7 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
 #include <basegfx/color/bcolor.hxx>
 
diff --git a/include/drawinglayer/primitive2d/PolyPolygonSelectionPrimitive2D.hxx b/include/drawinglayer/primitive2d/PolyPolygonSelectionPrimitive2D.hxx
index d88d7f66fc9f..f7a7c145bca9 100644
--- a/include/drawinglayer/primitive2d/PolyPolygonSelectionPrimitive2D.hxx
+++ b/include/drawinglayer/primitive2d/PolyPolygonSelectionPrimitive2D.hxx
@@ -20,7 +20,8 @@
 #pragma once
 
 #include <drawinglayer/drawinglayerdllapi.h>
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <drawinglayer/primitive2d/primitivetools2d.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
 #include <basegfx/color/bcolor.hxx>
diff --git a/include/drawinglayer/primitive2d/PolyPolygonStrokePrimitive2D.hxx b/include/drawinglayer/primitive2d/PolyPolygonStrokePrimitive2D.hxx
index 13b7e3ecaf0b..94a58b466ffe 100644
--- a/include/drawinglayer/primitive2d/PolyPolygonStrokePrimitive2D.hxx
+++ b/include/drawinglayer/primitive2d/PolyPolygonStrokePrimitive2D.hxx
@@ -21,7 +21,7 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
 #include <drawinglayer/attribute/lineattribute.hxx>
 #include <drawinglayer/attribute/strokeattribute.hxx>
diff --git a/include/drawinglayer/primitive2d/backgroundcolorprimitive2d.hxx b/include/drawinglayer/primitive2d/backgroundcolorprimitive2d.hxx
index cdd7b8db3671..191fde1b8487 100644
--- a/include/drawinglayer/primitive2d/backgroundcolorprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/backgroundcolorprimitive2d.hxx
@@ -21,7 +21,7 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/color/bcolor.hxx>
 
 // BackgroundColorPrimitive2D class
diff --git a/include/drawinglayer/primitive2d/baseprimitive2d.hxx b/include/drawinglayer/primitive2d/baseprimitive2d.hxx
index dd7f002f1faf..7d648d9b6845 100644
--- a/include/drawinglayer/primitive2d/baseprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/baseprimitive2d.hxx
@@ -21,11 +21,14 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <cppuhelper/compbase.hxx>
 #include <drawinglayer/primitive2d/Primitive2DContainer.hxx>
+#include <drawinglayer/primitive2d/Primitive2DVisitor.hxx>
+
+#include <cppuhelper/compbase.hxx>
 #include <com/sun/star/util/XAccounting.hpp>
 #include <cppuhelper/basemutex.hxx>
 #include <basegfx/range/b2drange.hxx>
+#include <com/sun/star/graphic/XPrimitive2D.hpp>
 
 namespace drawinglayer::geometry
 {
@@ -160,75 +163,6 @@ public:
     virtual sal_Int64 SAL_CALL estimateUsage() override;
 };
 
-/** BufferedDecompositionPrimitive2D class
-
-    Baseclass for all C++ implementations of css::graphic::XPrimitive2D
-    which want to buffer the decomposition result
-
-    Buffering the decomposition is the most-used buffering and is thus used my most
-    primitive implementations which support a decomposition as base class.
-
-    The buffering is done by holding the last decomposition in the local parameter
-    maBuffered2DDecomposition. The default implementation of get2DDecomposition checks
-    if maBuffered2DDecomposition is empty. If yes, it uses create2DDecomposition
-    to create the content. In all cases, maBuffered2DDecomposition is returned.
-
-    For view-dependent primitives derived from Primitive2DBufferDecomposition more needs
-    to be done when the decomposition depends on parts of the parameter ViewInformation2D.
-    This defines a standard method for processing these:
-
-    Implement a view-dependent get2DDecomposition doing the following steps:
-    (a) Locally extract needed parameters from ViewInformation2D to new, local parameters
-        (this may be a complete local copy of ViewInformation2D)
-    (b) If a buffered decomposition exists, ckeck if one of the new local parameters
-        differs from the corresponding locally remembered (as member) ones. If yes,
-        clear maBuffered2DDecomposition
-    (d) call baseclass::get2DDecomposition which will use create2DDecomposition
-        to fill maBuffered2DDecomposition if it's empty
-    (e) copy the new local parameters to the corresponding locally remembered ones
-        to identify if a new decomposition is needed at the next call
-    (f) return maBuffered2DDecomposition
- */
-class DRAWINGLAYER_DLLPUBLIC BufferedDecompositionPrimitive2D : public BasePrimitive2D
-{
-private:
-    /// a sequence used for buffering the last create2DDecomposition() result
-    Primitive2DContainer maBuffered2DDecomposition;
-
-protected:
-    /** access methods to maBuffered2DDecomposition. The usage of this methods may allow
-        later thread-safe stuff to be added if needed. Only to be used by getDecomposition()
-        implementations for buffering the last decomposition.
-     */
-    const Primitive2DContainer& getBuffered2DDecomposition() const
-    {
-        return maBuffered2DDecomposition;
-    }
-    void setBuffered2DDecomposition(const Primitive2DContainer& rNew)
-    {
-        maBuffered2DDecomposition = rNew;
-    }
-
-    /** method which is to be used to implement the local decomposition of a 2D primitive. */
-    virtual void
-    create2DDecomposition(Primitive2DContainer& rContainer,
-                          const geometry::ViewInformation2D& rViewInformation) const = 0;
-
-public:
-    // constructor/destructor
-    BufferedDecompositionPrimitive2D();
-
-    /** The getDecomposition default implementation will on demand use create2DDecomposition() if
-        maBuffered2DDecomposition is empty. It will set maBuffered2DDecomposition to this obtained decomposition
-        to buffer it. If the decomposition is also ViewInformation2D-dependent, this method needs to be
-        overridden and the ViewInformation2D for the last decomposition need to be remembered, too, and
-        be used in the next call to decide if the buffered decomposition may be reused or not.
-     */
-    virtual void
-    get2DDecomposition(Primitive2DDecompositionVisitor& rVisitor,
-                       const geometry::ViewInformation2D& rViewInformation) const override;
-};
-
 } // end of namespace drawinglayer::primitive2d
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/include/drawinglayer/primitive2d/bitmapprimitive2d.hxx b/include/drawinglayer/primitive2d/bitmapprimitive2d.hxx
index bef384eb47b2..8cddbac31668 100644
--- a/include/drawinglayer/primitive2d/bitmapprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/bitmapprimitive2d.hxx
@@ -22,6 +22,7 @@
 #include <drawinglayer/drawinglayerdllapi.h>
 
 #include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/Primitive2DVisitor.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 
 namespace com::sun::star::awt
diff --git a/include/drawinglayer/primitive2d/borderlineprimitive2d.hxx b/include/drawinglayer/primitive2d/borderlineprimitive2d.hxx
index 537f503e5b9b..1dc857ec357e 100644
--- a/include/drawinglayer/primitive2d/borderlineprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/borderlineprimitive2d.hxx
@@ -21,7 +21,7 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <drawinglayer/attribute/lineattribute.hxx>
 #include <drawinglayer/attribute/strokeattribute.hxx>
 
diff --git a/include/drawinglayer/primitive2d/controlprimitive2d.hxx b/include/drawinglayer/primitive2d/controlprimitive2d.hxx
index df2a98b1bafc..015151cf8dfc 100644
--- a/include/drawinglayer/primitive2d/controlprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/controlprimitive2d.hxx
@@ -21,7 +21,7 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 
 namespace com::sun::star::awt
diff --git a/include/drawinglayer/primitive2d/embedded3dprimitive2d.hxx b/include/drawinglayer/primitive2d/embedded3dprimitive2d.hxx
index 959533271273..959b38592682 100644
--- a/include/drawinglayer/primitive2d/embedded3dprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/embedded3dprimitive2d.hxx
@@ -21,7 +21,7 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <drawinglayer/primitive3d/baseprimitive3d.hxx>
 #include <drawinglayer/geometry/viewinformation3d.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
diff --git a/include/drawinglayer/primitive2d/epsprimitive2d.hxx b/include/drawinglayer/primitive2d/epsprimitive2d.hxx
index 5c71ee88ce28..7aa72b6cef34 100644
--- a/include/drawinglayer/primitive2d/epsprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/epsprimitive2d.hxx
@@ -19,7 +19,7 @@
 
 #pragma once
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 #include <vcl/gfxlink.hxx>
 #include <vcl/gdimtf.hxx>
diff --git a/include/drawinglayer/primitive2d/fillgradientprimitive2d.hxx b/include/drawinglayer/primitive2d/fillgradientprimitive2d.hxx
index 6b6547327930..9fe2fbcbc4ec 100644
--- a/include/drawinglayer/primitive2d/fillgradientprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/fillgradientprimitive2d.hxx
@@ -21,7 +21,7 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <drawinglayer/attribute/fillgradientattribute.hxx>
 
 
diff --git a/include/drawinglayer/primitive2d/fillgraphicprimitive2d.hxx b/include/drawinglayer/primitive2d/fillgraphicprimitive2d.hxx
index ed75f283f3ba..51d49df30d5e 100644
--- a/include/drawinglayer/primitive2d/fillgraphicprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/fillgraphicprimitive2d.hxx
@@ -21,7 +21,7 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 #include <drawinglayer/attribute/fillgraphicattribute.hxx>
 
diff --git a/include/drawinglayer/primitive2d/graphicprimitive2d.hxx b/include/drawinglayer/primitive2d/graphicprimitive2d.hxx
index e01d7fce676f..9bce4b8c051c 100644
--- a/include/drawinglayer/primitive2d/graphicprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/graphicprimitive2d.hxx
@@ -21,7 +21,7 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 #include <vcl/GraphicObject.hxx>
 
diff --git a/include/drawinglayer/primitive2d/gridprimitive2d.hxx b/include/drawinglayer/primitive2d/gridprimitive2d.hxx
index b2026dec43e0..3c2bf595add4 100644
--- a/include/drawinglayer/primitive2d/gridprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/gridprimitive2d.hxx
@@ -21,7 +21,7 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 #include <basegfx/color/bcolor.hxx>
 #include <vcl/bitmapex.hxx>
diff --git a/include/drawinglayer/primitive2d/groupprimitive2d.hxx b/include/drawinglayer/primitive2d/groupprimitive2d.hxx
index ffeb870972e3..06719311505f 100644
--- a/include/drawinglayer/primitive2d/groupprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/groupprimitive2d.hxx
@@ -22,7 +22,7 @@
 #include <drawinglayer/drawinglayerdllapi.h>
 
 #include <drawinglayer/primitive2d/baseprimitive2d.hxx>
-
+#include <drawinglayer/primitive2d/Primitive2DContainer.hxx>
 
 // GroupPrimitive2D class
 
diff --git a/include/drawinglayer/primitive2d/helplineprimitive2d.hxx b/include/drawinglayer/primitive2d/helplineprimitive2d.hxx
index c0445ee05c84..075715b9b622 100644
--- a/include/drawinglayer/primitive2d/helplineprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/helplineprimitive2d.hxx
@@ -21,7 +21,7 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/color/bcolor.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 
diff --git a/include/drawinglayer/primitive2d/markerarrayprimitive2d.hxx b/include/drawinglayer/primitive2d/markerarrayprimitive2d.hxx
index b9a424c3a5d3..1e09278fe62d 100644
--- a/include/drawinglayer/primitive2d/markerarrayprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/markerarrayprimitive2d.hxx
@@ -21,7 +21,7 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <vcl/bitmapex.hxx>
 
 
diff --git a/include/drawinglayer/primitive2d/mediaprimitive2d.hxx b/include/drawinglayer/primitive2d/mediaprimitive2d.hxx
index 258652a854d5..084b6728a183 100644
--- a/include/drawinglayer/primitive2d/mediaprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/mediaprimitive2d.hxx
@@ -21,7 +21,7 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 #include <basegfx/color/bcolor.hxx>
 #include <vcl/graph.hxx>
diff --git a/include/drawinglayer/primitive2d/metafileprimitive2d.hxx b/include/drawinglayer/primitive2d/metafileprimitive2d.hxx
index f4c399f3125d..c6caded90347 100644
--- a/include/drawinglayer/primitive2d/metafileprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/metafileprimitive2d.hxx
@@ -21,7 +21,7 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 #include <vcl/gdimtf.hxx>
 #include <vcl/gdimetafiletools.hxx>
diff --git a/include/drawinglayer/primitive2d/pagepreviewprimitive2d.hxx b/include/drawinglayer/primitive2d/pagepreviewprimitive2d.hxx
index f3e95ddbac45..e54c883b0945 100644
--- a/include/drawinglayer/primitive2d/pagepreviewprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/pagepreviewprimitive2d.hxx
@@ -21,7 +21,7 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 
 namespace com::sun::star::drawing { class XDrawPage; }
diff --git a/include/drawinglayer/primitive2d/patternfillprimitive2d.hxx b/include/drawinglayer/primitive2d/patternfillprimitive2d.hxx
index 796dda7ba52a..9220209306b0 100644
--- a/include/drawinglayer/primitive2d/patternfillprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/patternfillprimitive2d.hxx
@@ -20,7 +20,7 @@
 #pragma once
 
 #include <drawinglayer/drawinglayerdllapi.h>
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
 
 
diff --git a/include/drawinglayer/primitive2d/polygonprimitive2d.hxx b/include/drawinglayer/primitive2d/polygonprimitive2d.hxx
index ac56461e35b0..21d970d5835a 100644
--- a/include/drawinglayer/primitive2d/polygonprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/polygonprimitive2d.hxx
@@ -21,7 +21,7 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <drawinglayer/attribute/lineattribute.hxx>
 #include <drawinglayer/attribute/strokeattribute.hxx>
 #include <drawinglayer/attribute/linestartendattribute.hxx>
diff --git a/include/drawinglayer/primitive2d/primitivetools2d.hxx b/include/drawinglayer/primitive2d/primitivetools2d.hxx
index db22a59b0eee..ec578679adce 100644
--- a/include/drawinglayer/primitive2d/primitivetools2d.hxx
+++ b/include/drawinglayer/primitive2d/primitivetools2d.hxx
@@ -21,7 +21,7 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 
 
diff --git a/include/drawinglayer/primitive2d/sceneprimitive2d.hxx b/include/drawinglayer/primitive2d/sceneprimitive2d.hxx
index dff8394ea341..3fc027fcbaed 100644
--- a/include/drawinglayer/primitive2d/sceneprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/sceneprimitive2d.hxx
@@ -21,7 +21,7 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <drawinglayer/primitive3d/baseprimitive3d.hxx>
 #include <drawinglayer/geometry/viewinformation3d.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
diff --git a/include/drawinglayer/primitive2d/svggradientprimitive2d.hxx b/include/drawinglayer/primitive2d/svggradientprimitive2d.hxx
index 46bda630775a..f6ed8e8b1508 100644
--- a/include/drawinglayer/primitive2d/svggradientprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/svggradientprimitive2d.hxx
@@ -20,7 +20,7 @@
 #pragma once
 
 #include <drawinglayer/drawinglayerdllapi.h>
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/color/bcolor.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
diff --git a/include/drawinglayer/primitive2d/textprimitive2d.hxx b/include/drawinglayer/primitive2d/textprimitive2d.hxx
index 516d715c93d6..22b64928acd4 100644
--- a/include/drawinglayer/primitive2d/textprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/textprimitive2d.hxx
@@ -21,7 +21,7 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <drawinglayer/attribute/fontattribute.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
diff --git a/include/drawinglayer/primitive2d/wrongspellprimitive2d.hxx b/include/drawinglayer/primitive2d/wrongspellprimitive2d.hxx
index e872ae82e75d..559e9e191a60 100644
--- a/include/drawinglayer/primitive2d/wrongspellprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/wrongspellprimitive2d.hxx
@@ -21,7 +21,7 @@
 
 #include <drawinglayer/drawinglayerdllapi.h>
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/color/bcolor.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 
diff --git a/include/svx/sdr/primitive2d/sdrframeborderprimitive2d.hxx b/include/svx/sdr/primitive2d/sdrframeborderprimitive2d.hxx
index 745b0b0f0968..40638aa9d05b 100644
--- a/include/svx/sdr/primitive2d/sdrframeborderprimitive2d.hxx
+++ b/include/svx/sdr/primitive2d/sdrframeborderprimitive2d.hxx
@@ -20,7 +20,7 @@
 #ifndef INCLUDED_SVX_INC_SDR_PRIMITIVE2D_SDRFRAMEBORDERPRIMITIVE2D_HXX
 #define INCLUDED_SVX_INC_SDR_PRIMITIVE2D_SDRFRAMEBORDERPRIMITIVE2D_HXX
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <svx/framelink.hxx>
 
 #include <memory>
diff --git a/svx/inc/sdr/primitive2d/sdrcaptionprimitive2d.hxx b/svx/inc/sdr/primitive2d/sdrcaptionprimitive2d.hxx
index 3ac1b39519bd..1051fbb7e585 100644
--- a/svx/inc/sdr/primitive2d/sdrcaptionprimitive2d.hxx
+++ b/svx/inc/sdr/primitive2d/sdrcaptionprimitive2d.hxx
@@ -20,7 +20,7 @@
 #ifndef INCLUDED_SVX_INC_SDR_PRIMITIVE2D_SDRCAPTIONPRIMITIVE2D_HXX
 #define INCLUDED_SVX_INC_SDR_PRIMITIVE2D_SDRCAPTIONPRIMITIVE2D_HXX
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 #include <sdr/attribute/sdrlinefilleffectstextattribute.hxx>
 #include <basegfx/polygon/b2dpolygon.hxx>
diff --git a/svx/inc/sdr/primitive2d/sdrconnectorprimitive2d.hxx b/svx/inc/sdr/primitive2d/sdrconnectorprimitive2d.hxx
index ba20dc6dfdb8..d105a5c87460 100644
--- a/svx/inc/sdr/primitive2d/sdrconnectorprimitive2d.hxx
+++ b/svx/inc/sdr/primitive2d/sdrconnectorprimitive2d.hxx
@@ -20,7 +20,7 @@
 #ifndef INCLUDED_SVX_INC_SDR_PRIMITIVE2D_SDRCONNECTORPRIMITIVE2D_HXX
 #define INCLUDED_SVX_INC_SDR_PRIMITIVE2D_SDRCONNECTORPRIMITIVE2D_HXX
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <sdr/attribute/sdrlineeffectstextattribute.hxx>
 #include <basegfx/polygon/b2dpolygon.hxx>
 
diff --git a/svx/inc/sdr/primitive2d/sdrcustomshapeprimitive2d.hxx b/svx/inc/sdr/primitive2d/sdrcustomshapeprimitive2d.hxx
index 0cad2a8824a3..7b837e1bf6d6 100644
--- a/svx/inc/sdr/primitive2d/sdrcustomshapeprimitive2d.hxx
+++ b/svx/inc/sdr/primitive2d/sdrcustomshapeprimitive2d.hxx
@@ -20,7 +20,7 @@
 #ifndef INCLUDED_SVX_INC_SDR_PRIMITIVE2D_SDRCUSTOMSHAPEPRIMITIVE2D_HXX
 #define INCLUDED_SVX_INC_SDR_PRIMITIVE2D_SDRCUSTOMSHAPEPRIMITIVE2D_HXX
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 #include <sdr/attribute/sdreffectstextattribute.hxx>
 
diff --git a/svx/inc/sdr/primitive2d/sdrellipseprimitive2d.hxx b/svx/inc/sdr/primitive2d/sdrellipseprimitive2d.hxx
index 2e0f19a63e80..9b4bf4ebeb90 100644
--- a/svx/inc/sdr/primitive2d/sdrellipseprimitive2d.hxx
+++ b/svx/inc/sdr/primitive2d/sdrellipseprimitive2d.hxx
@@ -20,7 +20,7 @@
 #ifndef INCLUDED_SVX_INC_SDR_PRIMITIVE2D_SDRELLIPSEPRIMITIVE2D_HXX
 #define INCLUDED_SVX_INC_SDR_PRIMITIVE2D_SDRELLIPSEPRIMITIVE2D_HXX
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 #include <sdr/attribute/sdrlinefilleffectstextattribute.hxx>
 
diff --git a/svx/inc/sdr/primitive2d/sdrgrafprimitive2d.hxx b/svx/inc/sdr/primitive2d/sdrgrafprimitive2d.hxx
index 1a24f3aab862..5e349de4c64d 100644
--- a/svx/inc/sdr/primitive2d/sdrgrafprimitive2d.hxx
+++ b/svx/inc/sdr/primitive2d/sdrgrafprimitive2d.hxx
@@ -19,7 +19,7 @@
 
 #pragma once
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 #include <vcl/GraphicObject.hxx>
 #include <sdr/attribute/sdrlinefilleffectstextattribute.hxx>
diff --git a/svx/inc/sdr/primitive2d/sdrmeasureprimitive2d.hxx b/svx/inc/sdr/primitive2d/sdrmeasureprimitive2d.hxx
index aa3bd67ff317..4bc8de10b589 100644
--- a/svx/inc/sdr/primitive2d/sdrmeasureprimitive2d.hxx
+++ b/svx/inc/sdr/primitive2d/sdrmeasureprimitive2d.hxx
@@ -20,7 +20,7 @@
 #ifndef INCLUDED_SVX_INC_SDR_PRIMITIVE2D_SDRMEASUREPRIMITIVE2D_HXX
 #define INCLUDED_SVX_INC_SDR_PRIMITIVE2D_SDRMEASUREPRIMITIVE2D_HXX
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <sdr/attribute/sdrlineeffectstextattribute.hxx>
 
 
diff --git a/svx/inc/sdr/primitive2d/sdrolecontentprimitive2d.hxx b/svx/inc/sdr/primitive2d/sdrolecontentprimitive2d.hxx
index 27f9cb20803b..c734780422d8 100644
--- a/svx/inc/sdr/primitive2d/sdrolecontentprimitive2d.hxx
+++ b/svx/inc/sdr/primitive2d/sdrolecontentprimitive2d.hxx
@@ -20,7 +20,7 @@
 #ifndef INCLUDED_SVX_INC_SDR_PRIMITIVE2D_SDROLECONTENTPRIMITIVE2D_HXX
 #define INCLUDED_SVX_INC_SDR_PRIMITIVE2D_SDROLECONTENTPRIMITIVE2D_HXX
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 #include <tools/weakbase.h>
 
diff --git a/svx/inc/sdr/primitive2d/sdrpathprimitive2d.hxx b/svx/inc/sdr/primitive2d/sdrpathprimitive2d.hxx
index a43cd4dcbb76..6e4819a898a6 100644
--- a/svx/inc/sdr/primitive2d/sdrpathprimitive2d.hxx
+++ b/svx/inc/sdr/primitive2d/sdrpathprimitive2d.hxx
@@ -20,7 +20,7 @@
 #ifndef INCLUDED_SVX_INC_SDR_PRIMITIVE2D_SDRPATHPRIMITIVE2D_HXX
 #define INCLUDED_SVX_INC_SDR_PRIMITIVE2D_SDRPATHPRIMITIVE2D_HXX
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 #include <sdr/attribute/sdrlinefilleffectstextattribute.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
diff --git a/svx/inc/sdr/primitive2d/sdrrectangleprimitive2d.hxx b/svx/inc/sdr/primitive2d/sdrrectangleprimitive2d.hxx
index 9125f63c62de..6480f03c657b 100644
--- a/svx/inc/sdr/primitive2d/sdrrectangleprimitive2d.hxx
+++ b/svx/inc/sdr/primitive2d/sdrrectangleprimitive2d.hxx
@@ -20,7 +20,7 @@
 #ifndef INCLUDED_SVX_INC_SDR_PRIMITIVE2D_SDRRECTANGLEPRIMITIVE2D_HXX
 #define INCLUDED_SVX_INC_SDR_PRIMITIVE2D_SDRRECTANGLEPRIMITIVE2D_HXX
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 #include <sdr/attribute/sdrlinefilleffectstextattribute.hxx>
 
diff --git a/svx/inc/sdr/primitive2d/sdrtextprimitive2d.hxx b/svx/inc/sdr/primitive2d/sdrtextprimitive2d.hxx
index 8a9f25b9b243..96402f54b6df 100644
--- a/svx/inc/sdr/primitive2d/sdrtextprimitive2d.hxx
+++ b/svx/inc/sdr/primitive2d/sdrtextprimitive2d.hxx
@@ -20,7 +20,7 @@
 #ifndef INCLUDED_SVX_INC_SDR_PRIMITIVE2D_SDRTEXTPRIMITIVE2D_HXX
 #define INCLUDED_SVX_INC_SDR_PRIMITIVE2D_SDRTEXTPRIMITIVE2D_HXX
 
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 #include <com/sun/star/drawing/XDrawPage.hpp>
diff --git a/svx/source/table/viewcontactoftableobj.cxx b/svx/source/table/viewcontactoftableobj.cxx
index 14c38e773481..554bbe245a51 100644
--- a/svx/source/table/viewcontactoftableobj.cxx
+++ b/svx/source/table/viewcontactoftableobj.cxx
@@ -29,6 +29,7 @@
 #include <svx/sdr/primitive2d/svx_primitivetypes2d.hxx>
 #include <editeng/borderline.hxx>
 #include <sdr/attribute/sdrfilltextattribute.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <drawinglayer/attribute/sdrlineattribute.hxx>
 #include <drawinglayer/attribute/sdrshadowattribute.hxx>
 #include <drawinglayer/primitive2d/sdrdecompositiontools2d.hxx>
diff --git a/sw/source/core/draw/dflyobj.cxx b/sw/source/core/draw/dflyobj.cxx
index d483562c5727..a6a834efdb5f 100644
--- a/sw/source/core/draw/dflyobj.cxx
+++ b/sw/source/core/draw/dflyobj.cxx
@@ -59,7 +59,7 @@
 
 // AW: For VCOfDrawVirtObj and stuff
 #include <svx/sdr/contact/viewcontactofvirtobj.hxx>
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <drawinglayer/primitive2d/BufferedDecompositionPrimitive2D.hxx>
 #include <drawinglayer/geometry/viewinformation2d.hxx>
 #include <sw_primitivetypes2d.hxx>
 #include <drawinglayer/primitive2d/sdrdecompositiontools2d.hxx>


More information about the Libreoffice-commits mailing list