summaryrefslogtreecommitdiffstats
path: root/src/sp-item-transform.cpp
diff options
context:
space:
mode:
authorKrzysztof Kosi??ski <tweenk.pl@gmail.com>2010-12-15 16:19:28 +0000
committerKrzysztof KosiƄski <tweenk.pl@gmail.com>2010-12-15 16:19:28 +0000
commit70201e92aa1e700d49279871f2b84082750b8ed8 (patch)
tree1886fcdf8ad20d73b92bf4f4bfd3ab1406ba4c66 /src/sp-item-transform.cpp
parentFix mask luminance calculation, so the coeffs add up to 1 (diff)
parentWin32 post-GSoC fixups. (diff)
downloadinkscape-70201e92aa1e700d49279871f2b84082750b8ed8.tar.gz
inkscape-70201e92aa1e700d49279871f2b84082750b8ed8.zip
Merge from trunk (again)
(bzr r9508.1.72)
Diffstat (limited to 'src/sp-item-transform.cpp')
-rw-r--r--src/sp-item-transform.cpp21
1 files changed, 10 insertions, 11 deletions
diff --git a/src/sp-item-transform.cpp b/src/sp-item-transform.cpp
index e9a219cc7..5b983b64b 100644
--- a/src/sp-item-transform.cpp
+++ b/src/sp-item-transform.cpp
@@ -1,5 +1,3 @@
-#define __SP_ITEM_TRANSFORM_C__
-
/*
* Transforming single items
*
@@ -8,6 +6,7 @@
* Frank Felfe <innerspace@iname.com>
* bulia byak <buliabyak@gmail.com>
* Johan Engelen <goejendaagh@zonnet.nl>
+ * Abhishek Sharma
*
* Copyright (C) 1999-2008 authors
*
@@ -25,9 +24,9 @@ sp_item_rotate_rel(SPItem *item, Geom::Rotate const &rotation)
Geom::Matrix affine = Geom::Matrix(s).inverse() * Geom::Matrix(rotation) * Geom::Matrix(s);
// Rotate item.
- sp_item_set_i2d_affine(item, sp_item_i2d_affine(item) * (Geom::Matrix)affine);
+ item->set_i2d_affine(item->i2d_affine() * (Geom::Matrix)affine);
// Use each item's own transform writer, consistent with sp_selection_apply_affine()
- sp_item_write_transform(item, SP_OBJECT_REPR(item), item->transform);
+ item->doWriteTransform(SP_OBJECT_REPR(item), item->transform);
// Restore the center position (it's changed because the bbox center changed)
if (item->isCenterSet()) {
@@ -39,11 +38,11 @@ sp_item_rotate_rel(SPItem *item, Geom::Rotate const &rotation)
void
sp_item_scale_rel (SPItem *item, Geom::Scale const &scale)
{
- Geom::OptRect bbox = sp_item_bbox_desktop(item);
+ Geom::OptRect bbox = item->getBboxDesktop();
if (bbox) {
Geom::Translate const s(bbox->midpoint()); // use getCenter?
- sp_item_set_i2d_affine(item, sp_item_i2d_affine(item) * s.inverse() * scale * s);
- sp_item_write_transform(item, SP_OBJECT_REPR(item), item->transform);
+ item->set_i2d_affine(item->i2d_affine() * s.inverse() * scale * s);
+ item->doWriteTransform(SP_OBJECT_REPR(item), item->transform);
}
}
@@ -56,8 +55,8 @@ sp_item_skew_rel (SPItem *item, double skewX, double skewY)
Geom::Matrix const skew(1, skewY, skewX, 1, 0, 0);
Geom::Matrix affine = Geom::Matrix(s).inverse() * skew * Geom::Matrix(s);
- sp_item_set_i2d_affine(item, sp_item_i2d_affine(item) * affine);
- sp_item_write_transform(item, SP_OBJECT_REPR(item), item->transform);
+ item->set_i2d_affine(item->i2d_affine() * affine);
+ item->doWriteTransform(SP_OBJECT_REPR(item), item->transform);
// Restore the center position (it's changed because the bbox center changed)
if (item->isCenterSet()) {
@@ -68,9 +67,9 @@ sp_item_skew_rel (SPItem *item, double skewX, double skewY)
void sp_item_move_rel(SPItem *item, Geom::Translate const &tr)
{
- sp_item_set_i2d_affine(item, sp_item_i2d_affine(item) * tr);
+ item->set_i2d_affine(item->i2d_affine() * tr);
- sp_item_write_transform(item, SP_OBJECT_REPR(item), item->transform);
+ item->doWriteTransform(SP_OBJECT_REPR(item), item->transform);
}
/*