diff --git a/src/seltrans.cpp b/src/seltrans.cpp
index 05f47d4ab017b02996ee661592d8fc5aadfba778..89799246cec882a8b5fa32e3e38c605e246d0317 100644 (file)
--- a/src/seltrans.cpp
+++ b/src/seltrans.cpp
@@ -265,7 +265,7 @@ void Inkscape::SelTrans::grab(Geom::Point const &p, gdouble x, gdouble y, bool s
SPItem *it = (SPItem *)sp_object_ref(SP_OBJECT(l->data), NULL);
_items.push_back(it);
_items_const.push_back(it);
- _items_affines.push_back(sp_item_i2d_affine(it));
+ _items_affines.push_back(it->i2d_affine());
_items_centers.push_back(it->getCenter()); // for content-dragging, we need to remember original centers
}
@@ -333,7 +333,7 @@ void Inkscape::SelTrans::grab(Geom::Point const &p, gdouble x, gdouble y, bool s
// More than 50 items will produce at least 200 bbox points, which might make Inkscape crawl
// (see the comment a few lines above). In that case we will use the bbox of the selection as a whole
for (unsigned i = 0; i < _items.size(); i++) {
- getBBoxPoints(sp_item_bbox_desktop(_items[i], _snap_bbox_type), &_bbox_points_for_translating, false, true, emp, mp);
+ getBBoxPoints(_items[i]->getBboxDesktop(_snap_bbox_type), &_bbox_points_for_translating, false, true, emp, mp);
}
} else {
_bbox_points_for_translating = _bbox_points; // use the bbox points of the selection as a whole
@@ -444,7 +444,7 @@ void Inkscape::SelTrans::transform(Geom::Matrix const &rel_affine, Geom::Point c
for (unsigned i = 0; i < _items.size(); i++) {
SPItem &item = *_items[i];
Geom::Matrix const &prev_transform = _items_affines[i];
- sp_item_set_i2d_affine(&item, prev_transform * affine);
+ item.set_i2d_affine(prev_transform * affine);
}
} else {
if (_bbox) {
Geom::Matrix const *new_affine;
if (_show == SHOW_OUTLINE) {
- Geom::Matrix const i2d(sp_item_i2d_affine(original_item));
+ Geom::Matrix const i2d(original_item->i2d_affine());
Geom::Matrix const i2dnew( i2d * _current_relative_affine );
- sp_item_set_i2d_affine(copy_item, i2dnew);
+ copy_item->set_i2d_affine(i2dnew);
new_affine = ©_item->transform;
} else {
new_affine = &original_item->transform;
}
- sp_item_write_transform(copy_item, copy_repr, *new_affine);
+ copy_item->doWriteTransform(copy_repr, *new_affine);
if ( copy_item->isCenterSet() && _center ) {
copy_item->setCenter(*_center * _current_relative_affine);