class Gtk::Constraint

Overview

Gtk::Constraint describes a constraint between attributes of two widgets, expressed as a linear equation.

The typical equation for a constraint is:

target.target_attr = source.source_attr × multiplier + constant

Each Gtk::Constraint is part of a system that will be solved by a Gtk::ConstraintLayout in order to allocate and position each child widget or guide.

The source and target, as well as their attributes, of a Gtk::Constraint instance are immutable after creation.

Defined in:

lib/gi-crystal/src/auto/gtk-4.0/constraint.cr

Constructors

Class Method Summary

Instance Method Summary

Instance methods inherited from class GObject::Object

==(other : self) ==, bind_property(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags) : GObject::Binding bind_property, bind_property_full(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags, transform_to : GObject::Closure, transform_from : GObject::Closure) : GObject::Binding bind_property_full, data(key : String) : Pointer(Void) | Nil data, finalize finalize, freeze_notify : Nil freeze_notify, getv(names : Enumerable(String), values : Enumerable(_)) : Nil getv, hash(hasher) hash, notify(property_name : String) : Nil notify, notify_by_pspec(pspec : GObject::ParamSpec) : Nil notify_by_pspec, notify_signal notify_signal, property(property_name : String, value : _) : Nil property, qdata(quark : UInt32) : Pointer(Void) | Nil qdata, ref_count : UInt32 ref_count, run_dispose : Nil run_dispose, set_data(key : String, data : Pointer(Void) | Nil) : Nil set_data, set_property(property_name : String, value : _) : Nil set_property, steal_data(key : String) : Pointer(Void) | Nil steal_data, steal_qdata(quark : UInt32) : Pointer(Void) | Nil steal_qdata, thaw_notify : Nil thaw_notify, to_unsafe : Pointer(Void) to_unsafe, watch_closure(closure : GObject::Closure) : Nil watch_closure

Constructor methods inherited from class GObject::Object

cast(obj : GObject::Object) : self cast, new(pointer : Pointer(Void), transfer : GICrystal::Transfer)
new
new
, newv(object_type : UInt64, parameters : Enumerable(GObject::Parameter)) : self newv

Class methods inherited from class GObject::Object

cast?(obj : GObject::Object) : self | Nil cast?, compat_control(what : UInt64, data : Pointer(Void) | Nil) : UInt64 compat_control, g_type : UInt64 g_type, interface_find_property(g_iface : GObject::TypeInterface, property_name : String) : GObject::ParamSpec interface_find_property, interface_list_properties(g_iface : GObject::TypeInterface) : Enumerable(GObject::ParamSpec) interface_list_properties

Constructor Detail

def self.new(target : Gtk::ConstraintTarget | Nil, target_attribute : Gtk::ConstraintAttribute, relation : Gtk::ConstraintRelation, source : Gtk::ConstraintTarget | Nil, source_attribute : Gtk::ConstraintAttribute, multiplier : Float64, constant : Float64, strength : Int32) : self #

Creates a new constraint representing a relation between a layout attribute on a source and a layout attribute on a target.


[View source]
def self.new #

Initialize a new Constraint.


[View source]
def self.new(*, constant : Float64 | Nil = nil, multiplier : Float64 | Nil = nil, relation : Gtk::ConstraintRelation | Nil = nil, source : Gtk::ConstraintTarget | Nil = nil, source_attribute : Gtk::ConstraintAttribute | Nil = nil, strength : Int32 | Nil = nil, target : Gtk::ConstraintTarget | Nil = nil, target_attribute : Gtk::ConstraintAttribute | Nil = nil) #

[View source]
def self.new_constant(target : Gtk::ConstraintTarget | Nil, target_attribute : Gtk::ConstraintAttribute, relation : Gtk::ConstraintRelation, constant : Float64, strength : Int32) : self #

Creates a new constraint representing a relation between a layout attribute on a target and a constant value.


[View source]

Class Method Detail

def self.g_type : UInt64 #

Returns the type id (GType) registered in GLib type system.


[View source]

Instance Method Detail

def ==(other : self) #
Description copied from class Reference

Returns true if this reference is the same as other. Invokes same?.


def constant : Float64 #

Retrieves the constant factor added to the source attributes' value.


[View source]
def constant=(value : Float64) : Float64 #

[View source]
def hash(hasher) #
Description copied from class Reference

See Object#hash(hasher)


def is_attached : Bool #

Checks whether the constraint is attached to a Gtk::ConstraintLayout, and it is contributing to the layout.


[View source]
def is_constant : Bool #

Checks whether the constraint describes a relation between an attribute on the Gtk::Constraint#target and a constant value.


[View source]
def is_required : Bool #

Checks whether the constraint is a required relation for solving the constraint layout.


[View source]
def multiplier : Float64 #

Retrieves the multiplication factor applied to the source attribute's value.


[View source]
def multiplier=(value : Float64) : Float64 #

[View source]
def relation : Gtk::ConstraintRelation #

The order relation between the terms of the constraint.


[View source]

[View source]
def source : Gtk::ConstraintTarget | Nil #

Retrieves the Gtk::ConstraintTarget used as the source for the constraint.

If the source is set to NULL at creation, the constraint will use the widget using the Gtk::ConstraintLayout as the source.


[View source]
def source=(value : Gtk::ConstraintTarget | Nil) : Gtk::ConstraintTarget | Nil #

[View source]
def source_attribute : Gtk::ConstraintAttribute #

Retrieves the attribute of the source to be read by the constraint.


[View source]
def source_attribute=(value : Gtk::ConstraintAttribute) : Gtk::ConstraintAttribute #

[View source]
def strength : Int32 #

Retrieves the strength of the constraint.


[View source]
def strength=(value : Int32) : Int32 #

[View source]
def target : Gtk::ConstraintTarget | Nil #

Retrieves the Gtk::ConstraintTarget used as the target for the constraint.

If the targe is set to NULL at creation, the constraint will use the widget using the Gtk::ConstraintLayout as the target.


[View source]
def target=(value : Gtk::ConstraintTarget | Nil) : Gtk::ConstraintTarget | Nil #

[View source]
def target_attribute : Gtk::ConstraintAttribute #

Retrieves the attribute of the target to be set by the constraint.


[View source]
def target_attribute=(value : Gtk::ConstraintAttribute) : Gtk::ConstraintAttribute #

[View source]