include/svx/svdoashp.hxx                   |    2 +-
 include/svx/svdobj.hxx                     |    4 +++-
 include/svx/svdocapt.hxx                   |    2 +-
 include/svx/svdogrp.hxx                    |    2 +-
 include/svx/svdoole2.hxx                   |    2 +-
 include/svx/svdorect.hxx                   |    2 +-
 include/svx/svdotable.hxx                  |    2 +-
 include/svx/svdotext.hxx                   |    2 +-
 include/svx/svdovirt.hxx                   |    3 ++-
 reportdesign/inc/RptObject.hxx             |    6 +++---
 reportdesign/source/core/sdr/RptObject.cxx |   12 ++++++------
 sc/source/core/data/postit.cxx             |    4 ++--
 svx/source/svdraw/svdoashp.cxx             |    5 +++--
 svx/source/svdraw/svdobj.cxx               |    2 +-
 svx/source/svdraw/svdocapt.cxx             |    4 ++--
 svx/source/svdraw/svdogrp.cxx              |    2 +-
 svx/source/svdraw/svdoole2.cxx             |    4 ++--
 svx/source/svdraw/svdorect.cxx             |    4 ++--
 svx/source/svdraw/svdotxtr.cxx             |    5 +++--
 svx/source/svdraw/svdovirt.cxx             |    4 ++--
 svx/source/table/svdotable.cxx             |    2 +-
 sw/inc/dcontact.hxx                        |    2 +-
 sw/source/core/draw/dcontact.cxx           |    4 ++--
 sw/source/core/draw/dflyobj.cxx            |    2 +-
 sw/source/core/inc/dflyobj.hxx             |    2 +-
 25 files changed, 45 insertions(+), 40 deletions(-)

New commits:
commit 510d3585d22d4a6bbaad9832141b5a3005c0c626
Author:     Noel Grandin <[email protected]>
AuthorDate: Mon Jul 29 15:16:07 2024 +0200
Commit:     Noel Grandin <[email protected]>
CommitDate: Tue Jul 30 07:14:23 2024 +0200

    tdf#161846 remove one layout operations (iii)
    
    of the 6 we perform per caption
    
    Change-Id: I5afbc296a9be4fcb732cfbe28d43a2ad45aa6c9e
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171172
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <[email protected]>

diff --git a/include/svx/svdoashp.hxx b/include/svx/svdoashp.hxx
index 0db44415c6f3..34f26acc33c1 100644
--- a/include/svx/svdoashp.hxx
+++ b/include/svx/svdoashp.hxx
@@ -179,7 +179,7 @@ public:
     virtual void NbcMirror(const Point& rRef1, const Point& rRef2) override;
     virtual void NbcShear(const Point& rRef, Degree100 nAngle, double tn, bool 
bVShear) override;
     virtual void NbcSetSnapRect(const tools::Rectangle& rRect) override;
-    virtual void NbcSetLogicRect(const tools::Rectangle& rRect) override;
+    virtual void NbcSetLogicRect(const tools::Rectangle& rRect, bool 
bAdaptTextMinSize = true) override;
 
     virtual SdrGluePoint GetVertexGluePoint(sal_uInt16 nNum) const override;
 
diff --git a/include/svx/svdobj.hxx b/include/svx/svdobj.hxx
index 127bf5c051e5..5519b7ff4493 100644
--- a/include/svx/svdobj.hxx
+++ b/include/svx/svdobj.hxx
@@ -564,7 +564,9 @@ public:
     // Logic Rect: for the Rect for instance without regard to rotation angle, 
shear, ...
     virtual const tools::Rectangle& GetLogicRect() const;
     virtual void SetLogicRect(const tools::Rectangle& rRect);
-    virtual void NbcSetLogicRect(const tools::Rectangle& rRect);
+    // @param bAdaptTextMinSize pass false if you know it it safe to avoid the 
cost of doing
+    //              text layout right now.
+    virtual void NbcSetLogicRect(const tools::Rectangle& rRect, bool 
bAdaptTextMinSize = true);
 
     // the default is to set the logic rect to the given rectangle rMaxRect. 
