[gtk/image-loading: 25/31] Add gdk_texture_save_to_file




commit 4f78c8c29495fa0cc6d0277e4657bdc40a5999e7
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 dfda3b6513..19faea548b 100644
--- a/gdk/gdktexture.c
+++ b/gdk/gdktexture.c
@@ -672,3 +672,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 9e3b7a93fa..de0bf03feb 100644
--- a/gdk/gdktexture.h
+++ b/gdk/gdktexture.h
@@ -66,6 +66,9 @@ void                    gdk_texture_download_float             (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]