just some cleanup.

2008-10-16  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpviewrenderervectors.c
	(gimp_view_renderer_vectors_draw): just some cleanup.


svn path=/trunk/; revision=27293
This commit is contained in:
Sven Neumann 2008-10-15 23:04:40 +00:00 committed by Sven Neumann
parent f55b832bd3
commit 584c70fed2
2 changed files with 27 additions and 15 deletions

View file

@ -1,7 +1,14 @@
2008-10-16 Sven Neumann <sven@gimp.org>
* app/paint-funcs/scale-region.c (scale): calculate fractional
parts based on pixel centers, not pixel origins.
* app/widgets/gimpviewrenderervectors.c
(gimp_view_renderer_vectors_draw): just some cleanup.
2008-10-16 Sven Neumann <sven@gimp.org>
Bug 556248 Scaling gives 'jagged' edges
* app/paint-funcs/scale-region.c (scale): calculate pixel
contributions based on pixel centers, not on pixel origins.
2008-10-15 Jakub Steiner <jimmac@gimp.org>

View file

@ -73,8 +73,6 @@ gimp_view_renderer_vectors_draw (GimpViewRenderer *renderer,
GtkStyle *style = gtk_widget_get_style (widget);
GimpVectors *vectors = GIMP_VECTORS (renderer->viewable);
GimpBezierDesc *bezdesc;
gdouble xscale;
gdouble yscale;
gint x, y;
gdk_cairo_set_source_color (cr, &style->white);
@ -87,23 +85,30 @@ gimp_view_renderer_vectors_draw (GimpViewRenderer *renderer,
cairo_clip_preserve (cr);
cairo_fill (cr);
xscale = (gdouble) renderer->width / (gdouble) gimp_item_width (GIMP_ITEM (vectors));
yscale = (gdouble) renderer->height / (gdouble) gimp_item_height (GIMP_ITEM (vectors));
cairo_scale (cr, xscale, yscale);
/* determine line width */
xscale = yscale = 0.5;
cairo_device_to_user_distance (cr, &xscale, &yscale);
cairo_set_line_width (cr, MAX (xscale, yscale));
gdk_cairo_set_source_color (cr, &style->black);
bezdesc = gimp_vectors_make_bezier (vectors);
if (bezdesc)
{
gdouble xscale;
gdouble yscale;
xscale = ((gdouble) renderer->width /
(gdouble) gimp_item_width (GIMP_ITEM (vectors)));
yscale = ((gdouble) renderer->height /
(gdouble) gimp_item_height (GIMP_ITEM (vectors)));
cairo_scale (cr, xscale, yscale);
/* determine line width */
xscale = yscale = 0.5;
cairo_device_to_user_distance (cr, &xscale, &yscale);
cairo_set_line_width (cr, MAX (xscale, yscale));
gdk_cairo_set_source_color (cr, &style->black);
cairo_append_path (cr, (cairo_path_t *) bezdesc);
cairo_stroke (cr);
g_free (bezdesc->data);
g_free (bezdesc);
}