If the shape
     // has an intrinsic aspect ratio it may set the logic rect so the aspect
diff --git a/include/svx/svdocapt.hxx b/include/svx/svdocapt.hxx
index ffd8d4036f69..aa431b57aa53 100644
--- a/include/svx/svdocapt.hxx
+++ b/include/svx/svdocapt.hxx
@@ -124,7 +124,7 @@ public:
     SAL_DLLPRIVATE virtual Point GetRelativePos() const override;
 
     virtual const tools::Rectangle& GetLogicRect() const override;
-    SAL_DLLPRIVATE virtual void NbcSetLogicRect(const tools::Rectangle& rRect) 
override;
+    virtual void NbcSetLogicRect(const tools::Rectangle& rRect, bool 
bAdaptTextMinSize = true) override;
 
     SAL_DLLPRIVATE virtual sal_uInt32 GetSnapPointCount() const override;
     SAL_DLLPRIVATE virtual Point GetSnapPoint(sal_uInt32 i) const override;
diff --git a/include/svx/svdogrp.hxx b/include/svx/svdogrp.hxx
index e5e1203ed5b7..32a7750e90d4 100644
--- a/include/svx/svdogrp.hxx
+++ b/include/svx/svdogrp.hxx
@@ -107,7 +107,7 @@ public:
     virtual void NbcSetAnchorPos(const Point& rPnt) override;
     virtual void NbcSetRelativePos(const Point& rPnt) override;
     virtual void NbcSetSnapRect(const tools::Rectangle& rRect) override;
-    virtual void NbcSetLogicRect(const tools::Rectangle& rRect) override;
+    virtual void NbcSetLogicRect(const tools::Rectangle& rRect, bool 
bAdaptTextMinSize = true) override;
 
     virtual void NbcReformatText() override;
 
diff --git a/include/svx/svdoole2.hxx b/include/svx/svdoole2.hxx
index ec9a0f6b4d0e..1f89c237c1e8 100644
--- a/include/svx/svdoole2.hxx
+++ b/include/svx/svdoole2.hxx
@@ -146,7 +146,7 @@ public:
     virtual void NbcMove(const Size& rSize) override;
     virtual void NbcResize(const Point& rRef, const Fraction& xFact, const 
Fraction& yFact) override;
     virtual void NbcSetSnapRect(const tools::Rectangle& rRect) override;
-    virtual void NbcSetLogicRect(const tools::Rectangle& rRect) override;
+    virtual void NbcSetLogicRect(const tools::Rectangle& rRect, bool 
bAdaptTextMinSize = true) override;
     virtual void SetGeoData(const SdrObjGeoData& rGeo) override;
 
     static bool CanUnloadRunningObj( const css::uno::Reference< 
css::embed::XEmbeddedObject >& xObj,
diff --git a/include/svx/svdorect.hxx b/include/svx/svdorect.hxx
index af02a907aa36..7b1c1fca7629 100644
--- a/include/svx/svdorect.hxx
+++ b/include/svx/svdorect.hxx
@@ -95,7 +95,7 @@ public:
     virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) 
const override;
     virtual void RecalcSnapRect() override;
     virtual void NbcSetSnapRect(const tools::Rectangle& rRect) override;
-    virtual void NbcSetLogicRect(const tools::Rectangle& rRect) override;
+    virtual void NbcSetLogicRect(const tools::Rectangle& rRect, bool 
bAdaptTextMinSize = true) override;
     virtual basegfx::B2DPolyPolygon TakeXorPoly() const override;
 
     virtual sal_uInt32 GetHdlCount() const override;
diff --git a/include/svx/svdotable.hxx b/include/svx/svdotable.hxx
index 3f3573466651..4a7e8ad792b6 100644
--- a/include/svx/svdotable.hxx
+++ b/include/svx/svdotable.hxx
@@ -210,7 +210,7 @@ public:
     virtual void NbcSetSnapRect(const tools::Rectangle& rRect) override;
 
     virtual const tools::Rectangle& GetLogicRect() const override;
