sc/source/ui/app/transobj.cxx    |    2 +-
 sc/source/ui/docshell/docsh4.cxx |    4 ++--
 sc/source/ui/inc/printfun.hxx    |    2 +-
 sc/source/ui/unoobj/docuno.cxx   |    2 +-
 sc/source/ui/view/printfun.cxx   |   30 ++++++++++++++----------------
 5 files changed, 19 insertions(+), 21 deletions(-)

New commits:
commit 476b851d00b1b5ca380b86cabce842f475b38677
Author:     Xisco Fauli <xiscofa...@libreoffice.org>
AuthorDate: Fri Apr 25 17:18:16 2025 +0200
Commit:     Xisco Fauli <xiscofa...@libreoffice.org>
CommitDate: Fri Apr 25 21:30:46 2025 +0200

    ScPrintFunc::DrawToDev: pass ScViewData by ref
    
    Change-Id: Ia7e0b8e4c56ecfc9525ac45bfdb3d4304877e4c1
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/184632
    Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org>
    Tested-by: Jenkins

diff --git a/sc/source/ui/app/transobj.cxx b/sc/source/ui/app/transobj.cxx
index 16a93d557461..afa196082728 100644
--- a/sc/source/ui/app/transobj.cxx
+++ b/sc/source/ui/app/transobj.cxx
@@ -108,7 +108,7 @@ void ScTransferObj::PaintToDev( OutputDevice* pDev, 
ScDocument& rDoc, double nPr
     aViewData.SetScreen( rBlock.aStart.Col(), rBlock.aStart.Row(),
                             rBlock.aEnd.Col(), rBlock.aEnd.Row() );
 
-    ScPrintFunc::DrawToDev( rDoc, pDev, nPrintFactor, aBound, &aViewData, 
false/*bMetaFile*/ );
+    ScPrintFunc::DrawToDev( rDoc, pDev, nPrintFactor, aBound, aViewData, 
false/*bMetaFile*/ );
 }
 
 ScTransferObj::ScTransferObj( const std::shared_ptr<ScDocument>& pClipDoc, 
TransferableObjectDescriptor aDesc ) :
diff --git a/sc/source/ui/docshell/docsh4.cxx b/sc/source/ui/docshell/docsh4.cxx
index f404aa0d7210..18f75ccc8c44 100644
--- a/sc/source/ui/docshell/docsh4.cxx
+++ b/sc/source/ui/docshell/docsh4.cxx
@@ -2422,7 +2422,7 @@ void ScDocShell::Draw( OutputDevice* pDev, const JobSetup 
& /* rSetup */, sal_uI
         aTmpData.SetTabNo(nVisTab);
         SnapVisArea( aBoundRect );
         aTmpData.SetScreen( aBoundRect );
-        ScPrintFunc::DrawToDev( *m_pDocument, pDev, 1.0, aBoundRect, 
&aTmpData, true );
+        ScPrintFunc::DrawToDev( *m_pDocument, pDev, 1.0, aBoundRect, aTmpData, 
true );
     }
     else
     {
@@ -2434,7 +2434,7 @@ void ScDocShell::Draw( OutputDevice* pDev, const JobSetup 
& /* rSetup */, sal_uI
         if ( aNewArea != aOldArea && (m_pDocument->GetPosLeft() > 0 || 
m_pDocument->GetPosTop() > 0) )
             SfxObjectShell::SetVisArea( aNewArea );
         aTmpData.SetScreen( aNewArea );
-        ScPrintFunc::DrawToDev( *m_pDocument, pDev, 1.0, aNewArea, &aTmpData, 
true );
+        ScPrintFunc::DrawToDev( *m_pDocument, pDev, 1.0, aNewArea, aTmpData, 
true );
     }
 
     pDev->SetLayoutMode( nOldLayoutMode );
diff --git a/sc/source/ui/inc/printfun.hxx b/sc/source/ui/inc/printfun.hxx
index 04c1019e0f80..736b09def508 100644
--- a/sc/source/ui/inc/printfun.hxx
+++ b/sc/source/ui/inc/printfun.hxx
@@ -338,7 +338,7 @@ public:
                     ~ScPrintFunc();
 
     static void     DrawToDev( ScDocument& rDoc, OutputDevice* pDev, double 
nPrintFactor,
-                               const tools::Rectangle& rBound, ScViewData* 
pViewData, bool bMetaFile );
+                               const tools::Rectangle& rBound, ScViewData& 
rViewData, bool bMetaFile );
 
     void            SetDrawView( FmFormView* pNew );
 
