[gtkmm] Gdk, Gtk: Regenerate docs.xml and .defs files



commit 39c0975dcd63116dfe0809290955482555591732
Author: Kjell Ahlstedt <kjellahlstedt gmail com>
Date:   Fri Jul 12 14:33:51 2019 +0200

    Gdk, Gtk: Regenerate docs.xml and .defs files
    
    and update gtk_docs_override.xml, gtk_extra_objects.defs,
    gtk_vfuncs.defs and generate_defs_gtk.cc.

 gdk/src/gdk_docs.xml                      |    4 +-
 gtk/src/gtk_docs.xml                      | 1122 ++++++++++++++++++++++++++++-
 gtk/src/gtk_docs_override.xml             |    3 +
 gtk/src/gtk_enums.defs                    |   98 ++-
 gtk/src/gtk_extra_objects.defs            |    6 +
 gtk/src/gtk_methods.defs                  |  386 +++++++++-
 gtk/src/gtk_signals.defs                  |  162 +++++
 gtk/src/gtk_vfuncs.defs                   |   17 +-
 tools/extra_defs_gen/generate_defs_gtk.cc |    2 +
 9 files changed, 1764 insertions(+), 36 deletions(-)
---
diff --git a/gdk/src/gdk_docs.xml b/gdk/src/gdk_docs.xml
index 92750c56..574f1432 100644
--- a/gdk/src/gdk_docs.xml
+++ b/gdk/src/gdk_docs.xml
@@ -16991,7 +16991,9 @@ there’s nothing you can do to force it to happen.
 
 <function name="gdk_surface_thaw_updates">
 <description>
-Thaws a surface frozen with gdk_surface_freeze_updates().
+Thaws a surface frozen with gdk_surface_freeze_updates(). Note that this
+will not necessarily schedule updates if the surface freeze count reaches
+zero.
 
 </description>
 <parameters>
diff --git a/gtk/src/gtk_docs.xml b/gtk/src/gtk_docs.xml
index 0de8e956..940a99ba 100644
--- a/gtk/src/gtk_docs.xml
+++ b/gtk/src/gtk_docs.xml
@@ -2640,6 +2640,279 @@ it allows you to connect to notify::popup-shown.
 </description>
 </property>
 
+<property name="GtkConstraint:constant">
+<description>
+The constant value to be added to the #GtkConstraint:source-attribute.
+
+</description>
+</property>
+
+<property name="GtkConstraint:multiplier">
+<description>
+The multiplication factor to be applied to the
+#GtkConstraint:source-attribute.
+
+</description>
+</property>
+
+<property name="GtkConstraint:relation">
+<description>
+The order relation between the terms of the constraint.
+
+</description>
+</property>
+
+<property name="GtkConstraint:source">
+<description>
+The source of the constraint.
+
+The constraint will set the #GtkConstraint:target-attribute of the
+target using the #GtkConstraint:source-attribute of the source.
+
+</description>
+</property>
+
+<property name="GtkConstraint:source-attribute">
+<description>
+The attribute of the #GtkConstraint:source read by the constraint.
+
+</description>
+</property>
+
+<property name="GtkConstraint:strength">
+<description>
+The strength of the constraint.
+
+The strength can be expressed either using one of the symbolic values
+of the #GtkConstraintStrength enumeration, or any positive integer
+value.
+
+</description>
+</property>
+
+<property name="GtkConstraint:target">
+<description>
+The target of the constraint.
+
+The constraint will set the #GtkConstraint:target-attribute of the
+target using the #GtkConstraint:source-attribute of the source
+widget.
+
+</description>
+</property>
+
+<property name="GtkConstraint:target-attribute">
+<description>
+The attribute of the #GtkConstraint:target set by the constraint.
+
+</description>
+</property>
+
+<enum name="GtkConstraintAttribute">
+<description>
+The widget attributes that can be used when creating a #GtkConstraint.
+
+</description>
+<parameters>
+<parameter name="GTK_CONSTRAINT_ATTRIBUTE_NONE">
+<parameter_description> No attribute, used for constant
+relations
+</parameter_description>
+</parameter>
+<parameter name="GTK_CONSTRAINT_ATTRIBUTE_LEFT">
+<parameter_description> The left edge of a widget, regardless of
+text direction
+</parameter_description>
+</parameter>
+<parameter name="GTK_CONSTRAINT_ATTRIBUTE_RIGHT">
+<parameter_description> The right edge of a widget, regardless
+of text direction
+</parameter_description>
+</parameter>
+<parameter name="GTK_CONSTRAINT_ATTRIBUTE_TOP">
+<parameter_description> The top edge of a widget
+</parameter_description>
+</parameter>
+<parameter name="GTK_CONSTRAINT_ATTRIBUTE_BOTTOM">
+<parameter_description> The bottom edge of a widget
+</parameter_description>
+</parameter>
+<parameter name="GTK_CONSTRAINT_ATTRIBUTE_START">
+<parameter_description> The leading edge of a widget, depending
+on text direction; equivalent to %GTK_CONSTRAINT_ATTRIBUTE_LEFT for LTR
+languages, and %GTK_CONSTRAINT_ATTRIBUTE_RIGHT for RTL ones
+</parameter_description>
+</parameter>
+<parameter name="GTK_CONSTRAINT_ATTRIBUTE_END">
+<parameter_description> The trailing edge of a widget, depending
+on text direction; equivalent to %GTK_CONSTRAINT_ATTRIBUTE_RIGHT for LTR
+languages, and %GTK_CONSTRAINT_ATTRIBUTE_LEFT for RTL ones
+</parameter_description>
+</parameter>
+<parameter name="GTK_CONSTRAINT_ATTRIBUTE_WIDTH">
+<parameter_description> The width of a widget
+</parameter_description>
+</parameter>
+<parameter name="GTK_CONSTRAINT_ATTRIBUTE_HEIGHT">
+<parameter_description> The height of a widget
+</parameter_description>
+</parameter>
+<parameter name="GTK_CONSTRAINT_ATTRIBUTE_CENTER_X">
+<parameter_description> The center of a widget, on the
+horizontal axis
+</parameter_description>
+</parameter>
+<parameter name="GTK_CONSTRAINT_ATTRIBUTE_CENTER_Y">
+<parameter_description> The center of a widget, on the
+vertical axis
+</parameter_description>
+</parameter>
+<parameter name="GTK_CONSTRAINT_ATTRIBUTE_BASELINE">
+<parameter_description> The baseline of a widget
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
+<property name="GtkConstraintGuide:max-height">
+<description>
+The maximum height of the guide.
+
+</description>
+</property>
+
+<property name="GtkConstraintGuide:max-width">
+<description>
+The maximum width of the guide.
+
+</description>
+</property>
+
+<property name="GtkConstraintGuide:min-height">
+<description>
+The minimum height of the guide.
+
+</description>
+</property>
+
+<property name="GtkConstraintGuide:min-width">
+<description>
+The minimum width of the guide.
+
+</description>
+</property>
+
+<property name="GtkConstraintGuide:name">
+<description>
+A name that identifies the #GtkConstraintGuide, for debugging.
+
+</description>
+</property>
+
+<property name="GtkConstraintGuide:nat-height">
+<description>
+The preferred, or natural, height of the guide.
+
+</description>
+</property>
+
+<property name="GtkConstraintGuide:nat-width">
+<description>
+The preferred, or natural, width of the guide.
+
+</description>
+</property>
+
+<property name="GtkConstraintGuide:strength">
+<description>
+The #GtkConstraintStrength to be used for the constraint on
+the natural size of the guide.
+
+</description>
+</property>
+
+<enum name="GtkConstraintRelation">
+<description>
+The relation between two terms of a constraint.
+
+</description>
+<parameters>
+<parameter name="GTK_CONSTRAINT_RELATION_EQ">
+<parameter_description> Equal
+</parameter_description>
+</parameter>
+<parameter name="GTK_CONSTRAINT_RELATION_LE">
+<parameter_description> Less than, or equal
+</parameter_description>
+</parameter>
+<parameter name="GTK_CONSTRAINT_RELATION_GE">
+<parameter_description> Greater than, or equal
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
+<enum name="GtkConstraintStrength">
+<description>
+The strength of a constraint, expressed as a symbolic constant.
+
+The strength of a #GtkConstraint can be expressed with any positive
+integer; the values of this enumeration can be used for readability.
+
+</description>
+<parameters>
+<parameter name="GTK_CONSTRAINT_STRENGTH_REQUIRED">
+<parameter_description> The constraint is required towards solving the layout
+</parameter_description>
+</parameter>
+<parameter name="GTK_CONSTRAINT_STRENGTH_STRONG">
+<parameter_description> A strong constraint
+</parameter_description>
+</parameter>
+<parameter name="GTK_CONSTRAINT_STRENGTH_MEDIUM">
+<parameter_description> A medium constraint
+</parameter_description>
+</parameter>
+<parameter name="GTK_CONSTRAINT_STRENGTH_WEAK">
+<parameter_description> A weak constraint
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
+<enum name="GtkConstraintVflParserError">
+<description>
+Domain for VFL parsing errors.
+
+</description>
+<parameters>
+<parameter name="GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_SYMBOL">
+<parameter_description> Invalid or unknown symbol
+</parameter_description>
+</parameter>
+<parameter name="GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_ATTRIBUTE">
+<parameter_description> Invalid or unknown attribute
+</parameter_description>
+</parameter>
+<parameter name="GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_VIEW">
+<parameter_description> Invalid or unknown view
+</parameter_description>
+</parameter>
+<parameter name="GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_METRIC">
+<parameter_description> Invalid or unknown metric
+</parameter_description>
+</parameter>
+<parameter name="GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_PRIORITY">
+<parameter_description> Invalid or unknown priority
+</parameter_description>
+</parameter>
+<parameter name="GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_RELATION">
+<parameter_description> Invalid or unknown relation
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
 <enum name="GtkCornerType">
 <description>
 Specifies which corner a child widget should be placed in when packed into
