Skip to content
Edit this page

Layout Element Builder

Added: 1.0.0

An interface used to configure and build instances of layout elements.

Use the startLayoutElement() method inside a LayoutConfigScreenBuilder to instantiate a new builder, chain your configuration settings, and finalize the creation by calling build(). Add the resulting LayoutElement to your LayoutConfigScreenBuilder by using addLayoutElementEntry().


Methods

Return Type Signature
LayoutElementBuilder setDefaultValue(Supplier<AlignmentSizeOffset> defaultValue)
LayoutElementBuilder setDefaultValue(AlignmentSizeOffset defaultValue)
LayoutElementBuilder setShowName(boolean showName)
LayoutElementBuilder setNameAlignment(@NotNull Alignments nameAlignment)
LayoutElementBuilder setNameAlignment(Alignments.HAlignment hAlignment, Alignments.VAlignment vAlignment)
LayoutElementBuilder setShowIcon(boolean showIcon)
LayoutElementBuilder setIcon(TextureInfo textureInfo)
LayoutElementBuilder setIconAlignment(@NotNull Alignments iconAlignment)
LayoutElementBuilder setIconAlignment(Alignments.HAlignment hAlignment, Alignments.VAlignment vAlignment)
LayoutElementBuilder setColor(Color color)
LayoutElementBuilder setDoesDrawBackground(boolean doesDrawBackground)
LayoutElementBuilder setCustomRenderingFunction(BiConsumer<PoseStack, AlignmentSizeOffset> function)
LayoutElementBuilder setSnapping(boolean snapping)
LayoutElementBuilder setShowButtons(boolean showButtons)
LayoutElementBuilder setButtonsAlignment(@NotNull Alignments buttonsAlignment)
LayoutElementBuilder setButtonsAlignment(Alignments.HAlignment hAlignment, Alignments.VAlignment vAlignment)
LayoutElementBuilder setEnableResetButton(boolean enableResetButton)
LayoutElement build()

setDefaultValue

Added: 1.0.0

LayoutElementBuilder setDefaultValue(Supplier<AlignmentSizeOffset> defaultValue)
LayoutElementBuilder setDefaultValue(AlignmentSizeOffset defaultValue)

Sets the default layout data of the layout element.
Returns the instance of LayoutElementBuilder.

null by default.

⚠️️ Required for the ability to reset a layout element's value to its default value


setShowName

Added: 1.0.0

LayoutElementBuilder setShowName(boolean showName)

Sets whether the element's name should be rendered on the screen.
Returns the instance of LayoutElementBuilder.

true by default.


setNameAlignment

Added: 1.0.0

LayoutElementBuilder setNameAlignment(@NotNull Alignments nameAlignment)
LayoutElementBuilder setNameAlignment(Alignments.HAlignment hAlignment, Alignments.VAlignment vAlignment)

Sets where the element's name is to be anchored within the element.
Returns the instance of LayoutElementBuilder.

Alignments.create(Alignments.HAlignment.LEFT, Alignments.VAlignment.TOP) by default.


setShowIcon

Added: 1.0.0

LayoutElementBuilder setShowIcon(boolean showIcon)

Sets whether the element's texture icon should be rendered on the screen.
Returns the instance of LayoutElementBuilder.

true by default.

⚠️️ An icon should be set for it to render


setIcon

Added: 1.0.0

LayoutElementBuilder setIcon(TextureInfo textureInfo)

Assigns the specific texture data to be drawn as the element's icon.
Returns the instance of LayoutElementBuilder.

null by default.


setIconAlignment

Added: 1.0.0

LayoutElementBuilder setIconAlignment(@NotNull Alignments iconAlignment)
LayoutElementBuilder setIconAlignment(Alignments.HAlignment hAlignment, Alignments.VAlignment vAlignment)

Sets where the icon is to be anchored within the element.
Returns the instance of LayoutElementBuilder.

Alignments.create(Alignments.HAlignment.LEFT, Alignments.VAlignment.TOP) by default.


setColor

Added: 1.0.0

LayoutElementBuilder setColor(Color color)

Sets the tint of the elements default background and it's buttons.
Returns the instance of LayoutElementBuilder.

Color.create(196, 196, 196) by default.


setDoesDrawBackground

Added: 1.0.0

LayoutElementBuilder setDoesDrawBackground(boolean doesDrawBackground)

Sets whether the default background should be drawn behind the element.
Returns the instance of LayoutElementBuilder.

true by default.


setCustomRenderingFunction

Added: 1.0.0

LayoutElementBuilder setCustomRenderingFunction(BiConsumer<PoseStack, AlignmentSizeOffset> customRenderingFunction)

Registers a custom drawing function code to supplement how this layout component renders. Provides the pose stack and layout data as parameters.
Returns the instance of LayoutElementBuilder.

null by default.


setSnapping

Added: 1.0.0

LayoutElementBuilder setSnapping(boolean snapping)

Determines if the element snap to the center of the screen.
Returns the instance of LayoutElementBuilder.

true by default.


setShowButtons

Added: 1.0.0

LayoutElementBuilder setShowButtons(boolean showButtons)

Sets whether the buttons are to be rendered for the element.
Returns the instance of LayoutElementBuilder.

true by default.

⚠️️ As of version 1.0.0, there is only a Reset button for elements


setButtonsAlignment

Added: 1.0.0

LayoutElementBuilder setButtonsAlignment(@NotNull Alignments buttonsAlignment)
LayoutElementBuilder setButtonsAlignment(Alignments.HAlignment hAlignment, Alignments.VAlignment vAlignment)

Sets where the element's buttons are to be anchored within the element.
Returns the instance of LayoutElementBuilder.

Alignments.create(Alignments.HAlignment.RIGHT, Alignments.VAlignment.TOP) by default.


setEnableResetButton

Added: 1.0.0

LayoutElementBuilder setEnableResetButton(boolean enableResetButton)

Sets whether the Reset button is to be rendered on screen.
Returns the instance of LayoutElementBuilder.

true by default.


build

Added: 1.0.0

LayoutElement build()

Compiles all the properties into a finalized, fully functional LayoutElement instance and returns it.