Class DropDownWidget<T>
java.lang.Object
net.minecraft.client.gui.components.AbstractWidget
net.minecraft.client.gui.components.AbstractScrollWidget
com.pixelmonmod.pixelmon.client.gui.npc.widget.DropDownWidget<T>
- All Implemented Interfaces:
net.minecraft.client.gui.components.events.GuiEventListener,net.minecraft.client.gui.components.Renderable,net.minecraft.client.gui.components.TabOrderedElement,net.minecraft.client.gui.layouts.LayoutElement,net.minecraft.client.gui.narration.NarratableEntry,net.minecraft.client.gui.narration.NarrationSupplier,net.neoforged.neoforge.client.extensions.IAbstractWidgetExtension
public class DropDownWidget<T>
extends net.minecraft.client.gui.components.AbstractScrollWidget
-
Nested Class Summary
Nested classes/interfaces inherited from interface net.minecraft.client.gui.narration.NarratableEntry
net.minecraft.client.gui.narration.NarratableEntry.NarrationPriority -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected booleanprotected net.minecraft.client.gui.components.EditBoxprotected it.unimi.dsi.fastutil.booleans.BooleanConsumerstatic final intprotected TFields inherited from class net.minecraft.client.gui.components.AbstractScrollWidget
scrollAmount, scrollingFields inherited from class net.minecraft.client.gui.components.AbstractWidget
alpha, height, isHovered, packedFGColor, UNSET_FG_COLOR, width, x, yFields inherited from interface net.minecraft.client.gui.components.events.GuiEventListener
DOUBLE_CLICK_THRESHOLD_MS -
Constructor Summary
ConstructorsConstructorDescriptionDropDownWidget(int width, int height) DropDownWidget(int x, int y, int width, int height) -
Method Summary
Modifier and TypeMethodDescriptionbooleancharTyped(char character, int modifiers) protected StringconvertOption(T option) protected TfindElementFor(double mouseX, double mouseY) Finds the row in the list that the cursor is hovering over.intprotected intprotected intintgetWidth()booleanisMouseOver(double mouseX, double mouseY) booleankeyPressed(int keyCode, int scanCode, int modifiers) booleanmouseClicked(double mouseX, double mouseY, int button) booleanmouseDragged(double mouseX, double mouseY, int button, double deltaX, double deltaY) voidonClick(double mouseX, double mouseY) protected voidrenderBackground(net.minecraft.client.gui.GuiGraphics graphics) protected voidrenderContents(net.minecraft.client.gui.GuiGraphics gui, int mouseX, int mouseY, float partialTicks) Renders the list of options that opens up (aka that drops-down) upon opening the drop-down.protected voidrenderDecorations(net.minecraft.client.gui.GuiGraphics p_283178_) voidrenderWidget(net.minecraft.client.gui.GuiGraphics graphics, int mouseX, int mouseY, float partialTicks) protected booleanprotected doublevoidsetMaxVisibleOptions(int maxNumberOfOptions) Sets the maximum number of the drop-down's contents that will be displayed upon opening it up.voidsetOnDropDownToggle(it.unimi.dsi.fastutil.booleans.BooleanConsumer onDropDownToggle) setOnSelected(Consumer<T> onSelected) setOptionConverter(Function<T, String> optionConverter) voidsetOptions(List<T> options, T selected) voidsetSelected(T selected) voidsetWidth(int value) protected voidupdateWidgetNarration(net.minecraft.client.gui.narration.NarrationElementOutput p_259858_) Methods inherited from class net.minecraft.client.gui.components.AbstractScrollWidget
innerPadding, mouseReleased, mouseScrolled, renderBorder, scrollAmount, scrollbarWidth, setScrollAmount, totalInnerPadding, withinContentAreaPoint, withinContentAreaTopBottomMethods inherited from class net.minecraft.client.gui.components.AbstractWidget
clearFGColor, clicked, createNarrationMessage, defaultButtonNarrationText, getBottom, getFGColor, getMessage, getRectangle, getRight, getTabOrderGroup, getTooltip, getX, getY, isActive, isFocused, isHovered, isHoveredOrFocused, isValidClickButton, narrationPriority, nextFocusPath, onDrag, onRelease, playDownSound, render, renderScrollingString, renderScrollingString, renderScrollingString, setAlpha, setFGColor, setFocused, setHeight, setMessage, setRectangle, setSize, setTabOrderGroup, setTooltip, setTooltipDelay, setX, setY, updateNarration, visitWidgets, wrapDefaultNarrationMessageMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.minecraft.client.gui.components.events.GuiEventListener
getCurrentFocusPath, getRectangle, isFocused, keyReleased, mouseMoved, nextFocusPath, setFocusedMethods inherited from interface net.neoforged.neoforge.client.extensions.IAbstractWidgetExtension
onClickMethods inherited from interface net.minecraft.client.gui.layouts.LayoutElement
setPositionMethods inherited from interface net.minecraft.client.gui.components.Renderable
renderMethods inherited from interface net.minecraft.client.gui.components.TabOrderedElement
getTabOrderGroup
-
Field Details
-
OPTION_HEIGHT
public static final int OPTION_HEIGHT- See Also:
-
editBox
protected net.minecraft.client.gui.components.EditBox editBox -
originalOptions
-
options
-
selectedOption
-
onSelected
-
onDropDownToggle
protected it.unimi.dsi.fastutil.booleans.BooleanConsumer onDropDownToggle -
optionConverter
-
active
protected boolean active
-
-
Constructor Details
-
DropDownWidget
public DropDownWidget(int width, int height) -
DropDownWidget
public DropDownWidget(int x, int y, int width, int height)
-
-
Method Details
-
setOptions
-
setWidth
public void setWidth(int value) - Overrides:
setWidthin classnet.minecraft.client.gui.components.AbstractWidget
-
setSelected
-
setOptionConverter
-
setOnSelected
-
setOrdered
-
setOnDropDownToggle
public void setOnDropDownToggle(it.unimi.dsi.fastutil.booleans.BooleanConsumer onDropDownToggle) -
getSelected
-
scrollRate
protected double scrollRate()- Specified by:
scrollRatein classnet.minecraft.client.gui.components.AbstractScrollWidget
-
renderWidget
public void renderWidget(net.minecraft.client.gui.GuiGraphics graphics, int mouseX, int mouseY, float partialTicks) - Overrides:
renderWidgetin classnet.minecraft.client.gui.components.AbstractScrollWidget
-
renderDecorations
protected void renderDecorations(net.minecraft.client.gui.GuiGraphics p_283178_) - Overrides:
renderDecorationsin classnet.minecraft.client.gui.components.AbstractScrollWidget
-
findElementFor
Finds the row in the list that the cursor is hovering over.- Parameters:
mouseX- The cursor's x coordinates.mouseY- The cursor's y coordinates.- Returns:
- The element in the drop-down's list of options that the cursor is hovering over.
-
renderContents
protected void renderContents(net.minecraft.client.gui.GuiGraphics gui, int mouseX, int mouseY, float partialTicks) Renders the list of options that opens up (aka that drops-down) upon opening the drop-down.- Specified by:
renderContentsin classnet.minecraft.client.gui.components.AbstractScrollWidget- Parameters:
gui- The PoseStack matrixmouseX- The cursor's x position.mouseY- The cursor's y position.partialTicks- The number of partial ticks that have elapsed.
-
renderBackground
protected void renderBackground(net.minecraft.client.gui.GuiGraphics graphics) - Overrides:
renderBackgroundin classnet.minecraft.client.gui.components.AbstractScrollWidget
-
mouseClicked
public boolean mouseClicked(double mouseX, double mouseY, int button) - Specified by:
mouseClickedin interfacenet.minecraft.client.gui.components.events.GuiEventListener- Overrides:
mouseClickedin classnet.minecraft.client.gui.components.AbstractScrollWidget
-
onClick
public void onClick(double mouseX, double mouseY) - Overrides:
onClickin classnet.minecraft.client.gui.components.AbstractWidget
-
mouseDragged
public boolean mouseDragged(double mouseX, double mouseY, int button, double deltaX, double deltaY) - Specified by:
mouseDraggedin interfacenet.minecraft.client.gui.components.events.GuiEventListener- Overrides:
mouseDraggedin classnet.minecraft.client.gui.components.AbstractScrollWidget
-
keyPressed
public boolean keyPressed(int keyCode, int scanCode, int modifiers) - Specified by:
keyPressedin interfacenet.minecraft.client.gui.components.events.GuiEventListener- Overrides:
keyPressedin classnet.minecraft.client.gui.components.AbstractScrollWidget
-
charTyped
public boolean charTyped(char character, int modifiers) -
updateWidgetNarration
protected void updateWidgetNarration(net.minecraft.client.gui.narration.NarrationElementOutput p_259858_) - Specified by:
updateWidgetNarrationin classnet.minecraft.client.gui.components.AbstractWidget
-
convertOption
-
getInnerHeight
protected int getInnerHeight()- Specified by:
getInnerHeightin classnet.minecraft.client.gui.components.AbstractScrollWidget
-
scrollbarVisible
protected boolean scrollbarVisible()- Overrides:
scrollbarVisiblein classnet.minecraft.client.gui.components.AbstractScrollWidget
-
getMaxScrollAmount
protected int getMaxScrollAmount()- Overrides:
getMaxScrollAmountin classnet.minecraft.client.gui.components.AbstractScrollWidget
-
getHeight
public int getHeight()- Specified by:
getHeightin interfacenet.minecraft.client.gui.layouts.LayoutElement- Overrides:
getHeightin classnet.minecraft.client.gui.components.AbstractWidget
-
isMouseOver
public boolean isMouseOver(double mouseX, double mouseY) - Specified by:
isMouseOverin interfacenet.minecraft.client.gui.components.events.GuiEventListener- Overrides:
isMouseOverin classnet.minecraft.client.gui.components.AbstractWidget
-
getWidth
public int getWidth()- Specified by:
getWidthin interfacenet.minecraft.client.gui.layouts.LayoutElement- Overrides:
getWidthin classnet.minecraft.client.gui.components.AbstractWidget
-
setMaxVisibleOptions
public void setMaxVisibleOptions(int maxNumberOfOptions) Sets the maximum number of the drop-down's contents that will be displayed upon opening it up.- Parameters:
maxNumberOfOptions- The maximum items the drop-down should show.
-