diff options
author | Noel Grandin <noel.grandin@collabora.co.uk> | 2022-02-07 11:12:45 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2022-02-07 11:21:24 +0100 |
commit | 372f5902200b46edd794c865f6d316a4a32d9cc6 (patch) | |
tree | 920c1d893a6b2736b15787d007c3a65ab101b3b1 /chart2/source/tools | |
parent | tdf#145868 sd replace: if search changes, restart find/replace (diff) | |
download | core-372f5902200b46edd794c865f6d316a4a32d9cc6.tar.gz core-372f5902200b46edd794c865f6d316a4a32d9cc6.zip |
crashtesting ooo#20372
this reverts parts of the "use more concrete types in chart2,
LabeledDataSequence" commits, since writer uses it's own implementation
of the XLabeledDataSequence UNO interface
Change-Id: Icc2c5e9a38f789cddd9fbca63301397ce759fbff
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129587
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'chart2/source/tools')
-rw-r--r-- | chart2/source/tools/AxisHelper.cxx | 4 | ||||
-rw-r--r-- | chart2/source/tools/DataSeriesHelper.cxx | 40 | ||||
-rw-r--r-- | chart2/source/tools/DataSource.cxx | 2 | ||||
-rw-r--r-- | chart2/source/tools/DataSourceHelper.cxx | 6 | ||||
-rw-r--r-- | chart2/source/tools/DiagramHelper.cxx | 38 | ||||
-rw-r--r-- | chart2/source/tools/InternalDataProvider.cxx | 4 | ||||
-rw-r--r-- | chart2/source/tools/RangeHighlighter.cxx | 4 | ||||
-rw-r--r-- | chart2/source/tools/StatisticsHelper.cxx | 12 |
8 files changed, 38 insertions, 72 deletions
diff --git a/chart2/source/tools/AxisHelper.cxx b/chart2/source/tools/AxisHelper.cxx index 52225c48b413..b8e8ca37c11f 100644 --- a/chart2/source/tools/AxisHelper.cxx +++ b/chart2/source/tools/AxisHelper.cxx @@ -212,11 +212,11 @@ sal_Int32 AxisHelper::getExplicitNumberFormatKeyForAxis( Reference< data::XDataSource > xSource( DataSourceHelper::getUsedData( *xChartDoc ) ); if( xSource.is() ) { - std::vector< rtl::Reference< LabeledDataSequence > > aXValues( + std::vector< uno::Reference< chart2::data::XLabeledDataSequence > > aXValues( DataSeriesHelper::getAllDataSequencesByRole( xSource->getDataSequences(), "values-x" ) ); if( aXValues.empty() ) { - rtl::Reference< LabeledDataSequence > xCategories( DiagramHelper::getCategoriesFromDiagram( xDiagram ) ); + uno::Reference< chart2::data::XLabeledDataSequence > xCategories( DiagramHelper::getCategoriesFromDiagram( xDiagram ) ); if( xCategories.is() ) { Reference< data::XDataSequence > xSeq( xCategories->getValues()); diff --git a/chart2/source/tools/DataSeriesHelper.cxx b/chart2/source/tools/DataSeriesHelper.cxx index 830a94d0a240..8ba8c3529f25 100644 --- a/chart2/source/tools/DataSeriesHelper.cxx +++ b/chart2/source/tools/DataSeriesHelper.cxx @@ -214,57 +214,53 @@ OUString getRole( const rtl::Reference< ::chart::LabeledDataSequence >& xLabeled return aRet; } -rtl::Reference< ::chart::LabeledDataSequence > +uno::Reference< chart2::data::XLabeledDataSequence > getDataSequenceByRole( const Reference< chart2::data::XDataSource > & xSource, const OUString& aRole, bool bMatchPrefix /* = false */ ) { - rtl::Reference< LabeledDataSequence > aNoResult; + uno::Reference< chart2::data::XLabeledDataSequence > aNoResult; if( ! xSource.is()) return aNoResult; const Sequence< Reference< chart2::data::XLabeledDataSequence > > aLabeledSeq( xSource->getDataSequences()); for (auto const & i : aLabeledSeq) { - auto p = dynamic_cast<LabeledDataSequence*>(i.get()); - assert(p); - if (lcl_MatchesRole(aRole, bMatchPrefix)(p)) - return p; + if (lcl_MatchesRole(aRole, bMatchPrefix)(i)) + return i; } return aNoResult; } -std::vector< rtl::Reference< LabeledDataSequence > > +std::vector< uno::Reference< chart2::data::XLabeledDataSequence > > getAllDataSequencesByRole( const Sequence< Reference< chart2::data::XLabeledDataSequence > > & aDataSequences, const OUString& aRole ) { - std::vector< rtl::Reference< LabeledDataSequence > > aResultVec; + std::vector< uno::Reference< chart2::data::XLabeledDataSequence > > aResultVec; for (const auto & i : aDataSequences) { - auto p = dynamic_cast<LabeledDataSequence*>(i.get()); - assert(p); - if (lcl_MatchesRole(aRole, /*bMatchPrefix*/true)(p)) - aResultVec.push_back(p); + if (lcl_MatchesRole(aRole, /*bMatchPrefix*/true)(i)) + aResultVec.push_back(i); } return aResultVec; } -std::vector< rtl::Reference< LabeledDataSequence > > - getAllDataSequencesByRole( const std::vector< rtl::Reference< LabeledDataSequence > > & aDataSequences, +std::vector< css::uno::Reference< css::chart2::data::XLabeledDataSequence > > + getAllDataSequencesByRole( const std::vector< uno::Reference< chart2::data::XLabeledDataSequence > > & aDataSequences, const OUString& aRole ) { - std::vector< rtl::Reference< LabeledDataSequence > > aResultVec; + std::vector< css::uno::Reference< css::chart2::data::XLabeledDataSequence > > aResultVec; std::copy_if( aDataSequences.begin(), aDataSequences.end(), std::back_inserter( aResultVec ), lcl_MatchesRole(aRole, /*bMatchPrefix*/true) ); return aResultVec; } -std::vector<rtl::Reference<LabeledDataSequence> > +std::vector<uno::Reference<chart2::data::XLabeledDataSequence> > getAllDataSequences( const uno::Sequence<uno::Reference<chart2::XDataSeries> >& aSeries ) { - std::vector< rtl::Reference< LabeledDataSequence > > aSeqVec; + std::vector< uno::Reference< chart2::data::XLabeledDataSequence > > aSeqVec; for( uno::Reference<chart2::XDataSeries> const & dataSeries : aSeries ) { @@ -274,9 +270,7 @@ getAllDataSequences( const uno::Sequence<uno::Reference<chart2::XDataSeries> >& const Sequence< Reference< chart2::data::XLabeledDataSequence > > aSeq( xSource->getDataSequences()); for (const auto & i : aSeq) { - auto p = dynamic_cast<LabeledDataSequence*>(i.get()); - assert(p); - aSeqVec.push_back(p); + aSeqVec.push_back(i); } } } @@ -284,14 +278,14 @@ getAllDataSequences( const uno::Sequence<uno::Reference<chart2::XDataSeries> >& return aSeqVec; } -std::vector<rtl::Reference<::chart::LabeledDataSequence> > +std::vector<uno::Reference<chart2::data::XLabeledDataSequence> > getAllDataSequences( const std::vector<rtl::Reference<DataSeries> >& aSeries ) { - std::vector< rtl::Reference< LabeledDataSequence > > aSeqVec; + std::vector< uno::Reference< chart2::data::XLabeledDataSequence > > aSeqVec; for( rtl::Reference<DataSeries> const & dataSeries : aSeries ) { - const std::vector< rtl::Reference< LabeledDataSequence > > & aSeq( dataSeries->getDataSequences2()); + const std::vector< uno::Reference< chart2::data::XLabeledDataSequence > > & aSeq( dataSeries->getDataSequences2()); aSeqVec.insert( aSeqVec.end(), aSeq.begin(), aSeq.end() ); } diff --git a/chart2/source/tools/DataSource.cxx b/chart2/source/tools/DataSource.cxx index d695fb3b4013..2770a76211d5 100644 --- a/chart2/source/tools/DataSource.cxx +++ b/chart2/source/tools/DataSource.cxx @@ -42,7 +42,7 @@ DataSource::DataSource( {} DataSource::DataSource( - const std::vector< rtl::Reference< ::chart::LabeledDataSequence > > & rSequences ) + const std::vector< uno::Reference< chart2::data::XLabeledDataSequence > > & rSequences ) { m_aDataSeq = comphelper::containerToSequence< Reference< chart2::data::XLabeledDataSequence > >(rSequences); } diff --git a/chart2/source/tools/DataSourceHelper.cxx b/chart2/source/tools/DataSourceHelper.cxx index fa0b4ebfcf1a..c2680446e1b8 100644 --- a/chart2/source/tools/DataSourceHelper.cxx +++ b/chart2/source/tools/DataSourceHelper.cxx @@ -291,17 +291,17 @@ uno::Reference< chart2::data::XDataSource > DataSourceHelper::getUsedData( uno::Reference< chart2::data::XDataSource > DataSourceHelper::getUsedData( ChartModel& rModel ) { - std::vector< rtl::Reference< LabeledDataSequence > > aResult; + std::vector< uno::Reference< chart2::data::XLabeledDataSequence > > aResult; rtl::Reference< Diagram > xDiagram = rModel.getFirstChartDiagram(); - rtl::Reference< LabeledDataSequence > xCategories( DiagramHelper::getCategoriesFromDiagram( xDiagram ) ); + uno::Reference< chart2::data::XLabeledDataSequence > xCategories( DiagramHelper::getCategoriesFromDiagram( xDiagram ) ); if( xCategories.is() ) aResult.push_back( xCategories ); std::vector< rtl::Reference< DataSeries > > aSeriesVector = ChartModelHelper::getDataSeries( &rModel ); for (auto const& series : aSeriesVector) { - const std::vector< rtl::Reference< LabeledDataSequence > > & aDataSequences( series->getDataSequences2() ); + const std::vector< uno::Reference< chart2::data::XLabeledDataSequence > > & aDataSequences( series->getDataSequences2() ); aResult.insert( aResult.end(), aDataSequences.begin(), aDataSequences.end() ); } diff --git a/chart2/source/tools/DiagramHelper.cxx b/chart2/source/tools/DiagramHelper.cxx index c45bb92e663e..53c530810b7b 100644 --- a/chart2/source/tools/DiagramHelper.cxx +++ b/chart2/source/tools/DiagramHelper.cxx @@ -490,7 +490,7 @@ void DiagramHelper::replaceCoordinateSystem( try { - rtl::Reference< LabeledDataSequence > xCategories = DiagramHelper::getCategoriesFromDiagram( xDiagram ); + uno::Reference< chart2::data::XLabeledDataSequence > xCategories = DiagramHelper::getCategoriesFromDiagram( xDiagram ); // move chart types of xCooSysToReplace to xReplacement xReplacement->setChartTypes( xCooSysToReplace->getChartTypes()); @@ -756,7 +756,7 @@ bool DiagramHelper::isCategoryDiagram( } void DiagramHelper::setCategoriesToDiagram( - const Reference< chart2::data::XLabeledDataSequence >& xCategories, + const uno::Reference< chart2::data::XLabeledDataSequence >& xCategories, const rtl::Reference< Diagram >& xDiagram, bool bSetAxisType /* = false */, bool bCategoryAxis /* = true */ ) @@ -782,38 +782,11 @@ void DiagramHelper::setCategoriesToDiagram( } } -void DiagramHelper::setCategoriesToDiagram( - const rtl::Reference< LabeledDataSequence >& xCategories, - const rtl::Reference< Diagram >& xDiagram, - bool bSetAxisType /* = false */, - bool bCategoryAxis /* = true */ ) -{ - std::vector< Reference< chart2::XAxis > > aCatAxes( - lcl_getAxisHoldingCategoriesFromDiagram( xDiagram )); - - for (const Reference< chart2::XAxis >& xCatAxis : aCatAxes) - { - if( xCatAxis.is()) - { - ScaleData aScaleData( xCatAxis->getScaleData()); - aScaleData.Categories = xCategories; - if( bSetAxisType ) - { - if( bCategoryAxis ) - aScaleData.AxisType = AxisType::CATEGORY; - else if( aScaleData.AxisType == AxisType::CATEGORY || aScaleData.AxisType == AxisType::DATE ) - aScaleData.AxisType = AxisType::REALNUMBER; - } - xCatAxis->setScaleData( aScaleData ); - } - } -} - -rtl::Reference< LabeledDataSequence > +uno::Reference< chart2::data::XLabeledDataSequence > DiagramHelper::getCategoriesFromDiagram( const rtl::Reference< Diagram > & xDiagram ) { - rtl::Reference< LabeledDataSequence > xResult; + uno::Reference< chart2::data::XLabeledDataSequence > xResult; try { @@ -828,8 +801,7 @@ rtl::Reference< LabeledDataSequence > ScaleData aScaleData( xCatAxis->getScaleData()); if( aScaleData.Categories.is() ) { - xResult = dynamic_cast<LabeledDataSequence*>(aScaleData.Categories.get()); - assert(!aScaleData.Categories || xResult); + xResult = aScaleData.Categories; uno::Reference<beans::XPropertySet> xProp(xResult->getValues(), uno::UNO_QUERY ); if( xProp.is() ) { diff --git a/chart2/source/tools/InternalDataProvider.cxx b/chart2/source/tools/InternalDataProvider.cxx index 7bcdc0cf8785..91e09b5ef303 100644 --- a/chart2/source/tools/InternalDataProvider.cxx +++ b/chart2/source/tools/InternalDataProvider.cxx @@ -117,8 +117,8 @@ struct lcl_internalizeSeries {} void operator() ( const rtl::Reference< DataSeries > & xSeries ) { - const std::vector< rtl::Reference< LabeledDataSequence > > & aOldSeriesData = xSeries->getDataSequences2(); - std::vector< rtl::Reference< LabeledDataSequence > > aNewSeriesData( aOldSeriesData.size() ); + const std::vector< uno::Reference< chart2::data::XLabeledDataSequence > > & aOldSeriesData = xSeries->getDataSequences2(); + std::vector< uno::Reference< chart2::data::XLabeledDataSequence > > aNewSeriesData( aOldSeriesData.size() ); for( sal_Int32 i=0; i<static_cast<sal_Int32>(aOldSeriesData.size()); ++i ) { sal_Int32 nNewIndex( m_bDataInColumns ? m_rInternalData.appendColumn() : m_rInternalData.appendRow() ); diff --git a/chart2/source/tools/RangeHighlighter.cxx b/chart2/source/tools/RangeHighlighter.cxx index 06d46efee17a..f2b2837b263f 100644 --- a/chart2/source/tools/RangeHighlighter.cxx +++ b/chart2/source/tools/RangeHighlighter.cxx @@ -272,8 +272,8 @@ void RangeHighlighter::fillRangesForDataPoint( const rtl::Reference< DataSeries Color nPreferredColor = defaultPreferredColor; std::vector< chart2::data::HighlightedRange > aHilightedRanges; - const std::vector< rtl::Reference< LabeledDataSequence > > & aLSeqSeq( xDataSeries->getDataSequences2()); - for( rtl::Reference< LabeledDataSequence > const & labelDataSeq : aLSeqSeq ) + const std::vector< uno::Reference< chart2::data::XLabeledDataSequence > > & aLSeqSeq( xDataSeries->getDataSequences2()); + for( uno::Reference< chart2::data::XLabeledDataSequence > const & labelDataSeq : aLSeqSeq ) { Reference< chart2::data::XDataSequence > xLabel( labelDataSeq->getLabel()); Reference< chart2::data::XDataSequence > xValues( labelDataSeq->getValues()); diff --git a/chart2/source/tools/StatisticsHelper.cxx b/chart2/source/tools/StatisticsHelper.cxx index ac748c1901c4..1d056e7fe223 100644 --- a/chart2/source/tools/StatisticsHelper.cxx +++ b/chart2/source/tools/StatisticsHelper.cxx @@ -70,7 +70,7 @@ double lcl_getVariance( const Sequence< double > & rData, sal_Int32 & rOutValidC return (fQuadSum - fSum*fSum/fN) / fN; } -rtl::Reference< ::chart::LabeledDataSequence > lcl_getErrorBarLabeledSequence( +uno::Reference< chart2::data::XLabeledDataSequence > lcl_getErrorBarLabeledSequence( const Reference< chart2::data::XDataSource > & xDataSource, bool bPositiveValue, bool bYError, OUString & rOutRoleNameUsed ) @@ -91,7 +91,7 @@ rtl::Reference< ::chart::LabeledDataSequence > lcl_getErrorBarLabeledSequence( aRole.append( "negative" ); OUString aLongRole = aRole.makeStringAndClear(); - rtl::Reference< ::chart::LabeledDataSequence > xLSeq = + uno::Reference< chart2::data::XLabeledDataSequence > xLSeq = ::chart::DataSeriesHelper::getDataSequenceByRole( xDataSource, aLongRole ); // try role without "-negative" or "-positive" postfix if( xLSeq.is()) @@ -189,17 +189,17 @@ double StatisticsHelper::getStandardError( const Sequence< double > & rData ) return sqrt( fVar ) / sqrt( double(nValCount) ); } -rtl::Reference< LabeledDataSequence > StatisticsHelper::getErrorLabeledDataSequenceFromDataSource( +uno::Reference< chart2::data::XLabeledDataSequence > StatisticsHelper::getErrorLabeledDataSequenceFromDataSource( const Reference< chart2::data::XDataSource > & xDataSource, bool bPositiveValue, bool bYError /* = true */ ) { - rtl::Reference< LabeledDataSequence > xResult; + uno::Reference< chart2::data::XLabeledDataSequence > xResult; if( !xDataSource.is()) return xResult; OUString aRole; - rtl::Reference< LabeledDataSequence > xLSeq = + uno::Reference< chart2::data::XLabeledDataSequence > xLSeq = lcl_getErrorBarLabeledSequence( xDataSource, bPositiveValue, bYError, aRole ); if( xLSeq.is()) xResult = xLSeq; @@ -212,7 +212,7 @@ Reference< chart2::data::XDataSequence > StatisticsHelper::getErrorDataSequenceF bool bPositiveValue, bool bYError /* = true */ ) { - rtl::Reference< LabeledDataSequence > xLSeq = + uno::Reference< chart2::data::XLabeledDataSequence > xLSeq = StatisticsHelper::getErrorLabeledDataSequenceFromDataSource( xDataSource, bPositiveValue, bYError ); |