Class CenterBox
- All Implemented Interfaces:
Accessible, Buildable, ConstraintTarget, Orientable, Proxy
Arranges three children in a row, keeping the middle child centered as well as possible.
To add children to GtkCenterBox, use setStartWidget(Widget),
setCenterWidget(Widget) and
setEndWidget(Widget).
The sizing and positioning of children can be influenced with the align and expand properties of the children.
GtkCenterBox as GtkBuildable
The GtkCenterBox implementation of the GtkBuildable interface
supports placing children in the 3 positions by specifying “start”, “center”
or “end” as the “type” attribute of a <child> element.
CSS nodes
GtkCenterBox uses a single CSS node with the name “box”,
The first child of the GtkCenterBox will be allocated depending on the
text direction, i.e. in left-to-right layouts it will be allocated on the
left and in right-to-left layouts on the right.
In vertical orientation, the nodes of the children are arranged from top to bottom.
Accessibility
Until GTK 4.10, GtkCenterBox used the Gtk.AccessibleRole.group role.
Starting from GTK 4.12, GtkCenterBox uses the Gtk.AccessibleRole.generic
role.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classCenterBox.Builder<B extends CenterBox.Builder<B>>Inner class implementing a builder pattern to construct a GObject with properties.static classNested classes/interfaces inherited from class Widget
Widget.DestroyCallback, Widget.DirectionChangedCallback, Widget.HideCallback, Widget.KeynavFailedCallback, Widget.MapCallback, Widget.MnemonicActivateCallback, Widget.MoveFocusCallback, Widget.QueryTooltipCallback, Widget.RealizeCallback, Widget.ShowCallback, Widget.StateFlagsChangedCallback, Widget.UnmapCallback, Widget.UnrealizeCallback, Widget.Widget$Impl, Widget.WidgetClassNested classes/interfaces inherited from class InitiallyUnowned
InitiallyUnowned.InitiallyUnownedClassNested classes/interfaces inherited from class GObject
GObject.NotifyCallback, GObject.ObjectClassNested classes/interfaces inherited from interface Accessible
Accessible.Accessible$Impl, Accessible.AccessibleInterfaceNested classes/interfaces inherited from interface Buildable
Buildable.Buildable$Impl, Buildable.BuildableIfaceNested classes/interfaces inherited from interface ConstraintTarget
ConstraintTarget.ConstraintTarget$Impl, ConstraintTarget.ConstraintTargetInterfaceNested classes/interfaces inherited from interface Orientable
Orientable.Orientable$Impl, Orientable.OrientableIface -
Constructor Summary
ConstructorsConstructorDescriptionCreate a new CenterBox.CenterBox(MemorySegment address) Create a CenterBox instance for the provided memory address. -
Method Summary
Modifier and TypeMethodDescriptionprotected CenterBoxasParent()Return this instance as if it were its parent type.static CenterBox.Builder<? extends CenterBox.Builder> builder()ACenterBox.Builderobject constructs aCenterBoxwith the specified properties.Gets the baseline position of the center box.@Nullable WidgetGets the center widget.@Nullable WidgetGets the end widget.static MemoryLayoutThe memory layout of the native struct.booleanGets whether the center widget shrinks after other children.@Nullable WidgetGets the start widget.static @Nullable TypegetType()Get the GType of the CenterBox class.voidsetBaselinePosition(BaselinePosition position) Sets the baseline position of a center box.voidsetCenterWidget(@Nullable Widget child) Sets the center widget.voidsetEndWidget(@Nullable Widget child) Sets the end widget.voidsetShrinkCenterLast(boolean shrinkCenterLast) Sets whether to shrink the center widget after other children.voidsetStartWidget(@Nullable Widget child) Sets the start widget.Methods inherited from class Widget
actionSetEnabled, activateActionIfExists, activateDefault, activateWidget, addController, addCssClass, addMnemonicLabel, addTickCallback, allocate, childFocus, computeBounds, computeExpand, computeExpand, computePoint, computeTransform, contains, createPangoContext, createPangoLayout, cssChanged, directionChanged, disposeTemplate, dragCheckThreshold, emitDestroy, emitDirectionChanged, emitHide, emitKeynavFailed, emitMap, emitMnemonicActivate, emitMoveFocus, emitQueryTooltip, emitRealize, emitShow, emitStateFlagsChanged, emitUnmap, emitUnrealize, errorBell, focus, getAllocatedBaseline, getAllocatedHeight, getAllocatedWidth, getAllocation, getAncestor, getBaseline, getCanFocus, getCanTarget, getChildVisible, getClipboard, getColor, getCssClasses, getCssName, getCursor, getDefaultDirection, getDirection, getDisplay, getFirstChild, getFocusable, getFocusChild, getFocusOnClick, getFontMap, getFontOptions, getFrameClock, getHalign, getHasTooltip, getHeight, getHexpand, getHexpandSet, getLastChild, getLayoutManager, getLimitEvents, getMapped, getMarginBottom, getMarginEnd, getMarginStart, getMarginTop, getName, getNative, getNextSibling, getOpacity, getOverflow, getPangoContext, getParent, getPreferredSize, getPrevSibling, getPrimaryClipboard, getRealized, getReceivesDefault, getRequestMode, getRoot, getScaleFactor, getSensitive, getSettings, getSize, getSizeRequest, getStateFlags, getStyleContext, getTemplateChild, getTooltipMarkup, getTooltipText, getValign, getVexpand, getVexpandSet, getVisible, getWidth, grabFocus, hasCssClass, hasDefault, hasFocus, hasVisibleFocus, hide, inDestruction, initTemplate, insertActionGroup, insertAfter, insertBefore, isAncestor, isDrawable, isFocus, isSensitive, isVisible, keynavFailed, listMnemonicLabels, map, measure, mnemonicActivate, moveFocus, observeChildren, observeControllers, onDestroy, onDirectionChanged, onHide, onKeynavFailed, onMap, onMnemonicActivate, onMoveFocus, onQueryTooltip, onRealize, onShow, onStateFlagsChanged, onUnmap, onUnrealize, pick, pick, queryTooltip, queueAllocate, queueDraw, queueResize, realize, removeController, removeCssClass, removeMnemonicLabel, removeTickCallback, root, setCanFocus, setCanTarget, setChildVisible, setCssClasses, setCursor, setCursorFromName, setDefaultDirection, setDirection, setFocusable, setFocusChild, setFocusOnClick, setFontMap, setFontOptions, setHalign, setHasTooltip, setHexpand, setHexpandSet, setLayoutManager, setLimitEvents, setMarginBottom, setMarginEnd, setMarginStart, setMarginTop, setName, setOpacity, setOverflow, setParent, setReceivesDefault, setSensitive, setSizeRequest, setStateFlags, setStateFlags, setTooltipMarkup, setTooltipText, setValign, setVexpand, setVexpandSet, setVisible, shouldLayout, show, sizeAllocate, sizeAllocate, snapshot, snapshotChild, stateFlagsChanged, systemSettingChanged, translateCoordinates, triggerTooltipQuery, unmap, unparent, unrealize, unroot, unsetStateFlags, unsetStateFlagsMethods inherited from class 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 TypeInstance
callParent, callParent, cast, getPrivate, readGClass, writeGClassMethods inherited from class ProxyInstance
equals, handle, hashCodeMethods inherited from class Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface Accessible
announce, getAccessibleId, getAccessibleParent, getAccessibleRole, getAtContext, getBounds, getFirstAccessibleChild, getNextAccessibleSibling, getPlatformState, resetProperty, resetRelation, resetState, setAccessibleParent, updateNextAccessibleSibling, updatePlatformState, updateProperty, updateRelation, updateStateMethods inherited from interface Buildable
getBuildableIdMethods inherited from interface Orientable
getOrientation, setOrientation
-
Constructor Details
-
CenterBox
Create a CenterBox instance for the provided memory address.- Parameters:
address- the memory address of the native object
-
CenterBox
public CenterBox()Create a new CenterBox.
-
-
Method Details
-
getType
-
getMemoryLayout
The memory layout of the native struct.- Returns:
- the memory layout
-
asParent
-
getBaselinePosition
Gets the baseline position of the center box.
- Returns:
- the baseline position
-
getCenterWidget
-
getEndWidget
-
getShrinkCenterLast
public boolean getShrinkCenterLast()Gets whether the center widget shrinks after other children.- Returns:
- whether to shrink the center widget after others
- Since:
- 4.12
-
getStartWidget
-
setBaselinePosition
Sets the baseline position of a center box.
This affects only horizontal boxes with at least one baseline aligned child. If there is more vertical space available than requested, and the baseline is not allocated by the parent then
positionis used to allocate the baseline with respect to the extra space available.- Parameters:
position- the baseline position
-
setCenterWidget
Sets the center widget.
To remove the existing center widget, pass
NULL.- Parameters:
child- the new center widget
-
setEndWidget
Sets the end widget.
To remove the existing end widget, pass
NULL.- Parameters:
child- the new end widget
-
setShrinkCenterLast
public void setShrinkCenterLast(boolean shrinkCenterLast) Sets whether to shrink the center widget after other children.
By default, when there's no space to give all three children their natural widths, the start and end widgets start shrinking and the center child keeps natural width until they reach minimum width.
If
shrinkCenterLastis false, start and end widgets keep natural width and the center widget starts shrinking instead.- Parameters:
shrinkCenterLast- whether to shrink the center widget after others- Since:
- 4.12
-
setStartWidget
Sets the start widget.
To remove the existing start widget, pass
NULL.- Parameters:
child- the new start widget
-
builder
ACenterBox.Builderobject constructs aCenterBoxwith the specified properties. Use the variousset...()methods to set properties, and finish construction withCenterBox.Builder.build().- Returns:
- the builder object
-