summaryrefslogtreecommitdiffstats
path: root/src/sp-use.cpp
diff options
context:
space:
mode:
authorJabiertxof <jtx@jtx>2017-01-21 23:33:24 +0000
committerJabiertxof <jtx@jtx>2017-01-21 23:33:24 +0000
commiteeb5405c1b2734322ca9ed506e8a8e16a87c2a4f (patch)
tree5f98cdb1ee5633b69ec1f5c21d0d5e69f8770ad2 /src/sp-use.cpp
parentOrganize doeffect function (diff)
parentFix "swap fill and stroke" for multiple objects in selection (diff)
downloadinkscape-eeb5405c1b2734322ca9ed506e8a8e16a87c2a4f.tar.gz
inkscape-eeb5405c1b2734322ca9ed506e8a8e16a87c2a4f.zip
Update to trunk
(bzr r13645.1.165)
Diffstat (limited to 'src/sp-use.cpp')
-rw-r--r--src/sp-use.cpp33
1 files changed, 12 insertions, 21 deletions
diff --git a/src/sp-use.cpp b/src/sp-use.cpp
index c8a0830c1..6ba03dad9 100644
--- a/src/sp-use.cpp
+++ b/src/sp-use.cpp
@@ -34,7 +34,6 @@
#include "style.h"
#include "sp-symbol.h"
#include "sp-root.h"
-#include "sp-use.h"
#include "sp-use-reference.h"
#include "sp-shape.h"
#include "sp-text.h"
@@ -436,27 +435,23 @@ void SPUse::move_compensate(Geom::Affine const *mp) {
//BUT move clippaths accordingly.
//if clone has a clippath, move it accordingly
if(clip_ref->getObject()){
- SPObject *clip = clip_ref->getObject()->firstChild() ;
- while(clip){
- SPItem *item = (SPItem*) clip;
+ for(auto& clip: clip_ref->getObject()->children){
+ SPItem *item = (SPItem*) &clip;
if(item){
item->transform *= m;
Geom::Affine identity;
- item->doWriteTransform(clip->getRepr(),item->transform, &identity);
+ item->doWriteTransform(clip.getRepr(),item->transform, &identity);
}
- clip = clip->getNext();
}
}
if(mask_ref->getObject()){
- SPObject *mask = mask_ref->getObject()->firstChild() ;
- while(mask){
- SPItem *item = (SPItem*) mask;
+ for(auto& mask: mask_ref->getObject()->children){
+ SPItem *item = (SPItem*) &mask;
if(item){
item->transform *= m;
Geom::Affine identity;
- item->doWriteTransform(mask->getRepr(),item->transform, &identity);
+ item->doWriteTransform(mask.getRepr(),item->transform, &identity);
}
- mask = mask->getNext();
}
}
return;
@@ -480,27 +475,23 @@ void SPUse::move_compensate(Geom::Affine const *mp) {
//if clone has a clippath, move it accordingly
if(clip_ref->getObject()){
- SPObject *clip = clip_ref->getObject()->firstChild() ;
- while(clip){
- SPItem *item = (SPItem*) clip;
+ for(auto& clip: clip_ref->getObject()->children){
+ SPItem *item = (SPItem*) &clip;
if(item){
item->transform *= clone_move.inverse();
Geom::Affine identity;
- item->doWriteTransform(clip->getRepr(),item->transform, &identity);
+ item->doWriteTransform(clip.getRepr(),item->transform, &identity);
}
- clip = clip->getNext();
}
}
if(mask_ref->getObject()){
- SPObject *mask = mask_ref->getObject()->firstChild() ;
- while(mask){
- SPItem *item = (SPItem*) mask;
+ for(auto& mask: mask_ref->getObject()->children){
+ SPItem *item = (SPItem*) &mask;
if(item){
item->transform *= clone_move.inverse();
Geom::Affine identity;
- item->doWriteTransform(mask->getRepr(),item->transform, &identity);
+ item->doWriteTransform(mask.getRepr(),item->transform, &identity);
}
- mask = mask->getNext();
}
}