chart2/source/view/inc/ShapeFactory.hxx | 2 +- chart2/source/view/main/DataTableView.cxx | 5 ++++- chart2/source/view/main/ShapeFactory.cxx | 5 ++++- 3 files changed, 9 insertions(+), 3 deletions(-)
New commits: commit fc307b3da2332ef4995154c0554e8560a0196ddd Author: Tomaž Vajngerl <[email protected]> AuthorDate: Wed Jun 29 19:25:47 2022 +0200 Commit: Tomaž Vajngerl <[email protected]> CommitDate: Fri Aug 19 19:10:42 2022 +0200 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 <[email protected]> (cherry picked from commit d4450b9a9fe26e03fabb07162e88f742ba2c1f77) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/138523 Tested-by: Jenkins CollaboraOffice <[email protected]> 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; }
