Class GuiView

java.lang.Object
com.render.api.gui.GuiView
Direct Known Subclasses:
HudPlacementScreenView, RenderlibShowcaseView

public abstract class GuiView extends Object
Base class for managed full-screen GUI views.

Views use GuiUiMode.MODERN by default. Call uiMode(GuiUiMode) with GuiUiMode.LEGACY to request the original retained runtime explicitly.

  • Constructor Details

    • GuiView

      protected GuiView()
  • Method Details

    • open

      public final void open()
      Opens this view through RenderLibGui.
    • close

      public final void close()
      Closes this view if it is currently open.
    • isOpen

      public final boolean isOpen()
      Returns whether this view is currently open.
      Returns:
      true when this view is the active managed screen
    • tick

      public void tick()
      Per-tick hook invoked while the view is open.
    • onClose

      public void onClose()
      Hook invoked after the managed screen is removed.
    • requestClose

      public boolean requestClose()
      Called before the managed screen closes through Escape or another vanilla close request.
      Returns:
      true to allow closing, or false when the view handled the request
    • devtoolsEnabled

      public final GuiView devtoolsEnabled(boolean devtoolsEnabled)
      Enables or disables the per-screen devtools overlay.
      Parameters:
      devtoolsEnabled - true to allow F12 devtools on this view
      Returns:
      this view
    • uiMode

      public final GuiView uiMode(GuiUiMode uiMode)
      Selects the retained runtime mode for this managed view.
      Parameters:
      uiMode - runtime mode
      Returns:
      this view
    • styleSheet

      public final GuiView styleSheet(GuiStyleSheet styleSheet)
      Appends a typed stylesheet to this managed view.
      Parameters:
      styleSheet - stylesheet
      Returns:
      this view
    • softwareCursor

      public final GuiView softwareCursor(GuiSoftwareCursor cursor)
      Selects an optional software cursor for this managed view.

      The cursor is painted above all RenderLib overlays. The native cursor is hidden only while the custom image is ready and is restored when this view closes or the cursor is cleared.

      Parameters:
      cursor - cursor definition, or null to use the native cursor
      Returns:
      this view
    • softwareCursor

      public final GuiView softwareCursor(GuiImage image, float width, float height, float hotspotX, float hotspotY)
      Convenience overload for a custom image, dimensions, and hotspot.
      Parameters:
      image - cursor image
      width - painted width
      height - painted height
      hotspotX - horizontal hotspot
      hotspotY - vertical hotspot
      Returns:
      this view
    • build

      protected abstract void build()
      Builds the retained component tree for this view.
    • buildHost

      protected final void buildHost()
    • root

      public final ContainerComponent root()
    • findById

      public final Optional<GuiComponent<?>> findById(String id)
      Finds a uniquely identified component across the retained content and managed overlay trees.

      This is the stable cross-class access point for updating a component without retaining the concrete field that originally created it. Duplicate IDs are rejected.

      Parameters:
      id - component identifier
      Returns:
      matching component, when present
    • findById

      public final <C extends GuiComponent<?>> Optional<C> findById(String id, Class<C> componentType)
      Finds and type-checks a uniquely identified component across this view.
      Type Parameters:
      C - component type
      Parameters:
      id - component identifier
      componentType - required component type
      Returns:
      matching typed component, when present
    • viewTransition

      public final GuiViewTransition viewTransition()
      Returns this host's single retained view-transition controller.
      Returns:
      view-transition controller
    • devtoolsEnabled

      public final boolean devtoolsEnabled()
    • renderCompatibilityReport

      public final GuiRenderCompatibilityReport renderCompatibilityReport()
      Returns capabilities and fallbacks for the most recently compiled GUI render graph.
      Returns:
      current GUI render compatibility report
    • renderStats

      public final GuiRenderStats renderStats()
      Returns statistics for the most recently compiled GUI render graph.
      Returns:
      current GUI render statistics
    • fontPolicy

      public com.render.api.gui.GuiHostView fontPolicy(GuiFontPolicy policy)
      Selects the external-font authorization policy for this view.
      Parameters:
      policy - font policy
      Returns:
      this host
    • fontPolicy

      public final GuiFontPolicy fontPolicy()
      Returns this view's external-font authorization policy.
      Returns:
      font policy
    • motionPreference

      public com.render.api.gui.GuiHostView motionPreference(GuiMotionPreference preference)
      Selects how this view responds to reduced-motion preferences.
      Parameters:
      preference - motion preference
      Returns:
      this host
    • motionPreference

      public final GuiMotionPreference motionPreference()
      Returns this view's effective motion preference policy.
      Returns:
      motion preference
    • uiMode

      public final GuiUiMode uiMode()
      Returns the selected retained runtime mode.
      Returns:
      runtime mode
    • removeStyleSheet

      public final boolean removeStyleSheet(GuiStyleSheet styleSheet)
      Removes an attached stylesheet.
      Parameters:
      styleSheet - stylesheet
      Returns:
      whether it was attached
    • clearStyleSheets

      public final void clearStyleSheets()
      Clears every attached stylesheet.
    • styleSheets

      public final List<GuiStyleSheet> styleSheets()
      Returns attached stylesheets in cascade order.
      Returns:
      immutable stylesheet list
    • showDialog

      public final void showDialog(DialogModalComponent dialog)
    • closeDialog

      public final void closeDialog(DialogModalComponent dialog)
    • showToast

      public final ToastHandle showToast(ToastComponent toast)
    • clearToasts

      public final void clearToasts()
    • ensureBuilt

      public final void ensureBuilt()