-    virtual void NbcSetLogicRect(const tools::Rectangle& rRect) override;
+    virtual void NbcSetLogicRect(const tools::Rectangle& rRect, bool 
bAdaptTextMinSize = true) override;
     virtual void AdjustToMaxRect( const tools::Rectangle& rMaxRect, bool 
bShrinkOnly = false ) override;
 
     virtual sal_uInt32 GetHdlCount() const override;
diff --git a/include/svx/svdotext.hxx b/include/svx/svdotext.hxx
index 201f17a70cdf..ba9e9783e146 100644
--- a/include/svx/svdotext.hxx
+++ b/include/svx/svdotext.hxx
@@ -481,7 +481,7 @@ public:
     virtual basegfx::B2DPolyPolygon TakeContour() const override;
     virtual void RecalcSnapRect() override;
     virtual void NbcSetSnapRect(const tools::Rectangle& rRect) override;
-    virtual void NbcSetLogicRect(const tools::Rectangle& rRect) override;
+    virtual void NbcSetLogicRect(const tools::Rectangle& rRect, bool 
bAdaptTextMinSize = true) override;
     virtual const tools::Rectangle& GetLogicRect() const override;
     virtual Degree100 GetRotateAngle() const override;
     virtual Degree100 GetShearAngle(bool bVertical = false) const override;
diff --git a/include/svx/svdovirt.hxx b/include/svx/svdovirt.hxx
index ca5f6858ecaa..2b47f25cbc57 100644
--- a/include/svx/svdovirt.hxx
+++ b/include/svx/svdovirt.hxx
@@ -133,7 +133,8 @@ public:
 
     virtual const tools::Rectangle& GetLogicRect() const override;
     virtual void SetLogicRect(const tools::Rectangle& rRect) override;
-    virtual void NbcSetLogicRect(const tools::Rectangle& rRect) override;
+    virtual void NbcSetLogicRect(const tools::Rectangle& rRect,
+                                 bool bAdaptTextMinSize = true) override;
 
     virtual Degree100 GetRotateAngle() const override;
     virtual Degree100 GetShearAngle(bool bVertical = false) const override;
diff --git a/reportdesign/inc/RptObject.hxx b/reportdesign/inc/RptObject.hxx
index d88ac2e5d1da..5920eb2bc8c2 100644
--- a/reportdesign/inc/RptObject.hxx
+++ b/reportdesign/inc/RptObject.hxx
@@ -149,7 +149,7 @@ private:
 
     virtual void NbcMove( const Size& rSize ) override;
     virtual void NbcResize(const Point& rRef, const Fraction& xFact, const 
Fraction& yFact) override;
-    virtual void NbcSetLogicRect(const tools::Rectangle& rRect) override;
+    virtual void NbcSetLogicRect(const tools::Rectangle& rRect, bool 
bAdaptTextMinSize = true) override;
     virtual bool EndCreate(SdrDragStat& rStat, SdrCreateCmd eCmd) override;
 
     virtual SdrPage* GetImplPage() const override;
@@ -200,7 +200,7 @@ private:
 
     virtual void NbcMove( const Size& rSize ) override;
     virtual void NbcResize(const Point& rRef, const Fraction& xFact, const 
Fraction& yFact) override;
-    virtual void NbcSetLogicRect(const tools::Rectangle& rRect) override;
+    virtual void NbcSetLogicRect(const tools::Rectangle& rRect, bool 
bAdaptTextMinSize = true) override;
     virtual bool EndCreate(SdrDragStat& rStat, SdrCreateCmd eCmd) override;
 
     virtual SdrPage* GetImplPage() const override;
@@ -241,7 +241,7 @@ class UNLESS_MERGELIBS_MORE(REPORTDESIGN_DLLPUBLIC) 
OUnoObject final : public Sd
 
     virtual void NbcMove( const Size& rSize ) override;
     virtual void NbcResize(const Point& rRef, const Fraction& xFact, const 
Fraction& yFact) override;
-    virtual void NbcSetLogicRect(const tools::Rectangle& rRect) override;
+    virtual void NbcSetLogicRect(const tools::Rectangle& rRect, bool 
bAdaptTextMinSize = true) override;
     virtual bool EndCreate(SdrDragStat& rStat, SdrCreateCmd eCmd) override;
 
     virtual SdrPage* GetImplPage() const override;
