summaryrefslogtreecommitdiff
path: root/sc
diff options
context:
space:
mode:
authorMike Kaganski <mike.kaganski@collabora.com>2021-07-23 16:55:04 +0200
committerMike Kaganski <mike.kaganski@collabora.com>2021-07-23 19:22:58 +0200
commit51371d7e652366b3967d1b5ab6b6217d1ade78d2 (patch)
treea5e3b5592187582e7e93d6ab030730df0a2d4d64 /sc
parent1908717ff7610ab57bd19b4225571637ecad11a3 (diff)
Use vector instead of unique_ptr
Change-Id: Iea1fb26d9e176283a96d6f0d18dae5b58e55602e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119432 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Diffstat (limited to 'sc')
-rw-r--r--sc/source/core/data/drwlayer.cxx32
1 files changed, 16 insertions, 16 deletions
diff --git a/sc/source/core/data/drwlayer.cxx b/sc/source/core/data/drwlayer.cxx
index 8d4593992e06..7d31106ee7d7 100644
--- a/sc/source/core/data/drwlayer.cxx
+++ b/sc/source/core/data/drwlayer.cxx
@@ -1543,7 +1543,6 @@ void ScDrawLayer::DeleteObjectsInArea( SCTAB nTab, SCCOL nCol1,SCROW nRow1,
if (!nObjCount)
return;
- size_t nDelCount = 0;
tools::Rectangle aDelRect = pDoc->GetMMRect( nCol1, nRow1, nCol2, nRow2, nTab );
tools::Rectangle aDelCircle = aDelRect;
aDelCircle.AdjustLeft(-250);
@@ -1551,7 +1550,8 @@ void ScDrawLayer::DeleteObjectsInArea( SCTAB nTab, SCCOL nCol1,SCROW nRow1,
aDelCircle.AdjustTop(-70);
aDelCircle.AdjustBottom(70);
- std::unique_ptr<SdrObject*[]> ppObj(new SdrObject*[nObjCount]);
+ std::vector<SdrObject*> ppObj;
+ ppObj.reserve(nObjCount);
SdrObjListIter aIter( pPage, SdrIterMode::Flat );
SdrObject* pObject = aIter.Next();
@@ -1567,7 +1567,7 @@ void ScDrawLayer::DeleteObjectsInArea( SCTAB nTab, SCCOL nCol1,SCROW nRow1,
{
aObjRect = pObject->GetLogicRect();
if(aDelCircle.IsInside(aObjRect))
- ppObj[nDelCount++] = pObject;
+ ppObj.push_back(pObject);
}
else
{
@@ -1578,10 +1578,10 @@ void ScDrawLayer::DeleteObjectsInArea( SCTAB nTab, SCCOL nCol1,SCROW nRow1,
{
ScAnchorType aAnchorType = ScDrawLayer::GetAnchorType(*pObject);
if (aAnchorType == SCA_CELL || aAnchorType == SCA_CELL_RESIZE)
- ppObj[nDelCount++] = pObject;
+ ppObj.push_back(pObject);
}
else
- ppObj[nDelCount++] = pObject;
+ ppObj.push_back(pObject);
}
}
}
@@ -1590,11 +1590,11 @@ void ScDrawLayer::DeleteObjectsInArea( SCTAB nTab, SCCOL nCol1,SCROW nRow1,
}
if (bRecording)
- for (size_t i=1; i<=nDelCount; ++i)
- AddCalcUndo( std::make_unique<SdrUndoRemoveObj>( *ppObj[nDelCount-i] ) );
+ for (auto p : ppObj)
+ AddCalcUndo(std::make_unique<SdrUndoRemoveObj>(*p));
- for (size_t i=1; i<=nDelCount; ++i)
- pPage->RemoveObject( ppObj[nDelCount-i]->GetOrdNum() );
+ for (auto p : ppObj)
+ pPage->RemoveObject(p->GetOrdNum());
}
void ScDrawLayer::DeleteObjectsInSelection( const ScMarkData& rMark )
@@ -1622,13 +1622,13 @@ void ScDrawLayer::DeleteObjectsInSelection( const ScMarkData& rMark )
const size_t nObjCount = pPage->GetObjCount();
if (nObjCount)
{
- size_t nDelCount = 0;
// Rectangle around the whole selection
tools::Rectangle aMarkBound = pDoc->GetMMRect(
aMarkRange.aStart.Col(), aMarkRange.aStart.Row(),
aMarkRange.aEnd.Col(), aMarkRange.aEnd.Row(), nTab );
- std::unique_ptr<SdrObject*[]> ppObj(new SdrObject*[nObjCount]);
+ std::vector<SdrObject*> ppObj;
+ ppObj.reserve(nObjCount);
SdrObjListIter aIter( pPage, SdrIterMode::Flat );
SdrObject* pObject = aIter.Next();
@@ -1650,7 +1650,7 @@ void ScDrawLayer::DeleteObjectsInSelection( const ScMarkData& rMark )
pObjData->maStart.Row()));
if (bObjectInMarkArea || bObjectAnchoredToMarkedCell)
{
- ppObj[nDelCount++] = pObject;
+ ppObj.push_back(pObject);
}
}
@@ -1660,11 +1660,11 @@ void ScDrawLayer::DeleteObjectsInSelection( const ScMarkData& rMark )
// Delete objects (backwards)
if (bRecording)
- for (size_t i=1; i<=nDelCount; ++i)
- AddCalcUndo( std::make_unique<SdrUndoRemoveObj>( *ppObj[nDelCount-i] ) );
+ for (auto p : ppObj)
+ AddCalcUndo(std::make_unique<SdrUndoRemoveObj>(*p));
- for (size_t i=1; i<=nDelCount; ++i)
- pPage->RemoveObject( ppObj[nDelCount-i]->GetOrdNum() );
+ for (auto p : ppObj)
+ pPage->RemoveObject(p->GetOrdNum());
}
}
else