From 72f36d5e7a982b1a8b58dd73da4db580bf5124f1 Mon Sep 17 00:00:00 2001 From: Szymon Kłos Date: Thu, 17 Sep 2020 13:27:53 +0200 Subject: lok: Add posibility to change chart fill color MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I519a0fe15c4983803109aed7eef840d36a5e7b21 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/102920 Tested-by: Jenkins CollaboraOffice Reviewed-by: Andras Timar Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103141 Tested-by: Jenkins Reviewed-by: Szymon Kłos --- chart2/source/controller/inc/ChartController.hxx | 1 + chart2/source/controller/main/ChartController.cxx | 9 +++++++++ .../source/controller/main/ChartController_Tools.cxx | 20 ++++++++++++++++++++ 3 files changed, 30 insertions(+) (limited to 'chart2/source') diff --git a/chart2/source/controller/inc/ChartController.hxx b/chart2/source/controller/inc/ChartController.hxx index e464786bc217..293e1b732774 100644 --- a/chart2/source/controller/inc/ChartController.hxx +++ b/chart2/source/controller/inc/ChartController.hxx @@ -497,6 +497,7 @@ private: void executeDispatch_LOKSetTextSelection(int nType, int nX, int nY); void executeDispatch_LOKPieSegmentDragging(int nOffset); + void executeDispatch_FillColor(sal_uInt32 nColor); void sendPopupRequest(OUString const & rCID, tools::Rectangle aRectangle); diff --git a/chart2/source/controller/main/ChartController.cxx b/chart2/source/controller/main/ChartController.cxx index f81b261182fa..df58f924189a 100644 --- a/chart2/source/controller/main/ChartController.cxx +++ b/chart2/source/controller/main/ChartController.cxx @@ -1104,6 +1104,15 @@ void SAL_CALL ChartController::dispatch( this->executeDispatch_PositionAndSize(&rArgs); } } + else if(aCommand == "FillColor") + { + if (rArgs.getLength() > 0) + { + sal_uInt32 nColor; + rArgs[0].Value >>= nColor; + this->executeDispatch_FillColor(nColor); + } + } else if(aCommand == "Paste") this->executeDispatch_Paste(); else if(aCommand == "Copy" ) diff --git a/chart2/source/controller/main/ChartController_Tools.cxx b/chart2/source/controller/main/ChartController_Tools.cxx index d72a629757a1..0b6401456c9a 100644 --- a/chart2/source/controller/main/ChartController_Tools.cxx +++ b/chart2/source/controller/main/ChartController_Tools.cxx @@ -920,6 +920,26 @@ void ChartController::executeDispatch_ToggleGridVertical() aUndoGuard.commit(); } +void ChartController::executeDispatch_FillColor(sal_uInt32 nColor) +{ + try + { + OUString aCID( m_aSelection.getSelectedCID() ); + const uno::Reference< frame::XModel >& xChartModel = getModel(); + if( xChartModel.is() ) + { + Reference< beans::XPropertySet > xPointProperties( + ObjectIdentifier::getObjectPropertySet( aCID, xChartModel ) ); + if( xPointProperties.is() ) + xPointProperties->setPropertyValue( "FillColor", uno::Any( nColor ) ); + } + } + catch( const uno::Exception& ) + { + DBG_UNHANDLED_EXCEPTION( "chart2" ); + } +} + void ChartController::executeDispatch_LOKSetTextSelection(int nType, int nX, int nY) { if (!m_pDrawViewWrapper) -- cgit