summaryrefslogtreecommitdiff
path: root/chart2
diff options
context:
space:
mode:
authorTomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>2022-06-29 19:25:47 +0200
committerTomaž Vajngerl <quikee@gmail.com>2022-08-19 19:10:42 +0200
commitfc307b3da2332ef4995154c0554e8560a0196ddd (patch)
treead339b0a775e53fff34a8f52ff2072c081415ccb /chart2
parent21d62f4d98b111784562c32dc3ea02ea034999e9 (diff)
chart2: allow to select the data table, fix object CID
Change-Id: I0a8d3643fcaefe8105e935b929947174bd9bdc96 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/138247 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com> (cherry picked from commit d4450b9a9fe26e03fabb07162e88f742ba2c1f77) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/138523 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Diffstat (limited to 'chart2')
-rw-r--r--chart2/source/view/inc/ShapeFactory.hxx2
-rw-r--r--chart2/source/view/main/DataTableView.cxx5
-rw-r--r--chart2/source/view/main/ShapeFactory.cxx5
3 files changed, 9 insertions, 3 deletions
diff --git a/chart2/source/view/inc/ShapeFactory.hxx b/chart2/source/view/inc/ShapeFactory.hxx
index 5b03509a3695..481fde50dbb2 100644
--- a/chart2/source/view/inc/ShapeFactory.hxx
+++ b/chart2/source/view/inc/ShapeFactory.hxx
@@ -213,7 +213,7 @@ public:
const css::uno::Reference< css::beans::XPropertySet > & xTextProperties,
double nRotation, const OUString& aName, sal_Int32 nTextMaxWidth );
- static rtl::Reference<SvxTableShape> createTable(css::uno::Reference< css::drawing::XShapes >& xTarget);
+ static rtl::Reference<SvxTableShape> createTable(css::uno::Reference<css::drawing::XShapes>& xTarget, OUString const& rName = OUString());
css::uno::Reference< css::drawing::XShape >
createInvisibleRectangle(
diff --git a/chart2/source/view/main/DataTableView.cxx b/chart2/source/view/main/DataTableView.cxx
index f7a1fe4a0bb8..4b83428abe04 100644
--- a/chart2/source/view/main/DataTableView.cxx
+++ b/chart2/source/view/main/DataTableView.cxx
@@ -12,6 +12,7 @@
#include <ShapeFactory.hxx>
#include <ExplicitCategoriesProvider.hxx>
#include <ChartModel.hxx>
+#include <ObjectIdentifier.hxx>
#include <svx/svdotable.hxx>
@@ -193,7 +194,9 @@ void DataTableView::createShapes(basegfx::B2DVector const& rStart, basegfx::B2DV
return;
ShapeFactory::removeSubShapes(m_xTarget);
- m_xTableShape = ShapeFactory::createTable(m_xTarget);
+ auto sParticle = ObjectIdentifier::createParticleForDataTable(m_xChartModel);
+ auto sCID = ObjectIdentifier::createClassifiedIdentifierForParticle(sParticle);
+ m_xTableShape = ShapeFactory::createTable(m_xTarget, sCID);
uno::Reference<table::XTable> xTable;
try
diff --git a/chart2/source/view/main/ShapeFactory.cxx b/chart2/source/view/main/ShapeFactory.cxx
index 7c2574c5f407..dc3b3332391a 100644
--- a/chart2/source/view/main/ShapeFactory.cxx
+++ b/chart2/source/view/main/ShapeFactory.cxx
@@ -2656,7 +2656,8 @@ void ShapeFactory::removeSubShapes( const uno::Reference< drawing::XShapes >& xS
}
}
-rtl::Reference<SvxTableShape> ShapeFactory::createTable(uno::Reference<drawing::XShapes>& xTarget)
+rtl::Reference<SvxTableShape>
+ShapeFactory::createTable(uno::Reference<drawing::XShapes>& xTarget, OUString const& rName)
{
if (!xTarget.is())
return nullptr;
@@ -2666,6 +2667,8 @@ rtl::Reference<SvxTableShape> ShapeFactory::createTable(uno::Reference<drawing::
xShape->setShapeKind(OBJ_TABLE);
uno::Reference<drawing::XShape> xShapeUno(xShape);
xTarget->add(xShapeUno);
+ if (!rName.isEmpty())
+ setShapeName(xShapeUno, rName);
return xShape;
}