summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2023-05-15 21:40:54 -0400
committerMatthias Clasen <mclasen@redhat.com>2023-05-15 23:05:52 -0400
commit4bede73f62fccdf15316664563a1c777237d69a9 (patch)
tree5fbe755276d531ce176c947c01f0593e5f0b04aa
parent0b59290bad3492d81197132407cb3695e86b3891 (diff)
downloadgtk+-4bede73f62fccdf15316664563a1c777237d69a9.tar.gz
Deprecate from-pixbuf apis for widgets
We want to drop GdkPixbuf from our apis. These have easy replacements already, so lets deprecate them.
-rw-r--r--gtk/gtkimage.c7
-rw-r--r--gtk/gtkimage.h4
-rw-r--r--gtk/gtkpicture.c5
-rw-r--r--gtk/gtkpicture.h4
-rw-r--r--gtk/inspector/gtkdataviewer.c2
5 files changed, 18 insertions, 4 deletions
diff --git a/gtk/gtkimage.c b/gtk/gtkimage.c
index 44690975a2..33c2841ef4 100644
--- a/gtk/gtkimage.c
+++ b/gtk/gtkimage.c
@@ -475,6 +475,9 @@ gtk_image_new_from_resource (const char *resource_path)
* want that, you should use [ctor@Gtk.Image.new_from_icon_name].
*
* Returns: a new `GtkImage`
+ *
+ * Deprecated: 4.12: Use [ctor@Gtk.Image.new_from_paintable] and
+ * [ctor@Gdk.Texture.new_for_pixbuf] instead
*/
GtkWidget*
gtk_image_new_from_pixbuf (GdkPixbuf *pixbuf)
@@ -483,7 +486,9 @@ gtk_image_new_from_pixbuf (GdkPixbuf *pixbuf)
image = g_object_new (GTK_TYPE_IMAGE, NULL);
+G_GNUC_BEGIN_IGNORE_DEPRECATIONS
gtk_image_set_from_pixbuf (image, pixbuf);
+G_GNUC_END_IGNORE_DEPRECATIONS
return GTK_WIDGET (image);
}
@@ -711,6 +716,8 @@ gtk_image_set_from_resource (GtkImage *image,
* Note: This is a helper for [method@Gtk.Image.set_from_paintable],
* and you can't get back the exact pixbuf once this is called,
* only a paintable.
+ *
+ * Deprecated: 4.12: Use [method@Gtk.Image.set_from_paintable] instead
*/
void
gtk_image_set_from_pixbuf (GtkImage *image,
diff --git a/gtk/gtkimage.h b/gtk/gtkimage.h
index 59083e1b9b..8c293c92c3 100644
--- a/gtk/gtkimage.h
+++ b/gtk/gtkimage.h
@@ -74,7 +74,7 @@ GDK_AVAILABLE_IN_ALL
GtkWidget* gtk_image_new_from_file (const char *filename);
GDK_AVAILABLE_IN_ALL
GtkWidget* gtk_image_new_from_resource (const char *resource_path);
-GDK_AVAILABLE_IN_ALL
+GDK_DEPRECATED_IN_4_12_FOR(gtk_image_new_from_paintable)
GtkWidget* gtk_image_new_from_pixbuf (GdkPixbuf *pixbuf);
GDK_AVAILABLE_IN_ALL
GtkWidget* gtk_image_new_from_paintable (GdkPaintable *paintable);
@@ -91,7 +91,7 @@ void gtk_image_set_from_file (GtkImage *image,
GDK_AVAILABLE_IN_ALL
void gtk_image_set_from_resource (GtkImage *image,
const char *resource_path);
-GDK_AVAILABLE_IN_ALL
+GDK_DEPRECATED_IN_4_12_FOR(gtk_image_set_from_paintable)
void gtk_image_set_from_pixbuf (GtkImage *image,
GdkPixbuf *pixbuf);
GDK_AVAILABLE_IN_ALL
diff --git a/gtk/gtkpicture.c b/gtk/gtkpicture.c
index 72ee47b195..dadd2b4b6e 100644
--- a/gtk/gtkpicture.c
+++ b/gtk/gtkpicture.c
@@ -525,6 +525,9 @@ gtk_picture_new_for_paintable (GdkPaintable *paintable)
* The pixbuf must not be modified after passing it to this function.
*
* Returns: a new `GtkPicture`
+ *
+ * Deprecated: 4.12: Use [ctor@Gtk.Picture.new_for_paintable] and
+ * [ctor@Gdk.Texture.new_for_pixbuf] instead
*/
GtkWidget*
gtk_picture_new_for_pixbuf (GdkPixbuf *pixbuf)
@@ -779,6 +782,8 @@ gtk_picture_set_resource (GtkPicture *self,
* See [ctor@Gtk.Picture.new_for_pixbuf] for details.
*
* This is a utility function that calls [method@Gtk.Picture.set_paintable].
+ *
+ * Deprecated: 4.12: Use [method@Gtk.Picture.set_paintable] instead
*/
void
gtk_picture_set_pixbuf (GtkPicture *self,
diff --git a/gtk/gtkpicture.h b/gtk/gtkpicture.h
index 919369e43d..58f2a1c836 100644
--- a/gtk/gtkpicture.h
+++ b/gtk/gtkpicture.h
@@ -39,7 +39,7 @@ GDK_AVAILABLE_IN_ALL
GtkWidget* gtk_picture_new (void);
GDK_AVAILABLE_IN_ALL
GtkWidget* gtk_picture_new_for_paintable (GdkPaintable *paintable);
-GDK_AVAILABLE_IN_ALL
+GDK_DEPRECATED_IN_4_12_FOR(gtk_pixbuf_new_for_paintable)
GtkWidget* gtk_picture_new_for_pixbuf (GdkPixbuf *pixbuf);
GDK_AVAILABLE_IN_ALL
GtkWidget* gtk_picture_new_for_file (GFile *file);
@@ -64,7 +64,7 @@ void gtk_picture_set_filename (GtkPicture
GDK_AVAILABLE_IN_ALL
void gtk_picture_set_resource (GtkPicture *self,
const char *resource_path);
-GDK_AVAILABLE_IN_ALL
+GDK_DEPRECATED_IN_4_12_FOR(gtk_picture_set_paintable)
void gtk_picture_set_pixbuf (GtkPicture *self,
GdkPixbuf *pixbuf);
diff --git a/gtk/inspector/gtkdataviewer.c b/gtk/inspector/gtkdataviewer.c
index bea24dd6d9..12808c3ac1 100644
--- a/gtk/inspector/gtkdataviewer.c
+++ b/gtk/inspector/gtkdataviewer.c
@@ -261,7 +261,9 @@ gtk_data_viewer_load_value (GtkDataViewer *self,
}
else if (g_type_is_a (G_VALUE_TYPE (value), GDK_TYPE_PIXBUF))
{
+G_GNUC_BEGIN_IGNORE_DEPRECATIONS
self->contents = gtk_picture_new_for_pixbuf (g_value_get_object (value));
+G_GNUC_END_IGNORE_DEPRECATIONS
gtk_widget_set_size_request (self->contents, 256, 256);
gtk_widget_set_parent (self->contents, GTK_WIDGET (self));
}