diff options
Diffstat (limited to 'chart2/source/view/axes/Tickmarks_Equidistant.cxx')
-rw-r--r-- | chart2/source/view/axes/Tickmarks_Equidistant.cxx | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/chart2/source/view/axes/Tickmarks_Equidistant.cxx b/chart2/source/view/axes/Tickmarks_Equidistant.cxx index 48660a41d986..c1991fb3ba6e 100644 --- a/chart2/source/view/axes/Tickmarks_Equidistant.cxx +++ b/chart2/source/view/axes/Tickmarks_Equidistant.cxx @@ -23,6 +23,7 @@ #include <float.h> #include <limits> +#include <utility> namespace chart { @@ -70,9 +71,9 @@ double EquidistantTickFactory::getMaximumAtIncrement( double fMax, const Explici } EquidistantTickFactory::EquidistantTickFactory( - const ExplicitScaleData& rScale, const ExplicitIncrementData& rIncrement ) - : m_rScale( rScale ) - , m_rIncrement( rIncrement ) + ExplicitScaleData aScale, ExplicitIncrementData aIncrement ) + : m_rScale(std::move( aScale )) + , m_rIncrement(std::move( aIncrement )) { //@todo: make sure that the scale is valid for the scaling @@ -150,6 +151,7 @@ void EquidistantTickFactory::addSubTicks( sal_Int32 nDepth, uno::Sequence< uno:: return; uno::Sequence< double > aSubTicks(nMaxSubTickCount); + auto pSubTicks = aSubTicks.getArray(); sal_Int32 nRealSubTickCount = 0; sal_Int32 nIntervalCount = m_rIncrement.SubIncrements[nDepth-1].IntervalCount; @@ -163,13 +165,13 @@ void EquidistantTickFactory::addSubTicks( sal_Int32 nDepth, uno::Sequence< uno:: if(!pValue) continue; - aSubTicks[nRealSubTickCount] = *pValue; + pSubTicks[nRealSubTickCount] = *pValue; nRealSubTickCount++; } } aSubTicks.realloc(nRealSubTickCount); - rParentTicks[nDepth] = aSubTicks; + rParentTicks.getArray()[nDepth] = aSubTicks; if(static_cast<sal_Int32>(m_rIncrement.SubIncrements.size())>nDepth) addSubTicks( nDepth+1, rParentTicks ); } @@ -317,7 +319,9 @@ void EquidistantTickFactory::getAllTicks( TickInfoArraysType& rAllTickInfos ) co return; uno::Sequence< uno::Sequence< double > > aAllTicks(nDepthCount); - aAllTicks[0].realloc(nMaxMajorTickCount); + auto pAllTicks = aAllTicks.getArray(); + pAllTicks[0].realloc(nMaxMajorTickCount); + auto pAllTicks0 = pAllTicks[0].getArray(); sal_Int32 nRealMajorTickCount = 0; for( sal_Int32 nMajorTick=0; nMajorTick<nMaxMajorTickCount; nMajorTick++ ) @@ -325,12 +329,12 @@ void EquidistantTickFactory::getAllTicks( TickInfoArraysType& rAllTickInfos ) co double* pValue = getMajorTick( nMajorTick ); if(!pValue) continue; - aAllTicks[0][nRealMajorTickCount] = *pValue; + pAllTicks0[nRealMajorTickCount] = *pValue; nRealMajorTickCount++; } if(!nRealMajorTickCount) return; - aAllTicks[0].realloc(nRealMajorTickCount); + pAllTicks[0].realloc(nRealMajorTickCount); addSubTicks(1, aAllTicks); @@ -350,7 +354,7 @@ void EquidistantTickFactory::getAllTicks( TickInfoArraysType& rAllTickInfos ) co if( m_rIncrement.SubIncrements[nN].IntervalCount>1 ) nCheckCount *= m_rIncrement.SubIncrements[nN].IntervalCount; } - uno::Sequence< double >& rTicks = aAllTicks[nDepth]; + uno::Sequence< double >& rTicks = pAllTicks[nDepth]; sal_Int32 nCount = rTicks.getLength(); //check lower border for( nTick=0; nTick<nCheckCount && nTick<nCount; nTick++) @@ -377,8 +381,9 @@ void EquidistantTickFactory::getAllTicks( TickInfoArraysType& rAllTickInfos ) co uno::Sequence< double > aOldTicks(rTicks); rTicks.realloc(nNewCount); + auto pTicks = rTicks.getArray(); for(nTick = 0; nTick<nNewCount; nTick++) - rTicks[nTick] = aOldTicks[nInvisibleAtLowerBorder+nTick]; + pTicks[nTick] = aOldTicks[nInvisibleAtLowerBorder+nTick]; } } |