summaryrefslogtreecommitdiff
path: root/chart2
diff options
context:
space:
mode:
authortagezi <lera.goncharuk@gmail.com>2017-11-21 15:54:38 +0200
committerMike Kaganski <mike.kaganski@collabora.com>2017-11-22 05:53:03 +0100
commita0ebba3d8855fee0bcec04a10137ae3a4f9f0e77 (patch)
tree44a816ab44289e73025708772867377dcb5e6a72 /chart2
parent921c8f50132de4042860956e102389c239da638a (diff)
tdf#39593 deduplicate code in ExplicitValueProvider
Change-Id: I0525761b0d1359b3e0f249cef02e1818af95156b Reviewed-on: https://gerrit.libreoffice.org/45037 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Diffstat (limited to 'chart2')
-rw-r--r--chart2/source/controller/chartapiwrapper/Chart2ModelContact.cxx8
-rw-r--r--chart2/source/inc/chartview/ExplicitValueProvider.hxx10
-rw-r--r--chart2/source/view/main/ChartView.cxx85
3 files changed, 20 insertions, 83 deletions
diff --git a/chart2/source/controller/chartapiwrapper/Chart2ModelContact.cxx b/chart2/source/controller/chartapiwrapper/Chart2ModelContact.cxx
index ffc60ec31ced..9c904996ebee 100644
--- a/chart2/source/controller/chartapiwrapper/Chart2ModelContact.cxx
+++ b/chart2/source/controller/chartapiwrapper/Chart2ModelContact.cxx
@@ -175,8 +175,8 @@ awt::Size Chart2ModelContact::GetPageSize() const
awt::Rectangle Chart2ModelContact::SubstractAxisTitleSizes( const awt::Rectangle& rPositionRect )
{
- awt::Rectangle aRect = ExplicitValueProvider::substractAxisTitleSizes(
- *mpModel, getChartView(), rPositionRect );
+ awt::Rectangle aRect = ExplicitValueProvider::AddSubtractAxisTitleSizes(
+ *mpModel, getChartView(), rPositionRect, true );
return aRect;
}
@@ -185,8 +185,8 @@ awt::Rectangle Chart2ModelContact::GetDiagramRectangleIncludingTitle() const
awt::Rectangle aRect( GetDiagramRectangleIncludingAxes() );
//add axis title sizes to the diagram size
- aRect = ExplicitValueProvider::addAxisTitleSizes(
- *mpModel, getChartView(), aRect );
+ aRect = ExplicitValueProvider::AddSubtractAxisTitleSizes(
+ *mpModel, getChartView(), aRect, false );
return aRect;
}
diff --git a/chart2/source/inc/chartview/ExplicitValueProvider.hxx b/chart2/source/inc/chartview/ExplicitValueProvider.hxx
index 05d50c6a2e82..afe0507d67d2 100644
--- a/chart2/source/inc/chartview/ExplicitValueProvider.hxx
+++ b/chart2/source/inc/chartview/ExplicitValueProvider.hxx
@@ -66,16 +66,10 @@ public:
static ExplicitValueProvider* getExplicitValueProvider( const css::uno::Reference< css::uno::XInterface >& xChartView );
static css::awt::Rectangle
- addAxisTitleSizes(
+ AddSubtractAxisTitleSizes(
ChartModel& rModel
, const css::uno::Reference< css::uno::XInterface >& xChartView
- , const css::awt::Rectangle& rExcludingPositionAndSize );
-
- static css::awt::Rectangle
- substractAxisTitleSizes(
- ChartModel& rModel
- , const css::uno::Reference< css::uno::XInterface >& xChartView
- , const css::awt::Rectangle& rPositionAndSizeIncludingTitles );
+ , const css::awt::Rectangle& rPositionAndSize, bool bSubtract );
static sal_Int32 getExplicitNumberFormatKeyForAxis(
const css::uno::Reference< css::chart2::XAxis >& xAxis
diff --git a/chart2/source/view/main/ChartView.cxx b/chart2/source/view/main/ChartView.cxx
index 49f1670e9f37..97a51c55c961 100644
--- a/chart2/source/view/main/ChartView.cxx
+++ b/chart2/source/view/main/ChartView.cxx
@@ -2089,12 +2089,12 @@ sal_Int32 ExplicitValueProvider::getExplicitPercentageNumberFormatKeyForDataLabe
return nFormat;
}
-awt::Rectangle ExplicitValueProvider::addAxisTitleSizes(
+awt::Rectangle ExplicitValueProvider::AddSubtractAxisTitleSizes(
ChartModel& rModel
, const Reference< uno::XInterface >& xChartView
- , const awt::Rectangle& rExcludingPositionAndSize )
+ , const awt::Rectangle& rPositionAndSize, bool bSubtract )
{
- awt::Rectangle aRet(rExcludingPositionAndSize);
+ awt::Rectangle aRet(rPositionAndSize);
//add axis title sizes to the diagram size
uno::Reference< chart2::XTitle > xTitle_Height( TitleHelper::getTitle( TitleHelper::TITLE_AT_STANDARD_X_AXIS_POSITION, rModel ) );
@@ -2146,78 +2146,21 @@ awt::Rectangle ExplicitValueProvider::addAxisTitleSizes(
if( nSecondTitleSpaceWidth )
nSecondTitleSpaceWidth+=lcl_getDiagramTitleSpace();
}
-
- aRet.X -= nTitleSpaceWidth;
- aRet.Y -= nSecondTitleSpaceHeight;
- aRet.Width += nTitleSpaceWidth + nSecondTitleSpaceWidth;
- aRet.Height += nTitleSpaceHeight + nSecondTitleSpaceHeight;
- }
- }
- return aRet;
-}
-
-awt::Rectangle ExplicitValueProvider::substractAxisTitleSizes(
- ChartModel& rModel
- , const Reference< uno::XInterface >& xChartView
- , const awt::Rectangle& rPositionAndSizeIncludingTitles )
-{
- awt::Rectangle aRet(rPositionAndSizeIncludingTitles);
-
- //add axis title sizes to the diagram size
- uno::Reference< chart2::XTitle > xTitle_Height( TitleHelper::getTitle( TitleHelper::TITLE_AT_STANDARD_X_AXIS_POSITION, rModel ) );
- uno::Reference< chart2::XTitle > xTitle_Width( TitleHelper::getTitle( TitleHelper::TITLE_AT_STANDARD_Y_AXIS_POSITION, rModel ) );
- uno::Reference< chart2::XTitle > xSecondTitle_Height( TitleHelper::getTitle( TitleHelper::SECONDARY_X_AXIS_TITLE, rModel ) );
- uno::Reference< chart2::XTitle > xSecondTitle_Width( TitleHelper::getTitle( TitleHelper::SECONDARY_Y_AXIS_TITLE, rModel ) );
- if( xTitle_Height.is() || xTitle_Width.is() || xSecondTitle_Height.is() || xSecondTitle_Width.is() )
- {
- ExplicitValueProvider* pExplicitValueProvider = ExplicitValueProvider::getExplicitValueProvider(xChartView);
- if( pExplicitValueProvider )
- {
- //detect whether x axis points into x direction or not
- if( lcl_getPropertySwapXAndYAxis( rModel.getFirstDiagram() ) )
+ if( bSubtract )
{
- std::swap( xTitle_Height, xTitle_Width );
- std::swap( xSecondTitle_Height, xSecondTitle_Width );
+ aRet.X += nTitleSpaceWidth;
+ aRet.Y += nSecondTitleSpaceHeight;
+ aRet.Width -= (nTitleSpaceWidth + nSecondTitleSpaceWidth);
+ aRet.Height -= (nTitleSpaceHeight + nSecondTitleSpaceHeight);
}
-
- sal_Int32 nTitleSpaceWidth = 0;
- sal_Int32 nTitleSpaceHeight = 0;
- sal_Int32 nSecondTitleSpaceWidth = 0;
- sal_Int32 nSecondTitleSpaceHeight = 0;
-
- if( xTitle_Height.is() )
- {
- OUString aCID_X( ObjectIdentifier::createClassifiedIdentifierForObject( xTitle_Height, rModel ) );
- nTitleSpaceHeight = pExplicitValueProvider->getRectangleOfObject( aCID_X, true ).Height;
- if( nTitleSpaceHeight )
- nTitleSpaceHeight+=lcl_getDiagramTitleSpace();
- }
- if( xTitle_Width.is() )
- {
- OUString aCID_Y( ObjectIdentifier::createClassifiedIdentifierForObject( xTitle_Width, rModel ) );
- nTitleSpaceWidth = pExplicitValueProvider->getRectangleOfObject( aCID_Y, true ).Width;
- if(nTitleSpaceWidth)
- nTitleSpaceWidth+=lcl_getDiagramTitleSpace();
- }
- if( xSecondTitle_Height.is() )
- {
- OUString aCID_X( ObjectIdentifier::createClassifiedIdentifierForObject( xSecondTitle_Height, rModel ) );
- nSecondTitleSpaceHeight = pExplicitValueProvider->getRectangleOfObject( aCID_X, true ).Height;
- if( nSecondTitleSpaceHeight )
- nSecondTitleSpaceHeight+=lcl_getDiagramTitleSpace();
- }
- if( xSecondTitle_Width.is() )
+ else
{
- OUString aCID_Y( ObjectIdentifier::createClassifiedIdentifierForObject( xSecondTitle_Width, rModel ) );
- nSecondTitleSpaceWidth += pExplicitValueProvider->getRectangleOfObject( aCID_Y, true ).Width;
- if( nSecondTitleSpaceWidth )
- nSecondTitleSpaceWidth+=lcl_getDiagramTitleSpace();
- }
- aRet.X += nTitleSpaceWidth;
- aRet.Y += nSecondTitleSpaceHeight;
- aRet.Width -= (nTitleSpaceWidth + nSecondTitleSpaceWidth);
- aRet.Height -= (nTitleSpaceHeight + nSecondTitleSpaceHeight);
+ aRet.X -= nTitleSpaceWidth;
+ aRet.Y -= nSecondTitleSpaceHeight;
+ aRet.Width += nTitleSpaceWidth + nSecondTitleSpaceWidth;
+ aRet.Height += nTitleSpaceHeight + nSecondTitleSpaceHeight;
+ }
}
}
return aRet;