Class GuiNode<T extends GuiNode<T>>

java.lang.Object
top.untold.frostlumen.core.gui.ParentNode<T>
top.untold.frostlumen.core.gui.GuiNode<T>
Direct Known Subclasses:
Frame, ImageNode, TextLabel

public abstract non-sealed class GuiNode<T extends GuiNode<T>> extends ParentNode<T>
  • Field Details

    • root

      protected NodeRoot root
    • parent

      protected ParentNode<?> parent
    • zIndex

      protected int zIndex
    • backgroundColor

      protected RGBA backgroundColor
    • backgroundBorderColor

      protected RGBA backgroundBorderColor
    • backgroundLeftBorderThickness

      protected int backgroundLeftBorderThickness
    • backgroundRightBorderThickness

      protected int backgroundRightBorderThickness
    • backgroundTopBorderThickness

      protected int backgroundTopBorderThickness
    • backgroundBottomBorderThickness

      protected int backgroundBottomBorderThickness
    • backgroundLeftTopCornerRadius

      protected int backgroundLeftTopCornerRadius
    • backgroundRightTopCornerRadius

      protected int backgroundRightTopCornerRadius
    • backgroundLeftBottomCornerRadius

      protected int backgroundLeftBottomCornerRadius
    • backgroundRightBottomCornerRadius

      protected int backgroundRightBottomCornerRadius
    • backgroundBorderThicknessPosition

      protected ThicknessPosition backgroundBorderThicknessPosition
    • clipChildren

      protected boolean clipChildren
    • xAnchor

      protected double xAnchor
    • yAnchor

      protected double yAnchor
    • angle

      protected float angle
    • currentMouseClickButtons

      protected Set<MouseButton> currentMouseClickButtons
    • mouseInNode

      protected boolean mouseInNode
    • backgroundBlurStrength

      protected double backgroundBlurStrength
  • Constructor Details

  • Method Details

    • registerMouseEnterListener

      public T registerMouseEnterListener(Consumer<MouseMoveEvent> listener)
    • unregisterMouseEnterListener

      public T unregisterMouseEnterListener(Consumer<MouseMoveEvent> listener)
    • registerMouseLeaveListener

      public T registerMouseLeaveListener(Consumer<MouseMoveEvent> listener)
    • unregisterMouseLeaveListener

      public T unregisterMouseLeaveListener(Consumer<MouseMoveEvent> listener)
    • drawDefaultFrameBackground

      protected void drawDefaultFrameBackground(GuiRender render)
    • operationPosition

      protected void operationPosition()
    • operationPosition

      protected void operationPosition(ParentNode<?> parentFrame, int parentRealPositionX, int parentRealPositionY)
    • letChildrenOperationPosition

      protected void letChildrenOperationPosition()
    • dispatchRender

      public void dispatchRender(GuiRender render, long delta)
      Overrides:
      dispatchRender in class ParentNode<T extends GuiNode<T>>
    • dispatchKeyEvent

      public void dispatchKeyEvent(KeyEvent event)
      Overrides:
      dispatchKeyEvent in class ParentNode<T extends GuiNode<T>>
    • dispatchMouseButtonEvent

      public void dispatchMouseButtonEvent(MouseButtonEvent event)
      Overrides:
      dispatchMouseButtonEvent in class ParentNode<T extends GuiNode<T>>
    • dispatchMouseMoveEvent

      public void dispatchMouseMoveEvent(MouseMoveEvent event)
      Overrides:
      dispatchMouseMoveEvent in class ParentNode<T extends GuiNode<T>>
    • dispatchMouseScrollEvent

      public void dispatchMouseScrollEvent(MouseScrollEvent event)
      Overrides:
      dispatchMouseScrollEvent in class ParentNode<T extends GuiNode<T>>
    • dispatchUserInputTextEvent

      public void dispatchUserInputTextEvent(UserInputTextEvent event)
      Overrides:
      dispatchUserInputTextEvent in class ParentNode<T extends GuiNode<T>>
    • dispatchUserDropFilesEvent

      public void dispatchUserDropFilesEvent(UserDropFilesEvent event)
      Overrides:
      dispatchUserDropFilesEvent in class ParentNode<T extends GuiNode<T>>
    • dispatchMouseEnterWindowEvent

      public void dispatchMouseEnterWindowEvent(MouseEnterWindowEvent event)
      Overrides:
      dispatchMouseEnterWindowEvent in class ParentNode<T extends GuiNode<T>>
    • dispatchMouseLeaveWindowEvent

      public void dispatchMouseLeaveWindowEvent(MouseLeaveWindowEvent event)
      Overrides:
      dispatchMouseLeaveWindowEvent in class ParentNode<T extends GuiNode<T>>
    • dispatchFrameBufferSizeChangeEvent

      public void dispatchFrameBufferSizeChangeEvent(FrameBufferSizeChangeEvent event)
      Overrides:
      dispatchFrameBufferSizeChangeEvent in class ParentNode<T extends GuiNode<T>>
    • dispatchUserRequestWindowCloseEvent

      public void dispatchUserRequestWindowCloseEvent(UserRequestWindowCloseEvent event)
      Overrides:
      dispatchUserRequestWindowCloseEvent in class ParentNode<T extends GuiNode<T>>
    • dispatchWindowCloseEvent

      public void dispatchWindowCloseEvent(WindowCloseEvent event)
      Overrides:
      dispatchWindowCloseEvent in class ParentNode<T extends GuiNode<T>>
    • dispatchWindowFocusChangeEvent

      public void dispatchWindowFocusChangeEvent(WindowFocusChangeEvent event)
      Overrides:
      dispatchWindowFocusChangeEvent in class ParentNode<T extends GuiNode<T>>
    • dispatchWindowMinimizeEvent

      public void dispatchWindowMinimizeEvent(WindowMinimizeEvent event)
      Overrides:
      dispatchWindowMinimizeEvent in class ParentNode<T extends GuiNode<T>>
    • dispatchWindowMaximizeEvent

      public void dispatchWindowMaximizeEvent(WindowMaximizeEvent event)
      Overrides:
      dispatchWindowMaximizeEvent in class ParentNode<T extends GuiNode<T>>
    • dispatchWindowMoveEvent

      public void dispatchWindowMoveEvent(WindowMoveEvent event)
      Overrides:
      dispatchWindowMoveEvent in class ParentNode<T extends GuiNode<T>>
    • render

      protected abstract void render(GuiRender render, long delta)
    • onKeyEvent

      protected void onKeyEvent(KeyEvent event)
    • onMouseButtonEvent

      protected void onMouseButtonEvent(MouseButtonEvent event)
    • onMouseMoveEvent

      protected void onMouseMoveEvent(MouseMoveEvent event)
    • onMouseEnterWindowEvent

      protected void onMouseEnterWindowEvent(MouseEnterWindowEvent event)
    • onMouseLeaveWindowEvent

      protected void onMouseLeaveWindowEvent(MouseLeaveWindowEvent event)
    • onMouseScrollEvent

      protected void onMouseScrollEvent(MouseScrollEvent event)
    • onUserInputTextEvent

      protected void onUserInputTextEvent(UserInputTextEvent event)
    • onFrameBufferSizeChangeEvent

      protected void onFrameBufferSizeChangeEvent(FrameBufferSizeChangeEvent event)
    • onUserRequestWindowCloseEvent

      protected void onUserRequestWindowCloseEvent(UserRequestWindowCloseEvent event)
    • onWindowCloseEvent

      protected void onWindowCloseEvent(WindowCloseEvent event)
    • onWindowFocusChangeEvent

      protected void onWindowFocusChangeEvent(WindowFocusChangeEvent event)
    • onUserDropFilesEvent

      protected void onUserDropFilesEvent(UserDropFilesEvent event)
    • onWindowMinimizeEvent

      protected void onWindowMinimizeEvent(WindowMinimizeEvent event)
    • onWindowMaximizeEvent

      protected void onWindowMaximizeEvent(WindowMaximizeEvent event)
    • onWindowMoveEvent

      protected void onWindowMoveEvent(WindowMoveEvent event)
    • addChild

      public T addChild(GuiNode<?> child)
      Overrides:
      addChild in class ParentNode<T extends GuiNode<T>>
    • setParent

      public T setParent(ParentNode<?> parent)
    • getParent

      public ParentNode<?> getParent()
    • setBackgroundBlurStrength

      public T setBackgroundBlurStrength(double strength)
    • setZIndex

      public T setZIndex(int zIndex)
    • setAngle

      public T setAngle(float angle)
    • setPosition

      public T setPosition(ScaleOffset position)
    • setSize

      public T setSize(ScaleOffset size)
    • setBackgroundColor

      public T setBackgroundColor(RGBA color)
    • setBackgroundBorderThicknessPosition

      public T setBackgroundBorderThicknessPosition(ThicknessPosition position)
    • setXAnchor

      public T setXAnchor(double xAnchor)
    • setYAnchor

      public T setYAnchor(double yAnchor)
    • setAnchor

      public T setAnchor(double xAnchor, double yAnchor)
    • setBackgroundCornerRadius

      public T setBackgroundCornerRadius(int radius)
    • setBackgroundLeftTopCornerRadius

      public T setBackgroundLeftTopCornerRadius(int backgroundLeftTopCornerRadius)
    • setBackgroundRightTopCornerRadius

      public T setBackgroundRightTopCornerRadius(int backgroundRightTopCornerRadius)
    • setBackgroundLeftBottomCornerRadius

      public T setBackgroundLeftBottomCornerRadius(int backgroundLeftBottomCornerRadius)
    • setBackgroundRightBottomCornerRadius

      public T setBackgroundRightBottomCornerRadius(int backgroundRightBottomCornerRadius)
    • setBackgroundLeftBorderThickness

      public T setBackgroundLeftBorderThickness(int backgroundLeftBorderThickness)
    • setBackgroundRightBorderThickness

      public T setBackgroundRightBorderThickness(int backgroundRightBorderThickness)
    • setBackgroundTopBorderThickness

      public T setBackgroundTopBorderThickness(int backgroundTopBorderThickness)
    • setBackgroundBottomBorderThickness

      public T setBackgroundBottomBorderThickness(int backgroundBottomBorderThickness)
    • setBackgroundBorderColor

      public T setBackgroundBorderColor(RGBA color)
    • setBackgroundBorderThickness

      public T setBackgroundBorderThickness(int backgroundBorderThickness)
    • setClipChildren

      public T setClipChildren(boolean clipChildren)
    • isClipChildren

      public boolean isClipChildren()
    • getZIndex

      public int getZIndex()
    • getBackgroundBlurStrength

      public double getBackgroundBlurStrength()
    • getAngle

      public float getAngle()
    • getBackgroundColor

      public RGBA getBackgroundColor()
    • getXAnchor

      public double getXAnchor()
    • getYAnchor

      public double getYAnchor()
    • getBackgroundBorderThicknessPosition

      public ThicknessPosition getBackgroundBorderThicknessPosition()
    • getBackgroundLeftTopCornerRadius

      public int getBackgroundLeftTopCornerRadius()
    • getBackgroundRightTopCornerRadius

      public int getBackgroundRightTopCornerRadius()
    • getBackgroundLeftBottomCornerRadius

      public int getBackgroundLeftBottomCornerRadius()
    • getBackgroundRightBottomCornerRadius

      public int getBackgroundRightBottomCornerRadius()
    • getBackgroundLeftBorderThickness

      public int getBackgroundLeftBorderThickness()
    • getBackgroundRightBorderThickness

      public int getBackgroundRightBorderThickness()
    • getBackgroundTopBorderThickness

      public int getBackgroundTopBorderThickness()
    • getBackgroundBottomBorderThickness

      public int getBackgroundBottomBorderThickness()
    • isMouseInNode

      public boolean isMouseInNode()
    • getCurrentMouseClickButtons

      public Set<MouseButton> getCurrentMouseClickButtons()