From 17b0eb43ac23cd82a06d54432a0ec22cffa5b3c7 Mon Sep 17 00:00:00 2001 From: Balazs Varga Date: Thu, 1 Oct 2020 11:29:26 +0200 Subject: tdf#137165 chart2: fix label position in Position and Size MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit dialog window. Follow-up of commit 4223ff2be69f03e571464b0b09ad0d278918631b (tdf#48436 Chart: add CustomLabelPosition UNO API property). Change-Id: Ie676af7b9438b928041a404fb1efac6919b30030 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103750 Tested-by: László Németh Reviewed-by: László Németh --- .../source/controller/main/ChartController_Position.cxx | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'chart2/source/controller/main') diff --git a/chart2/source/controller/main/ChartController_Position.cxx b/chart2/source/controller/main/ChartController_Position.cxx index 32c4bd78522e..52664c356257 100644 --- a/chart2/source/controller/main/ChartController_Position.cxx +++ b/chart2/source/controller/main/ChartController_Position.cxx @@ -114,11 +114,6 @@ void ChartController::executeDispatch_PositionAndSize(const ::css::uno::Sequence if( aCID.isEmpty() ) return; - awt::Size aSelectedSize; - ExplicitValueProvider* pProvider( comphelper::getUnoTunnelImplementation( m_xChartView ) ); - if( pProvider ) - aSelectedSize = ToSize( pProvider->getRectangleOfObject( aCID ) ); - ObjectType eObjectType = ObjectIdentifier::getObjectType( aCID ); UndoGuard aUndoGuard( @@ -181,8 +176,13 @@ void ChartController::executeDispatch_PositionAndSize(const ::css::uno::Sequence if(pOutItemSet || pArgs) { - awt::Rectangle aObjectRect; - lcl_getPositionAndSizeFromItemSet( aItemSet, aObjectRect, aSelectedSize ); + awt::Rectangle aOldObjectRect; + ExplicitValueProvider* pProvider(comphelper::getUnoTunnelImplementation( m_xChartView )); + if( pProvider ) + aOldObjectRect = pProvider->getRectangleOfObject(aCID); + + awt::Rectangle aNewObjectRect; + lcl_getPositionAndSizeFromItemSet( aItemSet, aNewObjectRect, ToSize(aOldObjectRect) ); awt::Size aPageSize( ChartModelHelper::getPageSize( getModel() ) ); awt::Rectangle aPageRect( 0,0,aPageSize.Width,aPageSize.Height ); @@ -194,7 +194,7 @@ void ChartController::executeDispatch_PositionAndSize(const ::css::uno::Sequence } bool bMoved = PositionAndSizeHelper::moveObject( m_aSelection.getSelectedCID(), getModel() - , aObjectRect, awt::Rectangle(), aPageRect ); + , aNewObjectRect, aOldObjectRect, aPageRect ); if( bMoved || bChanged ) aUndoGuard.commit(); } -- cgit v1.2.3