summaryrefslogtreecommitdiff
path: root/svx
diff options
context:
space:
mode:
authorDr. David Alan Gilbert <dave@treblig.org>2023-05-21 18:29:16 +0100
committerNoel Grandin <noel.grandin@collabora.co.uk>2023-05-24 08:13:16 +0200
commit69384d208a2c40c14de73d67d3620596678bf502 (patch)
tree4eac29cdb81e949bb229e418df72a4bc70e3d8d6 /svx
parentf3aab159f1c1e00c25e6b4ca1e50813bc343f4f3 (diff)
CloneList::CopyConnections: Replace duplicated code by loop
There's a chunk of code copied for the two ends of the connection; replace it by a loop with the original code. Change-Id: I80d80f61879a08612dd8314963cccb35651c2091 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152073 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'svx')
-rw-r--r--svx/source/svdraw/clonelist.cxx50
1 files changed, 15 insertions, 35 deletions
diff --git a/svx/source/svdraw/clonelist.cxx b/svx/source/svdraw/clonelist.cxx
index 1fe6bd99e478..ffb1ccc6766c 100644
--- a/svx/source/svdraw/clonelist.cxx
+++ b/svx/source/svdraw/clonelist.cxx
@@ -78,46 +78,26 @@ void CloneList::CopyConnections() const
if(pOriginalEdge && pCloneEdge)
{
- SdrObject* pOriginalNode1 = pOriginalEdge->GetConnectedNode(true);
- SdrObject* pOriginalNode2 = pOriginalEdge->GetConnectedNode(false);
-
- if(pOriginalNode1)
+ for (bool bTail1 : { true, false })
{
- std::vector<const SdrObject*>::const_iterator it = std::find(maOriginalList.begin(),
- maOriginalList.end(),
- pOriginalNode1);
-
- sal_uInt32 nPos = it - maOriginalList.begin();
-
- if(it != maOriginalList.end())
+ SdrObject* pOriginalNode = pOriginalEdge->GetConnectedNode(bTail1);
+ if (pOriginalNode)
{
- SdrObject *cObj = nullptr;
+ std::vector<const SdrObject*>::const_iterator it = std::find(maOriginalList.begin(),
+ maOriginalList.end(),
+ pOriginalNode);
- if (nPos < cloneCount)
- cObj = GetClone(nPos);
-
- if(pOriginalEdge->GetConnectedNode(true) != cObj)
- pCloneEdge->ConnectToNode(true, cObj);
- }
- }
-
- if(pOriginalNode2)
- {
- std::vector<const SdrObject*>::const_iterator it = std::find(maOriginalList.begin(),
- maOriginalList.end(),
- pOriginalNode2);
-
- sal_uInt32 nPos = it - maOriginalList.begin();
-
- if(it != maOriginalList.end())
- {
- SdrObject *cObj = nullptr;
+ if(it != maOriginalList.end())
+ {
+ sal_uInt32 nPos = it - maOriginalList.begin();
+ SdrObject *cObj = nullptr;
- if (nPos < cloneCount)
- cObj = GetClone(nPos);
+ if (nPos < cloneCount)
+ cObj = GetClone(nPos);
- if(pOriginalEdge->GetConnectedNode(false) != cObj)
- pCloneEdge->ConnectToNode(false, cObj);
+ if(pOriginalNode != cObj)
+ pCloneEdge->ConnectToNode(bTail1, cObj);
+ }
}
}
}