[gtk/gamma-shenanigans: 3/8] Add gdk_texture_save_to_file




commit f7573a3c6a2360fb2c3f83a7a0db32d8ccb22ce3
Author: Matthias Clasen <mclasen redhat com>
Date:   Tue Sep 7 09:20:05 2021 -0400

    Add gdk_texture_save_to_file
    
    This is a new API which avoids encoding the file format
    into the function name, so we can change the format we
    save textures in down the road without having to change
    API.

 gdk/gdktexture.c | 29 +++++++++++++++++++++++++++++
 gdk/gdktexture.h |  3 +++
 2 files changed, 32 insertions(+)
---
diff --git a/gdk/gdktexture.c b/gdk/gdktexture.c
index d12c5af02b..391ba9a307 100644
--- a/gdk/gdktexture.c
+++ b/gdk/gdktexture.c
@@ -677,3 +677,32 @@ gdk_texture_save_to_png (GdkTexture *texture,
 
   return result;
 }
+
+/**
+ * gdk_texture_save_to_file:
+ * @texture: a `GdkTexture`
+ * @filename: (type filename): the filename to store to
+ *
+ * Store the given @texture to the @filename.
+ *
+ * GTK will choose a suitable file format to save the data in
+ * depending on the format of the texture.
+ *
+ * This is a utility function intended for debugging and testing.
+ * If you want more control over formats, proper error handling or
+ * want to store to a `GFile` or other location, you might want to
+ * look into using the gdk-pixbuf library.
+ *
+ * Returns: %TRUE if saving succeeded, %FALSE on failure.
+ *
+ * Since: 4.6
+ */
+gboolean
+gdk_texture_save_to_file (GdkTexture  *texture,
+                          const char  *filename)
+{
+  g_return_val_if_fail (GDK_IS_TEXTURE (texture), FALSE);
+  g_return_val_if_fail (filename != NULL, FALSE);
+
+  return gdk_texture_save_to_png (texture, filename);
+}
diff --git a/gdk/gdktexture.h b/gdk/gdktexture.h
index f3d0bc9765..7318ef8500 100644
--- a/gdk/gdktexture.h
+++ b/gdk/gdktexture.h
@@ -62,6 +62,9 @@ void                    gdk_texture_download                   (GdkTexture
 GDK_AVAILABLE_IN_ALL
 gboolean                gdk_texture_save_to_png                (GdkTexture      *texture,
                                                                 const char      *filename);
+GDK_AVAILABLE_IN_4_6
+gboolean                gdk_texture_save_to_file               (GdkTexture      *texture,
+                                                                const char      *filename);
 
 G_END_DECLS
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]