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
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
Builder class for creating a TabNavigationBar instance.Nested classes/interfaces inherited from interface net.minecraft.client.gui.narration.NarratableEntry
NarratableEntry.NarrationPriority
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final int
private final LinearLayout
private static final int
private static final int
private static final int
private final ImmutableList
<TabButton> private final TabManager
private final ImmutableList
<Tab> private static final Component
private int
Fields inherited from interface net.minecraft.client.gui.components.events.GuiEventListener
DOUBLE_CLICK_THRESHOLD_MS
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
static TabNavigationBar.Builder
builder
(TabManager pTabManager, int pWidth) List
<? extends GuiEventListener> children()
private TabButton
private int
private int
getNextTabIndex
(int pKeycode) Returns the index of the next tab based on the given key code.boolean
isMouseOver
(double p_387504_, double p_386568_) Checks if the given mouse coordinates are over the GUI element.boolean
keyPressed
(int pKeycode) Handles key pressed events.protected void
narrateListElementPosition
(NarrationElementOutput pNarrationElementOutput, TabButton pTabButton) Narrates the position of a list element (tab button).nextFocusPath
(FocusNavigationEvent p_275418_) Retrieves the next focus path based on the given focus navigation event.void
render
(GuiGraphics p_281720_, int p_282085_, int p_281687_, float p_283048_) Renders the graphical user interface (GUI) element.void
selectTab
(int pIndex, boolean pPlayClickSound) Selects the tab at the specified index.void
setFocused
(boolean p_275488_) Sets the focus state of the GUI element.void
setFocused
(GuiEventListener p_275675_) Sets the focus state of the GUI element.void
setWidth
(int pWidth) void
updateNarration
(NarrationElementOutput p_275583_) Updates the narration output with the current narration information.Methods inherited from class net.minecraft.client.gui.components.events.AbstractContainerEventHandler
getFocused, isDragging, setDragging
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface net.minecraft.client.gui.components.events.ContainerEventHandler
charTyped, getChildAt, getCurrentFocusPath, isFocused, keyPressed, keyReleased, mouseClicked, mouseDragged, mouseReleased, mouseScrolled
Methods inherited from interface net.minecraft.client.gui.components.events.GuiEventListener
getBorderForArrowNavigation, mouseMoved
Methods inherited from interface net.minecraft.client.gui.narration.NarratableEntry
getNarratables, isActive
Methods inherited from interface net.minecraft.client.gui.components.TabOrderedElement
getTabOrderGroup
-
Field Details
-
NO_TAB
private static final int NO_TAB- See Also:
-
MAX_WIDTH
private static final int MAX_WIDTH- See Also:
-
HEIGHT
private static final int HEIGHT- See Also:
-
MARGIN
private static final int MARGIN- See Also:
-
USAGE_NARRATION
-
layout
-
width
private int width -
tabManager
-
tabs
-
tabButtons
-
-
Constructor Details
-
TabNavigationBar
TabNavigationBar(int pWidth, TabManager pTabManager, Iterable<Tab> pTabs)
-
-
Method Details
-
builder
-
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 interfaceGuiEventListener
- 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 interfaceContainerEventHandler
- Specified by:
setFocused
in interfaceGuiEventListener
- Parameters:
p_275488_
-true
to apply focus,false
to remove focus
-
setFocused
Sets the focus state of the GUI element.- Specified by:
setFocused
in interfaceContainerEventHandler
- Overrides:
setFocused
in classAbstractContainerEventHandler
- Parameters:
p_275675_
- the focused GUI element.
-
children
- Specified by:
children
in interfaceContainerEventHandler
-
narrationPriority
- Specified by:
narrationPriority
in interfaceNarratableEntry
-
updateNarration
Updates the narration output with the current narration information.- Specified by:
updateNarration
in interfaceNarrationSupplier
- 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
Renders the graphical user interface (GUI) element.- Specified by:
render
in interfaceRenderable
- 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
- Specified by:
getRectangle
in interfaceGuiEventListener
-
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
-