mirror of https://github.com/GNOME/gimp.git
cache the checkerboard pattern.
2007-12-28 Sven Neumann <sven@gimp.org> * app/widgets/gimpviewrenderer.c: cache the checkerboard pattern. svn path=/trunk/; revision=24447
This commit is contained in:
parent
f97ebdf72d
commit
6312375edd
|
@ -1,3 +1,7 @@
|
|||
2007-12-28 Sven Neumann <sven@gimp.org>
|
||||
|
||||
* app/widgets/gimpviewrenderer.c: cache the checkerboard pattern.
|
||||
|
||||
2007-12-28 Sven Neumann <sven@gimp.org>
|
||||
|
||||
* app/widgets/gimpviewrenderer.c (gimp_view_renderer_real_draw):
|
||||
|
|
|
@ -70,7 +70,7 @@ static void gimp_view_renderer_size_changed (GimpViewRenderer *render
|
|||
GimpViewable *viewable);
|
||||
|
||||
static cairo_pattern_t *
|
||||
gimp_view_renderer_create_pattern (GimpViewRenderer *renderer,
|
||||
gimp_view_renderer_create_background (GimpViewRenderer *renderer,
|
||||
GtkWidget *widget);
|
||||
|
||||
static void gimp_view_render_to_surface (TempBuf *temp_buf,
|
||||
|
@ -697,7 +697,7 @@ gimp_view_renderer_real_draw (GimpViewRenderer *renderer,
|
|||
if (renderer->bg_stock_id)
|
||||
{
|
||||
if (! renderer->pattern)
|
||||
renderer->pattern = gimp_view_renderer_create_pattern (renderer,
|
||||
renderer->pattern = gimp_view_renderer_create_background (renderer,
|
||||
widget);
|
||||
|
||||
cairo_set_source (cr, renderer->pattern);
|
||||
|
@ -725,12 +725,11 @@ gimp_view_renderer_real_draw (GimpViewRenderer *renderer,
|
|||
|
||||
if (content == CAIRO_CONTENT_COLOR_ALPHA)
|
||||
{
|
||||
cairo_pattern_t *pattern;
|
||||
if (! renderer->pattern)
|
||||
renderer->pattern = gimp_cairo_checkerboard_create (cr,
|
||||
GIMP_CHECK_SIZE_SM);
|
||||
|
||||
pattern = gimp_cairo_checkerboard_create (cr, GIMP_CHECK_SIZE_SM);
|
||||
|
||||
cairo_set_source (cr, pattern);
|
||||
cairo_pattern_destroy (pattern);
|
||||
cairo_set_source (cr, renderer->pattern);
|
||||
cairo_fill_preserve (cr);
|
||||
}
|
||||
|
||||
|
@ -1095,8 +1094,11 @@ gimp_view_renderer_render_pixbuf (GimpViewRenderer *renderer,
|
|||
renderer->needs_render = FALSE;
|
||||
}
|
||||
|
||||
/* This function creates a background pattern from a stock icon
|
||||
* if renderer->bg_stock_id is set.
|
||||
*/
|
||||
static cairo_pattern_t *
|
||||
gimp_view_renderer_create_pattern (GimpViewRenderer *renderer,
|
||||
gimp_view_renderer_create_background (GimpViewRenderer *renderer,
|
||||
GtkWidget *widget)
|
||||
{
|
||||
cairo_pattern_t *pattern = NULL;
|
||||
|
|
Loading…
Reference in New Issue