gdk: Make creating a surface from a pixbuf an intenral function
This commit is contained in:
@@ -194,6 +194,16 @@ gdk_cairo_set_source_pixbuf (cairo_t *cr,
|
||||
const GdkPixbuf *pixbuf,
|
||||
gdouble pixbuf_x,
|
||||
gdouble pixbuf_y)
|
||||
{
|
||||
cairo_surface_t *surface;
|
||||
|
||||
surface = _gdk_cairo_create_surface_for_pixbuf (pixbuf);
|
||||
cairo_set_source_surface (cr, surface, pixbuf_x, pixbuf_y);
|
||||
cairo_surface_destroy (surface);
|
||||
}
|
||||
|
||||
cairo_surface_t *
|
||||
_gdk_cairo_create_surface_for_pixbuf (const GdkPixbuf *pixbuf)
|
||||
{
|
||||
gint width = gdk_pixbuf_get_width (pixbuf);
|
||||
gint height = gdk_pixbuf_get_height (pixbuf);
|
||||
@@ -277,8 +287,7 @@ gdk_cairo_set_source_pixbuf (cairo_t *cr,
|
||||
cairo_pixels += cairo_stride;
|
||||
}
|
||||
|
||||
cairo_set_source_surface (cr, surface, pixbuf_x, pixbuf_y);
|
||||
cairo_surface_destroy (surface);
|
||||
return surface;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -285,6 +285,8 @@ void gdk_synthesize_window_state (GdkWindow *window,
|
||||
gboolean _gdk_cairo_surface_extents (cairo_surface_t *surface,
|
||||
GdkRectangle *extents);
|
||||
|
||||
cairo_surface_t *_gdk_cairo_create_surface_for_pixbuf (const GdkPixbuf *pixbuf);
|
||||
|
||||
/*************************************
|
||||
* Interfaces used by windowing code *
|
||||
*************************************/
|
||||
|
||||
Reference in New Issue
Block a user