From 0f10b170f4bd4a90ecc734101bff5a06d83dfd5b Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Sat, 9 May 2020 15:45:54 -0400 Subject: [PATCH] widget: Drop gtk_widget_destroy --- docs/reference/gtk/gtk4-sections.txt | 1 - gtk/gtkwidget.c | 47 ---------------------------- gtk/gtkwidget.h | 2 -- 3 files changed, 50 deletions(-) diff --git a/docs/reference/gtk/gtk4-sections.txt b/docs/reference/gtk/gtk4-sections.txt index d03861889d..9f1f4acbed 100644 --- a/docs/reference/gtk/gtk4-sections.txt +++ b/docs/reference/gtk/gtk4-sections.txt @@ -3955,7 +3955,6 @@ GtkCallback GtkRequisition GtkAllocation gtk_widget_new -gtk_widget_destroy gtk_widget_in_destruction gtk_widget_unparent gtk_widget_show diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c index fe1878340e..ef06f6f427 100644 --- a/gtk/gtkwidget.c +++ b/gtk/gtkwidget.c @@ -2610,53 +2610,6 @@ gtk_widget_unparent (GtkWidget *widget) g_object_unref (widget); } -/** - * gtk_widget_destroy: - * @widget: a #GtkWidget - * - * Destroys a widget. - * - * When a widget is destroyed all references it holds on other objects - * will be released: - * - * - if the widget is inside a container, it will be removed from its - * parent - * - if the widget is a container, all its children will be destroyed, - * recursively - * - if the widget is a top level, it will be removed from the list - * of top level widgets that GTK+ maintains internally - * - * It's expected that all references held on the widget will also - * be released; you should connect to the #GtkWidget::destroy signal - * if you hold a reference to @widget and you wish to remove it when - * this function is called. It is not necessary to do so if you are - * implementing a #GtkContainer, as you'll be able to use the - * #GtkContainerClass.remove() virtual function for that. - * - * It's important to notice that gtk_widget_destroy() will only cause - * the @widget to be finalized if no additional references, acquired - * using g_object_ref(), are held on it. In case additional references - * are in place, the @widget will be in an "inert" state after calling - * this function; @widget will still point to valid memory, allowing you - * to release the references you hold, but you may not query the widget's - * own state. - * - * You should typically call this function on top level widgets, and - * rarely on child widgets. - * - * See also: gtk_container_remove() - */ -void -gtk_widget_destroy (GtkWidget *widget) -{ - GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget); - - g_return_if_fail (GTK_IS_WIDGET (widget)); - - if (!priv->in_destruction) - g_object_run_dispose (G_OBJECT (widget)); -} - static void gtk_widget_update_paintables (GtkWidget *widget) { diff --git a/gtk/gtkwidget.h b/gtk/gtkwidget.h index 3aa805cd3d..85f8bedb9c 100644 --- a/gtk/gtkwidget.h +++ b/gtk/gtkwidget.h @@ -300,8 +300,6 @@ GtkWidget* gtk_widget_new (GType type, const gchar *first_property_name, ...); GDK_AVAILABLE_IN_ALL -void gtk_widget_destroy (GtkWidget *widget); -GDK_AVAILABLE_IN_ALL void gtk_widget_unparent (GtkWidget *widget); GDK_AVAILABLE_IN_ALL void gtk_widget_show (GtkWidget *widget);