Class Frame
- All Implemented Interfaces:
Accessible, Buildable, ConstraintTarget, Proxy
Surrounds its child with a decorative frame and an optional label.
If present, the label is drawn inside the top edge of the frame.
The horizontal position of the label can be controlled with
setLabelAlign(float).
GtkFrame clips its child. You can use this to add rounded corners
to widgets, but be aware that it also cuts off shadows.
GtkFrame as GtkBuildable
An example of a UI definition fragment with GtkFrame:
<object class="GtkFrame">
<property name="label-widget">
<object class="GtkLabel" id="frame_label"/>
</property>
<property name="child">
<object class="GtkEntry" id="frame_content"/>
</property>
</object>
CSS nodes
frame
├── <label widget>
╰── <child>
GtkFrame has a main CSS node with name “frame”, which is used to draw the
visible border. You can set the appearance of the border using CSS properties
like “border-style” on this node.
Accessibility
GtkFrame uses the Gtk.AccessibleRole.group role.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classFrame.Builder<B extends Frame.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.ConstraintTargetInterface -
Constructor Summary
ConstructorsConstructorDescriptionFrame()Create a new Frame.Creates a newGtkFrame, with optional labellabel.Frame(MemorySegment address) Create a Frame instance for the provided memory address. -
Method Summary
Modifier and TypeMethodDescriptionprotected FrameasParent()Return this instance as if it were its parent type.static Frame.Builder<? extends Frame.Builder> builder()AFrame.Builderobject constructs aFramewith the specified properties.protected voidcomputeChildAllocation(Allocation allocation) @Nullable WidgetgetChild()Gets the child widget offrame.@Nullable StringgetLabel()Returns the frame labels text.floatRetrieves the X alignment of the frame’s label.@Nullable WidgetRetrieves the label widget for the frame.static MemoryLayoutThe memory layout of the native struct.static @Nullable TypegetType()Get the GType of the Frame class.voidSets the child widget offrame.voidCreates a newGtkLabelwith thelabeland sets it as the frame's label widget.voidsetLabelAlign(float xalign) Sets the X alignment of the frame widget’s label.voidsetLabelWidget(@Nullable Widget labelWidget) Sets the label widget for the frame.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
getBuildableId
-
Constructor Details
-
Frame
Create a Frame instance for the provided memory address.- Parameters:
address- the memory address of the native object
-
Frame
Creates a new
GtkFrame, with optional labellabel.If
labelisnull, the label is omitted.- Parameters:
label- the text to use as the label of the frame
-
Frame
public Frame()Create a new Frame.
-
-
Method Details
-
getType
-
getMemoryLayout
The memory layout of the native struct.- Returns:
- the memory layout
-
asParent
-
getChild
Gets the child widget offrame.- Returns:
- the child widget of this Frame
-
getLabel
Returns the frame labels text.
If the frame's label widget is not a
GtkLabel,nullis returned.- Returns:
- the text in the label, or
nullif there was no label widget or the label widget was not aGtkLabel. This string is owned by GTK and must not be modified or freed.
-
getLabelAlign
public float getLabelAlign()Retrieves the X alignment of the frame’s label.- Returns:
- the frames X alignment
-
getLabelWidget
Retrieves the label widget for the frame.- Returns:
- the label widget
-
setChild
Sets the child widget offrame.- Parameters:
child- the child widget
-
setLabel
Creates a newGtkLabelwith thelabeland sets it as the frame's label widget.- Parameters:
label- the text to use as the label of the frame
-
setLabelAlign
public void setLabelAlign(float xalign) Sets the X alignment of the frame widget’s label.
The default value for a newly created frame is 0.0.
- Parameters:
xalign- The position of the label along the top edge of the widget. A value of 0.0 represents left alignment; 1.0 represents right alignment.
-
setLabelWidget
Sets the label widget for the frame.
This is the widget that will appear embedded in the top edge of the frame as a title.
- Parameters:
labelWidget- the new label widget
-
computeChildAllocation
-
builder
AFrame.Builderobject constructs aFramewith the specified properties. Use the variousset...()methods to set properties, and finish construction withFrame.Builder.build().- Returns:
- the builder object
-