canvas/source/directx/dx_canvashelper.cxx                |    3 --
 canvas/source/tools/canvastools.cxx                      |   20 ++++++---------
 cppcanvas/source/mtfrenderer/cachedprimitivebase.cxx     |    4 ---
 cppcanvas/source/mtfrenderer/implrenderer.cxx            |   10 ++-----
 cppcanvas/source/mtfrenderer/transparencygroupaction.cxx |    6 +---
 cppcanvas/source/wrapper/implcanvas.cxx                  |    4 ---
 include/canvas/canvastools.hxx                           |   10 +++----
 7 files changed, 20 insertions(+), 37 deletions(-)

New commits:
commit e289fdedeb326a37253be509962c6c8ba0ccee80
Author:     Xisco Fauli <xiscofa...@libreoffice.org>
AuthorDate: Tue Nov 19 13:55:54 2024 +0100
Commit:     Xisco Fauli <xiscofa...@libreoffice.org>
CommitDate: Tue Nov 19 15:45:34 2024 +0100

    canvas: simplify getViewStateTransform/getRenderStateTransform
    
    Change-Id: If9487aff0d80f7ee9d368cd97bc2828a856cc392
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176766
    Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org>
    Tested-by: Jenkins

diff --git a/canvas/source/directx/dx_canvashelper.cxx 
b/canvas/source/directx/dx_canvashelper.cxx
index 1184886784c9..bd3523a134b9 100644
--- a/canvas/source/directx/dx_canvashelper.cxx
+++ b/canvas/source/directx/dx_canvashelper.cxx
@@ -728,8 +728,7 @@ namespace dxcanvas
                           "CanvasHelper::setupGraphicsState: reference device 
invalid" );
 
         // setup view transform first. Clipping e.g. depends on it
-        ::basegfx::B2DHomMatrix aTransform;
-        ::canvas::tools::getViewStateTransform(aTransform, viewState);
+        ::basegfx::B2DHomMatrix aTransform = 
::canvas::tools::getViewStateTransform(viewState);
 
         // add output offset
         if( !maOutputOffset.equalZero() )
diff --git a/canvas/source/tools/canvastools.cxx 
b/canvas/source/tools/canvastools.cxx
index b77524351b96..4b227c0b1c0d 100644
--- a/canvas/source/tools/canvastools.cxx
+++ b/canvas/source/tools/canvastools.cxx
@@ -91,10 +91,10 @@ namespace canvas::tools
             return viewState;
         }
 
-        ::basegfx::B2DHomMatrix& getViewStateTransform( 
::basegfx::B2DHomMatrix&    transform,
-                                                        const 
rendering::ViewState& viewState )
+        ::basegfx::B2DHomMatrix getViewStateTransform( const 
rendering::ViewState& viewState )
         {
-            return ::basegfx::unotools::homMatrixFromAffineMatrix( transform, 
viewState.AffineTransform );
+            ::basegfx::B2DHomMatrix aTransform;
+            return ::basegfx::unotools::homMatrixFromAffineMatrix( aTransform, 
viewState.AffineTransform );
         }
 
         rendering::ViewState& setViewStateTransform( rendering::ViewState&     
     viewState,
@@ -105,10 +105,10 @@ namespace canvas::tools
             return viewState;
         }
 
