diff options
author | Dr. David Alan Gilbert <dave@treblig.org> | 2023-05-21 18:29:16 +0100 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2023-05-24 08:13:16 +0200 |
commit | 69384d208a2c40c14de73d67d3620596678bf502 (patch) | |
tree | 4eac29cdb81e949bb229e418df72a4bc70e3d8d6 /svx | |
parent | f3aab159f1c1e00c25e6b4ca1e50813bc343f4f3 (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.cxx | 50 |
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); + } } } } |