summaryrefslogtreecommitdiff
path: root/svx/source/svdraw/svdobj.cxx
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2018-09-20 09:48:50 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2018-09-21 10:52:46 +0200
commitffe84f49270e0a8818365ca7d1fd5242abff5562 (patch)
tree9fc133fc58737afcfbd49242528811eb320705c3 /svx/source/svdraw/svdobj.cxx
parent6b28441fb8823ba28a9db6cf1d97aa277cdcd7b4 (diff)
remove SdrObject::GetHdl in favour of AddToHdlList
the code already says that using GetHdl is inefficient, and client code should be using AddToHdlList, so just drop the bad one Change-Id: I88c43154c8cc0988127b9292e4cda28917f54eb9 Reviewed-on: https://gerrit.libreoffice.org/60792 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'svx/source/svdraw/svdobj.cxx')
-rw-r--r--svx/source/svdraw/svdobj.cxx38
1 files changed, 15 insertions, 23 deletions
diff --git a/svx/source/svdraw/svdobj.cxx b/svx/source/svdraw/svdobj.cxx
index 5a705b998c77..9e37ca84c16c 100644
--- a/svx/source/svdraw/svdobj.cxx
+++ b/svx/source/svdraw/svdobj.cxx
@@ -1174,21 +1174,24 @@ sal_uInt32 SdrObject::GetHdlCount() const
return 8L;
}
-SdrHdl* SdrObject::GetHdl(sal_uInt32 nHdlNum) const
+void SdrObject::AddToHdlList(SdrHdlList& rHdlList) const
{
- SdrHdl* pH=nullptr;
const tools::Rectangle& rR=GetSnapRect();
- switch (nHdlNum) {
- case 0: pH=new SdrHdl(rR.TopLeft(), SdrHdlKind::UpperLeft); break;
- case 1: pH=new SdrHdl(rR.TopCenter(), SdrHdlKind::Upper); break;
- case 2: pH=new SdrHdl(rR.TopRight(), SdrHdlKind::UpperRight); break;
- case 3: pH=new SdrHdl(rR.LeftCenter(), SdrHdlKind::Left ); break;
- case 4: pH=new SdrHdl(rR.RightCenter(), SdrHdlKind::Right); break;
- case 5: pH=new SdrHdl(rR.BottomLeft(), SdrHdlKind::LowerLeft); break;
- case 6: pH=new SdrHdl(rR.BottomCenter(),SdrHdlKind::Lower); break;
- case 7: pH=new SdrHdl(rR.BottomRight(), SdrHdlKind::LowerRight); break;
+ for (sal_uInt32 nHdlNum=0; nHdlNum<8; ++nHdlNum)
+ {
+ SdrHdl* pH=nullptr;
+ switch (nHdlNum) {
+ case 0: pH=new SdrHdl(rR.TopLeft(), SdrHdlKind::UpperLeft); break;
+ case 1: pH=new SdrHdl(rR.TopCenter(), SdrHdlKind::Upper); break;
+ case 2: pH=new SdrHdl(rR.TopRight(), SdrHdlKind::UpperRight); break;
+ case 3: pH=new SdrHdl(rR.LeftCenter(), SdrHdlKind::Left ); break;
+ case 4: pH=new SdrHdl(rR.RightCenter(), SdrHdlKind::Right); break;
+ case 5: pH=new SdrHdl(rR.BottomLeft(), SdrHdlKind::LowerLeft); break;
+ case 6: pH=new SdrHdl(rR.BottomCenter(),SdrHdlKind::Lower); break;
+ case 7: pH=new SdrHdl(rR.BottomRight(), SdrHdlKind::LowerRight); break;
+ }
+ rHdlList.AddHdl(pH);
}
- return pH;
}
sal_uInt32 SdrObject::GetPlusHdlCount(const SdrHdl& /*rHdl*/) const
@@ -1201,17 +1204,6 @@ SdrHdl* SdrObject::GetPlusHdl(const SdrHdl& /*rHdl*/, sal_uInt32 /*nPlNum*/) con
return nullptr;
}
-void SdrObject::AddToHdlList(SdrHdlList& rHdlList) const
-{
- sal_uInt32 nCount=GetHdlCount();
- for (sal_uInt32 i=0; i<nCount; i++) {
- SdrHdl* pHdl=GetHdl(i);
- if (pHdl!=nullptr) {
- rHdlList.AddHdl(pHdl);
- }
- }
-}
-
void SdrObject::addCropHandles(SdrHdlList& /*rTarget*/) const
{
// Default implementation, does nothing. Overloaded in