summaryrefslogtreecommitdiff
path: root/chart2/source/view/charttypes/VSeriesPlotter.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'chart2/source/view/charttypes/VSeriesPlotter.cxx')
-rw-r--r--chart2/source/view/charttypes/VSeriesPlotter.cxx24
1 files changed, 18 insertions, 6 deletions
diff --git a/chart2/source/view/charttypes/VSeriesPlotter.cxx b/chart2/source/view/charttypes/VSeriesPlotter.cxx
index 38a6bb865730..c0c061e61a3a 100644
--- a/chart2/source/view/charttypes/VSeriesPlotter.cxx
+++ b/chart2/source/view/charttypes/VSeriesPlotter.cxx
@@ -2062,13 +2062,25 @@ uno::Sequence< OUString > VSeriesPlotter::getSeriesNames() const
if( m_xChartTypeModel.is() )
aRole = m_xChartTypeModel->getRoleOfSequenceForSeriesLabel();
-
- VDataSeries* pFirstSeries = getFirstSeries();
- uno::Reference<XDataSeries> xSeries(pFirstSeries ? pFirstSeries->getModel() : nullptr);
- if (xSeries.is())
+ for (std::vector<VDataSeriesGroup> const & rGroup : m_aZSlots)
{
- OUString aSeriesName(DataSeriesHelper::getDataSeriesLabel(xSeries, aRole));
- aRetVector.push_back(aSeriesName);
+ std::vector<VDataSeriesGroup>::const_iterator aXSlotIter = rGroup.begin();
+ const std::vector<VDataSeriesGroup>::const_iterator aXSlotEnd = rGroup.end();
+
+ if (aXSlotIter != aXSlotEnd)
+ {
+ VDataSeriesGroup aSeriesGroup(*aXSlotIter);
+ if (aSeriesGroup.m_aSeriesVector.size())
+ {
+ VDataSeries* pSeries = aSeriesGroup.m_aSeriesVector[0];
+ uno::Reference< XDataSeries > xSeries( pSeries ? pSeries->getModel() : nullptr );
+ if( xSeries.is() )
+ {
+ OUString aSeriesName( DataSeriesHelper::getDataSeriesLabel( xSeries, aRole ) );
+ aRetVector.push_back( aSeriesName );
+ }
+ }
+ }
}
return comphelper::containerToSequence( aRetVector );
}