summaryrefslogtreecommitdiff
path: root/include/oox/vml
diff options
context:
space:
mode:
Diffstat (limited to 'include/oox/vml')
-rw-r--r--include/oox/vml/vmlshape.hxx4
-rw-r--r--include/oox/vml/vmlshapecontainer.hxx1
2 files changed, 5 insertions, 0 deletions
diff --git a/include/oox/vml/vmlshape.hxx b/include/oox/vml/vmlshape.hxx
index 5ec471299f3f..a4584cad2b7f 100644
--- a/include/oox/vml/vmlshape.hxx
+++ b/include/oox/vml/vmlshape.hxx
@@ -264,6 +264,9 @@ public:
void convertFormatting(
const css::uno::Reference< css::drawing::XShape >& rxShape ) const;
+ void setContainer(ShapeContainer* pContainer);
+ ShapeContainer* getContainer() const;
+
protected:
explicit ShapeBase( Drawing& rDrawing );
@@ -284,6 +287,7 @@ protected:
protected:
ShapeModel maShapeModel; ///< The model structure containing shape data.
+ ShapeContainer* mpContainer = nullptr;
};
diff --git a/include/oox/vml/vmlshapecontainer.hxx b/include/oox/vml/vmlshapecontainer.hxx
index 6be9020051c2..1b72c8a38f3b 100644
--- a/include/oox/vml/vmlshapecontainer.hxx
+++ b/include/oox/vml/vmlshapecontainer.hxx
@@ -126,6 +126,7 @@ template< typename ShapeT >
std::shared_ptr<ShapeT> ShapeContainer::createShape()
{
auto xShape = std::make_shared<ShapeT>( mrDrawing );
+ xShape->setContainer(this);
maShapes.push_back( xShape );
return xShape;
}