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 com.google.common.collect.ImmutableList
<TabButton> private final TabManager
private final com.google.common.collect.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
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 pEvent) Retrieves the next focus path based on the given focus navigation event.void
render
(GuiGraphics pGuiGraphics, int pMouseX, int pMouseY, float pPartialTick) Renders the graphical user interface (GUI) element.void
selectTab
(int pIndex, boolean pPlayClickSound) Selects the tab at the specified index.void
setFocused
(boolean pFocused) Sets the focus state of the GUI element.void
setFocused
(GuiEventListener pListener) Sets the focus state of the GUI element.void
setWidth
(int pWidth) void
updateNarration
(NarrationElementOutput pNarrationElementOutput) 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
isMouseOver, mouseMoved
Methods inherited from interface net.minecraft.client.gui.narration.NarratableEntry
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) -
setFocused
public void setFocused(boolean pFocused) Sets the focus state of the GUI element.- Specified by:
setFocused
in interfaceContainerEventHandler
- Specified by:
setFocused
in interfaceGuiEventListener
- Parameters:
pFocused
-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:
pListener
- 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:
pNarrationElementOutput
- 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:
pGuiGraphics
- the GuiGraphics object used for rendering.pMouseX
- the x-coordinate of the mouse cursor.pMouseY
- the y-coordinate of the mouse cursor.pPartialTick
- 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
-