Class TabNavigationBar

java.lang.Object
net.minecraft.client.gui.components.events.AbstractContainerEventHandler
net.minecraft.client.gui.components.tabs.TabNavigationBar
All Implemented Interfaces:
ContainerEventHandler, GuiEventListener, Renderable, TabOrderedElement, NarratableEntry, NarrationSupplier

public class TabNavigationBar extends AbstractContainerEventHandler implements Renderable, NarratableEntry
  • Field Details

  • Constructor Details

  • Method Details

    • builder

      public static TabNavigationBar.Builder builder(TabManager pTabManager, int pWidth)
    • setWidth

      public void setWidth(int pWidth)
    • isMouseOver

      public boolean isMouseOver(double p_387504_, double p_386568_)
      Description copied from interface: GuiEventListener
      Checks if the given mouse coordinates are over the GUI element.

      Specified by:
      isMouseOver in interface GuiEventListener
      Parameters:
      p_387504_ - the X coordinate of the mouse.
      p_386568_ - the Y coordinate of the mouse.
      Returns:
      true if the mouse is over the GUI element, false otherwise.
    • setFocused

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

      public void setFocused(@Nullable GuiEventListener p_275675_)
      Sets the focus state of the GUI element.
      Specified by:
      setFocused in interface ContainerEventHandler
      Overrides:
      setFocused in class AbstractContainerEventHandler
      Parameters:
      p_275675_ - the focused GUI element.
    • nextFocusPath

      @Nullable public ComponentPath nextFocusPath(FocusNavigationEvent p_275418_)
      Retrieves the next focus path based on the given focus navigation event.

      Specified by:
      nextFocusPath in interface ContainerEventHandler
      Specified by:
      nextFocusPath in interface GuiEventListener
      Parameters:
      p_275418_ - the focus navigation event.
      Returns:
      the next focus path as a ComponentPath, or null if there is no next focus path.
    • children

      public List<? extends GuiEventListener> children()
      Specified by:
      children in interface ContainerEventHandler
    • narrationPriority

      public NarratableEntry.NarrationPriority narrationPriority()
      Specified by:
      narrationPriority in interface NarratableEntry
    • updateNarration

      public void updateNarration(NarrationElementOutput p_275583_)
      Updates the narration output with the current narration information.
      Specified by:
      updateNarration in interface NarrationSupplier
      Parameters:
      p_275583_ - the output to update with narration information.
    • narrateListElementPosition

      protected void narrateListElementPosition(NarrationElementOutput pNarrationElementOutput, TabButton pTabButton)
      Narrates the position of a list element (tab button).
      Parameters:
      pNarrationElementOutput - the narration output to update.
      pTabButton - the tab button whose position is being narrated.
    • render

      public void render(GuiGraphics p_281720_, int p_282085_, int p_281687_, float p_283048_)
      Renders the graphical user interface (GUI) element.
      Specified by:
      render in interface Renderable
      Parameters:
      p_281720_ - the GuiGraphics object used for rendering.
      p_282085_ - the x-coordinate of the mouse cursor.
      p_281687_ - the y-coordinate of the mouse cursor.
      p_283048_ - the partial tick time.
    • getRectangle

      public ScreenRectangle getRectangle()
      Specified by:
      getRectangle in interface GuiEventListener
    • arrangeElements

      public void arrangeElements()
    • selectTab

      public void selectTab(int pIndex, boolean pPlayClickSound)
      Selects the tab at the specified index.
      Parameters:
      pIndex - the index of the tab to select.
      pPlayClickSound - whether to play a click sound when selecting the tab.
    • keyPressed

      public boolean keyPressed(int pKeycode)
      Handles key pressed events.

      Parameters:
      pKeycode - the keycode of the pressed key.
      Returns:
      true if the key press was handled, false otherwise.
    • getNextTabIndex

      private int getNextTabIndex(int pKeycode)
      Returns the index of the next tab based on the given key code.

      Parameters:
      pKeycode - the keycode of the pressed key.
      Returns:
      the index of the next tab, or -1 if no valid tab index is found.
    • currentTabIndex

      private int currentTabIndex()
    • currentTabButton

      @Nullable private TabButton currentTabButton()