Class ClampLayout
- All Implemented Interfaces:
Orientable,Proxy
AdwClampLayout 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.
AdwClampLayout can scale with the text scale factor, use the
ClampLayout:unit property to enable that behavior.
See also: Clamp, ClampScrollable.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classClampLayout.Builder<B extends ClampLayout.Builder<B>>Inner class implementing a builder pattern to construct a GObject with properties.static classNested classes/interfaces inherited from class org.gnome.gtk.LayoutManager
LayoutManager.LayoutManager$Impl, LayoutManager.LayoutManagerClassNested classes/interfaces inherited from class org.gnome.gobject.GObject
GObject.NotifyCallback, GObject.ObjectClassNested classes/interfaces inherited from interface org.gnome.gtk.Orientable
Orientable.Orientable$Impl, Orientable.OrientableIface -
Constructor Summary
ConstructorsConstructorDescriptionCreates a new ClampLayout.ClampLayout(MemorySegment address) Create a ClampLayout proxy instance for the provided memory address. -
Method Summary
Modifier and TypeMethodDescriptionprotected ClampLayoutasParent()Returns this instance as if it were its parent type.static ClampLayout.Builder<? extends ClampLayout.Builder> builder()AClampLayout.Builderobject constructs aClampLayoutwith the specified properties.intGets the maximum size allocated to the children.intGets the size above which the children are clamped.static @Nullable TypegetType()Get the GType of the ClampLayout classgetUnit()Gets the length unit for maximum size and tightening threshold.voidsetMaximumSize(int maximumSize) Sets the maximum size allocated to the children.voidsetTighteningThreshold(int tighteningThreshold) Sets the size above which the children are clamped.voidsetUnit(LengthUnit unit) Sets the length unit for maximum size and tightening threshold.Methods inherited from class org.gnome.gtk.LayoutManager
allocate, createLayoutChild, getLayoutChild, getMemoryLayout, getRequestMode, getRequestMode, getWidget, layoutChanged, measure, root, unrootMethods inherited from class org.gnome.gobject.GObject
addToggleRef, addWeakPointer, bindProperty, bindProperty, bindProperty, bindPropertyFull, bindPropertyFull, bindPropertyWithClosures, bindPropertyWithClosures, compatControl, connect, connect, connect, constructed, disconnect, dispatchPropertiesChanged, dispose, dupData, dupQdata, emit, emitNotify, finalize_, forceFloating, freezeNotify, get, getData, getProperty, getProperty, getProperty, getQdata, getv, interfaceFindProperty, interfaceInstallProperty, interfaceListProperties, isFloating, newInstance, newInstance, newv, notify, notify, notifyByPspec, onNotify, ref, refSink, removeToggleRef, removeWeakPointer, replaceData, replaceQdata, runDispose, set, setData, setDataFull, setProperty, setProperty, setProperty, setQdata, setQdataFull, setv, stealData, stealQdata, takeRef, thawNotify, unref, watchClosure, weakRef, weakUnref, withPropertiesMethods inherited from class org.gnome.gobject.TypeInstance
callParent, callParent, cast, getPrivate, readGClass, writeGClassMethods inherited from class org.javagi.base.ProxyInstance
equals, handle, hashCodeMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.gnome.gtk.Orientable
getOrientation, setOrientation
-
Constructor Details
-
ClampLayout
Create a ClampLayout proxy instance for the provided memory address.- Parameters:
address- the memory address of the native object
-
ClampLayout
public ClampLayout()Creates a new ClampLayout.
-
-
Method Details
-
getType
-
asParent
Returns this instance as if it were its parent type. This is mostly synonymous to the Javasuperkeyword, but will set the native typeclass function pointers to the parent type. When overriding a native virtual method in Java, "chaining up" withsuper.methodName()doesn't work, because it invokes the overridden function pointer again. To chain up, callasParent().methodName(). This will call the native function pointer of this virtual method in the typeclass of the parent type.- Overrides:
asParentin classLayoutManager
-
getMaximumSize
public int getMaximumSize()Gets the maximum size allocated to the children.- Returns:
- the maximum size to allocate to the children
-
getTighteningThreshold
public int getTighteningThreshold()Gets the size above which the children are clamped.- Returns:
- the size above which the children are clamped
-
getUnit
Gets the length unit for maximum size and tightening threshold.- Returns:
- the length unit
- Since:
- 1.4
-
setMaximumSize
public void setMaximumSize(int maximumSize) Sets the maximum size allocated to the children.It is the width if the layout is horizontal, or the height if it is vertical.
- Parameters:
maximumSize- the maximum size
-
setTighteningThreshold
public void setTighteningThreshold(int tighteningThreshold) 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.
- Parameters:
tighteningThreshold- the tightening threshold
-
setUnit
Sets the length unit for maximum size and tightening threshold.Allows the sizes to vary depending on the text scale factor.
- Parameters:
unit- the length unit- Since:
- 1.4
-
builder
AClampLayout.Builderobject constructs aClampLayoutwith the specified properties. Use the variousset...()methods to set properties, and finish construction withClampLayout.Builder.build().- Returns:
- the builder object
-