chart2/source/controller/dialogs/ObjectNameProvider.cxx | 5 +++-- chart2/source/inc/DataSourceHelper.hxx | 8 ++++---- chart2/source/inc/RegressionCurveHelper.hxx | 4 ++-- chart2/source/inc/RegressionCurveModel.hxx | 3 +++ chart2/source/model/main/ChartModel.cxx | 2 +- chart2/source/tools/DataSourceHelper.cxx | 14 +++++++------- chart2/source/tools/RangeHighlighter.cxx | 12 ++++++------ chart2/source/tools/RegressionCurveHelper.cxx | 4 ++-- chart2/source/tools/RegressionCurveModel.cxx | 6 ++++++ 9 files changed, 34 insertions(+), 24 deletions(-)
New commits: commit 50767acffde4b4b144a7ba4eb3d959ae30866333 Author: Noel Grandin <noelgran...@gmail.com> AuthorDate: Sat Apr 12 20:40:23 2025 +0200 Commit: Noel Grandin <noelgran...@gmail.com> CommitDate: Sun Apr 13 17:12:01 2025 +0200 use more concrete UNO in chart2 Change-Id: I6de2e5376cf2a9054d5bb06fc04884e89babd3df Reviewed-on: https://gerrit.libreoffice.org/c/core/+/184119 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk> diff --git a/chart2/source/controller/dialogs/ObjectNameProvider.cxx b/chart2/source/controller/dialogs/ObjectNameProvider.cxx index 2f4e9ba1668d..6ddddfffad23 100644 --- a/chart2/source/controller/dialogs/ObjectNameProvider.cxx +++ b/chart2/source/controller/dialogs/ObjectNameProvider.cxx @@ -38,6 +38,7 @@ #include <RegressionCurveHelper.hxx> #include <BaseCoordinateSystem.hxx> #include <RegressionCurveModel.hxx> +#include <RegressionCurveCalculator.hxx> #include <rtl/math.hxx> #include <rtl/ustring.hxx> #include <vcl/settings.hxx> @@ -565,7 +566,7 @@ OUString ObjectNameProvider::getHelpText( std::u16string_view rObjectCID, const { try { - Reference< chart2::XRegressionCurveCalculator > xCalculator( xCurve->getCalculator(), uno::UNO_SET_THROW ); + rtl::Reference< RegressionCurveCalculator > xCalculator( xCurve->getCurveCalculator() ); sal_Int32 aDegree = 2; sal_Int32 aPeriod = 2; sal_Int32 aMovingType = css::chart2::MovingAverageType::Prior; @@ -663,7 +664,7 @@ OUString ObjectNameProvider::getHelpText( std::u16string_view rObjectCID, const { try { - Reference< chart2::XRegressionCurveCalculator > xCalculator( xCurve->getCalculator(), uno::UNO_SET_THROW ); + rtl::Reference< RegressionCurveCalculator > xCalculator( xCurve->getCurveCalculator() ); RegressionCurveHelper::initializeCurveCalculator( xCalculator, xSeries, xChartModel ); const LocaleDataWrapper& rLocaleDataWrapper = Application::GetSettings().GetLocaleDataWrapper(); diff --git a/chart2/source/inc/RegressionCurveHelper.hxx b/chart2/source/inc/RegressionCurveHelper.hxx index cc5a32f1dd2f..2a0e8d311c9f 100644 --- a/chart2/source/inc/RegressionCurveHelper.hxx +++ b/chart2/source/inc/RegressionCurveHelper.hxx @@ -157,7 +157,7 @@ namespace chart::RegressionCurveHelper there is a data-sequence with role "values-x" */ void initializeCurveCalculator( - const css::uno::Reference<css::chart2::XRegressionCurveCalculator>& xOutCurveCalculator, + const rtl::Reference<RegressionCurveCalculator>& xOutCurveCalculator, const css::uno::Reference<css::chart2::data::XDataSource>& xSource, bool bUseXValuesIfAvailable ); @@ -167,7 +167,7 @@ namespace chart::RegressionCurveHelper also changed. */ void initializeCurveCalculator( - const css::uno::Reference<css::chart2::XRegressionCurveCalculator>& xOutCurveCalculator, + const rtl::Reference<RegressionCurveCalculator>& xOutCurveCalculator, const rtl::Reference<::chart::DataSeries>& xSeries, const rtl::Reference<::chart::ChartModel>& xModel ); diff --git a/chart2/source/inc/RegressionCurveModel.hxx b/chart2/source/inc/RegressionCurveModel.hxx index ddd75a8391a1..25729f849bb8 100644 --- a/chart2/source/inc/RegressionCurveModel.hxx +++ b/chart2/source/inc/RegressionCurveModel.hxx @@ -33,6 +33,7 @@ namespace chart { +class RegressionCurveCalculator; namespace impl { @@ -98,6 +99,8 @@ public: virtual void SAL_CALL removeModifyListener( const css::uno::Reference< css::util::XModifyListener >& aListener ) override; + rtl::Reference< RegressionCurveCalculator > getCurveCalculator(); + protected: // ____ XModifyListener ____ virtual void SAL_CALL modified( diff --git a/chart2/source/tools/RegressionCurveHelper.cxx b/chart2/source/tools/RegressionCurveHelper.cxx index 9dd5887851ef..a5a9a57ddc4b 100644 --- a/chart2/source/tools/RegressionCurveHelper.cxx +++ b/chart2/source/tools/RegressionCurveHelper.cxx @@ -170,7 +170,7 @@ rtl::Reference< RegressionCurveCalculator > RegressionCurveHelper::createRegress } void RegressionCurveHelper::initializeCurveCalculator( - const Reference< XRegressionCurveCalculator > & xOutCurveCalculator, + const rtl::Reference< RegressionCurveCalculator > & xOutCurveCalculator, const Reference< data::XDataSource > & xSource, bool bUseXValuesIfAvailable /* = true */ ) { @@ -231,7 +231,7 @@ void RegressionCurveHelper::initializeCurveCalculator( } void RegressionCurveHelper::initializeCurveCalculator( - const Reference< XRegressionCurveCalculator > & xOutCurveCalculator, + const rtl::Reference< RegressionCurveCalculator > & xOutCurveCalculator, const rtl::Reference< ::chart::DataSeries > & xSeries, const rtl::Reference<::chart::ChartModel> & xModel ) { diff --git a/chart2/source/tools/RegressionCurveModel.cxx b/chart2/source/tools/RegressionCurveModel.cxx index 7bc16f64fc96..1cf8d43e3874 100644 --- a/chart2/source/tools/RegressionCurveModel.cxx +++ b/chart2/source/tools/RegressionCurveModel.cxx @@ -170,6 +170,12 @@ uno::Reference< chart2::XRegressionCurveCalculator > SAL_CALL return RegressionCurveHelper::createRegressionCurveCalculatorByServiceName( getServiceName()); } +rtl::Reference< RegressionCurveCalculator > + RegressionCurveModel::getCurveCalculator() +{ + return RegressionCurveHelper::createRegressionCurveCalculatorByServiceName( getServiceName()); +} + uno::Reference< beans::XPropertySet > SAL_CALL RegressionCurveModel::getEquationProperties() { return m_xEquationProperties; commit deb736a4f32c0dd5c0ab024e736dd2fb90b10f6e Author: Noel Grandin <noelgran...@gmail.com> AuthorDate: Sat Apr 12 20:13:47 2025 +0200 Commit: Noel Grandin <noelgran...@gmail.com> CommitDate: Sun Apr 13 17:11:51 2025 +0200 no need to use Sequence here Change-Id: I88b24d4703d6a1dcbe6a90936a01eb9f893e386a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/184118 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk> diff --git a/chart2/source/inc/DataSourceHelper.hxx b/chart2/source/inc/DataSourceHelper.hxx index 4b4bcc804d7a..a683c6a1c4b6 100644 --- a/chart2/source/inc/DataSourceHelper.hxx +++ b/chart2/source/inc/DataSourceHelper.hxx @@ -74,10 +74,10 @@ public: static rtl::Reference< ::chart::DataSource > pressUsedDataIntoRectangularFormat( const rtl::Reference< ::chart::ChartModel >& xChartDoc ); - static css::uno::Sequence< OUString > getUsedDataRanges( + static std::vector< OUString > getUsedDataRanges( const rtl::Reference< ::chart::Diagram > & xDiagram ); - static css::uno::Sequence< OUString > getUsedDataRanges( + static std::vector< OUString > getUsedDataRanges( const rtl::Reference<::chart::ChartModel> & xChartModel ); static rtl::Reference< ::chart::DataSource > getUsedData( @@ -108,13 +108,13 @@ public: static bool allArgumentsForRectRangeDetected( const rtl::Reference<::chart::ChartModel>& xChartDocument ); - static css::uno::Sequence< OUString > getRangesFromLabeledDataSequence( + static std::vector< OUString > getRangesFromLabeledDataSequence( const css::uno::Reference< css::chart2::data::XLabeledDataSequence > & xLSeq ); static OUString getRangeFromValues( const css::uno::Reference< css::chart2::data::XLabeledDataSequence > & xLSeq ); - static css::uno::Sequence< OUString > getRangesFromDataSource( + static std::vector< OUString > getRangesFromDataSource( const css::uno::Reference< css::chart2::data::XDataSource > & xSource ); }; diff --git a/chart2/source/model/main/ChartModel.cxx b/chart2/source/model/main/ChartModel.cxx index ea09799e226e..be2e8fb9fae5 100644 --- a/chart2/source/model/main/ChartModel.cxx +++ b/chart2/source/model/main/ChartModel.cxx @@ -891,7 +891,7 @@ void SAL_CALL ChartModel::setArguments( const Sequence< beans::PropertyValue >& Sequence< OUString > SAL_CALL ChartModel::getUsedRangeRepresentations() { - return DataSourceHelper::getUsedDataRanges( this ); + return comphelper::containerToSequence(DataSourceHelper::getUsedDataRanges( this )); } Reference< chart2::data::XDataSource > SAL_CALL ChartModel::getUsedData() diff --git a/chart2/source/tools/DataSourceHelper.cxx b/chart2/source/tools/DataSourceHelper.cxx index 3e5681acf419..c0bd10b65543 100644 --- a/chart2/source/tools/DataSourceHelper.cxx +++ b/chart2/source/tools/DataSourceHelper.cxx @@ -247,7 +247,7 @@ rtl::Reference< DataSource > DataSourceHelper::pressUsedDataIntoRectangularForma return new DataSource( aResultVector ); } -uno::Sequence< OUString > DataSourceHelper::getUsedDataRanges( +std::vector< OUString > DataSourceHelper::getUsedDataRanges( const rtl::Reference< Diagram > & xDiagram ) { std::vector< OUString > aResult; @@ -266,10 +266,10 @@ uno::Sequence< OUString > DataSourceHelper::getUsedDataRanges( } } - return comphelper::containerToSequence( aResult ); + return aResult; } -uno::Sequence< OUString > DataSourceHelper::getUsedDataRanges( const rtl::Reference<::chart::ChartModel> & xChartModel ) +std::vector< OUString > DataSourceHelper::getUsedDataRanges( const rtl::Reference<::chart::ChartModel> & xChartModel ) { rtl::Reference< Diagram > xDiagram( xChartModel->getFirstChartDiagram() ); return getUsedDataRanges( xDiagram ); @@ -408,10 +408,10 @@ void DataSourceHelper::setRangeSegmentation( xDiagram->setDiagramData( xDataSource, aArguments ); } -Sequence< OUString > DataSourceHelper::getRangesFromLabeledDataSequence( +std::vector< OUString > DataSourceHelper::getRangesFromLabeledDataSequence( const Reference< data::XLabeledDataSequence > & xLSeq ) { - Sequence< OUString > aResult; + std::vector< OUString > aResult; if( xLSeq.is()) { Reference< data::XDataSequence > xLabel( xLSeq->getLabel()); @@ -450,7 +450,7 @@ OUString DataSourceHelper::getRangeFromValues( return aResult; } -Sequence< OUString > DataSourceHelper::getRangesFromDataSource( const Reference< data::XDataSource > & xSource ) +std::vector< OUString > DataSourceHelper::getRangesFromDataSource( const Reference< data::XDataSource > & xSource ) { std::vector< OUString > aResult; if( xSource.is()) @@ -467,7 +467,7 @@ Sequence< OUString > DataSourceHelper::getRangesFromDataSource( const Reference< aResult.push_back( xValues->getSourceRangeRepresentation()); } } - return comphelper::containerToSequence( aResult ); + return aResult; } } //namespace chart diff --git a/chart2/source/tools/RangeHighlighter.cxx b/chart2/source/tools/RangeHighlighter.cxx index ec23ab54c375..69a2951108a4 100644 --- a/chart2/source/tools/RangeHighlighter.cxx +++ b/chart2/source/tools/RangeHighlighter.cxx @@ -48,13 +48,13 @@ const Color defaultPreferredColor = COL_LIGHTBLUE; void lcl_fillRanges( Sequence< chart2::data::HighlightedRange > & rOutRanges, - const Sequence< OUString >& aRangeStrings, + const std::vector< OUString >& aRangeStrings, Color nPreferredColor, sal_Int32 nIndex = -1 ) { - rOutRanges.realloc( aRangeStrings.getLength()); + rOutRanges.realloc( aRangeStrings.size()); auto pOutRanges = rOutRanges.getArray(); - for( sal_Int32 i=0; i<aRangeStrings.getLength(); ++i ) + for( size_t i=0; i<aRangeStrings.size(); ++i ) { pOutRanges[i].RangeRepresentation = aRangeStrings[i]; pOutRanges[i].PreferredColor = sal_Int32(nPreferredColor); @@ -190,11 +190,11 @@ void RangeHighlighter::determineRanges() void RangeHighlighter::fillRangesForDiagram( const rtl::Reference< Diagram > & xDiagram ) { - Sequence< OUString > aSelectedRanges( DataSourceHelper::getUsedDataRanges( xDiagram )); - m_aSelectedRanges.realloc( aSelectedRanges.getLength()); + std::vector< OUString > aSelectedRanges( DataSourceHelper::getUsedDataRanges( xDiagram )); + m_aSelectedRanges.realloc( aSelectedRanges.size()); auto pSelectedRanges = m_aSelectedRanges.getArray(); // @todo: merge ranges - for( sal_Int32 i=0; i<aSelectedRanges.getLength(); ++i ) + for( size_t i=0; i<aSelectedRanges.size(); ++i ) { pSelectedRanges[i].RangeRepresentation = aSelectedRanges[i]; pSelectedRanges[i].Index = -1;