From cdd1e6730541cb03e00d15da283fb47a69745859 Mon Sep 17 00:00:00 2001 From: Nate Summers Date: Thu, 26 Mar 1998 19:17:42 +0000 Subject: [PATCH] fixes the display artifact where the preview outline of the selected area * app/iscissors.c: fixes the display artifact where the preview outline of the selected area would not appear or would appear in the wrong place or have the wrong shape --- ChangeLog | 9 +++++++-- app/iscissors.c | 9 ++++++++- app/tools/gimpiscissorstool.c | 9 ++++++++- app/tools/iscissors.c | 9 ++++++++- 4 files changed, 31 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index b2be96173c..e0301f903c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,11 @@ +Thu Mar 26 12:15:38 MST 1998 Nathan Summers + * app/iscissors.c: fixes the display artifact where the preview + outline of the selected area would not appear or would appear in the + wrong place or have the wrong shape + Thu Mar 26 12:00:47 MST 1998 Nathan Summers - * iscissors.c: This should hopefully fix most of the UMRs + * app/iscissors.c: This should hopefully fix most of the UMRs (uninitialized memory reads) found with Purify. No noticable change in iscissors's behavior, unfortunately. @@ -21,7 +26,7 @@ Thu Mar 26 18:38:54 MET 1998 Sven Neumann Wed Mar 25 22:46:36 MST 1998 Nathan Summers - * iscissors.c: fixed a problem with unintialized variables + * app/iscissors.c: fixed a problem with unintialized variables Wed Mar 25 19:29:09 PST 1998 Manish Singh diff --git a/app/iscissors.c b/app/iscissors.c index b12fbc86d1..66a07d5436 100644 --- a/app/iscissors.c +++ b/app/iscissors.c @@ -749,6 +749,9 @@ iscissors_draw_CR (GDisplay *gdisp, int index; int i; + GimpDrawable *drawable; + drawable = gimage_active_drawable (gdisp->gimage); + /* construct the geometry matrix from the segment */ /* assumes that a valid segment containing 4 points is passed in */ @@ -836,7 +839,11 @@ iscissors_draw_CR (GDisplay *gdisp, { /* add the point to the point buffer */ - gdisplay_transform_coords (gdisp, newx, newy, &tx, &ty,1 ); + /*gdisplay_transform_coords (gdisp, newx, newy, &tx, &ty,1 );*/ + drawable_offsets(drawable, &tx, &ty); + tx += newx; + ty += newy; + gdk_points[index].x = tx; gdk_points[index].y = ty; diff --git a/app/tools/gimpiscissorstool.c b/app/tools/gimpiscissorstool.c index b12fbc86d1..66a07d5436 100644 --- a/app/tools/gimpiscissorstool.c +++ b/app/tools/gimpiscissorstool.c @@ -749,6 +749,9 @@ iscissors_draw_CR (GDisplay *gdisp, int index; int i; + GimpDrawable *drawable; + drawable = gimage_active_drawable (gdisp->gimage); + /* construct the geometry matrix from the segment */ /* assumes that a valid segment containing 4 points is passed in */ @@ -836,7 +839,11 @@ iscissors_draw_CR (GDisplay *gdisp, { /* add the point to the point buffer */ - gdisplay_transform_coords (gdisp, newx, newy, &tx, &ty,1 ); + /*gdisplay_transform_coords (gdisp, newx, newy, &tx, &ty,1 );*/ + drawable_offsets(drawable, &tx, &ty); + tx += newx; + ty += newy; + gdk_points[index].x = tx; gdk_points[index].y = ty; diff --git a/app/tools/iscissors.c b/app/tools/iscissors.c index b12fbc86d1..66a07d5436 100644 --- a/app/tools/iscissors.c +++ b/app/tools/iscissors.c @@ -749,6 +749,9 @@ iscissors_draw_CR (GDisplay *gdisp, int index; int i; + GimpDrawable *drawable; + drawable = gimage_active_drawable (gdisp->gimage); + /* construct the geometry matrix from the segment */ /* assumes that a valid segment containing 4 points is passed in */ @@ -836,7 +839,11 @@ iscissors_draw_CR (GDisplay *gdisp, { /* add the point to the point buffer */ - gdisplay_transform_coords (gdisp, newx, newy, &tx, &ty,1 ); + /*gdisplay_transform_coords (gdisp, newx, newy, &tx, &ty,1 );*/ + drawable_offsets(drawable, &tx, &ty); + tx += newx; + ty += newy; + gdk_points[index].x = tx; gdk_points[index].y = ty;