diff --git a/sc/source/ui/unoobj/docuno.cxx b/sc/source/ui/unoobj/docuno.cxx
index 9de63dee2b47..3b8927d84d11 100644
--- a/sc/source/ui/unoobj/docuno.cxx
+++ b/sc/source/ui/unoobj/docuno.cxx
@@ -2689,7 +2689,7 @@ void SAL_CALL ScModelObj::render( sal_Int32 nSelRenderer, 
const uno::Any& aSelec
         // The bMetaFile argument maybe could be
         // pDev->GetConnectMetaFile() != nullptr
         // but for some yet unknown reason does not draw cell content if true.
-        ScPrintFunc::DrawToDev( rDoc, pDev, nPrintFactor, aBound, &aViewData, 
false /*bMetaFile*/ );
+        ScPrintFunc::DrawToDev( rDoc, pDev, nPrintFactor, aBound, aViewData, 
false /*bMetaFile*/ );
 
         return;
     }
diff --git a/sc/source/ui/view/printfun.cxx b/sc/source/ui/view/printfun.cxx
index 1b66b85906eb..1cf873093bd3 100644
--- a/sc/source/ui/view/printfun.cxx
+++ b/sc/source/ui/view/printfun.cxx
@@ -435,16 +435,14 @@ static void lcl_HidePrint( const ScTableInfo& rTabInfo, 
SCCOL nX1, SCCOL nX2 )
 //      -   Preview of templates
 
 void ScPrintFunc::DrawToDev(ScDocument& rDoc, OutputDevice* pDev, double /* 
nPrintFactor */,
-                            const tools::Rectangle& rBound, ScViewData* 
pViewData, bool bMetaFile)
+                            const tools::Rectangle& rBound, ScViewData& 
rViewData, bool bMetaFile)
 {
     if (rDoc.GetMaxTableNumber() < 0)
         return;
 
     //! evaluate nPrintFactor !!!
 
-    SCTAB nTab = 0;
-    if (pViewData)
-        nTab = pViewData->GetTabNo();
+    SCTAB nTab = rViewData.GetTabNo();
 
     bool bDoGrid, bNullVal, bFormula;
     ScStyleSheetPool* pStylePool = rDoc.GetStyleSheetPool();
@@ -483,16 +481,16 @@ void ScPrintFunc::DrawToDev(ScDocument& rDoc, 
OutputDevice* pDev, double /* nPri
         nX2 = aRange.aEnd.Col();
         nY2 = aRange.aEnd.Row();
     }
-    else if (pViewData)
+    else
     {
-        ScSplitPos eWhich = pViewData->GetActivePart();
+        ScSplitPos eWhich = rViewData.GetActivePart();
         ScHSplitPos eHWhich = WhichH(eWhich);
         ScVSplitPos eVWhich = WhichV(eWhich);
-        nX1 = pViewData->GetPosX(eHWhich);
-        nY1 = pViewData->GetPosY(eVWhich);
-        nX2 = nX1 + pViewData->VisibleCellsX(eHWhich);
+        nX1 = rViewData.GetPosX(eHWhich);
+        nY1 = rViewData.GetPosY(eVWhich);
+        nX2 = nX1 + rViewData.VisibleCellsX(eHWhich);
         if (nX2>nX1) --nX2;
-        nY2 = nY1 + pViewData->VisibleCellsY(eVWhich);
+        nY2 = nY1 + rViewData.VisibleCellsY(eVWhich);
         if (nY2>nY1) --nY2;
     }
 
@@ -591,14 +589,14 @@ void ScPrintFunc::DrawToDev(ScDocument& rDoc, 
OutputDevice* pDev, double /* nPri
 
     //!     nZoom for GetFont in OutputData ???
 
-    if (!bMetaFile && pViewData)
-        pDev->SetMapMode(pViewData->GetLogicMode(pViewData->GetActivePart()));
+    if (!bMetaFile)
+        pDev->SetMapMode(rViewData.GetLogicMode(rViewData.GetActivePart()));
 
     // #i72502#
     const Point aMMOffset(aOutputData.PrePrintDrawingLayer(nLogStX, nLogStY));
     aOutputData.PrintDrawingLayer(SC_LAYER_BACK, aMMOffset);
 
-    if (!bMetaFile && pViewData)
+    if (!bMetaFile)
         pDev->SetMapMode(aMode);
 
     aOutputData.DrawBackground(*pDev);
@@ -608,14 +606,14 @@ void ScPrintFunc::DrawToDev(ScDocument& rDoc, 
OutputDevice* pDev, double /* nPri
     aOutputData.DrawSparklines(*pDev);
     aOutputData.DrawStrings();
 
-    if (!bMetaFile && pViewData)
-        pDev->SetMapMode(pViewData->GetLogicMode(pViewData->GetActivePart()));
+    if (!bMetaFile)
+        pDev->SetMapMode(rViewData.GetLogicMode(rViewData.GetActivePart()));
 
     aOutputData.DrawEdit(!bMetaFile);
 
     if (bDoGrid)
     {
-        if (!bMetaFile && pViewData)
+        if (!bMetaFile)
             pDev->SetMapMode(aMode);
 
         aOutputData.DrawGrid(*pDev, true, false);    // no page breaks

Reply via email to