Class CenterBox
- All Implemented Interfaces:
Proxy
,Accessible
,Buildable
,ConstraintTarget
,Orientable
GtkCenterBox
arranges three children in a row, keeping the middle child
centered as well as possible.
To add children to GtkCenterBox
, use setStartWidget(org.gnome.gtk.Widget)
,
setCenterWidget(org.gnome.gtk.Widget)
and
setEndWidget(org.gnome.gtk.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_ACCESSIBLE_ROLE_GROUP
role.
Starting from GTK 4.12, GtkCenterBox
uses the GTK_ACCESSIBLE_ROLE_GENERIC
role.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
CenterBox.Builder<B extends CenterBox.Builder<B>>
Inner class implementing a builder pattern to construct a GObject with properties.static class
Nested classes/interfaces inherited from class org.gnome.gtk.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.WidgetClass, Widget.WidgetImpl
Nested classes/interfaces inherited from class org.gnome.gobject.InitiallyUnowned
InitiallyUnowned.InitiallyUnownedClass
Nested classes/interfaces inherited from class org.gnome.gobject.GObject
GObject.NotifyCallback, GObject.ObjectClass
Nested classes/interfaces inherited from interface org.gnome.gtk.Accessible
Accessible.AccessibleImpl, Accessible.AccessibleInterface
Nested classes/interfaces inherited from interface org.gnome.gtk.Buildable
Buildable.BuildableIface, Buildable.BuildableImpl
Nested classes/interfaces inherited from interface org.gnome.gtk.ConstraintTarget
ConstraintTarget.ConstraintTargetImpl, ConstraintTarget.ConstraintTargetInterface
Nested classes/interfaces inherited from interface org.gnome.gtk.Orientable
Orientable.OrientableIface, Orientable.OrientableImpl
-
Constructor Summary
ConstructorDescriptionCreates a newGtkCenterBox
.CenterBox
(MemorySegment address) Create a CenterBox proxy instance for the provided memory address. -
Method Summary
Modifier and TypeMethodDescriptionprotected CenterBox
asParent()
Returns this instance as if it were its parent type.static CenterBox.Builder
<? extends CenterBox.Builder> builder()
ACenterBox.Builder
object constructs aCenterBox
with the specified properties.Gets the value set by gtk_center_box_set_baseline_position().Gets the center widget, ornull
if there is none.Gets the end widget, ornull
if there is none.boolean
Gets whether this CenterBox shrinks the center widget after other children.Gets the start widget, ornull
if there is none.static Type
getType()
Get the GType of the CenterBox classvoid
setBaselinePosition
(BaselinePosition position) Sets the baseline position of a center box.void
setCenterWidget
(@Nullable Widget child) Sets the center widget.void
setEndWidget
(@Nullable Widget child) Sets the end widget.void
setShrinkCenterLast
(boolean shrinkCenterLast) Sets whether to shrink the center widget after other children.void
setStartWidget
(@Nullable Widget child) Sets the start widget.Methods inherited from class org.gnome.gtk.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, getMapped, getMarginBottom, getMarginEnd, getMarginStart, getMarginTop, getMemoryLayout, 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, 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, unsetStateFlags
Methods 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, 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, withProperties
Methods inherited from class org.gnome.gobject.TypeInstance
callParent, callParent, getPrivate, readGClass, writeGClass
Methods inherited from class io.github.jwharm.javagi.base.ProxyInstance
equals, handle, hashCode
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.gnome.gtk.Accessible
announce, getAccessibleParent, getAccessibleRole, getAtContext, getBounds, getFirstAccessibleChild, getNextAccessibleSibling, getPlatformState, resetProperty, resetRelation, resetState, setAccessibleParent, updateNextAccessibleSibling, updateProperty, updateRelation, updateState
Methods inherited from interface org.gnome.gtk.Buildable
getBuildableId
Methods inherited from interface org.gnome.gtk.Orientable
getOrientation, setOrientation
-
Constructor Details
-
CenterBox
Create a CenterBox proxy instance for the provided memory address.- Parameters:
address
- the memory address of the native object
-
CenterBox
public CenterBox()Creates a newGtkCenterBox
.
-
-
Method Details
-
getType
-
asParent
Returns this instance as if it were its parent type. This is mostly synonymous to the Javasuper
keyword, 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. -
getBaselinePosition
Gets the value set by gtk_center_box_set_baseline_position().- Returns:
- the baseline position
-
getCenterWidget
Gets the center widget, ornull
if there is none.- Returns:
- the center widget.
-
getEndWidget
Gets the end widget, ornull
if there is none.- Returns:
- the end widget.
-
getShrinkCenterLast
public boolean getShrinkCenterLast()Gets whether this CenterBox shrinks the center widget after other children.- Returns:
- whether to shrink the center widget after others
-
getStartWidget
Gets the start widget, ornull
if there is none.- Returns:
- the start widget.
-
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
position
is used to allocate the baseline wrt. the extra space available.- Parameters:
position
- aGtkBaselinePosition
-
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 set to
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
-
setStartWidget
Sets the start widget.To remove the existing start widget, pass
null
.- Parameters:
child
- the new start widget
-
builder
ACenterBox.Builder
object constructs aCenterBox
with the specified properties. Use the variousset...()
methods to set properties, and finish construction withCenterBox.Builder.build()
.
-