chart2/source/view/charttypes/AreaChart.cxx | 31 +++++++++++++---------- chart2/source/view/charttypes/VSeriesPlotter.cxx | 2 - 2 files changed, 19 insertions(+), 14 deletions(-)
New commits: commit 2731c7d6ba6d3e39b050ea61b6fe76bd621b0367 Author: Kohei Yoshida <kohei.yosh...@suse.com> Date: Tue Dec 13 16:18:03 2011 -0500 Prefer reference over pointer (when it makes sense). diff --git a/chart2/source/view/charttypes/AreaChart.cxx b/chart2/source/view/charttypes/AreaChart.cxx index 2e0161a..35f7033 100644 --- a/chart2/source/view/charttypes/AreaChart.cxx +++ b/chart2/source/view/charttypes/AreaChart.cxx @@ -647,9 +647,9 @@ void AreaChart::createShapes() //iterate through all x slots in this category to get 100percent sum for( ; aXSlotIter != aXSlotEnd; ++aXSlotIter ) { - ::std::vector< VDataSeries* >* pSeriesList = &(aXSlotIter->m_aSeriesVector); - std::vector<VDataSeries*>::iterator aSeriesIter = pSeriesList->begin(); - const std::vector<VDataSeries*>::iterator aSeriesEnd = pSeriesList->end(); + std::vector<VDataSeries*>& rSeriesList = aXSlotIter->m_aSeriesVector; + std::vector<VDataSeries*>::iterator aSeriesIter = rSeriesList.begin(); + const std::vector<VDataSeries*>::iterator aSeriesEnd = rSeriesList.end(); for( ; aSeriesIter != aSeriesEnd; ++aSeriesIter ) { @@ -688,9 +688,9 @@ void AreaChart::createShapes() aXSlotIter = aZSlotIter->begin(); for( sal_Int32 nX=0; aXSlotIter != aXSlotEnd; ++aXSlotIter, ++nX ) { - ::std::vector< VDataSeries* >* pSeriesList = &(aXSlotIter->m_aSeriesVector); - ::std::vector< VDataSeries* >::const_iterator aSeriesIter = pSeriesList->begin(); - const ::std::vector< VDataSeries* >::const_iterator aSeriesEnd = pSeriesList->end(); + std::vector<VDataSeries*>& rSeriesList = aXSlotIter->m_aSeriesVector; + std::vector<VDataSeries*>::const_iterator aSeriesIter = rSeriesList.begin(); + const std::vector<VDataSeries*>::const_iterator aSeriesEnd = rSeriesList.end(); std::map< sal_Int32, double > aLogicYForNextSeriesMap;//one for each different nAttachedAxisIndex //============================================================================= @@ -704,7 +704,7 @@ void AreaChart::createShapes() /* #i70133# ignore points outside of series length in standard area charts. Stacked area charts will use missing points as zeros. In standard charts, pSeriesList contains only one series. */ - if( m_bArea && (pSeriesList->size() == 1) && (nIndex >= (*aSeriesIter)->getTotalPointCount()) ) + if( m_bArea && (rSeriesList.size() == 1) && (nIndex >= (*aSeriesIter)->getTotalPointCount()) ) continue; uno::Reference< drawing::XShapes > xSeriesGroupShape_Shapes = getSeriesGroupShapeFrontChild(*aSeriesIter, m_xSeriesTarget); @@ -730,7 +730,7 @@ void AreaChart::createShapes() { if( (*aSeriesIter)->getMissingValueTreatment() == ::com::sun::star::chart::MissingValueTreatment::LEAVE_GAP ) { - if( pSeriesList->size() == 1 || nSeriesIndex == 0 ) + if( rSeriesList.size() == 1 || nSeriesIndex == 0 ) { fLogicY = pPosHelper->getLogicMinY(); if( !pPosHelper->isMathematicalOrientationY() ) @@ -741,7 +741,7 @@ void AreaChart::createShapes() } } - if( m_nDimension==3 && m_bArea && pSeriesList->size()!=1 ) + if( m_nDimension==3 && m_bArea && rSeriesList.size()!=1 ) fLogicY = fabs( fLogicY ); if( pPosHelper->isPercentY() && !::rtl::math::approxEqual( aLogicYSumMap[nAttachedAxisIndex], 0.0 ) ) commit 210341cecae3955b7bab3b8cefc6ee7c7b8fe821 Author: Kohei Yoshida <kohei.yosh...@suse.com> Date: Tue Dec 13 16:13:02 2011 -0500 fdo#43681: Always sort category axis when it's a date type. Or else we'd end up drawing a pretty interesting diagram... diff --git a/chart2/source/view/charttypes/AreaChart.cxx b/chart2/source/view/charttypes/AreaChart.cxx index e6d86aa..2e0161a 100644 --- a/chart2/source/view/charttypes/AreaChart.cxx +++ b/chart2/source/view/charttypes/AreaChart.cxx @@ -629,6 +629,8 @@ void AreaChart::createShapes() sal_Int32 nCreatedPoints = 0; // + bool bDateCategory = (m_pExplicitCategoriesProvider && m_pExplicitCategoriesProvider->isDateAxis()); + //============================================================================= //iterate through all x values per indices for( sal_Int32 nIndex = nStartIndex; nIndex < nEndIndex; nIndex++ ) @@ -646,8 +648,8 @@ void AreaChart::createShapes() for( ; aXSlotIter != aXSlotEnd; ++aXSlotIter ) { ::std::vector< VDataSeries* >* pSeriesList = &(aXSlotIter->m_aSeriesVector); - ::std::vector< VDataSeries* >::const_iterator aSeriesIter = pSeriesList->begin(); - const ::std::vector< VDataSeries* >::const_iterator aSeriesEnd = pSeriesList->end(); + std::vector<VDataSeries*>::iterator aSeriesIter = pSeriesList->begin(); + const std::vector<VDataSeries*>::iterator aSeriesEnd = pSeriesList->end(); for( ; aSeriesIter != aSeriesEnd; ++aSeriesIter ) { @@ -655,6 +657,9 @@ void AreaChart::createShapes() if(!pSeries) continue; + if (bDateCategory) + pSeries->doSortByXValues(); + sal_Int32 nAttachedAxisIndex = pSeries->getAttachedAxisIndex(); if( aLogicYSumMap.find(nAttachedAxisIndex)==aLogicYSumMap.end() ) aLogicYSumMap[nAttachedAxisIndex]=0.0; @@ -716,7 +721,7 @@ void AreaChart::createShapes() //collect data point information (logic coordinates, style ): double fLogicX = (*aSeriesIter)->getXValue(nIndex); - if( m_pExplicitCategoriesProvider && m_pExplicitCategoriesProvider->isDateAxis() ) + if (bDateCategory) fLogicX = DateHelper::RasterizeDateValue( fLogicX, m_aNullDate, m_nTimeResolution ); double fLogicY = (*aSeriesIter)->getYValue(nIndex); commit 746c6bb340e1b9557959d9f3d33adaa830790f2c Author: Kohei Yoshida <kohei.yosh...@suse.com> Date: Tue Dec 13 12:34:28 2011 -0500 Prefer pre-increments, especially with iterators. diff --git a/chart2/source/view/charttypes/AreaChart.cxx b/chart2/source/view/charttypes/AreaChart.cxx index 937ac09..e6d86aa 100644 --- a/chart2/source/view/charttypes/AreaChart.cxx +++ b/chart2/source/view/charttypes/AreaChart.cxx @@ -637,7 +637,7 @@ void AreaChart::createShapes() const ::std::vector< ::std::vector< VDataSeriesGroup > >::const_iterator aZSlotEnd = m_aZSlots.end(); std::map< sal_Int32, double > aLogicYSumMap;//one for each different nAttachedAxisIndex - for( ; aZSlotIter != aZSlotEnd; aZSlotIter++ ) + for( ; aZSlotIter != aZSlotEnd; ++aZSlotIter ) { ::std::vector< VDataSeriesGroup >::iterator aXSlotIter = aZSlotIter->begin(); const ::std::vector< VDataSeriesGroup >::const_iterator aXSlotEnd = aZSlotIter->end(); @@ -673,7 +673,7 @@ void AreaChart::createShapes() //============================================================================= aZSlotIter = m_aZSlots.begin(); - for( sal_Int32 nZ=1; aZSlotIter != aZSlotEnd; aZSlotIter++, nZ++ ) + for( sal_Int32 nZ=1; aZSlotIter != aZSlotEnd; ++aZSlotIter, ++nZ ) { ::std::vector< VDataSeriesGroup >::iterator aXSlotIter = aZSlotIter->begin(); const ::std::vector< VDataSeriesGroup >::const_iterator aXSlotEnd = aZSlotIter->end(); @@ -797,7 +797,7 @@ void AreaChart::createShapes() pPosHelper->isSameForGivenResolution( aFormerPoint.m_fX, aFormerPoint.m_fY, aFormerPoint.m_fZ , aScaledLogicPosition.PositionX, aScaledLogicPosition.PositionY, aScaledLogicPosition.PositionZ ) ) { - nSkippedPoints++; + ++nSkippedPoints; m_bPointsWereSkipped = true; continue; } diff --git a/chart2/source/view/charttypes/VSeriesPlotter.cxx b/chart2/source/view/charttypes/VSeriesPlotter.cxx index 5ba19a0..c7d4d9e 100644 --- a/chart2/source/view/charttypes/VSeriesPlotter.cxx +++ b/chart2/source/view/charttypes/VSeriesPlotter.cxx @@ -1405,7 +1405,7 @@ sal_Int32 VSeriesPlotter::getPointCount() const ::std::vector< ::std::vector< VDataSeriesGroup > >::const_iterator aZSlotIter = m_aZSlots.begin(); const ::std::vector< ::std::vector< VDataSeriesGroup > >::const_iterator aZSlotEnd = m_aZSlots.end(); - for( ; aZSlotIter != aZSlotEnd; aZSlotIter++ ) + for( ; aZSlotIter != aZSlotEnd; ++aZSlotIter ) { ::std::vector< VDataSeriesGroup >::const_iterator aXSlotIter = aZSlotIter->begin(); const ::std::vector< VDataSeriesGroup >::const_iterator aXSlotEnd = aZSlotIter->end(); _______________________________________________ Libreoffice-commits mailing list Libreoffice-commits@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits