chart2/source/controller/dialogs/TitleDialogData.cxx         |    4 +--
 chart2/source/controller/inc/ChartController.hxx             |    5 ++--
 chart2/source/controller/inc/TitleDialogData.hxx             |    4 +--
 chart2/source/controller/main/ChartController_Insert.cxx     |    9 +++----
 chart2/source/controller/main/ChartController_Properties.cxx |    4 +--
 chart2/source/controller/main/ChartController_Tools.cxx      |   13 +++--------
 chart2/source/controller/main/ChartTransferable.cxx          |   12 +++++-----
 7 files changed, 23 insertions(+), 28 deletions(-)

New commits:
commit dc3849eeb7cc3319659f0bf8d3dc3355e670b9e9
Author:     Noel Grandin <[email protected]>
AuthorDate: Fri Dec 15 21:21:55 2023 +0200
Commit:     Noel Grandin <[email protected]>
CommitDate: Sat Dec 16 10:44:24 2023 +0100

    no need to allocate this on the heap
    
    Change-Id: I89d4e680e6c8aabcc543605a0e496b3086dd2d3a
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160838
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <[email protected]>

diff --git a/chart2/source/controller/dialogs/TitleDialogData.cxx 
b/chart2/source/controller/dialogs/TitleDialogData.cxx
index f110b3d520bd..526c1fbc8430 100644
--- a/chart2/source/controller/dialogs/TitleDialogData.cxx
+++ b/chart2/source/controller/dialogs/TitleDialogData.cxx
@@ -31,7 +31,7 @@ namespace chart
 using namespace ::com::sun::star;
 using namespace ::com::sun::star::chart2;
 
-TitleDialogData::TitleDialogData( std::unique_ptr<ReferenceSizeProvider> 
pRefSizeProvider )
+TitleDialogData::TitleDialogData( std::optional<ReferenceSizeProvider> 
pRefSizeProvider )
         : aPossibilityList{ true, true, true, true, true, true, true }
         , aExistenceList{ false, false, false, false, false, false, false }
         , aTextList(7)
@@ -84,7 +84,7 @@ bool TitleDialogData::writeDifferenceToModel(
             {
                 TitleHelper::createTitle(
                     static_cast< TitleHelper::eTitleType >( nN ), 
aTextList[nN], xChartModel, xContext,
-                    apReferenceSizeProvider.get() );
+                    apReferenceSizeProvider.has_value() ? 
&*apReferenceSizeProvider : nullptr );
                 bChanged = true;
             }
             else
diff --git a/chart2/source/controller/inc/ChartController.hxx 
b/chart2/source/controller/inc/ChartController.hxx
index 9e72e09ddbd9..e6d42f139053 100644
--- a/chart2/source/controller/inc/ChartController.hxx
+++ b/chart2/source/controller/inc/ChartController.hxx
@@ -19,6 +19,7 @@
 #pragma once
 
 #include <LifeTime.hxx>
+#include <ReferenceSizeProvider.hxx>
 #include "CommandDispatchContainer.hxx"
 #include "SelectionHelper.hxx"
 
@@ -85,7 +86,7 @@ class ChartView;
 class ChartWindow;
 class DrawModelWrapper;
 class DrawViewWrapper;
-class ReferenceSizeProvider;
+class ViewElementListProvider;
 class ViewElementListProvider;
 class Diagram;
 class AccessibleChartView;
@@ -419,7 +420,7 @@ private:
     rtl::Reference<svx::sidebar::SelectionChangeHandler> 
mpSelectionChangeHandler;
 
     bool impl_isDisposedOrSuspended() const;
-    std::unique_ptr<ReferenceSizeProvider> impl_createReferenceSizeProvider();
+    ReferenceSizeProvider impl_createReferenceSizeProvider();
     void impl_adaptDataSeriesAutoResize();
 
     void impl_createDrawViewController();
