[gtk/constraint-flexible-space] Add gtk_constraint_layout_remove_constraint



commit bf3cd1b177b38b27c742ce40d36c29e8f4c9e648
Author: Matthias Clasen <mclasen redhat com>
Date:   Wed Jun 26 03:40:03 2019 +0000

    Add gtk_constraint_layout_remove_constraint
    
    Otherwise, you can't do many interesting things.

 gtk/gtkconstraintlayout.c | 12 ++++++++++++
 gtk/gtkconstraintlayout.h |  3 +++
 2 files changed, 15 insertions(+)
---
diff --git a/gtk/gtkconstraintlayout.c b/gtk/gtkconstraintlayout.c
index a8fe832ae5..8205e53afa 100644
--- a/gtk/gtkconstraintlayout.c
+++ b/gtk/gtkconstraintlayout.c
@@ -1216,6 +1216,18 @@ gtk_constraint_layout_add_constraint (GtkConstraintLayout *manager,
   g_hash_table_add (manager->constraints, constraint);
 }
 
+void
+gtk_constraint_layout_remove_constraint (GtkConstraintLayout *manager,
+                                         GtkConstraint       *constraint)
+{
+  g_return_if_fail (GTK_IS_CONSTRAINT_LAYOUT (manager));
+  g_return_if_fail (GTK_IS_CONSTRAINT (constraint));
+  g_return_if_fail (gtk_constraint_is_attached (constraint));
+
+  gtk_constraint_detach (constraint);
+  g_hash_table_remove (manager->constraints, constraint);
+}
+
 static void
 gtk_constraint_guide_constraint_target_iface_init (GtkConstraintTargetInterface *iface)
 {
diff --git a/gtk/gtkconstraintlayout.h b/gtk/gtkconstraintlayout.h
index 9d788b0978..7e99a9e3c6 100644
--- a/gtk/gtkconstraintlayout.h
+++ b/gtk/gtkconstraintlayout.h
@@ -45,6 +45,9 @@ GtkLayoutManager *      gtk_constraint_layout_new               (void);
 GDK_AVAILABLE_IN_ALL 
 void                    gtk_constraint_layout_add_constraint    (GtkConstraintLayout *manager,
                                                                  GtkConstraint       *constraint);
+GDK_AVAILABLE_IN_ALL
+void                    gtk_constraint_layout_remove_constraint (GtkConstraintLayout *manager,
+                                                                 GtkConstraint       *constraint);
 
 GDK_AVAILABLE_IN_ALL
 void                    gtk_constraint_layout_add_guide         (GtkConstraintLayout *manager,


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