@@ -27048,6 +27321,840 @@ Removes all the text entries from the combo box.
 <return></return>
 </function>
 
+<function name="gtk_constraint_get_constant">
+<description>
+Retrieves the constant factor added to the source attributes' value.
+
+
+</description>
+<parameters>
+<parameter name="constraint">
+<parameter_description> a #GtkConstraint
+</parameter_description>
+</parameter>
+</parameters>
+<return> a constant factor
+</return>
+</function>
+
+<function name="gtk_constraint_get_multiplier">
+<description>
+Retrieves the multiplication factor applied to the source
+attribute's value.
+
+
+</description>
+<parameters>
+<parameter name="constraint">
+<parameter_description> a #GtkConstraint
+</parameter_description>
+</parameter>
+</parameters>
+<return> a multiplication factor
+</return>
+</function>
+
+<function name="gtk_constraint_get_relation">
+<description>
+The order relation between the terms of the @constraint.
+
+
+</description>
+<parameters>
+<parameter name="constraint">
+<parameter_description> a #GtkConstraint
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GtkConstraintRelation value
+</return>
+</function>
+
+<function name="gtk_constraint_get_source">
+<description>
+Retrieves the #GtkConstraintTarget used as the source for @constraint.
+
+If the #GtkConstraint:source property is set to %NULL, the @constraint
+will use the #GtkConstraintLayout's widget.
+
+
+</description>
+<parameters>
+<parameter name="constraint">
+<parameter_description> a #GtkConstraint
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GtkConstraintTarget
+</return>
+</function>
+
+<function name="gtk_constraint_get_source_attribute">
+<description>
+Retrieves the attribute of the source to be read by the @constraint.
+
+
+</description>
+<parameters>
+<parameter name="constraint">
+<parameter_description> a #GtkConstraint
+</parameter_description>
+</parameter>
+</parameters>
+<return> the target's attribute
+</return>
+</function>
+
+<function name="gtk_constraint_get_strength">
+<description>
+Retrieves the strength of the constraint.
+
+
+</description>
+<parameters>
+<parameter name="constraint">
+<parameter_description> a #GtkConstraint
+</parameter_description>
+</parameter>
+</parameters>
+<return> the strength of the constraint
+</return>
+</function>
+
+<function name="gtk_constraint_get_target">
+<description>
+Retrieves the #GtkConstraintTarget used as the target for @constraint.
+
+If the #GtkConstraint:target property is set to %NULL, the @constraint
+will use the #GtkConstraintLayout's widget.
+
+
+</description>
+<parameters>
+<parameter name="constraint">
+<parameter_description> a #GtkConstraint
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GtkConstraintTarget
+</return>
+</function>
+
+<function name="gtk_constraint_get_target_attribute">
+<description>
+Retrieves the attribute of the target to be set by the @constraint.
+
+
+</description>
+<parameters>
+<parameter name="constraint">
+<parameter_description> a #GtkConstraint
+</parameter_description>
+</parameter>
+</parameters>
+<return> the target's attribute
+</return>
+</function>
+
+<function name="gtk_constraint_guide_get_max_size">
+<description>
+Gets the maximum size of @guide.
+
+</description>
+<parameters>
+<parameter name="guide">
+<parameter_description> a #GtkContraintGuide object
+</parameter_description>
+</parameter>
+<parameter name="width">
+<parameter_description> return location for the maximum width,
+or %NULL
+</parameter_description>
+</parameter>
+<parameter name="height">
+<parameter_description> return location for the maximum height,
+or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_constraint_guide_get_min_size">
+<description>
+Gets the minimum size of @guide.
+
+</description>
+<parameters>
+<parameter name="guide">
+<parameter_description> a #GtkContraintGuide object
+</parameter_description>
+</parameter>
+<parameter name="width">
+<parameter_description> return location for the minimum width,
+or %NULL
+</parameter_description>
+</parameter>
+<parameter name="height">
+<parameter_description> return location for the minimum height,
+or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_constraint_guide_get_name">
+<description>
+Retrieves the name set using gtk_constraint_guide_set_name().
+
+
+</description>
+<parameters>
+<parameter name="guide">
+<parameter_description> a #GtkConstraintGuide
+</parameter_description>
+</parameter>
+</parameters>
+<return> the name of the guide
+</return>
+</function>
+
+<function name="gtk_constraint_guide_get_nat_size">
+<description>
+Gets the natural size of @guide.
+
+</description>
+<parameters>
+<parameter name="guide">
+<parameter_description> a #GtkContraintGuide object
+</parameter_description>
+</parameter>
+<parameter name="width">
+<parameter_description> return location for the natural width,
+or %NULL
+</parameter_description>
+</parameter>
+<parameter name="height">
+<parameter_description> return location for the natural height,
+or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_constraint_guide_get_strength">
+<description>
+Retrieves the strength set using gtk_constraint_guide_set_strength().
+
+
+</description>
+<parameters>
+<parameter name="guide">
+<parameter_description> a #GtkConstraintGuide
+</parameter_description>
+</parameter>
+</parameters>
+<return> the strength of the constraint on the natural size
+</return>
+</function>
+
+<function name="gtk_constraint_guide_new">
+<description>
+Creates a new #GtkConstraintGuide object.
+
+Return: a new #GtkConstraintGuide object.
+
+</description>
+<parameters>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_constraint_guide_set_max_size">
+<description>
+Sets the maximum size of @guide.
+
+If @guide is attached to a #GtkConstraintLayout,
+the constraints will be updated to reflect the new size.
+
+</description>
+<parameters>
+<parameter name="guide">
+<parameter_description> a #GtkConstraintGuide object
+</parameter_description>
+</parameter>
+<parameter name="width">
+<parameter_description> the new maximum width, or -1 to not change it
+</parameter_description>
+</parameter>
+<parameter name="height">
+<parameter_description> the new maximum height, or -1 to not change it
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_constraint_guide_set_min_size">
+<description>
+Sets the minimum size of @guide.
+
+If @guide is attached to a #GtkConstraintLayout,
+the constraints will be updated to reflect the new size.
+
+</description>
+<parameters>
+<parameter name="guide">
+<parameter_description> a #GtkConstraintGuide object
+</parameter_description>
+</parameter>
+<parameter name="width">
+<parameter_description> the new minimum width, or -1 to not change it
+</parameter_description>
+</parameter>
+<parameter name="height">
+<parameter_description> the new minimum height, or -1 to not change it
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_constraint_guide_set_name">
+<description>
+Sets a name for the given #GtkConstraintGuide.
+
+The name is useful for debugging purposes.
+
+</description>
+<parameters>
+<parameter name="guide">
+<parameter_description> a #GtkConstraintGuide
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> a name for the @guide
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_constraint_guide_set_nat_size">
+<description>
+Sets the natural size of @guide.
+
+If @guide is attached to a #GtkConstraintLayout,
+the constraints will be updated to reflect the new size.
+
+</description>
+<parameters>
+<parameter name="guide">
+<parameter_description> a #GtkConstraintGuide object
+</parameter_description>
+</parameter>
+<parameter name="width">
+<parameter_description> the new natural width, or -1 to not change it
+</parameter_description>
+</parameter>
+<parameter name="height">
+<parameter_description> the new natural height, or -1 to not change it
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_constraint_guide_set_strength">
+<description>
+Sets the strength of the constraint on the natural size of the
+given #GtkConstraintGuide.
+
+</description>
+<parameters>
+<parameter name="guide">
+<parameter_description> a #GtkConstraintGuide
+</parameter_description>
+</parameter>
+<parameter name="strength">
+<parameter_description> the strength of the constraint
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_constraint_is_attached">
+<description>
+Checks whether the @constraint is attached to a #GtkConstraintLayout,
+and it is contributing to the layout.
+
+
+</description>
+<parameters>
+<parameter name="constraint">
+<parameter_description> a #GtkConstraint
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if the constraint is attached
+</return>
+</function>
+
+<function name="gtk_constraint_is_constant">
+<description>
+Checks whether the @constraint describes a relation between an attribute
+on the #GtkConstraint:target-widget and a constant value.
+
+
+</description>
+<parameters>
+<parameter name="constraint">
+<parameter_description> a #GtkConstraint
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if the constraint is a constant relation
+</return>
+</function>
+
+<function name="gtk_constraint_is_required">
+<description>
+Checks whether the @constraint is a required relation for solving the
+constraint layout.
+
+
+</description>
+<parameters>
+<parameter name="constraint">
+<parameter_description> a #GtkConstraint
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if the constraint is required
+</return>
+</function>
+
+<function name="gtk_constraint_layout_add_constraint">
+<description>
+Adds a #GtkConstraint to the layout manager.
+
+The #GtkConstraint:source and #GtkConstraint:target
+properties of @constraint can be:
+
+- set to %NULL to indicate that the constraint refers to the
+widget using @layout
+- set to the #GtkWidget using @layout
+- set to a child of the #GtkWidget using @layout
+- set to a guide that is part of @layout
+
+The @layout acquires the ownership of @constraint after calling
+this function.
+
+</description>
+<parameters>
+<parameter name="layout">
+<parameter_description> a #GtkConstraintLayout
+</parameter_description>
+</parameter>
+<parameter name="constraint">
+<parameter_description> a #GtkConstraint
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_constraint_layout_add_constraints_from_description">
+<description>
+Creates a list of constraints they formal description using a compact
+description syntax called VFL, or &quot;Visual Format Language&quot;.
+
+This function is a convenience wrapper around
+gtk_constraint_layout_add_constraints_from_descriptionv(), using
+variadic arguments to populate the view/target map.
+
+
+</description>
+<parameters>
+<parameter name="layout">
+<parameter_description> a #GtkConstraintLayout
+</parameter_description>
+</parameter>
+<parameter name="lines">
+<parameter_description> an array of Visual Format Language lines
+defining a set of constraints
+</parameter_description>
+</parameter>
+<parameter name="n_lines">
+<parameter_description> the number of lines
+</parameter_description>
+</parameter>
+<parameter name="hspacing">
+<parameter_description> default horizontal spacing value, or -1 for the fallback value
+</parameter_description>
+</parameter>
+<parameter name="vspacing">
+<parameter_description> default vertical spacing value, or -1 for the fallback value
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError
+</parameter_description>
+</parameter>
+<parameter name="first_view">
+<parameter_description> the name of a view in the VFL description, followed by the
+#GtkConstraintTarget to which it maps
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> a %NULL-terminated list of view names and #GtkConstraintTargets
+</parameter_description>
+</parameter>
+</parameters>
+<return> the list of
+#GtkConstraints that were added to the layout
+</return>
+</function>
+
+<function name="gtk_constraint_layout_add_constraints_from_descriptionv">
+<description>
+Creates a list of constraints from a formal description using a compact
+description syntax called VFL, or &quot;Visual Format Language&quot;.
+
+The Visual Format Language is based on Apple's AutoLayout 
[VFL](https://developer.apple.com/library/content/documentation/UserExperience/Conceptual/AutolayoutPG/VisualFormatLanguage.html).
+
+The @views dictionary is used to match #GtkConstraintTargets to the symbolic
+view name inside the VFL.
+
+The VFL grammar is:
+
+|[&lt;!-- language=&quot;plain&quot; --&gt;
+&lt;visualFormatString&gt; = (&lt;orientation&gt;)?
+(&lt;superview&gt;&lt;connection&gt;)?
+&lt;view&gt;(&lt;connection&gt;&lt;view&gt;)*
+(&lt;connection&gt;&lt;superview&gt;)?
+&lt;orientation&gt; = 'H' | 'V'
+&lt;superview&gt; = '|'
+&lt;connection&gt; = '' | '-' &lt;predicateList&gt; '-' | '-'
+&lt;predicateList&gt; = &lt;simplePredicate&gt; | &lt;predicateListWithParens&gt;
+&lt;simplePredicate&gt; = &lt;metricName&gt; | &lt;positiveNumber&gt;
+&lt;predicateListWithParens&gt; = '(' &lt;predicate&gt; (',' &lt;predicate&gt;)* ')'
+&lt;predicate&gt; = (&lt;relation&gt;)? &lt;objectOfPredicate&gt; (&lt;operatorList&gt;)? ('@' 
&lt;priority&gt;)?
+&lt;relation&gt; = '==' | '&lt;=' | '&gt;='
+&lt;objectOfPredicate&gt; = &lt;constant&gt; | &lt;viewName&gt; | ('.' &lt;attributeName&gt;)?
+&lt;priority&gt; = &lt;positiveNumber&gt; | 'required' | 'strong' | 'medium' | 'weak'
+&lt;constant&gt; = &lt;number&gt;
+&lt;operatorList&gt; = (&lt;multiplyOperator&gt;)? (&lt;addOperator&gt;)?
+&lt;multiplyOperator&gt; = [ '*' | '/' ] &lt;positiveNumber&gt;
+&lt;addOperator&gt; = [ '+' | '-' ] &lt;positiveNumber&gt;
+&lt;viewName&gt; = [A-Za-z_]([A-Za-z0-9_]*) // A C identifier
+&lt;metricName&gt; = [A-Za-z_]([A-Za-z0-9_]*) // A C identifier
+&lt;attributeName&gt; = 'top' | 'bottom' | 'left' | 'right' | 'width' | 'height' |
+'start' | 'end' | 'centerX' | 'centerY' | 'baseline'
+&lt;positiveNumber&gt; // A positive real number parseable by g_ascii_strtod()
+&lt;number&gt; // A real number parseable by g_ascii_strtod()
+]|
+
+**Note**: The VFL grammar used by GTK is slightly different than the one
+defined by Apple, as it can use symbolic values for the constraint's
+strength instead of numeric values; additionally, GTK allows adding
+simple arithmetic operations inside predicates.
+
+Examples of VFL descriptions are:
+
+|[&lt;!-- language=&quot;plain&quot; --&gt;
+// Default spacing
+[button]-[textField]
+
+// Width constraint
+[button(&gt;=50)]
+
+// Connection to super view
+|-50-[purpleBox]-50-|
+
+// Vertical layout
+V:[topField]-10-[bottomField]
+
+// Flush views
+[maroonView][blueView]
+
+// Priority
+[button(100@strong)]
+
+// Equal widths
+[button1(==button2)]
+
+// Multiple predicates
+[flexibleButton(&gt;=70,&lt;=100)]
+
+// A complete line of layout
+|-[find]-[findNext]-[findField(&gt;=20)]-|
+
+// Operators
+[button1(button2 / 3 + 50)]
+
+// Named attributes
+[button1(==button2.height)]
+]|
+
+
+</description>
+<parameters>
+<parameter name="layout">
+<parameter_description> a #GtkConstraintLayout
+</parameter_description>
+</parameter>
+<parameter name="lines">
+<parameter_description> an array of Visual Format Language lines
+defining a set of constraints
+</parameter_description>
+</parameter>
+<parameter name="n_lines">
+<parameter_description> the number of lines
+</parameter_description>
+</parameter>
+<parameter name="hspacing">
+<parameter_description> default horizontal spacing value, or -1 for the fallback value
+</parameter_description>
+</parameter>
+<parameter name="vspacing">
+<parameter_description> default vertical spacing value, or -1 for the fallback value
+</parameter_description>
+</parameter>
+<parameter name="views">
+<parameter_description> a dictionary of [ name, target ]
+pairs; the `name` keys map to the view names in the VFL lines, while
+the `target` values map to children of the widget using a #GtkConstraintLayout, or guides
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError
+</parameter_description>
+</parameter>
+</parameters>
+<return> the list of
+#GtkConstraints that were added to the layout
+</return>
+</function>
+
+<function name="gtk_constraint_layout_add_guide">
+<description>
+Adds a guide to @layout. A guide can be used as
+the source or target of constraints, like a widget,
+but it is not visible.
+
+The @layout acquires the ownership of @guide after calling
+this function.
+
+</description>
+<parameters>
+<parameter name="layout">
+<parameter_description> a #GtkConstraintLayout
+</parameter_description>
+</parameter>
+<parameter name="guide">
+<parameter_description> a #GtkConstraintGuide object
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_constraint_layout_new">
+<description>
+Creates a new #GtkConstraintLayout layout manager.
+
+
+</description>
+<parameters>
+</parameters>
+<return> the newly created #GtkConstraintLayout
+</return>
+</function>
+
+<function name="gtk_constraint_layout_observe_constraints">
+<description>
+Returns a #GListModel to track the constraints that are
+part of @layout.
+
+Calling this function will enable extra internal bookkeeping
+to track constraints and emit signals on the returned listmodel.
+It may slow down operations a lot.
+
+Applications should try hard to avoid calling this function
+because of the slowdowns.
+
+
+</description>
+<parameters>
+<parameter name="layout">
+<parameter_description> a #GtkConstraintLayout
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GListModel tracking @layout's
+constraints 
+</return>
+</function>
+
+<function name="gtk_constraint_layout_observe_guides">
+<description>
+Returns a #GListModel to track the guides that are
+part of @layout.
+
+Calling this function will enable extra internal bookkeeping
+to track guides and emit signals on the returned listmodel.
+It may slow down operations a lot.
+
+Applications should try hard to avoid calling this function
+because of the slowdowns.
+
+
+</description>
+<parameters>
+<parameter name="layout">
+<parameter_description> a #GtkConstraintLayout
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GListModel tracking @layout's
+guides
+</return>
+</function>
+
+<function name="gtk_constraint_layout_remove_all_constraints">
+<description>
+Removes all constraints from the layout manager.
+
+</description>
+<parameters>
+<parameter name="layout">
+<parameter_description> a #GtkConstraintLayout
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_constraint_layout_remove_constraint">
+<description>
+Removes @constraint from the layout manager,
+so that it no longer influences the layout.
+
+</description>
+<parameters>
+<parameter name="layout">
+<parameter_description> a #GtkConstraintLayout
+</parameter_description>
+</parameter>
+<parameter name="constraint">
+<parameter_description> a #GtkConstraint
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_constraint_layout_remove_guide">
+<description>
+Removes @guide from the layout manager,
+so that it no longer influences the layout.
+
+</description>
+<parameters>
+<parameter name="layout">
+<parameter_description> a #GtkConstraintManager
+</parameter_description>
+</parameter>
+<parameter name="guide">
+<parameter_description> a #GtkConstraintGuide object
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_constraint_new">
+<description>
+Creates a new #GtkConstraint representing a relation between a layout
+attribute on a source and a layout attribute on a target.
+
+
+</description>
+<parameters>
+<parameter name="target">
+<parameter_description> a #GtkConstraintTarget
+</parameter_description>
+</parameter>
+<parameter name="target_attribute">
+<parameter_description> the attribute of @target to be set
+</parameter_description>
+</parameter>
+<parameter name="relation">
+<parameter_description> the relation equivalence between @target_attribute and @source_attribute
+</parameter_description>
+</parameter>
+<parameter name="source">
+<parameter_description> a #GtkConstraintTarget
+</parameter_description>
+</parameter>
+<parameter name="source_attribute">
+<parameter_description> the attribute of @source to be read
+</parameter_description>
+</parameter>
+<parameter name="multiplier">
+<parameter_description> a multiplication factor to be applied to @source_attribute
+</parameter_description>
+</parameter>
+<parameter name="constant">
+<parameter_description> a constant factor to be added to @source_attribute
+</parameter_description>
+</parameter>
+<parameter name="strength">
+<parameter_description> the strength of the constraint
+</parameter_description>
+</parameter>
+</parameters>
+<return> the newly created #GtkConstraint
+</return>
+</function>
+
+<function name="gtk_constraint_new_constant">
+<description>
+Creates a new #GtkConstraint representing a relation between a layout
+attribute on a target and a constant value.
+
+
+</description>
+<parameters>
+<parameter name="target">
+<parameter_description> a #GtkConstraintTarget
+</parameter_description>
+</parameter>
+<parameter name="target_attribute">
+<parameter_description> the attribute of @target to be set
+</parameter_description>
+</parameter>
+<parameter name="relation">
+<parameter_description> the relation equivalence between @target_attribute and @constant
+</parameter_description>
+</parameter>
+<parameter name="constant">
+<parameter_description> a constant factor to be set on @target_attribute
+</parameter_description>
+</parameter>
+<parameter name="strength">
+<parameter_description> the strength of the constraint
+</parameter_description>
+</parameter>
+</parameters>
+<return> the newly created #GtkConstraint
+</return>
+</function>
+
 <function name="gtk_container_add">
 <description>
 Adds @widget to @container. Typically used for simple containers
@@ -85936,21 +87043,6 @@ GtkWidgetClass::size_allocate will be silently ignored.
 <return></return>
 </function>
 
-<function name="gtk_widget_queue_resize_no_redraw">
-<description>
-This function works like gtk_widget_queue_resize(),
-except that the widget is not invalidated.
-
-</description>
-<parameters>
-<parameter name="widget">
-<parameter_description> a #GtkWidget
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
 <function name="gtk_widget_realize">
 <description>
 Creates the GDK (windowing system) resources associated with a
diff --git a/gtk/src/gtk_docs_override.xml b/gtk/src/gtk_docs_override.xml
index 2c7e993b..4a17ffde 100644
--- a/gtk/src/gtk_docs_override.xml
+++ b/gtk/src/gtk_docs_override.xml
@@ -125,6 +125,9 @@
 <substitute_enumerator_name from_prefix="GTK_FONT_CHOOSER_LEVEL_" to_prefix="Gtk::FontChooser::Level::" />
 <substitute_enumerator_name from_prefix="GTK_EVENT_CONTROLLER_SCROLL_" 
to_prefix="Gtk::EventControllerScroll::Flags::" />
 <substitute_enumerator_name from_prefix="GTK_APPLICATION_INHIBIT_" 
to_prefix="Gtk::Application::InhibitFlags::" />
+<substitute_enumerator_name from_prefix="GTK_CONSTRAINT_ATTRIBUTE_" to_prefix="Gtk::Constraint::Attribute::" 
/>
+<substitute_enumerator_name from_prefix="GTK_CONSTRAINT_RELATION_" to_prefix="Gtk::Constraint::Relation::" />
+<substitute_enumerator_name from_prefix="GTK_CONSTRAINT_STRENGTH_" to_prefix="Gtk::Constraint::Strength::" />
 <!-- GdkWindowWindowClass is not wrapped in gtkmm. Don't substitute its enumerator names. -->
 <substitute_enumerator_name from="GDK_INPUT_ONLY" to="GDK_INPUT_ONLY" />
 <substitute_enumerator_name from="GDK_INPUT_OUTPUT" to="GDK_INPUT_OUTPUT" />
diff --git a/gtk/src/gtk_enums.defs b/gtk/src/gtk_enums.defs
index ce9f8b91..3ae0b581 100644
--- a/gtk/src/gtk_enums.defs
+++ b/gtk/src/gtk_enums.defs
@@ -266,7 +266,8 @@
 ;;   GTK_DEBUG_ACTIONS         = 1 << 13,
 ;;   GTK_DEBUG_RESIZE          = 1 << 14,
 ;;   GTK_DEBUG_LAYOUT          = 1 << 15,
-;;   GTK_DEBUG_SNAPSHOT        = 1 << 16
+;;   GTK_DEBUG_SNAPSHOT        = 1 << 16,
+;;   GTK_DEBUG_CONSTRAINTS     = 1 << 17,
 ;; } GtkDebugFlag;
 
 (define-flags-extended DebugFlag
@@ -290,6 +291,7 @@
     '("resize" "GTK_DEBUG_RESIZE" "1 << 14")
     '("layout" "GTK_DEBUG_LAYOUT" "1 << 15")
     '("snapshot" "GTK_DEBUG_SNAPSHOT" "1 << 16")
+    '("constraints" "GTK_DEBUG_CONSTRAINTS" "1 << 17")
   )
 )
 