diff --git a/reportdesign/source/core/sdr/RptObject.cxx 
b/reportdesign/source/core/sdr/RptObject.cxx
index c3dfa8cf86db..d899534957d0 100644
--- a/reportdesign/source/core/sdr/RptObject.cxx
+++ b/reportdesign/source/core/sdr/RptObject.cxx
@@ -496,9 +496,9 @@ void OCustomShape::NbcResize(const Point& rRef, const 
Fraction& xFract, const Fr
     SetPropsFromRect(GetSnapRect());
 }
 
-void OCustomShape::NbcSetLogicRect(const tools::Rectangle& rRect)
+void OCustomShape::NbcSetLogicRect(const tools::Rectangle& rRect, bool 
bAdaptTextMinSize)
 {
-    SdrObjCustomShape::NbcSetLogicRect(rRect);
+    SdrObjCustomShape::NbcSetLogicRect(rRect, bAdaptTextMinSize);
     SetPropsFromRect(rRect);
 }
 
@@ -722,9 +722,9 @@ void OUnoObject::NbcResize(const Point& rRef, const 
Fraction& xFract, const Frac
     OObjectBase::StartListening();
 }
 
-void OUnoObject::NbcSetLogicRect(const tools::Rectangle& rRect)
+void OUnoObject::NbcSetLogicRect(const tools::Rectangle& rRect, bool 
bAdaptTextMinSize)
 {
-    SdrUnoObj::NbcSetLogicRect(rRect);
+    SdrUnoObj::NbcSetLogicRect(rRect, bAdaptTextMinSize);
     // stop listening
     OObjectBase::EndListening();
 
@@ -1042,9 +1042,9 @@ void OOle2Obj::NbcResize(const Point& rRef, const 
Fraction& xFract, const Fracti
     OObjectBase::StartListening();
 }
 
-void OOle2Obj::NbcSetLogicRect(const tools::Rectangle& rRect)
+void OOle2Obj::NbcSetLogicRect(const tools::Rectangle& rRect, bool 
bAdaptTextMinSize)
 {
-    SdrOle2Obj::NbcSetLogicRect(rRect);
+    SdrOle2Obj::NbcSetLogicRect(rRect, bAdaptTextMinSize);
     // stop listening
     OObjectBase::EndListening();
 
diff --git a/sc/source/core/data/postit.cxx b/sc/source/core/data/postit.cxx
index 9beb09c433d6..88c88307ebf3 100644
--- a/sc/source/core/data/postit.cxx
+++ b/sc/source/core/data/postit.cxx
@@ -214,7 +214,7 @@ void ScCaptionCreator::FitCaptionToRect( const 
tools::Rectangle* pVisRect )
     aCaptPos.setY( ::std::max< tools::Long >( aCaptPos.Y(), rVisRect.Top() ) );
     // update caption
     aCaptRect.SetPos( aCaptPos );
-    mxCaption->SetLogicRect( aCaptRect );
+    mxCaption->NbcSetLogicRect( aCaptRect, /*bAdaptTextMinSize*/false );
 }
 
 void ScCaptionCreator::AutoPlaceCaption( const tools::Rectangle* pVisRect )
@@ -690,7 +690,7 @@ void ScPostIt::CreateCaptionFromInitData( const ScAddress& 
rPos ) const
         tools::Long nPosX = bNegPage ? (aCellRect.Left() - 
xInitData->maCaptionOffset.X()) : (aCellRect.Right() + 
xInitData->maCaptionOffset.X());
         tools::Long nPosY = aCellRect.Top() + xInitData->maCaptionOffset.Y();
         tools::Rectangle aCaptRect( Point( nPosX, nPosY ), 
xInitData->maCaptionSize );
-        maNoteData.mxCaption->SetLogicRect( aCaptRect );
+        maNoteData.mxCaption->NbcSetLogicRect( aCaptRect, 
/*bAdaptTextMinSize*/false );
         aCreator.FitCaptionToRect();
     }
 
