app: use gegl_buffer_new() in gimp_drawable_real_replace_buffer()

not a wrapper buffer around a GimpTempBuf.
This commit is contained in:
Michael Natterer
2012-05-06 23:04:19 +02:00
parent dd9b132d8f
commit 1c125a15e7

View File

@ -314,16 +314,13 @@ gimp_drawable_real_replace_buffer (GimpDrawable *drawable,
if (mask) if (mask)
{ {
GimpTempBuf *temp_buf; GeglBuffer *src_buffer;
GeglBuffer *src_buffer; GeglBuffer *dest_buffer;
GeglBuffer *dest_buffer;
src_buffer = gimp_drawable_get_buffer (GIMP_DRAWABLE (mask)); src_buffer = gimp_drawable_get_buffer (GIMP_DRAWABLE (mask));
temp_buf = gimp_temp_buf_new (width, height, dest_buffer = gegl_buffer_new (GEGL_RECTANGLE (0, 0, width, height),
gegl_buffer_get_format (src_buffer)); gegl_buffer_get_format (src_buffer));
dest_buffer = gimp_temp_buf_create_buffer (temp_buf);
gegl_buffer_copy (src_buffer, gegl_buffer_copy (src_buffer,
GEGL_RECTANGLE (x + offset_x, y + offset_y, GEGL_RECTANGLE (x + offset_x, y + offset_y,
@ -335,30 +332,21 @@ gimp_drawable_real_replace_buffer (GimpDrawable *drawable,
dest_buffer, GEGL_RECTANGLE (0, 0, width, height), dest_buffer, GEGL_RECTANGLE (0, 0, width, height),
1.0); 1.0);
gimp_gegl_replace (buffer, gimp_gegl_replace (buffer, buffer_region,
buffer_region, drawable_buffer, GEGL_RECTANGLE (x, y, width, height),
drawable_buffer, dest_buffer, GEGL_RECTANGLE (0, 0, width, height),
GEGL_RECTANGLE (x, y, width, height), drawable_buffer, GEGL_RECTANGLE (x, y, width, height),
dest_buffer,
GEGL_RECTANGLE (0, 0, width, height),
drawable_buffer,
GEGL_RECTANGLE (x, y, width, height),
opacity * 255.999, opacity * 255.999,
active_components); active_components);
g_object_unref (dest_buffer); g_object_unref (dest_buffer);
gimp_temp_buf_unref (temp_buf);
} }
else else
{ {
gimp_gegl_replace (buffer, gimp_gegl_replace (buffer, buffer_region,
buffer_region, drawable_buffer, GEGL_RECTANGLE (x, y, width, height),
drawable_buffer, mask_buffer, mask_buffer_region,
GEGL_RECTANGLE (x, y, width, height), drawable_buffer, GEGL_RECTANGLE (x, y, width, height),
mask_buffer,
mask_buffer_region,
drawable_buffer,
GEGL_RECTANGLE (x, y, width, height),
opacity * 255.999, opacity * 255.999,
active_components); active_components);
} }