summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJabiertxof <jtx@jtx>2016-12-26 12:54:09 +0000
committerJabiertxof <jtx@jtx>2016-12-26 12:54:09 +0000
commit98d830e63a7900ff0a47151ba25c3d0bd10eba1a (patch)
tree18668e7a70fa97b0f5c2897983f2ecb9719aa215 /src
parentFix a few Gtkmm deprecations (diff)
downloadinkscape-98d830e63a7900ff0a47151ba25c3d0bd10eba1a.tar.gz
inkscape-98d830e63a7900ff0a47151ba25c3d0bd10eba1a.zip
Fixes problem on mirror symmetry last commit.
(bzr r15358)
Diffstat (limited to 'src')
-rw-r--r--src/live_effects/lpe-mirror_symmetry.cpp20
1 files changed, 18 insertions, 2 deletions
diff --git a/src/live_effects/lpe-mirror_symmetry.cpp b/src/live_effects/lpe-mirror_symmetry.cpp
index f7881fb2e..61b2b8b5c 100644
--- a/src/live_effects/lpe-mirror_symmetry.cpp
+++ b/src/live_effects/lpe-mirror_symmetry.cpp
@@ -124,9 +124,25 @@ LPEMirrorSymmetry::doBeforeEffect (SPLPEItem const* lpeitem)
}
if ( mode == MT_X || mode == MT_Y ) {
if (!are_near(previous_center, (Geom::Point)center_point, 0.01)) {
- start_point.param_setValue(point_a, true);
- end_point.param_setValue(point_b, true);
center_point.param_setValue(Geom::middle_point(point_a, point_b), true);
+ end_point.param_setValue(point_b, true);
+ start_point.param_setValue(point_a, true);
+ } else {
+ if ( mode == MT_X ) {
+ if (!are_near(start_point[X], point_a[X], 0.01)) {
+ start_point.param_setValue(point_a, true);
+ }
+ if (!are_near(end_point[X], point_b[X], 0.01)) {
+ end_point.param_setValue(point_b, true);
+ }
+ } else { //MT_Y
+ if (!are_near(start_point[Y], point_a[Y], 0.01)) {
+ start_point.param_setValue(point_a, true);
+ }
+ if (!are_near(end_point[Y], point_b[Y], 0.01)) {
+ end_point.param_setValue(point_b, true);
+ }
+ }
}
} else if ( mode == MT_FREE) {
if (are_near(previous_center, (Geom::Point)center_point, 0.01)) {