diff --git a/svx/source/svdraw/svdoashp.cxx b/svx/source/svdraw/svdoashp.cxx
index bca05cb58597..394cf7486155 100644
--- a/svx/source/svdraw/svdoashp.cxx
+++ b/svx/source/svdraw/svdoashp.cxx
@@ -1462,14 +1462,15 @@ void SdrObjCustomShape::SetSnapRect( const 
tools::Rectangle& rRect )
     SendUserCall(SdrUserCallType::Resize,aBoundRect0);
 }
 
-void SdrObjCustomShape::NbcSetLogicRect(const tools::Rectangle& rRectangle)
+void SdrObjCustomShape::NbcSetLogicRect(const tools::Rectangle& rRectangle, 
bool bAdaptTextMinSize)
 {
     tools::Rectangle aRectangle(rRectangle);
     ImpJustifyRect(aRectangle);
     setRectangle(aRectangle);
     InvalidateRenderGeometry();
 
-    AdaptTextMinSize();
+    if (bAdaptTextMinSize)
+        AdaptTextMinSize();
 
     SetBoundAndSnapRectsDirty();
     SetChanged();
diff --git a/svx/source/svdraw/svdobj.cxx b/svx/source/svdraw/svdobj.cxx
index 685cda435b5d..609a0bb2364c 100644
--- a/svx/source/svdraw/svdobj.cxx
+++ b/svx/source/svdraw/svdobj.cxx
@@ -1701,7 +1701,7 @@ const tools::Rectangle& SdrObject::GetLogicRect() const
     return GetSnapRect();
 }
 
-void SdrObject::NbcSetLogicRect(const tools::Rectangle& rRect)
+void SdrObject::NbcSetLogicRect(const tools::Rectangle& rRect, bool 
/*bAdaptTextMinSize*/)
 {
     NbcSetSnapRect(rRect);
 }
diff --git a/svx/source/svdraw/svdocapt.cxx b/svx/source/svdraw/svdocapt.cxx
index b3fd7bd536a9..8486866fca0d 100644
--- a/svx/source/svdraw/svdocapt.cxx
+++ b/svx/source/svdraw/svdocapt.cxx
@@ -602,9 +602,9 @@ const tools::Rectangle& SdrCaptionObj::GetLogicRect() const
     return getRectangle();
 }
 
-void SdrCaptionObj::NbcSetLogicRect(const tools::Rectangle& rRect)
+void SdrCaptionObj::NbcSetLogicRect(const tools::Rectangle& rRect, bool 
bAdaptTextMinSize)
 {
-    SdrRectObj::NbcSetLogicRect(rRect);
+    SdrRectObj::NbcSetLogicRect(rRect, bAdaptTextMinSize);
     ImpRecalcTail();
 }
 
diff --git a/svx/source/svdraw/svdogrp.cxx b/svx/source/svdraw/svdogrp.cxx
index 1dc75c4975b3..0fc90678738e 100644
--- a/svx/source/svdraw/svdogrp.cxx
+++ b/svx/source/svdraw/svdogrp.cxx
@@ -384,7 +384,7 @@ void SdrObjGroup::NbcSetSnapRect(const tools::Rectangle& 
rRect)
 }
 
 
-void SdrObjGroup::NbcSetLogicRect(const tools::Rectangle& rRect)
+void SdrObjGroup::NbcSetLogicRect(const tools::Rectangle& rRect, bool 
/*bAdaptTextMinSize*/)
 {
     NbcSetSnapRect(rRect);
 }
diff --git a/svx/source/svdraw/svdoole2.cxx b/svx/source/svdraw/svdoole2.cxx
index cb5800567929..3212314f4ade 100644
--- a/svx/source/svdraw/svdoole2.cxx
+++ b/svx/source/svdraw/svdoole2.cxx
@@ -1688,9 +1688,9 @@ void SdrOle2Obj::NbcSetSnapRect(const tools::Rectangle& 
rRect)
     }
 }
 
