summaryrefslogtreecommitdiff
path: root/chart2
diff options
context:
space:
mode:
authorTomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>2022-05-06 15:46:43 +0900
committerTomaž Vajngerl <quikee@gmail.com>2022-05-11 01:58:31 +0200
commit462457455e9664a4ba79c4b21747cdb4e47da6ca (patch)
tree96475a984dd250ee1ea4cbe89b40bbe7e81e0220 /chart2
parent35f4f75a506839025bca529bd7cc5a60ffe7a20f (diff)
chart2: remove code duplication in VSeriesPlotter::getSeriesNames
Change-Id: Ib7b96e6fe0037a141efe696252ff2aa4a38ec327 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133924 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Diffstat (limited to 'chart2')
-rw-r--r--chart2/source/view/charttypes/VSeriesPlotter.cxx59
-rw-r--r--chart2/source/view/inc/VSeriesPlotter.hxx3
2 files changed, 34 insertions, 28 deletions
diff --git a/chart2/source/view/charttypes/VSeriesPlotter.cxx b/chart2/source/view/charttypes/VSeriesPlotter.cxx
index 26e462e82c32..eaa7f0743f03 100644
--- a/chart2/source/view/charttypes/VSeriesPlotter.cxx
+++ b/chart2/source/view/charttypes/VSeriesPlotter.cxx
@@ -2286,6 +2286,34 @@ OUString VSeriesPlotter::getCategoryName( sal_Int32 nPointIndex ) const
return OUString();
}
+std::vector<VDataSeries const*> VSeriesPlotter::getAllSeries() const
+{
+ std::vector<VDataSeries const*> aAllSeries;
+ for (std::vector<VDataSeriesGroup> const & rXSlot : m_aZSlots)
+ {
+ for(VDataSeriesGroup const & rGroup : rXSlot)
+ {
+ for (std::unique_ptr<VDataSeries> const & p : rGroup.m_aSeriesVector)
+ aAllSeries.push_back(p.get());
+ }
+ }
+ return aAllSeries;
+}
+
+std::vector<VDataSeries*> VSeriesPlotter::getAllSeries()
+{
+ std::vector<VDataSeries*> aAllSeries;
+ for (std::vector<VDataSeriesGroup> const & rXSlot : m_aZSlots)
+ {
+ for(VDataSeriesGroup const & rGroup : rXSlot)
+ {
+ for (std::unique_ptr<VDataSeries> const & p : rGroup.m_aSeriesVector)
+ aAllSeries.push_back(p.get());
+ }
+ }
+ return aAllSeries;
+}
+
uno::Sequence< OUString > VSeriesPlotter::getSeriesNames() const
{
std::vector<OUString> aRetVector;
@@ -2294,21 +2322,12 @@ uno::Sequence< OUString > VSeriesPlotter::getSeriesNames() const
if( m_xChartTypeModel.is() )
aRole = m_xChartTypeModel->getRoleOfSequenceForSeriesLabel();
- for (auto const& rGroup : m_aZSlots)
+ for (VDataSeries const* pSeries : getAllSeries())
{
- if (!rGroup.empty())
+ if (pSeries)
{
- 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 );
- }
- }
+ OUString aSeriesName( DataSeriesHelper::getDataSeriesLabel( pSeries->getModel(), aRole ) );
+ aRetVector.push_back( aSeriesName );
}
}
return comphelper::containerToSequence( aRetVector );
@@ -2431,20 +2450,6 @@ std::vector< ViewLegendEntry > VSeriesPlotter::createLegendEntries(
return aResult;
}
-std::vector<VDataSeries*> VSeriesPlotter::getAllSeries()
-{
- std::vector<VDataSeries*> aAllSeries;
- for (std::vector<VDataSeriesGroup> const & rXSlot : m_aZSlots)
- {
- for(VDataSeriesGroup const & rGroup : rXSlot)
- {
- for (std::unique_ptr<VDataSeries> const & p : rGroup.m_aSeriesVector)
- aAllSeries.push_back(p.get());
- }
- }
- return aAllSeries;
-}
-
namespace
{
bool lcl_HasVisibleLine( const uno::Reference< beans::XPropertySet >& xProps, bool& rbHasDashedLine )
diff --git a/chart2/source/view/inc/VSeriesPlotter.hxx b/chart2/source/view/inc/VSeriesPlotter.hxx
index 2182be97dcdb..90a73f1ee504 100644
--- a/chart2/source/view/inc/VSeriesPlotter.hxx
+++ b/chart2/source/view/inc/VSeriesPlotter.hxx
@@ -216,7 +216,8 @@ public:
const css::uno::Reference< css::uno::XComponentContext >& xContext
);
- std::vector< VDataSeries* > getAllSeries();
+ std::vector<VDataSeries*> getAllSeries();
+ std::vector<VDataSeries const*> getAllSeries() const;
// This method creates a series plotter of the requested type; e.g. : return new PieChart...
static VSeriesPlotter* createSeriesPlotter( const rtl::Reference< ::chart::ChartType >& xChartTypeModel