summaryrefslogtreecommitdiff
path: root/editeng
diff options
context:
space:
mode:
authorNoel Grandin <noelgrandin@gmail.com>2021-08-21 18:21:48 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2021-08-22 18:54:08 +0200
commit4c5e264df432f4e6836535cbac7231ab579af424 (patch)
tree2c56b71dbaf5f3c587b34b75f4d85d06014d76e6 /editeng
parent008f28c9e01114e731f785e9e238236a1ed069d2 (diff)
no need to use unique_ptr for PolyPolygon
it is already a COW type Change-Id: If28f67bff3f8df7763bf4b574b1125d568f0ee27 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120821 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'editeng')
-rw-r--r--editeng/source/editeng/impedit.cxx10
-rw-r--r--editeng/source/editeng/impedit.hxx2
-rw-r--r--editeng/source/misc/txtrange.cxx6
3 files changed, 9 insertions, 9 deletions
diff --git a/editeng/source/editeng/impedit.cxx b/editeng/source/editeng/impedit.cxx
index 720e50e8a998..d1b00e478560 100644
--- a/editeng/source/editeng/impedit.cxx
+++ b/editeng/source/editeng/impedit.cxx
@@ -322,7 +322,7 @@ void ImpEditView::SelectionChanged()
}
// This function is also called when a text's font || size is changed. Because its highlight rectangle must be updated.
-void ImpEditView::lokSelectionCallback(const std::unique_ptr<tools::PolyPolygon> &pPolyPoly, bool bStartHandleVisible, bool bEndHandleVisible) {
+void ImpEditView::lokSelectionCallback(const std::optional<tools::PolyPolygon> &pPolyPoly, bool bStartHandleVisible, bool bEndHandleVisible) {
VclPtr<vcl::Window> pParent = pOutWin->GetParentWithLOKNotifier();
vcl::Region aRegion( *pPolyPoly );
@@ -487,7 +487,7 @@ void ImpEditView::DrawSelectionXOR( EditSelection aTmpSel, vcl::Region* pRegion,
bool bClipRegion = rTarget.IsClipRegion();
vcl::Region aOldRegion = rTarget.GetClipRegion();
- std::unique_ptr<tools::PolyPolygon> pPolyPoly;
+ std::optional<tools::PolyPolygon> pPolyPoly;
if ( !pRegion && !comphelper::LibreOfficeKit::isActive())
{
@@ -511,7 +511,7 @@ void ImpEditView::DrawSelectionXOR( EditSelection aTmpSel, vcl::Region* pRegion,
}
if (comphelper::LibreOfficeKit::isActive() || pRegion)
- pPolyPoly.reset(new tools::PolyPolygon);
+ pPolyPoly = tools::PolyPolygon();
DBG_ASSERT( !pEditEngine->IsIdleFormatterActive(), "DrawSelectionXOR: Not formatted!" );
aTmpSel.Adjust( pEditEngine->GetEditDoc() );
@@ -601,7 +601,7 @@ void ImpEditView::DrawSelectionXOR( EditSelection aTmpSel, vcl::Region* pRegion,
aTmpRect.SetRight(aLineXPosStartEnd.Max());
aTmpRect.Move(aLineOffset.Width(), 0);
ImplDrawHighlightRect(rTarget, aTmpRect.TopLeft(), aTmpRect.BottomRight(),
- pPolyPoly.get());
+ pPolyPoly ? &*pPolyPoly : nullptr);
}
else
{
@@ -627,7 +627,7 @@ void ImpEditView::DrawSelectionXOR( EditSelection aTmpSel, vcl::Region* pRegion,
aTmpRect.Move(aLineOffset.Width(), 0);
ImplDrawHighlightRect(rTarget, aTmpRect.TopLeft(), aTmpRect.BottomRight(),
- pPolyPoly.get());
+ pPolyPoly ? &*pPolyPoly : nullptr);
nTmpStartIndex = nTmpEndIndex;
}
}
diff --git a/editeng/source/editeng/impedit.hxx b/editeng/source/editeng/impedit.hxx
index 33504968bf18..216506c98828 100644
--- a/editeng/source/editeng/impedit.hxx
+++ b/editeng/source/editeng/impedit.hxx
@@ -307,7 +307,7 @@ private:
return mpEditViewCallbacks;
}
- void lokSelectionCallback(const std::unique_ptr<tools::PolyPolygon> &pPolyPoly, bool bStartHandleVisible, bool bEndHandleVisible);
+ void lokSelectionCallback(const std::optional<tools::PolyPolygon> &pPolyPoly, bool bStartHandleVisible, bool bEndHandleVisible);
void setEditViewCallbacks(EditViewCallbacks* pEditViewCallbacks)
{
diff --git a/editeng/source/misc/txtrange.cxx b/editeng/source/misc/txtrange.cxx
index dadc4fc6f315..6374747be3c9 100644
--- a/editeng/source/misc/txtrange.cxx
+++ b/editeng/source/misc/txtrange.cxx
@@ -54,7 +54,7 @@ TextRanger::TextRanger( const basegfx::B2DPolyPolygon& rPolyPolygon,
if( pLinePolyPolygon )
{
nCount = pLinePolyPolygon->count();
- mpLinePolyPolygon.reset( new tools::PolyPolygon() );
+ mpLinePolyPolygon = tools::PolyPolygon(nCount);
for(sal_uInt32 i(0); i < nCount; i++)
{
@@ -64,7 +64,7 @@ TextRanger::TextRanger( const basegfx::B2DPolyPolygon& rPolyPolygon,
}
}
else
- mpLinePolyPolygon = nullptr;
+ mpLinePolyPolygon.reset();
}
@@ -647,7 +647,7 @@ std::deque<tools::Long>* TextRanger::GetTextRanges( const Range& rRange )
SvxBoundArgs aArg( this, &(rngCache.results), rRange );
aArg.Calc( maPolyPolygon );
if( mpLinePolyPolygon )
- aArg.Concat( mpLinePolyPolygon.get() );
+ aArg.Concat( &*mpLinePolyPolygon );
//Add new result to the cache
mRangeCache.push_back(std::move(rngCache));
if (mRangeCache.size() > nCacheSize)