Class MultiLineEditBox

All Implemented Interfaces:
GuiEventListener, Renderable, TabOrderedElement, LayoutElement, NarratableEntry, NarrationSupplier, IAbstractWidgetExtension

public class MultiLineEditBox extends AbstractTextAreaWidget
  • Field Details

    • CURSOR_INSERT_WIDTH

      private static final int CURSOR_INSERT_WIDTH
      See Also:
    • CURSOR_COLOR

      private static final int CURSOR_COLOR
      See Also:
    • CURSOR_APPEND_CHARACTER

      private static final String CURSOR_APPEND_CHARACTER
      See Also:
    • TEXT_COLOR

      private static final int TEXT_COLOR
      See Also:
    • PLACEHOLDER_TEXT_COLOR

      private static final int PLACEHOLDER_TEXT_COLOR
      See Also:
    • font

      private final Font font
    • placeholder

      private final Component placeholder
    • textField

      private final MultilineTextField textField
    • textColor

      private final int textColor
    • textShadow

      private final boolean textShadow
    • cursorColor

      private final int cursorColor
    • focusedTime

      private long focusedTime
  • Constructor Details

    • MultiLineEditBox

      MultiLineEditBox(Font pFont, int pX, int pY, int pWidth, int pHeight, Component pPlaceholder, Component pMessage, int pTextColor, boolean pTextShadow, int pCursorColor, boolean pShowBackground, boolean pShowDecorations)
  • Method Details

    • setCharacterLimit

      public void setCharacterLimit(int pCharacterLimit)
    • setLineLimit

      public void setLineLimit(int pLineLimit)
    • setValueListener

      public void setValueListener(Consumer<String> pValueListener)
    • setValue

      public void setValue(String pValue)
    • setValue

      public void setValue(String pValue, boolean pForce)
    • getValue

      public String getValue()
    • updateWidgetNarration

      public void updateWidgetNarration(NarrationElementOutput pNarrationElementOutput)
      Specified by:
      updateWidgetNarration in class AbstractWidget
    • onClick

      public void onClick(double pMouseX, double pMouseY)
      Overrides:
      onClick in class AbstractWidget
    • onDrag

      protected void onDrag(double pMouseX, double pMouseY, double pDragX, double pDragY)
      Overrides:
      onDrag in class AbstractWidget
    • keyPressed

      public boolean keyPressed(int pKeyCode, int pScanCode, int pModifiers)
      Called when a keyboard key is pressed within the GUI element.

      Specified by:
      keyPressed in interface GuiEventListener
      Overrides:
      keyPressed in class AbstractTextAreaWidget
      Parameters:
      pKeyCode - the key code of the pressed key.
      pScanCode - the scan code of the pressed key.
      pModifiers - the keyboard modifiers.
      Returns:
      true if the event is consumed, false otherwise.
    • charTyped

      public boolean charTyped(char pCodePoint, int pModifiers)
      Called when a character is typed within the GUI element.

      Parameters:
      pCodePoint - the code point of the typed character.
      pModifiers - the keyboard modifiers.
      Returns:
      true if the event is consumed, false otherwise.
    • renderContents

      protected void renderContents(GuiGraphics pGuiGraphics, int pMouseX, int pMouseY, float pPartialTick)
      Specified by:
      renderContents in class AbstractTextAreaWidget
    • renderDecorations

      protected void renderDecorations(GuiGraphics pGuiGraphics)
      Overrides:
      renderDecorations in class AbstractTextAreaWidget
    • getInnerHeight

      public int getInnerHeight()
      Specified by:
      getInnerHeight in class AbstractTextAreaWidget
    • scrollRate

      protected double scrollRate()
      Specified by:
      scrollRate in class AbstractScrollArea
    • scrollToCursor

      private void scrollToCursor()
    • seekCursorScreen

      private void seekCursorScreen(double pMouseX, double pMouseY)
    • setFocused

      public void setFocused(boolean pFocused)
      Sets the focus state of the GUI element.
      Specified by:
      setFocused in interface GuiEventListener
      Overrides:
      setFocused in class AbstractWidget
      Parameters:
      pFocused - true to apply focus, false to remove focus
    • builder

      public static MultiLineEditBox.Builder builder()