@@ -1450,6 +1452,100 @@
   )
 )
 
+;; Original typedef:
+;; typedef enum {
+;;   GTK_CONSTRAINT_RELATION_LE = -1,
+;;   GTK_CONSTRAINT_RELATION_EQ = 0,
+;;   GTK_CONSTRAINT_RELATION_GE = 1
+;; } GtkConstraintRelation;
+
+(define-enum-extended ConstraintRelation
+  (in-module "Gtk")
+  (c-name "GtkConstraintRelation")
+  (values
+    '("le" "GTK_CONSTRAINT_RELATION_LE" "-1")
+    '("eq" "GTK_CONSTRAINT_RELATION_EQ" "0")
+    '("ge" "GTK_CONSTRAINT_RELATION_GE" "1")
+  )
+)
+
+;; Original typedef:
+;; typedef enum {
+;;   GTK_CONSTRAINT_STRENGTH_REQUIRED = 1001001000,
+;;   GTK_CONSTRAINT_STRENGTH_STRONG   = 1000000000,
+;;   GTK_CONSTRAINT_STRENGTH_MEDIUM   = 1000,
+;;   GTK_CONSTRAINT_STRENGTH_WEAK     = 1
+;; } GtkConstraintStrength;
+
+(define-enum-extended ConstraintStrength
+  (in-module "Gtk")
+  (c-name "GtkConstraintStrength")
+  (values
+    '("required" "GTK_CONSTRAINT_STRENGTH_REQUIRED" "1001001000")
+    '("strong" "GTK_CONSTRAINT_STRENGTH_STRONG" "1000000000")
+    '("medium" "GTK_CONSTRAINT_STRENGTH_MEDIUM" "1000")
+    '("weak" "GTK_CONSTRAINT_STRENGTH_WEAK" "1")
+  )
+)
+
+;; Original typedef:
+;; typedef enum {
+;;   GTK_CONSTRAINT_ATTRIBUTE_NONE,
+;;   GTK_CONSTRAINT_ATTRIBUTE_LEFT,
+;;   GTK_CONSTRAINT_ATTRIBUTE_RIGHT,
+;;   GTK_CONSTRAINT_ATTRIBUTE_TOP,
+;;   GTK_CONSTRAINT_ATTRIBUTE_BOTTOM,
+;;   GTK_CONSTRAINT_ATTRIBUTE_START,
+;;   GTK_CONSTRAINT_ATTRIBUTE_END,
+;;   GTK_CONSTRAINT_ATTRIBUTE_WIDTH,
+;;   GTK_CONSTRAINT_ATTRIBUTE_HEIGHT,
+;;   GTK_CONSTRAINT_ATTRIBUTE_CENTER_X,
+;;   GTK_CONSTRAINT_ATTRIBUTE_CENTER_Y,
+;;   GTK_CONSTRAINT_ATTRIBUTE_BASELINE
+;; } GtkConstraintAttribute;
+
+(define-enum-extended ConstraintAttribute
+  (in-module "Gtk")
+  (c-name "GtkConstraintAttribute")
+  (values
+    '("none" "GTK_CONSTRAINT_ATTRIBUTE_NONE" "0")
+    '("left" "GTK_CONSTRAINT_ATTRIBUTE_LEFT" "1")
+    '("right" "GTK_CONSTRAINT_ATTRIBUTE_RIGHT" "2")
+    '("top" "GTK_CONSTRAINT_ATTRIBUTE_TOP" "3")
+    '("bottom" "GTK_CONSTRAINT_ATTRIBUTE_BOTTOM" "4")
+    '("start" "GTK_CONSTRAINT_ATTRIBUTE_START" "5")
+    '("end" "GTK_CONSTRAINT_ATTRIBUTE_END" "6")
+    '("width" "GTK_CONSTRAINT_ATTRIBUTE_WIDTH" "7")
+    '("height" "GTK_CONSTRAINT_ATTRIBUTE_HEIGHT" "8")
+    '("center-x" "GTK_CONSTRAINT_ATTRIBUTE_CENTER_X" "9")
+    '("center-y" "GTK_CONSTRAINT_ATTRIBUTE_CENTER_Y" "10")
+    '("baseline" "GTK_CONSTRAINT_ATTRIBUTE_BASELINE" "11")
+  )
+)
+
+;; Original typedef:
+;; typedef enum {
+;;   GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_SYMBOL,
+;;   GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_ATTRIBUTE,
+;;   GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_VIEW,
+;;   GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_METRIC,
+;;   GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_PRIORITY,
+;;   GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_RELATION
+;; } GtkConstraintVflParserError;
+
+(define-enum-extended ConstraintVflParserError
+  (in-module "Gtk")
+  (c-name "GtkConstraintVflParserError")
+  (values
+    '("symbol" "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_SYMBOL" "0")
+    '("attribute" "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_ATTRIBUTE" "1")
+    '("view" "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_VIEW" "2")
+    '("metric" "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_METRIC" "3")
+    '("priority" "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_PRIORITY" "4")
+    '("relation" "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_RELATION" "5")
+  )
+)
+
 ;; From gtkeventcontrollerscroll.h
 
 ;; Original typedef:
diff --git a/gtk/src/gtk_extra_objects.defs b/gtk/src/gtk_extra_objects.defs
index d081cd63..b1b7b6e9 100644
--- a/gtk/src/gtk_extra_objects.defs
+++ b/gtk/src/gtk_extra_objects.defs
@@ -90,6 +90,12 @@
   (gtype-id "GTK_TYPE_COMBO_BOX_TEXT")
 )
 
+(define-object ConstraintGuide
+  (in-module "Gtk")
+  (c-name "GtkConstraintGuide")
+  (gtype-id "GTK_TYPE_CONSTRAINT_GUIDE")
+)
+
 (define-object CssProvider
   (in-module "Gtk")
   (c-name "GtkCssProvider")
diff --git a/gtk/src/gtk_methods.defs b/gtk/src/gtk_methods.defs
index afd3fdc8..5d3fb18a 100644
--- a/gtk/src/gtk_methods.defs
+++ b/gtk/src/gtk_methods.defs
@@ -689,6 +689,7 @@
     '("resize" "GTK_DEBUG_RESIZE")
     '("layout" "GTK_DEBUG_LAYOUT")
     '("snapshot" "GTK_DEBUG_SNAPSHOT")
+    '("constraints" "GTK_DEBUG_CONSTRAINTS")
   )
 )
 
