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;

Reply via email to