-void SdrOle2Obj::NbcSetLogicRect(const tools::Rectangle& rRect)
+void SdrOle2Obj::NbcSetLogicRect(const tools::Rectangle& rRect, bool 
bAdaptTextMinSize)
 {
-    SdrRectObj::NbcSetLogicRect(rRect);
+    SdrRectObj::NbcSetLogicRect(rRect, bAdaptTextMinSize);
 
     if( !getSdrModelFromSdrObject().isLocked() )
         ImpSetVisAreaSize();
diff --git a/svx/source/svdraw/svdorect.cxx b/svx/source/svdraw/svdorect.cxx
index d5775ccaa8c4..dfd04fd299b5 100644
--- a/svx/source/svdraw/svdorect.cxx
+++ b/svx/source/svdraw/svdorect.cxx
@@ -272,9 +272,9 @@ void SdrRectObj::NbcSetSnapRect(const tools::Rectangle& 
rRect)
     SetXPolyDirty();
 }
 
-void SdrRectObj::NbcSetLogicRect(const tools::Rectangle& rRect)
+void SdrRectObj::NbcSetLogicRect(const tools::Rectangle& rRect, bool 
bAdaptTextMinSize)
 {
-    SdrTextObj::NbcSetLogicRect(rRect);
+    SdrTextObj::NbcSetLogicRect(rRect, bAdaptTextMinSize);
     SetXPolyDirty();
 }
 
diff --git a/svx/source/svdraw/svdotxtr.cxx b/svx/source/svdraw/svdotxtr.cxx
index afd24c58e41d..55b717a17aab 100644
--- a/svx/source/svdraw/svdotxtr.cxx
+++ b/svx/source/svdraw/svdotxtr.cxx
@@ -72,12 +72,13 @@ const tools::Rectangle& SdrTextObj::GetLogicRect() const
     return getRectangle();
 }
 
-void SdrTextObj::NbcSetLogicRect(const tools::Rectangle& rRect)
+void SdrTextObj::NbcSetLogicRect(const tools::Rectangle& rRect, bool 
bAdaptTextMinSize)
 {
     setRectangle(rRect);
     ImpJustifyRect(maRectangle);
 
-    AdaptTextMinSize();
+    if (bAdaptTextMinSize)
+        AdaptTextMinSize();
 
     SetBoundAndSnapRectsDirty();
 }
diff --git a/svx/source/svdraw/svdovirt.cxx b/svx/source/svdraw/svdovirt.cxx
index 2e1641d3864e..2a4bc1e68c4d 100644
--- a/svx/source/svdraw/svdovirt.cxx
+++ b/svx/source/svdraw/svdovirt.cxx
@@ -480,12 +480,12 @@ void SdrVirtObj::SetLogicRect(const tools::Rectangle& 
rRect)
     SendUserCall(SdrUserCallType::Resize,aBoundRect0);
 }
 
-void SdrVirtObj::NbcSetLogicRect(const tools::Rectangle& rRect)
+void SdrVirtObj::NbcSetLogicRect(const tools::Rectangle& rRect, bool 
bAdaptTextMinSize)
 {
     tools::Rectangle aR(rRect);
     aR-=m_aAnchor;
     SetBoundAndSnapRectsDirty();
-    mxRefObj->NbcSetLogicRect(aR);
+    mxRefObj->NbcSetLogicRect(aR, bAdaptTextMinSize);
 }
 
 
diff --git a/svx/source/table/svdotable.cxx b/svx/source/table/svdotable.cxx
index da914b58dee4..a2b4ee89cfcb 100644
--- a/svx/source/table/svdotable.cxx
+++ b/svx/source/table/svdotable.cxx
@@ -1889,7 +1889,7 @@ void SdrTableObj::NbcSetOutlinerParaObject( 
std::optional<OutlinerParaObject> pT
 }
 
 
