Make texture variants of some pixbuf utils

This will let us avoid direct pixbuf use in some places.
This commit is contained in:
Matthias Clasen 2017-11-30 07:54:27 -05:00
parent bd1a9c1afe
commit b8b33d1f36
2 changed files with 45 additions and 1 deletions

View File

@ -355,3 +355,37 @@ gtk_make_symbolic_pixbuf_from_file (GFile *file,
return pixbuf;
}
GdkTexture *
gtk_make_symbolic_texture_from_resource (const char *path,
int width,
int height,
double scale,
GError **error)
{
GdkPixbuf *pixbuf;
GdkTexture *texture;
pixbuf = gtk_make_symbolic_pixbuf_from_resource (path, width, height, scale, error);
texture = gdk_texture_new_for_pixbuf (pixbuf);
g_object_unref (pixbuf);
return texture;
}
GdkTexture *
gtk_make_symbolic_texture_from_file (GFile *file,
int width,
int height,
double scale,
GError **error)
{
GdkPixbuf *pixbuf;
GdkTexture *texture;
pixbuf = gtk_make_symbolic_pixbuf_from_file (file, width, height, scale, error);
texture = gdk_texture_new_for_pixbuf (pixbuf);
g_object_unref (pixbuf);
return texture;
}

View File

@ -18,7 +18,7 @@
#ifndef __GDK_PIXBUF_UTILS_PRIVATE_H__
#define __GDK_PIXBUF_UTILS_PRIVATE_H__
#include <gdk-pixbuf/gdk-pixbuf.h>
#include <gdk/gdk.h>
G_BEGIN_DECLS
@ -46,6 +46,16 @@ GdkPixbuf *gtk_make_symbolic_pixbuf_from_resource (const char *path,
int height,
double scale,
GError **error);
GdkTexture *gtk_make_symbolic_texture_from_file (GFile *file,
int width,
int height,
double scale,
GError **error);
GdkTexture *gtk_make_symbolic_texture_from_resource (const char *path,
int width,
int height,
double scale,
GError **error);
G_END_DECLS
#endif /* __GDK_PIXBUF_UTILS_PRIVATE_H__ */