diff options
-rw-r--r-- | chart2/source/view/charttypes/VSeriesPlotter.cxx | 21 | ||||
-rw-r--r-- | chart2/source/view/inc/VSeriesPlotter.hxx | 4 |
2 files changed, 18 insertions, 7 deletions
diff --git a/chart2/source/view/charttypes/VSeriesPlotter.cxx b/chart2/source/view/charttypes/VSeriesPlotter.cxx index c3b96d9912b9..360bce2c275f 100644 --- a/chart2/source/view/charttypes/VSeriesPlotter.cxx +++ b/chart2/source/view/charttypes/VSeriesPlotter.cxx @@ -2317,20 +2317,29 @@ std::vector<VDataSeries*> VSeriesPlotter::getAllSeries() return aAllSeries; } -uno::Sequence< OUString > VSeriesPlotter::getSeriesNames() const +uno::Sequence<OUString> VSeriesPlotter::getSeriesNames() const { std::vector<OUString> aRetVector; OUString aRole; - if( m_xChartTypeModel.is() ) + if (m_xChartTypeModel.is()) aRole = m_xChartTypeModel->getRoleOfSequenceForSeriesLabel(); - for (VDataSeries const* pSeries : getAllSeries()) + for (auto const& rGroup : m_aZSlots) { - if (pSeries) + if (!rGroup.empty()) { - OUString aSeriesName( DataSeriesHelper::getDataSeriesLabel( pSeries->getModel(), aRole ) ); - aRetVector.push_back( aSeriesName ); + VDataSeriesGroup const & rSeriesGroup(rGroup[0]); + if (!rSeriesGroup.m_aSeriesVector.empty()) + { + VDataSeries const * pSeries = rSeriesGroup.m_aSeriesVector[0].get(); + rtl::Reference< DataSeries > xSeries( pSeries ? pSeries->getModel() : nullptr ); + if( xSeries.is() ) + { + OUString aSeriesName( DataSeriesHelper::getDataSeriesLabel( xSeries, aRole ) ); + aRetVector.push_back( aSeriesName ); + } + } } } return comphelper::containerToSequence( aRetVector ); diff --git a/chart2/source/view/inc/VSeriesPlotter.hxx b/chart2/source/view/inc/VSeriesPlotter.hxx index 82cc45e6ace8..1b7961194ab2 100644 --- a/chart2/source/view/inc/VSeriesPlotter.hxx +++ b/chart2/source/view/inc/VSeriesPlotter.hxx @@ -234,8 +234,10 @@ public: void setExplicitCategoriesProvider( ExplicitCategoriesProvider* pExplicitCategoriesProvider ); + ExplicitCategoriesProvider* getExplicitCategoriesProvider() { return m_pExplicitCategoriesProvider; } + //get series names for the z axis labels - css::uno::Sequence< OUString > getSeriesNames() const; + css::uno::Sequence<OUString> getSeriesNames() const; void setPageReferenceSize( const css::awt::Size & rPageRefSize ); //better performance for big data |