-void SdrTableObj::NbcSetLogicRect(const tools::Rectangle& rRect)
+void SdrTableObj::NbcSetLogicRect(const tools::Rectangle& rRect, bool 
/*bAdaptTextMinSize*/)
 {
     maLogicRect=rRect;
     ImpJustifyRect(maLogicRect);
diff --git a/sw/inc/dcontact.hxx b/sw/inc/dcontact.hxx
index c8bfa42e1eab..3b09f0e3fd68 100644
--- a/sw/inc/dcontact.hxx
+++ b/sw/inc/dcontact.hxx
@@ -280,7 +280,7 @@ class SwDrawVirtObj final : public SdrVirtObj
         virtual void NbcSetSnapRect(const tools::Rectangle& rRect) override;
         virtual const tools::Rectangle& GetLogicRect() const override;
         virtual void SetLogicRect(const tools::Rectangle& rRect) override;
-        virtual void NbcSetLogicRect(const tools::Rectangle& rRect) override;
+        virtual void NbcSetLogicRect(const tools::Rectangle& rRect, bool 
bAdaptTextMinSize = true) override;
         virtual Point GetSnapPoint(sal_uInt32 i) const override;
         virtual Point GetPoint(sal_uInt32 i) const override;
         virtual void NbcSetPoint(const Point& rPnt, sal_uInt32 i) override;
diff --git a/sw/source/core/draw/dcontact.cxx b/sw/source/core/draw/dcontact.cxx
index 98e28bb89411..4a025ad03b5b 100644
--- a/sw/source/core/draw/dcontact.cxx
+++ b/sw/source/core/draw/dcontact.cxx
@@ -2637,11 +2637,11 @@ void SwDrawVirtObj::SetLogicRect(const 
tools::Rectangle& rRect)
     SendUserCall(SdrUserCallType::Resize, aBoundRect0);
 }
 
-void SwDrawVirtObj::NbcSetLogicRect(const tools::Rectangle& rRect)
+void SwDrawVirtObj::NbcSetLogicRect(const tools::Rectangle& rRect, bool 
bAdaptTextMinSize)
 {
     tools::Rectangle aR(rRect);
     aR -= GetOffset();
-    mxRefObj->NbcSetLogicRect(aR);
+    mxRefObj->NbcSetLogicRect(aR, bAdaptTextMinSize);
     SetBoundAndSnapRectsDirty();
 }
 
diff --git a/sw/source/core/draw/dflyobj.cxx b/sw/source/core/draw/dflyobj.cxx
index a168958d9835..29a818a52847 100644
--- a/sw/source/core/draw/dflyobj.cxx
+++ b/sw/source/core/draw/dflyobj.cxx
@@ -624,7 +624,7 @@ void SwVirtFlyDrawObj::SetLogicRect(const tools::Rectangle& 
)
         m_pUserCall->Changed(*this, SdrUserCallType::Resize, aTmp);
 }
 
-void SwVirtFlyDrawObj::NbcSetLogicRect(const tools::Rectangle& )
+void SwVirtFlyDrawObj::NbcSetLogicRect(const tools::Rectangle&, bool 
/*bAdaptTextMinSize*/ )
 {
     SetRect();
 }
diff --git a/sw/source/core/inc/dflyobj.hxx b/sw/source/core/inc/dflyobj.hxx
index f20f590ced64..ae302806406c 100644
--- a/sw/source/core/inc/dflyobj.hxx
+++ b/sw/source/core/inc/dflyobj.hxx
@@ -111,7 +111,7 @@ public:
     virtual       void       NbcSetSnapRect(const tools::Rectangle& rRect) 
override;
     virtual const tools::Rectangle& GetLogicRect() const override;
     virtual       void       SetLogicRect(const tools::Rectangle& rRect) 
override;
-    virtual       void       NbcSetLogicRect(const tools::Rectangle& rRect) 
override;
+    virtual       void       NbcSetLogicRect(const tools::Rectangle& rRect, 
bool bAdaptTextMinSize = true) override;
     virtual ::basegfx::B2DPolyPolygon TakeXorPoly() const override;
     virtual       void       NbcMove  (const Size& rSiz) override;
     virtual       void       NbcResize(const Point& rRef, const Fraction& 
xFact,

Reply via email to