Class TextInputComponent


public final class TextInputComponent extends GuiComponent<TextInputComponent>
Single-line editable text field component.
  • Constructor Details

    • TextInputComponent

      public TextInputComponent()
      Creates a text input with sensible default styling and size.
  • Method Details

    • value

      public TextInputComponent value(String value)
      Replaces the current value.
      Parameters:
      value - new field value
      Returns:
      this component
    • value

      public String value()
      Returns the current field value.
      Returns:
      current text value
    • placeholder

      public TextInputComponent placeholder(String placeholder)
      Sets placeholder text shown while the value is empty.
      Parameters:
      placeholder - literal placeholder text
      Returns:
      this component
    • placeholder

      public TextInputComponent placeholder(net.minecraft.network.chat.Component placeholder)
      Sets placeholder text shown while the value is empty.
      Parameters:
      placeholder - rich text placeholder
      Returns:
      this component
    • font

      public TextInputComponent font(GuiFont font)
      Sets the font used to render the input text.
      Parameters:
      font - font configuration
      Returns:
      this component
    • textStyle

      public TextInputComponent textStyle(GuiTextStyle style)
    • textScalePixels

      public TextInputComponent textScalePixels(float pixels)
      Sets the text size in design-space pixels.
      Parameters:
      pixels - text size
      Returns:
      this component
    • letterSpacing

      public TextInputComponent letterSpacing(float pixels)
    • lineHeight

      public TextInputComponent lineHeight(float multiplier)
    • shadow

      public TextInputComponent shadow(boolean shadow)
      Enables or disables the standard text shadow.
      Parameters:
      shadow - true to render the vanilla-style text shadow
      Returns:
      this component
    • maxLength

      public TextInputComponent maxLength(int maxLength)
      Sets the maximum number of characters the field may contain.
      Parameters:
      maxLength - maximum character count
      Returns:
      this component
    • textTransformer

      public TextInputComponent textTransformer(UnaryOperator<String> transformer)
      Sets a live text transformer applied to every attempted edit before validation.
      Parameters:
      transformer - text transformer
      Returns:
      this component
    • validator

      public TextInputComponent validator(Predicate<String> validator)
      Replaces the current validator used for live text edits.
      Parameters:
      validator - validator for the full candidate text
      Returns:
      this component
    • addValidator

      public TextInputComponent addValidator(Predicate<String> validator)
      Adds an additional validator used for live text edits.
      Parameters:
      validator - validator for the full candidate text
      Returns:
      this component
    • append

      public boolean append(String value)
      Appends text at the end of the field and runs the live transform/validation pipeline.
      Parameters:
      value - text to append
      Returns:
      true if the value changed
    • append

      public boolean append(char value)
      Appends a single character at the end of the field and runs the live transform/validation pipeline.
      Parameters:
      value - character to append
      Returns:
      true if the value changed
    • length

      public int length()
      Returns the current character count.
      Returns:
      current text length
    • onChange

      public TextInputComponent onChange(Consumer<String> onChange)
      Sets a callback invoked whenever the field value changes.
      Parameters:
      onChange - value-change callback
      Returns:
      this component
    • onSubmit

      public TextInputComponent onSubmit(Consumer<String> onSubmit)
      Sets a callback invoked when the user submits the field with Enter.
      Parameters:
      onSubmit - submit callback
      Returns:
      this component
    • onBlur

      public TextInputComponent onBlur(Consumer<String> onBlur)
      Sets a callback invoked when the field loses focus.
      Parameters:
      onBlur - blur callback
      Returns:
      this component
    • isFocusable

      protected boolean isFocusable()
      Overrides:
      isFocusable in class GuiComponent<TextInputComponent>
    • handlesMouseClick

      protected boolean handlesMouseClick(float mouseX, float mouseY, int button)
      Overrides:
      handlesMouseClick in class GuiComponent<TextInputComponent>
    • onMouseClicked

      protected boolean onMouseClicked(com.render.api.gui.GuiRenderContext context, float mouseX, float mouseY, int button)
      Overrides:
      onMouseClicked in class GuiComponent<TextInputComponent>
    • onMouseDragged

      protected boolean onMouseDragged(com.render.api.gui.GuiRenderContext context, float mouseX, float mouseY, int button, double dragX, double dragY)
      Overrides:
      onMouseDragged in class GuiComponent<TextInputComponent>
    • onMouseReleased

      protected boolean onMouseReleased(com.render.api.gui.GuiRenderContext context, float mouseX, float mouseY, int button)
      Overrides:
      onMouseReleased in class GuiComponent<TextInputComponent>
    • onKeyPressed

      protected boolean onKeyPressed(com.render.api.gui.GuiRenderContext context, int keyCode, int scanCode, int modifiers)
      Overrides:
      onKeyPressed in class GuiComponent<TextInputComponent>
    • onCharTyped

      protected boolean onCharTyped(com.render.api.gui.GuiRenderContext context, int codePoint, int modifiers)
      Overrides:
      onCharTyped in class GuiComponent<TextInputComponent>
    • onFocusChanged

      protected void onFocusChanged(boolean focused)
      Overrides:
      onFocusChanged in class GuiComponent<TextInputComponent>
    • tick

      protected void tick()
      Overrides:
      tick in class GuiComponent<TextInputComponent>
    • renderSelf

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

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

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

      public TextInputComponent clearChildren()
    • replaceChildren

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

      public TextInputComponent updateWhenChanged(String channel, Object snapshot, Consumer<TextInputComponent> 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 TextInputComponent updateWhenChanged(String channel, long revision, Consumer<TextInputComponent> 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 TextInputComponent 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 TextInputComponent 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 TextInputComponent 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 TextInputComponent 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 TextInputComponent 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 TextInputComponent margin(float all)
    • margin

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

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

      public TextInputComponent padding(float all)
    • padding

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

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

      public TextInputComponent color(RenderColor color)
    • backgroundColor

      public TextInputComponent backgroundColor(RenderColor color)
    • borderColor

      public TextInputComponent borderColor(RenderColor color)
    • borderWidth

      public TextInputComponent borderWidth(float borderWidth)
    • cornerRadius

      public TextInputComponent cornerRadius(float cornerRadius)
    • opacity

      public TextInputComponent opacity(float opacity)
    • shadow

      public TextInputComponent shadow(GuiShadow shadow)
    • boxShadow

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

      public TextInputComponent glow(GuiGlow glow)
    • boxGlow

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

      public TextInputComponent gradient(GuiGradient gradient)
    • animatedBorder

      public TextInputComponent 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 TextInputComponent visible(boolean visible)
    • caretStyle

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

      public TextInputComponent 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 TextInputComponent backgroundLayers(GuiBackgroundLayer... layers)
    • backgroundLayer

      public TextInputComponent backgroundLayer(GuiBackgroundLayer layer)
    • border

      public TextInputComponent 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 TextInputComponent outline(GuiOutline outline)
    • boxDecorationBreak

      public TextInputComponent boxDecorationBreak(GuiBoxDecorationBreak behavior)
    • boxShadows

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

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

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

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

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

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

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

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

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

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

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

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

      public TextInputComponent 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 TextInputComponent enabled(boolean enabled)
    • clipChildren

      public TextInputComponent 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 TextInputComponent requestFocus()
    • tooltip

      public TextInputComponent tooltip(TooltipComponent tooltip)
    • contextMenu

      public TextInputComponent contextMenu(ContextMenuComponent contextMenu)
    • applyStyle

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

      public TextInputComponent 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 TextInputComponent transitionAll(double durationSeconds, GuiEasing easing)
    • transitionAll

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

      public TextInputComponent 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 TextInputComponent 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 TextInputComponent transition(double durationSeconds, GuiEasing easing, GuiTransitionBehavior behavior, GuiStyleProperty<?>... properties)
    • startingStyle

      public TextInputComponent 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 TextInputComponent transition(double durationSeconds, GuiEasing easing, GuiProperty<?>... properties)
    • transition

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

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

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

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

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

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

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

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

      public TextInputComponent play(String name)
    • pause

      public TextInputComponent pause(String name)
    • resume

      public TextInputComponent resume(String name)
    • cancel

      public TextInputComponent cancel(String name)
    • id

      public TextInputComponent 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 TextInputComponent 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 TextInputComponent styleClass(String... classes)
      Adds one or more selector-visible style classes.
      Parameters:
      classes - class names
      Returns:
      this component
    • removeStyleClass

      public TextInputComponent 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> TextInputComponent 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 TextInputComponent 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 TextInputComponent styleState(String state, boolean active)
      Sets a component-defined selector state.
      Parameters:
      state - state name
      active - active flag
      Returns:
      this component
    • stateProvider

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

      public TextInputComponent x(float x)
    • y

      public TextInputComponent y(float y)
    • position

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

      public TextInputComponent translateX(float translateX)
    • translateY

      public TextInputComponent translateY(float translateY)
    • translate

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

      public TextInputComponent width(float width)
    • height

      public TextInputComponent height(float height)
    • size

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

      public TextInputComponent autoWidth()
    • autoHeight

      public TextInputComponent autoHeight()
    • autoSize

      public TextInputComponent autoSize()
    • width

      public TextInputComponent 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 TextInputComponent height(GuiLength height)
      Sets a typed modern height.
      Parameters:
      height - typed height
      Returns:
      this component
    • size

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

      public TextInputComponent minWidth(GuiLength width)
    • maxWidth

      public TextInputComponent maxWidth(GuiLength width)
    • minHeight

      public TextInputComponent minHeight(GuiLength height)
    • maxHeight

      public TextInputComponent maxHeight(GuiLength height)
    • boxSizing

      public TextInputComponent boxSizing(GuiBoxSizing boxSizing)
    • aspectRatio

      public TextInputComponent aspectRatio(GuiAspectRatio aspectRatio)
    • display

      public TextInputComponent 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 TextInputComponent listStyleType(GuiCounterStyle style)
      Selects the list counter style used by an automatic ::marker.
      Parameters:
      style - counter style
      Returns:
      this component
    • listStylePosition

      public TextInputComponent 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 TextInputComponent 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 TextInputComponent markerSide(GuiMarkerSide side)
      Selects which writing direction determines the outside marker side.
      Parameters:
      side - marker-side policy
      Returns:
      this component
    • markerGap

      public TextInputComponent 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 TextInputComponent quotes(GuiQuotePairs quotes)
      Selects generated open/close quote pairs.
      Parameters:
      quotes - quote pairs
      Returns:
      this component
    • scrollMargin

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

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

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

      public TextInputComponent position(GuiPositionType positionType)
    • inset

      public TextInputComponent inset(GuiLength all)
    • inset

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

      public TextInputComponent verticalAlign(GuiVerticalAlign verticalAlign)
    • flexDirection

      public TextInputComponent flexDirection(GuiFlexDirection direction)
    • flexWrap

      public TextInputComponent flexWrap(GuiFlexWrap wrap)
    • flexGrow

      public TextInputComponent flexGrow(float grow)
    • flexShrink

      public TextInputComponent flexShrink(float shrink)
    • flexBasis

      public TextInputComponent flexBasis(GuiLength basis)
    • order

      public TextInputComponent order(int order)
    • justifyContent

      public TextInputComponent justifyContent(GuiAlignment alignment)
    • alignItems

      public TextInputComponent alignItems(GuiAlignment alignment)
    • alignSelf

      public TextInputComponent alignSelf(GuiAlignment alignment)
    • alignContent

      public TextInputComponent alignContent(GuiAlignment alignment)
    • rowGap

      public TextInputComponent rowGap(GuiLength gap)
    • columnGap

      public TextInputComponent columnGap(GuiLength gap)
    • gridTemplate

      public TextInputComponent gridTemplate(GuiGridTemplate template)
    • gridPlacement

      public TextInputComponent gridPlacement(GuiGridPlacement placement)
    • gridAutoFlow

      public TextInputComponent gridAutoFlow(GuiGridAutoFlow flow)
    • justifyItems

      public TextInputComponent justifyItems(GuiAlignment alignment)
    • justifySelf

      public TextInputComponent justifySelf(GuiAlignment alignment)
    • tableLayout

      public TextInputComponent tableLayout(GuiTableLayout layout)
    • borderCollapse

      public TextInputComponent borderCollapse(GuiBorderCollapse collapse)
    • borderSpacing

      public TextInputComponent borderSpacing(float spacing)
    • captionSide

      public TextInputComponent captionSide(GuiCaptionSide side)
    • emptyCells

      public TextInputComponent emptyCells(GuiEmptyCells value)
    • columnCount

      public TextInputComponent columnCount(int count)
    • columnWidth

      public TextInputComponent columnWidth(GuiLength width)
    • columnFill

      public TextInputComponent columnFill(GuiColumnFill fill)
    • columnRule

      public TextInputComponent columnRule(GuiBorderSide rule)
    • columnSpan

      public TextInputComponent columnSpan(GuiColumnSpan span)
    • breakBefore

      public TextInputComponent breakBefore(GuiBreakValue value)
    • breakAfter

      public TextInputComponent breakAfter(GuiBreakValue value)
    • breakInside

      public TextInputComponent breakInside(GuiBreakValue value)
    • widows

      public TextInputComponent widows(int lines)
    • orphans

      public TextInputComponent orphans(int lines)
    • marginBreak

      public TextInputComponent marginBreak(GuiMarginBreak value)
    • pageName

      public TextInputComponent pageName(String name)
    • anchorName

      public TextInputComponent anchorName(String name)
    • anchorPlacement

      public TextInputComponent anchorPlacement(GuiAnchorPlacement placement)
    • anchor

      public TextInputComponent anchor(GuiAnchor anchor)
    • centered

      public TextInputComponent centered()
    • zIndex

      public TextInputComponent zIndex(int zIndex)
    • tabIndex

      public TextInputComponent 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 TextInputComponent self()
    • renderChildren

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