summaryrefslogtreecommitdiffstats
path: root/src/pen-context.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/pen-context.cpp')
-rw-r--r--src/pen-context.cpp13
1 files changed, 4 insertions, 9 deletions
diff --git a/src/pen-context.cpp b/src/pen-context.cpp
index 8d7ac0819..7dc489540 100644
--- a/src/pen-context.cpp
+++ b/src/pen-context.cpp
@@ -806,7 +806,7 @@ pen_redraw_all (SPPenContext *const pc)
sp_canvas_item_hide (pc->cl1);
}
- NArtBpath *const bpath = pc->green_curve->last_bpath();
+ NArtBpath const * bpath = pc->green_curve->last_bpath();
if (bpath) {
if (bpath->code == NR_CURVETO && NR::Point(bpath->x2, bpath->y2) != pc->p[0]) {
SP_CTRL(pc->c0)->moveto(NR::Point(bpath->x2, bpath->y2));
@@ -827,14 +827,9 @@ pen_lastpoint_move (SPPenContext *const pc, gdouble x, gdouble y)
return;
// green
- NArtBpath *const bpath = pc->green_curve->last_bpath();
+ NArtBpath const * bpath = pc->green_curve->last_bpath();
if (bpath) {
- if (bpath->code == NR_CURVETO) {
- bpath->x2 += x;
- bpath->y2 += y;
- }
- bpath->x3 += x;
- bpath->y3 += y;
+ pc->green_curve->last_point_additive_move( Geom::Point(x,y) );
} else {
// start anchor too
if (pc->green_anchor) {
@@ -861,7 +856,7 @@ pen_lastpoint_tocurve (SPPenContext *const pc)
return;
// red
- NArtBpath *const bpath = pc->green_curve->last_bpath();
+ NArtBpath const * bpath = pc->green_curve->last_bpath();
if (bpath && bpath->code == NR_CURVETO) {
pc->p[1] = pc->p[0] + (NR::Point(bpath->x3, bpath->y3) - NR::Point(bpath->x2, bpath->y2));
} else {