[gtk/gamma-shenanigans: 5/9] Add gdk_texture_save_to_file




commit 1203922c4381309d32356489bdcfaf32dda27a04
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 7097279a8d..77cc0faa16 100644
--- a/gdk/gdktexture.c
+++ b/gdk/gdktexture.c
@@ -639,3 +639,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]