-        ::basegfx::B2DHomMatrix& getRenderStateTransform( 
::basegfx::B2DHomMatrix&      transform,
-                                                          const 
rendering::RenderState& renderState )
+        ::basegfx::B2DHomMatrix getRenderStateTransform( const 
rendering::RenderState& renderState )
         {
-            return ::basegfx::unotools::homMatrixFromAffineMatrix( transform, 
renderState.AffineTransform );
+            ::basegfx::B2DHomMatrix aTransform;
+            return ::basegfx::unotools::homMatrixFromAffineMatrix( aTransform, 
renderState.AffineTransform );
         }
 
         rendering::RenderState& setRenderStateTransform( 
rendering::RenderState&        renderState,
@@ -122,18 +122,14 @@ namespace canvas::tools
         rendering::RenderState& appendToRenderState( rendering::RenderState&   
     renderState,
                                                    const 
::basegfx::B2DHomMatrix&   rTransform )
         {
-            ::basegfx::B2DHomMatrix transform;
-
-            getRenderStateTransform( transform, renderState );
+            ::basegfx::B2DHomMatrix transform = getRenderStateTransform( 
renderState );
             return setRenderStateTransform( renderState, transform * 
rTransform );
         }
 
         rendering::RenderState& prependToRenderState( rendering::RenderState&  
         renderState,
                                                       const 
::basegfx::B2DHomMatrix&    rTransform )
         {
-            ::basegfx::B2DHomMatrix transform;
-
-            getRenderStateTransform( transform, renderState );
+            ::basegfx::B2DHomMatrix transform = getRenderStateTransform( 
renderState );
             return setRenderStateTransform( renderState, rTransform * 
transform );
         }
 
diff --git a/cppcanvas/source/mtfrenderer/cachedprimitivebase.cxx 
b/cppcanvas/source/mtfrenderer/cachedprimitivebase.cxx
index 99f4f95ecc9a..94cc42f77e4a 100644
--- a/cppcanvas/source/mtfrenderer/cachedprimitivebase.cxx
+++ b/cppcanvas/source/mtfrenderer/cachedprimitivebase.cxx
@@ -47,9 +47,7 @@ namespace cppcanvas::internal
             SAL_INFO( "cppcanvas.emf", 
"::cppcanvas::internal::CachedPrimitiveBase: 0x" << std::hex << this );
 
             const rendering::ViewState  aViewState( mpCanvas->getViewState() );
-            ::basegfx::B2DHomMatrix     aTotalTransform;
-
-            ::canvas::tools::getViewStateTransform( aTotalTransform,
+            ::basegfx::B2DHomMatrix     aTotalTransform = 
::canvas::tools::getViewStateTransform(
                                                     aViewState );
             aTotalTransform *= rTransformation;
 
diff --git a/cppcanvas/source/mtfrenderer/implrenderer.cxx 
b/cppcanvas/source/mtfrenderer/implrenderer.cxx
index 4a041ee5de5a..381387080bd3 100644
--- a/cppcanvas/source/mtfrenderer/implrenderer.cxx
+++ b/cppcanvas/source/mtfrenderer/implrenderer.cxx
@@ -2980,9 +2980,7 @@ namespace cppcanvas::internal
                 // render subset of actions
                 // ========================
 
-                ::basegfx::B2DHomMatrix aMatrix;
-                ::canvas::tools::getRenderStateTransform( aMatrix,
-                                                          getRenderState() );
+                ::basegfx::B2DHomMatrix aMatrix = 
::canvas::tools::getRenderStateTransform( getRenderState() );
 
                 ActionRenderer aRenderer( aMatrix );
 
@@ -3024,8 +3022,7 @@ namespace cppcanvas::internal
             // query bounds for subset of actions
             // ==================================
 
-            ::basegfx::B2DHomMatrix aMatrix;
-            ::canvas::tools::getRenderStateTransform( aMatrix,
+            ::basegfx::B2DHomMatrix aMatrix = 
::canvas::tools::getRenderStateTransform(
                                                       getRenderState() );
 
             AreaQuery aQuery( aMatrix );
@@ -3043,8 +3040,7 @@ namespace cppcanvas::internal
         {
             SAL_INFO( "cppcanvas.emf", 
"::cppcanvas::internal::ImplRenderer::draw()" );
 
-            ::basegfx::B2DHomMatrix aMatrix;
-            ::canvas::tools::getRenderStateTransform( aMatrix,
+            ::basegfx::B2DHomMatrix aMatrix = 
::canvas::tools::getRenderStateTransform(
                                                       getRenderState() );
 
             try
diff --git a/cppcanvas/source/mtfrenderer/transparencygroupaction.cxx 
b/cppcanvas/source/mtfrenderer/transparencygroupaction.cxx
index c3c1cfdf50f6..1f62c0bc30d9 100644
--- a/cppcanvas/source/mtfrenderer/transparencygroupaction.cxx
+++ b/cppcanvas/source/mtfrenderer/transparencygroupaction.cxx
@@ -176,12 +176,10 @@ namespace cppcanvas::internal
 
                 // determine overall transformation matrix (render, view,
                 // and passed transformation)
-                ::basegfx::B2DHomMatrix aTransform;
-                ::canvas::tools::getRenderStateTransform( aTransform, maState 
);
+                ::basegfx::B2DHomMatrix aTransform = 
::canvas::tools::getRenderStateTransform( maState );
                 aTransform = rTransformation * aTransform;
 
-                ::basegfx::B2DHomMatrix aTotalTransform;
-                ::canvas::tools::getViewStateTransform( aTotalTransform, 
mpCanvas->getViewState() );
+                ::basegfx::B2DHomMatrix aTotalTransform = 
::canvas::tools::getViewStateTransform( mpCanvas->getViewState() );
                 aTotalTransform = aTotalTransform * aTransform;
 
                 // since pure translational changes to the transformation
diff --git a/cppcanvas/source/wrapper/implcanvas.cxx 
b/cppcanvas/source/wrapper/implcanvas.cxx
index 81b5a3759fd6..6f13f7452e65 100644
--- a/cppcanvas/source/wrapper/implcanvas.cxx
+++ b/cppcanvas/source/wrapper/implcanvas.cxx
@@ -55,9 +55,7 @@ namespace cppcanvas::internal
 
         ::basegfx::B2DHomMatrix ImplCanvas::getTransformation() const
         {
-            ::basegfx::B2DHomMatrix aMatrix;
-            return ::canvas::tools::getViewStateTransform( aMatrix,
-                                                           maViewState );
+            return ::canvas::tools::getViewStateTransform( maViewState );
         }
 
         void ImplCanvas::setClip( const ::basegfx::B2DPolyPolygon& rClipPoly )
diff --git a/include/canvas/canvastools.hxx b/include/canvas/canvastools.hxx
index cf9ca35180e6..be6f55aafebb 100644
--- a/include/canvas/canvastools.hxx
+++ b/include/canvas/canvastools.hxx
@@ -129,17 +129,15 @@ namespace canvas
         CANVASTOOLS_DLLPUBLIC css::rendering::ViewState&
             initViewState( css::rendering::ViewState&                          
viewState );
 
-        CANVASTOOLS_DLLPUBLIC ::basegfx::B2DHomMatrix&
-            getViewStateTransform( ::basegfx::B2DHomMatrix&                    
transform,
-                                   const css::rendering::ViewState&            
viewState );
+        CANVASTOOLS_DLLPUBLIC ::basegfx::B2DHomMatrix
+            getViewStateTransform( const css::rendering::ViewState&            
viewState );
 
         CANVASTOOLS_DLLPUBLIC css::rendering::ViewState&
             setViewStateTransform( css::rendering::ViewState&                  
viewState,
                                    const ::basegfx::B2DHomMatrix&              
transform );
 
-        CANVASTOOLS_DLLPUBLIC ::basegfx::B2DHomMatrix&
-            getRenderStateTransform( ::basegfx::B2DHomMatrix&                  
transform,
-                                     const css::rendering::RenderState&        
renderState );
+        CANVASTOOLS_DLLPUBLIC ::basegfx::B2DHomMatrix
+            getRenderStateTransform( const css::rendering::RenderState&        
renderState );
 
         CANVASTOOLS_DLLPUBLIC css::rendering::RenderState&
             setRenderStateTransform( css::rendering::RenderState&              
renderState,

Reply via email to