diff --git a/chart2/source/controller/inc/TitleDialogData.hxx 
b/chart2/source/controller/inc/TitleDialogData.hxx
index 70b03c8a6565..1000cc58baf2 100644
--- a/chart2/source/controller/inc/TitleDialogData.hxx
+++ b/chart2/source/controller/inc/TitleDialogData.hxx
@@ -35,9 +35,9 @@ struct TitleDialogData
     css::uno::Sequence< sal_Bool > aPossibilityList;
     css::uno::Sequence< sal_Bool > aExistenceList;
     css::uno::Sequence< OUString > aTextList;
-    std::unique_ptr< ReferenceSizeProvider > apReferenceSizeProvider;
+    std::optional< ReferenceSizeProvider > apReferenceSizeProvider;
 
-    TitleDialogData(std::unique_ptr<ReferenceSizeProvider> 
pReferenzeSizeProvider = nullptr);
+    TitleDialogData(std::optional<ReferenceSizeProvider> 
pReferenzeSizeProvider = std::nullopt);
 
     void readFromModel( const rtl::Reference<::chart::ChartModel>& xChartModel 
);
     /* return true if anything has changed;
diff --git a/chart2/source/controller/main/ChartController_Insert.cxx 
b/chart2/source/controller/main/ChartController_Insert.cxx
index 60b059ceffa1..1038e97943db 100644
--- a/chart2/source/controller/main/ChartController_Insert.cxx
+++ b/chart2/source/controller/main/ChartController_Insert.cxx
@@ -111,11 +111,10 @@ void ChartController::executeDispatch_InsertAxes()
 
             InsertAxisOrGridDialogData aDialogOutput;
             aDlg.getResult(aDialogOutput);
-            std::unique_ptr< ReferenceSizeProvider > pRefSizeProvider(
-                impl_createReferenceSizeProvider());
+            ReferenceSizeProvider 
aRefSizeProvider(impl_createReferenceSizeProvider());
             bool bChanged = AxisHelper::changeVisibilityOfAxes( xDiagram
                 , aDialogInput.aExistenceList, aDialogOutput.aExistenceList, 
m_xCC
-                , pRefSizeProvider.get() );
+                , &aRefSizeProvider );
             if( bChanged )
                 aUndoGuard.commit();
         }
@@ -835,8 +834,8 @@ void ChartController::executeDispatch_InsertAxisTitle()
             else
                 eTitleType = TitleHelper::Z_AXIS_TITLE;
 
-            std::unique_ptr< ReferenceSizeProvider > apRefSizeProvider( 
impl_createReferenceSizeProvider());
-            xTitle = TitleHelper::createTitle( eTitleType, 
ObjectNameProvider::getTitleNameByType(eTitleType), getChartModel(), m_xCC, 
apRefSizeProvider.get() );
+            ReferenceSizeProvider aRefSizeProvider( 
impl_createReferenceSizeProvider());
+            xTitle = TitleHelper::createTitle( eTitleType, 
ObjectNameProvider::getTitleNameByType(eTitleType), getChartModel(), m_xCC, 
&aRefSizeProvider );
             aUndoGuard.commit();
         }
     }
diff --git a/chart2/source/controller/main/ChartController_Properties.cxx 
b/chart2/source/controller/main/ChartController_Properties.cxx
index 11d12bc77dbf..27d167bf70f9 100644
--- a/chart2/source/controller/main/ChartController_Properties.cxx
+++ b/chart2/source/controller/main/ChartController_Properties.cxx
@@ -738,13 +738,13 @@ bool 
ChartController::executeDlg_ObjectProperties_withoutUndoGuard(
 
         //convert properties to ItemSet
 
-        std::unique_ptr<ReferenceSizeProvider> 
pRefSizeProv(impl_createReferenceSizeProvider());
+        ReferenceSizeProvider aRefSizeProv(impl_createReferenceSizeProvider());
 
         std::unique_ptr<wrapper::ItemConverter> pItemConverter(
             createItemConverter( rObjectCID, getChartModel(), m_xCC,
                                  m_pDrawModelWrapper->getSdrModel(),
                                  m_xChartView.get(),
-                                 pRefSizeProv.get()));
+                                 &aRefSizeProv));
 
         if (!pItemConverter)
             return bRet;
diff --git a/chart2/source/controller/main/ChartController_Tools.cxx 
b/chart2/source/controller/main/ChartController_Tools.cxx
index 48dbfaf7f673..604148f8c9f8 100644
--- a/chart2/source/controller/main/ChartController_Tools.cxx
+++ b/chart2/source/controller/main/ChartController_Tools.cxx
@@ -164,18 +164,16 @@ bool lcl_deleteDataCurve(
 
 } // anonymous namespace
 
-std::unique_ptr<ReferenceSizeProvider> 
ChartController::impl_createReferenceSizeProvider()
+ReferenceSizeProvider ChartController::impl_createReferenceSizeProvider()
 {
     awt::Size aPageSize( ChartModelHelper::getPageSize( getChartModel() ) );
 
-    return std::make_unique<ReferenceSizeProvider>(aPageSize, getChartModel());
+    return ReferenceSizeProvider(aPageSize, getChartModel());
 }
 
 void ChartController::impl_adaptDataSeriesAutoResize()
 {
-    std::unique_ptr<ReferenceSizeProvider> 
pRefSizeProvider(impl_createReferenceSizeProvider());
-    if (pRefSizeProvider)
-        pRefSizeProvider->setValuesAtAllDataSeries();
+    impl_createReferenceSizeProvider().setValuesAtAllDataSeries();
 }
 
 void ChartController::executeDispatch_NewArrangement()
@@ -248,10 +246,7 @@ void ChartController::executeDispatch_ScaleText()
         m_xUndoManager );
     ControllerLockGuardUNO aCtlLockGuard( getChartModel() );
 
-    std::unique_ptr<ReferenceSizeProvider> 
pRefSizeProv(impl_createReferenceSizeProvider());
-    OSL_ASSERT(pRefSizeProv);
-    if (pRefSizeProv)
-        pRefSizeProv->toggleAutoResizeState();
+    impl_createReferenceSizeProvider().toggleAutoResizeState();
 
     aUndoGuard.commit();
 }
commit 3ca3fd6eafee8ead7578acfbc7d9a0f319ca7a4a
Author:     Noel Grandin <[email protected]>
AuthorDate: Fri Dec 15 21:39:10 2023 +0200
Commit:     Noel Grandin <[email protected]>
CommitDate: Sat Dec 16 10:44:10 2023 +0100

    no need to allocate this on the heap
    
    Change-Id: I99a41076db39b76f6dbbd5974039ee271c29eee5
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160840
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <[email protected]>

diff --git a/chart2/source/controller/main/ChartTransferable.cxx 
b/chart2/source/controller/main/ChartTransferable.cxx
index 2f27902ba1e3..9a94d45ff9ff 100644
--- a/chart2/source/controller/main/ChartTransferable.cxx
+++ b/chart2/source/controller/main/ChartTransferable.cxx
@@ -51,17 +51,17 @@ ChartTransferable::ChartTransferable(
     bool bDrawing)
     : m_bDrawing(bDrawing)
 {
-    std::unique_ptr<SdrExchangeView> pExchgView(std::make_unique<SdrView>( 
rSdrModel ));
-    SdrPageView* pPv = pExchgView->ShowSdrPage( rSdrModel.GetPage( 0 ));
+    SdrView aExchgView( rSdrModel );
+    SdrPageView* pPv = aExchgView.ShowSdrPage( rSdrModel.GetPage( 0 ));
     if( pSelectedObj )
-        pExchgView->MarkObj( pSelectedObj, pPv );
+        aExchgView.MarkObj( pSelectedObj, pPv );
     else
-        pExchgView->MarkAllObj( pPv );
-    Graphic aGraphic( pExchgView->GetMarkedObjMetaFile(true));
+        aExchgView.MarkAllObj( pPv );
+    Graphic aGraphic( aExchgView.GetMarkedObjMetaFile(true));
     m_xMetaFileGraphic.set( aGraphic.GetXGraphic());
     if ( m_bDrawing )
     {
-        m_xMarkedObjModel = pExchgView->CreateMarkedObjModel();
+        m_xMarkedObjModel = aExchgView.CreateMarkedObjModel();
     }
 }
 

Reply via email to