Class ShapeComponent


public final class ShapeComponent extends GuiComponent<ShapeComponent>
Rectangular retained surface clipped to an authored shape.

The component reuses RenderLib's retained clip compositor, so its box paint, descendants, transforms, effects, and pointer hit region follow the configured silhouette. Foreground clipping is composited at this component's extraction-order boundary, preserving HUD and GUI pixels outside the shape, including content submitted by other mods. Ordinary box borders are still authored around the rectangular box and therefore do not trace concave interior edges.

Without a configured shape this component behaves like a RectangleComponent.

  • Constructor Details

    • ShapeComponent

      public ShapeComponent()
  • Method Details

    • shape

      public ShapeComponent shape(GuiClipPath shape)
      Clips this component to an arbitrary retained clip shape.
      Parameters:
      shape - retained shape
      Returns:
      this component
    • polygon

      public ShapeComponent polygon(List<GuiClipPath.Point> points)
      Clips this component to a normalized border-box polygon.
      Parameters:
      points - ordered polygon points using normalized box coordinates
      Returns:
      this component
    • path

      public ShapeComponent path(String data)
      Clips this component to SVG-compatible path data.

      Path coordinates use design-space units relative to the component's border-box origin, matching GuiClipPath.Path.

      Parameters:
      data - SVG-compatible path data
      Returns:
      this component
    • plus

      public ShapeComponent plus(float armThickness)
      Configures a centered plus silhouette.
      Parameters:
      armThickness - normalized arm thickness in (0, 1]
      Returns:
      this component
    • elbow

      public ShapeComponent elbow(float thickness, ShapeComponent.ElbowCorner corner)
      Configures an elbow silhouette whose arms meet at the supplied corner.
      Parameters:
      thickness - normalized arm thickness in (0, 1]
      corner - corner occupied by both arms
      Returns:
      this component
    • renderSelf

      protected void renderSelf(com.render.api.gui.GuiRenderContext context)
      Overrides:
      renderSelf in class GuiComponent<ShapeComponent>
    • add

      public ShapeComponent add(GuiComponent<?> child)
    • remove

      public ShapeComponent remove(GuiComponent<?> child)
    • clearChildren

      public ShapeComponent clearChildren()
    • replaceChildren

      public ShapeComponent replaceChildren(List<? extends GuiComponent<?>> replacements)
      Replaces source children while treating an identical retained identity/order sequence as a no-op.

      Reuse component instances. Newly allocated look-alikes are intentionally considered different because callbacks, focus, animation, and resource ownership cannot be compared safely.

      Parameters:
      replacements - desired source children in paint order
      Returns:
      this component
    • replaceChildren

      public ShapeComponent replaceChildren(GuiComponent<?>... replacements)
      Varargs form of replaceChildren(List).
      Parameters:
      replacements - desired source children in paint order
      Returns:
      this component
    • updateWhenChanged

      public ShapeComponent updateWhenChanged(String channel, Object snapshot, Consumer<ShapeComponent> updater)
      Runs a retained update only when its immutable equality snapshot changes.

      Use this around coarse synchronization code that would otherwise clear/rebuild a subtree every tick. Prefer direct setters for individual values. Channels are component-local and limited to 32 retained snapshots; the oldest is discarded when the limit is exceeded. Snapshots should be immutable scalars, strings, records, or immutable lists.

      Parameters:
      channel - stable name for this update source
      snapshot - immutable equality value representing the input state
      updater - update executed only after a changed snapshot
      Returns:
      this component
    • updateWhenChanged

      public ShapeComponent updateWhenChanged(String channel, long revision, Consumer<ShapeComponent> updater)
      Allocation-free steady-state revision overload of updateWhenChanged(String, Object, Consumer).
      Parameters:
      channel - stable name for this update source
      revision - monotonically changing model or content revision
      updater - update executed only after a changed revision
      Returns:
      this component
    • children

      public List<GuiComponent<?>> children()
    • parent

      public GuiComponent<?> parent()
    • x

      public float x()
    • y

      public float y()
    • width

      public float width()
    • height

      public float height()
    • visible

      public boolean visible()
    • enabled

      public boolean enabled()
    • focused

      public boolean focused()
      Returns whether this component currently owns keyboard focus.
      Returns:
      true when focused
    • readOnly

      public ShapeComponent readOnly(boolean readOnly)
      Makes this control read-only for selector and interaction semantics.
      Parameters:
      readOnly - read-only state
      Returns:
      this component
    • readOnly

      public final boolean readOnly()
    • required

      public ShapeComponent required(boolean required)
      Sets whether this component participates in required/optional form styling.
      Parameters:
      required - required state
      Returns:
      this component
    • required

      public final boolean required()
    • validity

      public ShapeComponent validity(GuiValidity validity)
      Sets semantic validity independently of edit-time input filtering.
      Parameters:
      validity - validation state
      Returns:
      this component
    • validity

      public final GuiValidity validity()
    • rangeState

      public ShapeComponent rangeState(GuiRangeState rangeState)
      Sets the optional range pseudo-state for numeric and custom controls.
      Parameters:
      rangeState - range state
      Returns:
      this component
    • rangeState

      public final GuiRangeState rangeState()
    • indeterminate

      public ShapeComponent indeterminate(boolean indeterminate)
      Sets the mixed/indeterminate state used by tri-state controls.
      Parameters:
      indeterminate - mixed state
      Returns:
      this component
    • indeterminate

      public final boolean indeterminate()
    • matchesStyleState

      public final boolean matchesStyleState(GuiStyleState state)
      Tests a standard or custom modern selector state.
      Parameters:
      state - state query
      Returns:
      active flag
    • computedStyle

      public final Optional<GuiComputedStyle> computedStyle()
      Returns the latest computed modern style.
      Returns:
      computed style when this component has been resolved by a modern host
    • intrinsicSize

      public final GuiIntrinsicSize intrinsicSize()
      Returns intrinsic contributions from the latest modern measure pass.
      Returns:
      immutable intrinsic metrics
    • layoutFragments

      public final List<GuiLayoutFragment> layoutFragments()
      Returns final modern layout fragments. Modern layout normally produces one fragment per box; display:contents and display:none produce none.
      Returns:
      immutable fragment list
    • fragmentTree

      public final GuiFragmentTree fragmentTree()
      Returns the latest page/column fragment projection rooted at this component.
      Returns:
      immutable fragment tree, or an empty tree outside fragmentation
    • pseudoElementStyle

      public final Optional<GuiComputedStyle> pseudoElementStyle(GuiPseudoElement pseudoElement)
      Returns a paint-only or generated pseudo-element's computed style.
      Parameters:
      pseudoElement - pseudo-element
      Returns:
      computed style when a matching rule exists
    • styledPseudoElements

      public final Set<GuiPseudoElement> styledPseudoElements()
      Returns pseudo-elements with a currently matched modern rule.
      Returns:
      immutable pseudo-element set
    • pseudoElementBox

      public final Optional<GuiPseudoElementComponent> pseudoElementBox(GuiPseudoElement pseudoElement)
      Returns a stable generated pseudo-element box for BEFORE, AFTER, or MARKER after a matching modern rule has resolved.
      Parameters:
      pseudoElement - tree-abiding pseudo-element
      Returns:
      generated box when present
    • dirtyCategories

      public final Set<GuiDirtyCategory> dirtyCategories()
      Returns current modern invalidation categories.
      Returns:
      immutable dirty-category set
    • lastInvalidationReason

      public final String lastInvalidationReason()
      Returns the latest invalidation reason for devtools.
      Returns:
      reason
    • margin

      public ShapeComponent margin(float all)
    • margin

      public ShapeComponent margin(float vertical, float horizontal)
    • margin

      public ShapeComponent margin(float top, float right, float bottom, float left)
    • padding

      public ShapeComponent padding(float all)
    • padding

      public ShapeComponent padding(float vertical, float horizontal)
    • padding

      public ShapeComponent padding(float top, float right, float bottom, float left)
    • color

      public ShapeComponent color(RenderColor color)
    • backgroundColor

      public ShapeComponent backgroundColor(RenderColor color)
    • borderColor

      public ShapeComponent borderColor(RenderColor color)
    • borderWidth

      public ShapeComponent borderWidth(float borderWidth)
    • cornerRadius

      public ShapeComponent cornerRadius(float cornerRadius)
    • opacity

      public ShapeComponent opacity(float opacity)
    • shadow

      public ShapeComponent shadow(GuiShadow shadow)
    • boxShadow

      public ShapeComponent boxShadow(GuiShadow shadow)
      Sets the drop shadow painted behind this component's box.
      Parameters:
      shadow - box shadow, or null
      Returns:
      this component
    • glow

      public ShapeComponent glow(GuiGlow glow)
    • boxGlow

      public ShapeComponent boxGlow(GuiGlow glow)
      Sets the glow painted around this component's box.
      Parameters:
      glow - box glow, or null
      Returns:
      this component
    • gradient

      public ShapeComponent gradient(GuiGradient gradient)
    • animatedBorder

      public ShapeComponent animatedBorder(GuiAnimatedBorder animatedBorder)
      Sets the animated border decoration.

      The moving ring follows the border edge and its glow may extend outside this component's own clip path. Ancestor clips still constrain the decoration.

      Parameters:
      animatedBorder - animated border, or null
      Returns:
      this component
    • visible

      public ShapeComponent visible(boolean visible)
    • caretStyle

      public ShapeComponent caretStyle(GuiCaretStyle caretStyle)
      Sets the editable-text caret appearance inherited by the CARET pseudo-element.
      Parameters:
      caretStyle - caret appearance
      Returns:
      this component
    • backgroundLayers

      public ShapeComponent backgroundLayers(List<GuiBackgroundLayer> layers)
      Replaces the ordered modern background-image layer list. The background color is painted below every layer.
      Parameters:
      layers - ordered bottom-to-top layers
      Returns:
      this component
    • backgroundLayers

      public ShapeComponent backgroundLayers(GuiBackgroundLayer... layers)
    • backgroundLayer

      public ShapeComponent backgroundLayer(GuiBackgroundLayer layer)
    • border

      public ShapeComponent border(GuiBorder border)
      Sets the typed per-side border. Later legacy border setters clear this value.
      Parameters:
      border - border value, or null
      Returns:
      this component
    • outline

      public ShapeComponent outline(GuiOutline outline)
    • boxDecorationBreak

      public ShapeComponent boxDecorationBreak(GuiBoxDecorationBreak behavior)
    • boxShadows

      public ShapeComponent boxShadows(List<GuiBoxShadow> shadows)
    • boxShadows

      public ShapeComponent boxShadows(GuiBoxShadow... shadows)
    • transform

      public ShapeComponent transform(GuiTransform transform)
      Sets the immutable post-layout transform list for this component subtree.
      Parameters:
      transform - ordered transform list
      Returns:
      this component
    • transformOrigin

      public ShapeComponent transformOrigin(GuiTransformOrigin origin)
      Sets the normalized origin around which transforms are applied.
      Parameters:
      origin - transform origin
      Returns:
      this component
    • transformBox

      public ShapeComponent transformBox(GuiTransformBox box)
      Selects the component box used to resolve transforms.
      Parameters:
      box - transform reference box
      Returns:
      this component
    • transformStyle

      public ShapeComponent transformStyle(GuiTransformStyle transformStyle)
      Selects flat or preserve-3D descendant transform behavior.
      Parameters:
      transformStyle - descendant transform behavior
      Returns:
      this component
    • backfaceVisibility

      public ShapeComponent backfaceVisibility(GuiBackfaceVisibility visibility)
      Selects whether a transformed back face remains visible.
      Parameters:
      visibility - back-face behavior
      Returns:
      this component
    • motionPath

      public ShapeComponent motionPath(GuiMotionPath path)
      Sets the post-layout path followed by this component.
      Parameters:
      path - motion-path declaration
      Returns:
      this component
    • clipPath

      public ShapeComponent clipPath(GuiClipPath path)
      Sets the component clip path, or null to remove it.
      Parameters:
      path - clip path
      Returns:
      this component
    • maskLayers

      public ShapeComponent maskLayers(List<GuiMaskLayer> layers)
      Replaces the ordered mask-layer list.
      Parameters:
      layers - mask layers in paint order
      Returns:
      this component
    • maskLayers

      public ShapeComponent maskLayers(GuiMaskLayer... layers)
      Replaces the ordered mask-layer list.
      Parameters:
      layers - mask layers in paint order
      Returns:
      this component
    • filters

      public ShapeComponent filters(GuiFilterChain filters)
      Sets the ordered foreground filter chain.
      Parameters:
      filters - foreground filters
      Returns:
      this component
    • backdropFilters

      public ShapeComponent backdropFilters(GuiFilterChain filters)
      Sets filters applied to the game and retained GUI content already painted behind this component. The component's own fill, border, and descendants are painted sharply after the clipped backdrop pass.
      Parameters:
      filters - backdrop filters
      Returns:
      this component
    • enabled

      public ShapeComponent enabled(boolean enabled)
    • clipChildren

      public ShapeComponent clipChildren(boolean clipChildren)
      Sets whether child content is clipped to this component's content bounds.
      Parameters:
      clipChildren - whether to clip child content
      Returns:
      this component
    • isClippingChildren

      public boolean isClippingChildren()
      Returns whether child content is clipped to this component's content bounds.
      Returns:
      whether child content is clipped
    • requestFocus

      public ShapeComponent requestFocus()
    • tooltip

      public ShapeComponent tooltip(TooltipComponent tooltip)
    • contextMenu

      public ShapeComponent contextMenu(ContextMenuComponent contextMenu)
    • applyStyle

      public ShapeComponent applyStyle(GuiStylePreset preset)
      Applies a reusable sparse style preset.
      Parameters:
      preset - preset to apply
      Returns:
      this component
    • inlineStyle

      public ShapeComponent inlineStyle(Consumer<GuiStyleBuilder> declarations)
      Adds typed high-priority inline declarations for modern mode.

      Existing fluent setters write to the same precedence level. Cascade-wide INITIAL, INHERIT, and UNSET values are available through GuiStyleBuilder.set(GuiStyleProperty, T).

      Parameters:
      declarations - declaration callback
      Returns:
      this component
    • transitionAll

      public ShapeComponent transitionAll(double durationSeconds, GuiEasing easing)
    • transitionAll

      public ShapeComponent transitionAll(double durationSeconds, double delaySeconds, GuiEasing easing)
    • transitionAll

      public ShapeComponent transitionAll(double durationSeconds, double delaySeconds, GuiEasing easing, GuiTransitionBehavior behavior)
      Transitions every modern property, optionally including discrete values.
      Parameters:
      durationSeconds - duration in seconds
      delaySeconds - non-negative delay
      easing - timing function
      behavior - discrete transition policy
      Returns:
      this component
    • transition

      public ShapeComponent transition(double durationSeconds, double delaySeconds, GuiEasing easing, GuiTransitionBehavior behavior, GuiStyleProperty<?>... properties)
      Transitions selected typed modern properties.
      Parameters:
      durationSeconds - duration in seconds
      delaySeconds - non-negative delay
      easing - timing function
      behavior - discrete transition policy
      properties - modern properties
      Returns:
      this component
    • transition

      public ShapeComponent transition(double durationSeconds, GuiEasing easing, GuiTransitionBehavior behavior, GuiStyleProperty<?>... properties)
    • startingStyle

      public ShapeComponent startingStyle(Consumer<GuiStyleBuilder> declarations)
      Defines typed values used when this component first enters the styled tree.
      Parameters:
      declarations - starting declaration callback
      Returns:
      this component
    • transition

      public ShapeComponent transition(double durationSeconds, GuiEasing easing, GuiProperty<?>... properties)
    • transition

      public ShapeComponent transition(double durationSeconds, double delaySeconds, GuiEasing easing, GuiProperty<?>... properties)
    • transition

      public ShapeComponent transition(double durationSeconds, GuiEasing easing, GuiPropertyGroup... groups)
    • transition

      public ShapeComponent transition(double durationSeconds, double delaySeconds, GuiEasing easing, GuiPropertyGroup... groups)
    • hovered

      public ShapeComponent hovered(Consumer<ShapeComponent> consumer)
    • pressed

      public ShapeComponent pressed(Consumer<ShapeComponent> consumer)
    • focused

      public ShapeComponent focused(Consumer<ShapeComponent> consumer)
    • disabled

      public ShapeComponent disabled(Consumer<ShapeComponent> consumer)
    • animation

      public ShapeComponent animation(String name, GuiKeyframes keyframes)
    • play

      public ShapeComponent play(String name)
    • pause

      public ShapeComponent pause(String name)
    • resume

      public ShapeComponent resume(String name)
    • cancel

      public ShapeComponent cancel(String name)
    • id

      public ShapeComponent id(String id)
      Assigns this component's optional stable identifier.

      The identifier is visible to typed ID selectors, retained-tree lookup, devtools, and view-transition pairing. Recreating a component with the same ID morphs it from the old bounds to the new bounds. A null or blank value removes the identifier.

      Parameters:
      id - stable identifier, or null
      Returns:
      this component
    • id

      public String id()
      Returns this component's optional stable identifier.
      Returns:
      identifier, or null
    • findById

      public final Optional<GuiComponent<?>> findById(String id)
      Finds the uniquely identified component in this retained subtree.

      The search includes this component. Duplicate IDs are rejected because lookup and morph-transition ownership would otherwise be ambiguous.

      Parameters:
      id - identifier to find
      Returns:
      matching component, when present
      Throws:
      IllegalStateException - when the subtree contains the ID more than once
    • findById

      public final <C extends GuiComponent<?>> Optional<C> findById(String id, Class<C> componentType)
      Finds and type-checks a uniquely identified component in this retained subtree.
      Type Parameters:
      C - component type
      Parameters:
      id - identifier to find
      componentType - required component type
      Returns:
      matching typed component, when present
      Throws:
      IllegalStateException - when the ID is duplicated
      ClassCastException - when the matching component has another type
    • viewTransitionName

      public ShapeComponent viewTransitionName(String name)
      Assigns the stable name used to pair this component's old and new view-transition snapshots. This overrides the component ID for transition pairing. A null or blank name returns pairing to retained identity or ID.
      Parameters:
      name - transition name
      Returns:
      this component
    • viewTransitionName

      public final String viewTransitionName()
      Returns this component's explicit view-transition name.
      Returns:
      transition name, or null
    • styleClass

      public ShapeComponent styleClass(String... classes)
      Adds one or more selector-visible style classes.
      Parameters:
      classes - class names
      Returns:
      this component
    • removeStyleClass

      public ShapeComponent removeStyleClass(String styleClass)
      Removes a selector-visible style class.
      Parameters:
      styleClass - class name
      Returns:
      this component
    • styleClasses

      public Set<String> styleClasses()
      Returns immutable selector-visible style classes.
      Returns:
      style classes
    • styleAttribute

      public <V> ShapeComponent styleAttribute(GuiStyleAttribute<V> attribute, V value)
      Sets a typed selector-visible component attribute.
      Type Parameters:
      V - value type
      Parameters:
      attribute - attribute key
      value - value, or null to remove
      Returns:
      this component
    • styleAttribute

      public <V> Optional<V> styleAttribute(GuiStyleAttribute<V> attribute)
      Reads a typed style attribute.
      Type Parameters:
      V - value type
      Parameters:
      attribute - attribute key
      Returns:
      value when present
    • styleState

      public ShapeComponent styleState(GuiPseudoClass pseudoClass, boolean active)
      Sets an explicit standard pseudo-class value.

      Use this for semantic states such as checked, required, valid, or open. Pointer, focus, enabled, root, empty, and structural states are maintained by the runtime.

      Parameters:
      pseudoClass - pseudo-class
      active - active flag
      Returns:
      this component
    • styleState

      public ShapeComponent styleState(String state, boolean active)
      Sets a component-defined selector state.
      Parameters:
      state - state name
      active - active flag
      Returns:
      this component
    • stateProvider

      public ShapeComponent stateProvider(GuiStateProvider provider)
      Adds a dynamic state provider.
      Parameters:
      provider - provider
      Returns:
      this component
    • x

      public ShapeComponent x(float x)
    • y

      public ShapeComponent y(float y)
    • position

      public ShapeComponent position(float x, float y)
    • translateX

      public ShapeComponent translateX(float translateX)
    • translateY

      public ShapeComponent translateY(float translateY)
    • translate

      public ShapeComponent translate(float translateX, float translateY)
    • width

      public ShapeComponent width(float width)
    • height

      public ShapeComponent height(float height)
    • size

      public ShapeComponent size(float width, float height)
    • autoWidth

      public ShapeComponent autoWidth()
    • autoHeight

      public ShapeComponent autoHeight()
    • autoSize

      public ShapeComponent autoSize()
    • width

      public ShapeComponent width(GuiLength width)
      Sets a typed modern width. This declaration is used only by a modern host.
      Parameters:
      width - typed width
      Returns:
      this component
    • height

      public ShapeComponent height(GuiLength height)
      Sets a typed modern height.
      Parameters:
      height - typed height
      Returns:
      this component
    • size

      public ShapeComponent size(GuiLength width, GuiLength height)
    • minWidth

      public ShapeComponent minWidth(GuiLength width)
    • maxWidth

      public ShapeComponent maxWidth(GuiLength width)
    • minHeight

      public ShapeComponent minHeight(GuiLength height)
    • maxHeight

      public ShapeComponent maxHeight(GuiLength height)
    • boxSizing

      public ShapeComponent boxSizing(GuiBoxSizing boxSizing)
    • aspectRatio

      public ShapeComponent aspectRatio(GuiAspectRatio aspectRatio)
    • display

      public ShapeComponent display(GuiDisplay display)
    • defaultDisplay

      protected final void defaultDisplay(GuiDisplay display)
      Defines the formatting role supplied by a component type before authored styles and fluent inline declarations are applied.

      This is intended for component constructors. Calling display(GuiDisplay) after construction still creates the higher-priority inline declaration.

      Parameters:
      display - default formatting role
    • defineModernDefaults

      protected void defineModernDefaults(GuiStyleBuilder defaults)
      Adds stylesheet-overridable defaults for this component type.

      Fluent setters, including calls made by constructors, are inline declarations. Subclasses should override this hook when a value is a component default rather than an authored inline value.

      Parameters:
      defaults - builder receiving component defaults
    • invalidateModernDefaults

      protected final void invalidateModernDefaults()
      Invalidates cached declarations after state used by defineModernDefaults(GuiStyleBuilder) changes.
    • listStyleType

      public ShapeComponent listStyleType(GuiCounterStyle style)
      Selects the list counter style used by an automatic ::marker.
      Parameters:
      style - counter style
      Returns:
      this component
    • listStylePosition

      public ShapeComponent listStylePosition(GuiListStylePosition position)
      Places the automatic marker inside the first line or in an outside marker column.
      Parameters:
      position - marker position
      Returns:
      this component
    • listStyleImage

      public ShapeComponent listStyleImage(GuiListMarkerImage image)
      Replaces the automatic text marker with an explicitly sized image.
      Parameters:
      image - marker image, or null for generated counter text
      Returns:
      this component
    • markerSide

      public ShapeComponent markerSide(GuiMarkerSide side)
      Selects which writing direction determines the outside marker side.
      Parameters:
      side - marker-side policy
      Returns:
      this component
    • markerGap

      public ShapeComponent markerGap(float gap)
      Sets the space between an outside marker and the principal box.
      Parameters:
      gap - non-negative design-space gap
      Returns:
      this component
    • quotes

      public ShapeComponent quotes(GuiQuotePairs quotes)
      Selects generated open/close quote pairs.
      Parameters:
      quotes - quote pairs
      Returns:
      this component
    • scrollMargin

      public ShapeComponent scrollMargin(GuiScrollInsets margin)
      Sets the target's snap-area expansion.
      Parameters:
      margin - scroll margin
      Returns:
      this component
    • scrollMargin

      public ShapeComponent scrollMargin(float all)
      Sets a uniform snap-area expansion.
      Parameters:
      all - margin on every side
      Returns:
      this component
    • scrollSnapStop

      public ShapeComponent scrollSnapStop(GuiScrollSnapStop stop)
      Selects whether a snap operation may pass this target.
      Parameters:
      stop - stop policy
      Returns:
      this component
    • position

      public ShapeComponent position(GuiPositionType positionType)
    • inset

      public ShapeComponent inset(GuiLength all)
    • inset

      public ShapeComponent inset(GuiLength top, GuiLength right, GuiLength bottom, GuiLength left)
    • verticalAlign

      public ShapeComponent verticalAlign(GuiVerticalAlign verticalAlign)
    • flexDirection

      public ShapeComponent flexDirection(GuiFlexDirection direction)
    • flexWrap

      public ShapeComponent flexWrap(GuiFlexWrap wrap)
    • flexGrow

      public ShapeComponent flexGrow(float grow)
    • flexShrink

      public ShapeComponent flexShrink(float shrink)
    • flexBasis

      public ShapeComponent flexBasis(GuiLength basis)
    • order

      public ShapeComponent order(int order)
    • justifyContent

      public ShapeComponent justifyContent(GuiAlignment alignment)
    • alignItems

      public ShapeComponent alignItems(GuiAlignment alignment)
    • alignSelf

      public ShapeComponent alignSelf(GuiAlignment alignment)
    • alignContent

      public ShapeComponent alignContent(GuiAlignment alignment)
    • rowGap

      public ShapeComponent rowGap(GuiLength gap)
    • columnGap

      public ShapeComponent columnGap(GuiLength gap)
    • gridTemplate

      public ShapeComponent gridTemplate(GuiGridTemplate template)
    • gridPlacement

      public ShapeComponent gridPlacement(GuiGridPlacement placement)
    • gridAutoFlow

      public ShapeComponent gridAutoFlow(GuiGridAutoFlow flow)
    • justifyItems

      public ShapeComponent justifyItems(GuiAlignment alignment)
    • justifySelf

      public ShapeComponent justifySelf(GuiAlignment alignment)
    • tableLayout

      public ShapeComponent tableLayout(GuiTableLayout layout)
    • borderCollapse

      public ShapeComponent borderCollapse(GuiBorderCollapse collapse)
    • borderSpacing

      public ShapeComponent borderSpacing(float spacing)
    • captionSide

      public ShapeComponent captionSide(GuiCaptionSide side)
    • emptyCells

      public ShapeComponent emptyCells(GuiEmptyCells value)
    • columnCount

      public ShapeComponent columnCount(int count)
    • columnWidth

      public ShapeComponent columnWidth(GuiLength width)
    • columnFill

      public ShapeComponent columnFill(GuiColumnFill fill)
    • columnRule

      public ShapeComponent columnRule(GuiBorderSide rule)
    • columnSpan

      public ShapeComponent columnSpan(GuiColumnSpan span)
    • breakBefore

      public ShapeComponent breakBefore(GuiBreakValue value)
    • breakAfter

      public ShapeComponent breakAfter(GuiBreakValue value)
    • breakInside

      public ShapeComponent breakInside(GuiBreakValue value)
    • widows

      public ShapeComponent widows(int lines)
    • orphans

      public ShapeComponent orphans(int lines)
    • marginBreak

      public ShapeComponent marginBreak(GuiMarginBreak value)
    • pageName

      public ShapeComponent pageName(String name)
    • anchorName

      public ShapeComponent anchorName(String name)
    • anchorPlacement

      public ShapeComponent anchorPlacement(GuiAnchorPlacement placement)
    • anchor

      public ShapeComponent anchor(GuiAnchor anchor)
    • centered

      public ShapeComponent centered()
    • zIndex

      public ShapeComponent zIndex(int zIndex)
    • tabIndex

      public ShapeComponent tabIndex(int tabIndex)
      Sets this component's sequential keyboard-focus order.

      Positive values are visited first in ascending order, zero follows retained-tree order, and negative values opt out of Tab traversal while preserving mouse and programmatic focus.

      Parameters:
      tabIndex - sequential focus index
      Returns:
      this component
    • tabIndex

      public int tabIndex()
      Returns this component's sequential focus index.
      Returns:
      focus index
    • writeModernInline

      protected final <V> void writeModernInline(GuiStyleProperty<V> property, V value)
    • invalidateModernLayout

      protected final void invalidateModernLayout(String reason)
    • styleOpen

      protected boolean styleOpen()
      Allows controls with retained popup/expansion state to implement :open.
    • self

      protected final ShapeComponent self()
    • renderChildren

      protected final void renderChildren(com.render.api.gui.GuiRenderContext context)