@@ -1375,6 +1376,63 @@
   )
 )
 
+(define-enum ConstraintRelation
+  (in-module "Gtk")
+  (c-name "GtkConstraintRelation")
+  (gtype-id "GTK_TYPE_CONSTRAINT_RELATION")
+  (values
+    '("le" "GTK_CONSTRAINT_RELATION_LE")
+    '("eq" "GTK_CONSTRAINT_RELATION_EQ")
+    '("ge" "GTK_CONSTRAINT_RELATION_GE")
+  )
+)
+
+(define-enum ConstraintStrength
+  (in-module "Gtk")
+  (c-name "GtkConstraintStrength")
+  (gtype-id "GTK_TYPE_CONSTRAINT_STRENGTH")
+  (values
+    '("required" "GTK_CONSTRAINT_STRENGTH_REQUIRED")
+    '("strong" "GTK_CONSTRAINT_STRENGTH_STRONG")
+    '("medium" "GTK_CONSTRAINT_STRENGTH_MEDIUM")
+    '("weak" "GTK_CONSTRAINT_STRENGTH_WEAK")
+  )
+)
+
+(define-enum ConstraintAttribute
+  (in-module "Gtk")
+  (c-name "GtkConstraintAttribute")
+  (gtype-id "GTK_TYPE_CONSTRAINT_ATTRIBUTE")
+  (values
+    '("none" "GTK_CONSTRAINT_ATTRIBUTE_NONE")
+    '("left" "GTK_CONSTRAINT_ATTRIBUTE_LEFT")
+    '("right" "GTK_CONSTRAINT_ATTRIBUTE_RIGHT")
+    '("top" "GTK_CONSTRAINT_ATTRIBUTE_TOP")
+    '("bottom" "GTK_CONSTRAINT_ATTRIBUTE_BOTTOM")
+    '("start" "GTK_CONSTRAINT_ATTRIBUTE_START")
+    '("end" "GTK_CONSTRAINT_ATTRIBUTE_END")
+    '("width" "GTK_CONSTRAINT_ATTRIBUTE_WIDTH")
+    '("height" "GTK_CONSTRAINT_ATTRIBUTE_HEIGHT")
+    '("center-x" "GTK_CONSTRAINT_ATTRIBUTE_CENTER_X")
+    '("center-y" "GTK_CONSTRAINT_ATTRIBUTE_CENTER_Y")
+    '("baseline" "GTK_CONSTRAINT_ATTRIBUTE_BASELINE")
+  )
+)
+
+(define-enum ConstraintVflParserError
+  (in-module "Gtk")
+  (c-name "GtkConstraintVflParserError")
+  (gtype-id "GTK_TYPE_CONSTRAINT_VFL_PARSER_ERROR")
+  (values
+    '("symbol" "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_SYMBOL")
+    '("attribute" "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_ATTRIBUTE")
+    '("view" "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_VIEW")
+    '("metric" "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_METRIC")
+    '("priority" "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_PRIORITY")
+    '("relation" "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_RELATION")
+  )
+)
+
 (define-flags EventControllerScrollFlags
   (in-module "Gtk")
   (c-name "GtkEventControllerScrollFlags")
@@ -6674,6 +6732,302 @@
 
 
 
+;; From gtkconstraintguide.h
+
+(define-function gtk_constraint_guide_new
+  (c-name "gtk_constraint_guide_new")
+  (is-constructor-of "GtkConstraintGuide")
+  (return-type "GtkConstraintGuide*")
+)
+
+(define-method set_min_size
+  (of-object "GtkConstraintGuide")
+  (c-name "gtk_constraint_guide_set_min_size")
+  (return-type "none")
+  (parameters
+    '("int" "width")
+    '("int" "height")
+  )
+)
+
+(define-method get_min_size
+  (of-object "GtkConstraintGuide")
+  (c-name "gtk_constraint_guide_get_min_size")
+  (return-type "none")
+  (parameters
+    '("int*" "width")
+    '("int*" "height")
+  )
+)
+
+(define-method set_nat_size
+  (of-object "GtkConstraintGuide")
+  (c-name "gtk_constraint_guide_set_nat_size")
+  (return-type "none")
+  (parameters
+    '("int" "width")
+    '("int" "height")
+  )
+)
+
+(define-method get_nat_size
+  (of-object "GtkConstraintGuide")
+  (c-name "gtk_constraint_guide_get_nat_size")
+  (return-type "none")
+  (parameters
+    '("int*" "width")
+    '("int*" "height")
+  )
+)
+
+(define-method set_max_size
+  (of-object "GtkConstraintGuide")
+  (c-name "gtk_constraint_guide_set_max_size")
+  (return-type "none")
+  (parameters
+    '("int" "width")
+    '("int" "height")
+  )
+)
+
+(define-method get_max_size
+  (of-object "GtkConstraintGuide")
+  (c-name "gtk_constraint_guide_get_max_size")
+  (return-type "none")
+  (parameters
+    '("int*" "width")
+    '("int*" "height")
+  )
+)
+
+(define-method get_strength
+  (of-object "GtkConstraintGuide")
+  (c-name "gtk_constraint_guide_get_strength")
+  (return-type "GtkConstraintStrength")
+)
+
+(define-method set_strength
+  (of-object "GtkConstraintGuide")
+  (c-name "gtk_constraint_guide_set_strength")
+  (return-type "none")
+  (parameters
+    '("GtkConstraintStrength" "strength")
+  )
+)
+
+(define-method set_name
+  (of-object "GtkConstraintGuide")
+  (c-name "gtk_constraint_guide_set_name")
+  (return-type "none")
+  (parameters
+    '("const-char*" "name")
+  )
+)
+
+(define-method get_name
+  (of-object "GtkConstraintGuide")
+  (c-name "gtk_constraint_guide_get_name")
+  (return-type "const-char*")
+)
+
+
+
+;; From gtkconstraint.h
+
+(define-function gtk_constraint_new
+  (c-name "gtk_constraint_new")
+  (is-constructor-of "GtkConstraint")
+  (return-type "GtkConstraint*")
+  (parameters
+    '("gpointer" "target")
+    '("GtkConstraintAttribute" "target_attribute")
+    '("GtkConstraintRelation" "relation")
+    '("gpointer" "source")
+    '("GtkConstraintAttribute" "source_attribute")
+    '("double" "multiplier")
+    '("double" "constant")
+    '("int" "strength")
+  )
+)
+
+(define-function gtk_constraint_new_constant
+  (c-name "gtk_constraint_new_constant")
+  (return-type "GtkConstraint*")
+  (parameters
+    '("gpointer" "target")
+    '("GtkConstraintAttribute" "target_attribute")
+    '("GtkConstraintRelation" "relation")
+    '("double" "constant")
+    '("int" "strength")
+  )
+)
+
+(define-method get_target
+  (of-object "GtkConstraint")
+  (c-name "gtk_constraint_get_target")
+  (return-type "GtkConstraintTarget*")
+)
+
+(define-method get_target_attribute
+  (of-object "GtkConstraint")
+  (c-name "gtk_constraint_get_target_attribute")
+  (return-type "GtkConstraintAttribute")
+)
+
+(define-method get_source
+  (of-object "GtkConstraint")
+  (c-name "gtk_constraint_get_source")
+  (return-type "GtkConstraintTarget*")
+)
+
+(define-method get_source_attribute
+  (of-object "GtkConstraint")
+  (c-name "gtk_constraint_get_source_attribute")
+  (return-type "GtkConstraintAttribute")
+)
+
+(define-method get_relation
+  (of-object "GtkConstraint")
+  (c-name "gtk_constraint_get_relation")
+  (return-type "GtkConstraintRelation")
+)
+
+(define-method get_multiplier
+  (of-object "GtkConstraint")
+  (c-name "gtk_constraint_get_multiplier")
+  (return-type "double")
+)
+
+(define-method get_constant
+  (of-object "GtkConstraint")
+  (c-name "gtk_constraint_get_constant")
+  (return-type "double")
+)
+
+(define-method get_strength
+  (of-object "GtkConstraint")
+  (c-name "gtk_constraint_get_strength")
+  (return-type "int")
+)
+
+(define-method is_required
+  (of-object "GtkConstraint")
+  (c-name "gtk_constraint_is_required")
+  (return-type "gboolean")
+)
+
+(define-method is_attached
+  (of-object "GtkConstraint")
+  (c-name "gtk_constraint_is_attached")
+  (return-type "gboolean")
+)
+
+(define-method is_constant
+  (of-object "GtkConstraint")
+  (c-name "gtk_constraint_is_constant")
+  (return-type "gboolean")
+)
+
+
+
+;; From gtkconstraintlayout.h
+
+(define-function gtk_constraint_vfl_parser_error_quark
+  (c-name "gtk_constraint_vfl_parser_error_quark")
+  (return-type "GQuark")
+)
+
+(define-function gtk_constraint_layout_new
+  (c-name "gtk_constraint_layout_new")
+  (is-constructor-of "GtkConstraintLayout")
+  (return-type "GtkLayoutManager*")
+)
+
+(define-method add_constraint
+  (of-object "GtkConstraintLayout")
+  (c-name "gtk_constraint_layout_add_constraint")
+  (return-type "none")
+  (parameters
+    '("GtkConstraint*" "constraint")
+  )
+)
+
+(define-method remove_constraint
+  (of-object "GtkConstraintLayout")
+  (c-name "gtk_constraint_layout_remove_constraint")
+  (return-type "none")
+  (parameters
+    '("GtkConstraint*" "constraint")
+  )
+)
+
+(define-method add_guide
+  (of-object "GtkConstraintLayout")
+  (c-name "gtk_constraint_layout_add_guide")
+  (return-type "none")
+  (parameters
+    '("GtkConstraintGuide*" "guide")
+  )
+)
+
+(define-method remove_guide
+  (of-object "GtkConstraintLayout")
+  (c-name "gtk_constraint_layout_remove_guide")
+  (return-type "none")
+  (parameters
+    '("GtkConstraintGuide*" "guide")
+  )
+)
+
+(define-method remove_all_constraints
+  (of-object "GtkConstraintLayout")
+  (c-name "gtk_constraint_layout_remove_all_constraints")
+  (return-type "none")
+)
+
+(define-method add_constraints_from_description
+  (of-object "GtkConstraintLayout")
+  (c-name "gtk_constraint_layout_add_constraints_from_description")
+  (return-type "GList*")
+  (parameters
+    '("const-char*-const[]" "lines")
+    '("gsize" "n_lines")
+    '("int" "hspacing")
+    '("int" "vspacing")
+    '("GError**" "error")
+    '("const-char*" "first_view")
+  )
+  (varargs #t)
+)
+
+(define-method add_constraints_from_descriptionv
+  (of-object "GtkConstraintLayout")
+  (c-name "gtk_constraint_layout_add_constraints_from_descriptionv")
+  (return-type "GList*")
+  (parameters
+    '("const-char*-const[]" "lines")
+    '("gsize" "n_lines")
+    '("int" "hspacing")
+    '("int" "vspacing")
+    '("GHashTable*" "views")
+    '("GError**" "error")
+  )
+)
+
+(define-method observe_constraints
+  (of-object "GtkConstraintLayout")
+  (c-name "gtk_constraint_layout_observe_constraints")
+  (return-type "GListModel*")
+)
+
+(define-method observe_guides
+  (of-object "GtkConstraintLayout")
+  (c-name "gtk_constraint_layout_observe_guides")
+  (return-type "GListModel*")
+)
+
+
+
 ;; From gtkcontainer.h
 
 (define-function gtk_container_get_type
@@ -29006,12 +29360,6 @@
   (return-type "none")
 )
 
-(define-method queue_resize_no_redraw
-  (of-object "GtkWidget")
-  (c-name "gtk_widget_queue_resize_no_redraw")
-  (return-type "none")
-)
-
 (define-method queue_allocate
   (of-object "GtkWidget")
   (c-name "gtk_widget_queue_allocate")
@@ -29669,12 +30017,6 @@
   )
 )
 
-(define-method queue_compute_expand
-  (of-object "GtkWidget")
-  (c-name "gtk_widget_queue_compute_expand")
-  (return-type "none")
-)
-
 (define-method compute_expand
   (of-object "GtkWidget")
   (c-name "gtk_widget_compute_expand")
@@ -31885,6 +32227,26 @@
   (return-type "GType")
 )
 
+(define-function gtk_constraint_relation_get_type
+  (c-name "gtk_constraint_relation_get_type")
+  (return-type "GType")
+)
+
+(define-function gtk_constraint_strength_get_type
+  (c-name "gtk_constraint_strength_get_type")
+  (return-type "GType")
+)
+
+(define-function gtk_constraint_attribute_get_type
+  (c-name "gtk_constraint_attribute_get_type")
+  (return-type "GType")
+)
+
+(define-function gtk_constraint_vfl_parser_error_get_type
+  (c-name "gtk_constraint_vfl_parser_error_get_type")
+  (return-type "GType")
+)
+
 (define-function gtk_event_controller_scroll_flags_get_type
   (c-name "gtk_event_controller_scroll_flags_get_type")
   (return-type "GType")
diff --git a/gtk/src/gtk_signals.defs b/gtk/src/gtk_signals.defs
index 35d58a1b..3aaacc64 100644
--- a/gtk/src/gtk_signals.defs
+++ b/gtk/src/gtk_signals.defs
@@ -2531,6 +2531,168 @@
   (default-value "")
 )
 
+;; From GtkConstraint
+
+(define-property target
+  (of-object "GtkConstraint")
+  (prop-type "GParamObject")
+  (docs "The target of the constraint")
+  (readable #t)
+  (writable #t)
+  (construct-only #t)
+)
+
+(define-property target-attribute
+  (of-object "GtkConstraint")
+  (prop-type "GParamEnum")
+  (docs "The attribute of the target set by the constraint")
+  (readable #t)
+  (writable #t)
+  (construct-only #t)
+  (default-value "GTK_CONSTRAINT_ATTRIBUTE_NONE")
+)
+
+(define-property relation
+  (of-object "GtkConstraint")
+  (prop-type "GParamEnum")
+  (docs "The relation between the source and target attributes")
+  (readable #t)
+  (writable #t)
+  (construct-only #t)
+  (default-value "GTK_CONSTRAINT_RELATION_EQ")
+)
+
+(define-property source
+  (of-object "GtkConstraint")
+  (prop-type "GParamObject")
+  (docs "The source of the constraint")
+  (readable #t)
+  (writable #t)
+  (construct-only #t)
+)
+
+(define-property source-attribute
+  (of-object "GtkConstraint")
+  (prop-type "GParamEnum")
+  (docs "The attribute of the source widget set by the constraint")
+  (readable #t)
+  (writable #t)
+  (construct-only #t)
+  (default-value "GTK_CONSTRAINT_ATTRIBUTE_NONE")
+)
+
+(define-property multiplier
+  (of-object "GtkConstraint")
+  (prop-type "GParamDouble")
+  (docs "The multiplication factor to be applied to the source attribute")
+  (readable #t)
+  (writable #t)
+  (construct-only #t)
+  (default-value "1")
+)
+
+(define-property constant
+  (of-object "GtkConstraint")
+  (prop-type "GParamDouble")
+  (docs "The constant to be added to the source attribute")
+  (readable #t)
+  (writable #t)
+  (construct-only #t)
+  (default-value "0")
+)
+
+(define-property strength
+  (of-object "GtkConstraint")
+  (prop-type "GParamInt")
+  (docs "The strength of the constraint")
+  (readable #t)
+  (writable #t)
+  (construct-only #t)
+  (default-value "1001001000")
+)
+
+;; From GtkConstraintGuide
+
+(define-property min-width
+  (of-object "GtkConstraintGuide")
+  (prop-type "GParamInt")
+  (docs "Minimum width")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+  (default-value "0")
+)
+
+(define-property min-height
+  (of-object "GtkConstraintGuide")
+  (prop-type "GParamInt")
+  (docs "Minimum height")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+  (default-value "0")
+)
+
+(define-property nat-width
+  (of-object "GtkConstraintGuide")
+  (prop-type "GParamInt")
+  (docs "Natural width")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+  (default-value "0")
+)
+
+(define-property nat-height
+  (of-object "GtkConstraintGuide")
+  (prop-type "GParamInt")
+  (docs "Natural height")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+  (default-value "0")
+)
+
+(define-property max-width
+  (of-object "GtkConstraintGuide")
+  (prop-type "GParamInt")
+  (docs "Maximum width")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+  (default-value "2147483647")
+)
+
+(define-property max-height
+  (of-object "GtkConstraintGuide")
+  (prop-type "GParamInt")
+  (docs "Maximum height")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+  (default-value "2147483647")
+)
+
+(define-property strength
+  (of-object "GtkConstraintGuide")
+  (prop-type "GParamEnum")
+  (docs "The strength to use for natural size")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+  (default-value "GTK_CONSTRAINT_STRENGTH_MEDIUM")
+)
+
+(define-property name
+  (of-object "GtkConstraintGuide")
+  (prop-type "GParamString")
+  (docs "A name to use in debug message")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+  (default-value "")
+)
+
 ;; From GtkContainer
 
 (define-signal add
diff --git a/gtk/src/gtk_vfuncs.defs b/gtk/src/gtk_vfuncs.defs
index f7524c54..c8837a37 100644
--- a/gtk/src/gtk_vfuncs.defs
+++ b/gtk/src/gtk_vfuncs.defs
@@ -399,6 +399,16 @@
   )
 )
 
+(define-vfunc root
+  (of-object "GtkLayoutManager")
+  (return-type "none")
+)
+
+(define-vfunc unroot
+  (of-object "GtkLayoutManager")
+  (return-type "none")
+)
+
 ; GtkMediaFile
 
 (define-vfunc open
@@ -492,13 +502,6 @@
   )
 )
 
-; GtkRoot
-
-(define-vfunc get_display
-  (of-object "GtkRoot")
-  (return-type "GdkDisplay*")
-)
-
 ; GtkScrollable
 
 (define-vfunc get_border
diff --git a/tools/extra_defs_gen/generate_defs_gtk.cc b/tools/extra_defs_gen/generate_defs_gtk.cc
index bd91c494..82cf2658 100644
--- a/tools/extra_defs_gen/generate_defs_gtk.cc
+++ b/tools/extra_defs_gen/generate_defs_gtk.cc
@@ -85,6 +85,8 @@ int main(int /* argc */, char** /* argv */)
             << get_defs( GTK_TYPE_COLOR_CHOOSER )
             << get_defs( GTK_TYPE_COLOR_CHOOSER_DIALOG )
             << get_defs( GTK_TYPE_COMBO_BOX )
+            << get_defs( GTK_TYPE_CONSTRAINT )
+            << get_defs( GTK_TYPE_CONSTRAINT_GUIDE )
             << get_defs( GTK_TYPE_CONTAINER )
             << get_defs( GTK_TYPE_CELL_VIEW )
             << get_defs( GTK_TYPE_CSS_PROVIDER )


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