class Adw::ClampLayout
- Adw::ClampLayout
- Gtk::LayoutManager
- GObject::Object
- Reference
- Object
Overview
A layout manager constraining its children to a given size.


Adw::ClampLayout
constraints the size of the widgets it contains to a given
maximum size. It will constrain the width if it is horizontal, or the height
if it is vertical. The expansion of the children from their minimum to their
maximum size is eased out for a smooth transition.
If a child requires more than the requested maximum size, it will be allocated the minimum size it can fit in instead.
Adw::ClampLayout
can scale with the text scale factor, use the
ClampLayout::unit
property to enable that behavior.
See also: #Clamp
, #ClampScrollable
.
Included Modules
Defined in:
lib/gi-crystal/src/auto/adw-1/clamp_layout.crConstructors
-
.new : self
Creates a new
Adw::ClampLayout
. - .new(*, maximum_size : Int32 | Nil = nil, orientation : Gtk::Orientation | Nil = nil, tightening_threshold : Int32 | Nil = nil, unit : Adw::LengthUnit | Nil = nil)
Class Method Summary
-
.g_type : UInt64
Returns the type id (GType) registered in GLib type system.
Instance Method Summary
-
#==(other : self)
Returns
true
if this reference is the same as other. -
#hash(hasher)
See
Object#hash(hasher)
-
#maximum_size : Int32
Gets the maximum size allocated to the children.
-
#maximum_size=(maximum_size : Int32) : Nil
Sets the maximum size allocated to the children.
-
#tightening_threshold : Int32
Gets the size above which the children are clamped.
-
#tightening_threshold=(tightening_threshold : Int32) : Nil
Sets the size above which the children are clamped.
-
#unit : Adw::LengthUnit
Gets the length unit for maximum size and tightening threshold.
-
#unit=(unit : Adw::LengthUnit) : Nil
Sets the length unit for maximum size and tightening threshold.
Instance methods inherited from module Gtk::Orientable
orientation : Gtk::Orientation
orientation,
orientation=(orientation : Gtk::Orientation) : Nil
orientation=,
to_unsafe
to_unsafe
Constructor methods inherited from module Gtk::Orientable
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gtk::Orientable
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from class Gtk::LayoutManager
==(other : self)
==,
allocate(widget : Gtk::Widget, width : Int32, height : Int32, baseline : Int32) : Nil
allocate,
hash(hasher)
hash,
layout_changed : Nil
layout_changed,
layout_child(child : Gtk::Widget) : Gtk::LayoutChild
layout_child,
measure(widget : Gtk::Widget, orientation : Gtk::Orientation, for_size : Int32) : Nil
measure,
request_mode : Gtk::SizeRequestMode
request_mode,
widget : Gtk::Widget | Nil
widget
Constructor methods inherited from class Gtk::LayoutManager
new
new
Class methods inherited from class Gtk::LayoutManager
g_type : UInt64
g_type
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
Macros inherited from class GObject::Object
previous_vfunc(*args)
previous_vfunc,
previous_vfunc!(*args)
previous_vfunc!,
signal(signature)
signal
Constructor Detail
Class Method Detail
Instance Method Detail
Returns true
if this reference is the same as other. Invokes same?
.
Sets the maximum size allocated to the children.
It is the width if the layout is horizontal, or the height if it is vertical.
Sets the size above which the children are clamped.
Starting from this size, the layout will tighten its grip on the children, slowly allocating less and less of the available size up to the maximum allocated size. Below that threshold and below the maximum size, the children will be allocated all the available size.
If the threshold is greater than the maximum size to allocate to the children, they will be allocated the whole size up to the maximum. If the threshold is lower than the minimum size to allocate to the children, that size will be used as the tightening threshold.
Effectively, tightening the grip on a child before it reaches its maximum size makes transitions to and from the maximum size smoother when resizing.
Sets the length unit for maximum size and tightening threshold.
Allows the sizes to vary depending on the text scale factor.