fixed stupid int vs. float error that caused rounding errors when moving

2003-08-30  Simon Budig  <simon@gimp.org>

	* app/tools/gimpvectortool.[ch]: fixed stupid int vs. float
	error that caused rounding errors when moving in a zoomed view.
	Fixed drawing artefact when connecting strokes did not succeed.
This commit is contained in:
Simon Budig 2003-08-29 22:40:13 +00:00 committed by Simon Budig
parent df8ab68d45
commit d401ae3b63
3 changed files with 12 additions and 4 deletions

View File

@ -1,3 +1,9 @@
2003-08-30 Simon Budig <simon@gimp.org>
* app/tools/gimpvectortool.[ch]: fixed stupid int vs. float
error that caused rounding errors when moving in a zoomed view.
Fixed drawing artefact when connecting strokes did not succeed.
2003-08-29 Simon Budig <simon@gimp.org>
* app/tools/gimpvectortool.[ch]: further modifier changes.

View File

@ -535,13 +535,14 @@ gimp_vector_tool_button_release (GimpTool *tool,
vector_tool = GIMP_VECTOR_TOOL (tool);
gimp_vectors_freeze (vector_tool->vectors);
if (vector_tool->function == VECTORS_CONNECT_STROKES
&& gimp_vector_tool_on_handle (tool, coords, GIMP_ANCHOR_ANCHOR,
gdisp, &anchor, &stroke)
&& anchor != vector_tool->cur_anchor
&& gimp_stroke_is_extendable (stroke, anchor))
{
gimp_vectors_freeze (vector_tool->vectors);
gimp_stroke_connect_stroke (vector_tool->cur_stroke,
vector_tool->cur_anchor,
stroke, anchor);
@ -550,11 +551,12 @@ gimp_vector_tool_button_release (GimpTool *tool,
gimp_vectors_stroke_remove (vector_tool->vectors, stroke);
vector_tool->cur_anchor = anchor;
gimp_vectors_thaw (vector_tool->vectors);
}
vector_tool->function = VECTORS_FINISHED;
gimp_vectors_thaw (vector_tool->vectors);
/* THIS DOES NOT BELONG HERE! */
if (vector_tool->vectors)
{

View File

@ -65,8 +65,8 @@ struct _GimpVectorTool
GimpAnchorFeatureType restriction; /* movement restriction */
gboolean modifier_lock; /* can we toggle the Shift key? */
GdkModifierType saved_state; /* modifier state at button_press */
gint last_x; /* last x coordinate */
gint last_y; /* last y coordinate */
gdouble last_x; /* last x coordinate */
gdouble last_y; /* last y coordinate */
GimpAnchor *cur_anchor; /* The current Anchor */
GimpStroke *cur_stroke; /* The current Stroke */