Class ModernListWidget

java.lang.Object
net.minecraft.client.gui.components.AbstractWidget
net.minecraft.client.gui.components.AbstractScrollArea
net.minecraft.client.gui.components.AbstractContainerWidget
net.minecraft.client.gui.components.AbstractSelectionList<ModernListWidget.ModWidgetEntry>
net.minecraft.client.gui.components.ContainerObjectSelectionList<ModernListWidget.ModWidgetEntry>
net.dillon.dillonlib.client.ModernListWidget
All Implemented Interfaces:
net.minecraft.client.gui.components.events.ContainerEventHandler, 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

public class ModernListWidget extends net.minecraft.client.gui.components.ContainerObjectSelectionList<ModernListWidget.ModWidgetEntry>
A better version of OptionsList, with more user-friendly appearances, centering and positioning.
Since:
1.0
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static class 
     

    Nested classes/interfaces inherited from class net.minecraft.client.gui.components.ContainerObjectSelectionList

    net.minecraft.client.gui.components.ContainerObjectSelectionList.Entry<E>

    Nested classes/interfaces inherited from class net.minecraft.client.gui.components.AbstractScrollArea

    net.minecraft.client.gui.components.AbstractScrollArea.ScrollbarSettings

    Nested classes/interfaces inherited from class net.minecraft.client.gui.components.AbstractWidget

    net.minecraft.client.gui.components.AbstractWidget.WithInactiveMessage

    Nested classes/interfaces inherited from interface net.minecraft.client.gui.narration.NarratableEntry

    net.minecraft.client.gui.narration.NarratableEntry.NarrationPriority
  • Field Summary

    Fields inherited from class net.minecraft.client.gui.components.AbstractSelectionList

    centerListVertically, defaultEntryHeight, minecraft

    Fields inherited from class net.minecraft.client.gui.components.AbstractScrollArea

    SCROLLBAR_WIDTH

    Fields inherited from class net.minecraft.client.gui.components.AbstractWidget

    active, alpha, height, isHovered, message, packedFGColor, UNSET_FG_COLOR, visible, width
  • Constructor Summary

    Constructors
    Constructor
    Description
    ModernListWidget(net.minecraft.client.Minecraft client, int width, net.minecraft.client.gui.screens.options.OptionsSubScreen optionsScreen)
    Create a new ModernListWidget.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addAll(List<net.minecraft.client.gui.components.AbstractWidget> buttons)
    Adds a List of buttons to the screen.
    void
    addRow(net.minecraft.client.gui.components.AbstractWidget firstButton, @Nullable net.minecraft.client.gui.components.AbstractWidget secondButton)
    Adds a row of buttons to the list.
    void
    addSingleOptionEntry(net.minecraft.client.gui.components.AbstractWidget button)
    Adds a single button to the list of buttons.
    int
     
    int
     
    void
    layoutButtons(boolean centerSingleButtons)
    Repositions row widgets after the list itself has been moved or resized.

    Methods inherited from class net.minecraft.client.gui.components.ContainerObjectSelectionList

    entriesCanBeSelected, narrationPriority, nextFocusPath, setFocused, updateWidgetNarration

    Methods inherited from class net.minecraft.client.gui.components.AbstractSelectionList

    addEntry, addEntry, addEntryToTop, addEntryToTop, centerScrollOn, children, clearEntries, clearEntriesExcept, contentHeight, enableScissor, extractItem, extractListBackground, extractListItems, extractListSeparators, extractSelection, extractWidgetRenderState, getChildAt, getEntryAtPosition, getFocused, getHovered, getItemCount, getNextY, getRowBottom, getRowLeft, getRowRight, getRowTop, getSelected, narrateListElementPosition, nextEntry, nextEntry, nextEntry, removeEntries, removeEntry, removeEntryFromTop, replaceEntries, scrollBarX, scrollToEntry, setScrollAmount, setSelected, sort, swap, updateSize, updateSizeAndPosition, updateSizeAndPosition

    Methods inherited from class net.minecraft.client.gui.components.AbstractContainerWidget

    isDragging, isFocused, mouseClicked, mouseDragged, mouseReleased, setDragging, setFocused

    Methods inherited from class net.minecraft.client.gui.components.AbstractScrollArea

    defaultSettings, extractScrollbar, isOverScrollbar, maxScrollAmount, mouseScrolled, onRelease, refreshScrollAmount, scrollable, scrollAmount, scrollbarWidth, scrollBarY, scrollerHeight, scrollRate, updateScrolling

    Methods inherited from class net.minecraft.client.gui.components.AbstractWidget

    clearFGColor, createNarrationMessage, defaultButtonNarrationText, extractRenderState, extractScrollingStringOverContents, extractTooltipForNextRenderPass, getAlpha, getBottom, getFGColor, getHeight, getMessage, getRectangle, getRight, getTabOrderGroup, getWidth, getX, getY, handleCursor, isActive, isHovered, isHoveredOrFocused, isMouseOver, isValidClickButton, onClick, onDrag, playButtonClickSound, playDownSound, setAlpha, setFGColor, setHeight, setMessage, setRectangle, setSize, setTabOrderGroup, setTooltip, setTooltipDelay, setWidth, setX, setY, updateNarration, visitWidgets, wrapDefaultNarrationMessage

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface net.minecraft.client.gui.components.events.ContainerEventHandler

    charTyped, getBorderForArrowNavigation, getCurrentFocusPath, keyPressed, keyReleased, mouseScrolled, preeditUpdated

    Methods inherited from interface net.minecraft.client.gui.components.events.GuiEventListener

    getRectangle, isMouseOver, mouseMoved, shouldTakeFocusAfterInteraction

    Methods inherited from interface net.minecraft.client.gui.layouts.LayoutElement

    setPosition

    Methods inherited from interface net.minecraft.client.gui.narration.NarratableEntry

    getNarratables

    Methods inherited from interface net.minecraft.client.gui.components.TabOrderedElement

    getTabOrderGroup
  • Constructor Details

    • ModernListWidget

      public ModernListWidget(net.minecraft.client.Minecraft client, int width, net.minecraft.client.gui.screens.options.OptionsSubScreen optionsScreen)
      Create a new ModernListWidget.
  • Method Details

    • addRow

      public void addRow(net.minecraft.client.gui.components.AbstractWidget firstButton, @Nullable @Nullable net.minecraft.client.gui.components.AbstractWidget secondButton)
      Adds a row of buttons to the list.
    • addSingleOptionEntry

      public void addSingleOptionEntry(net.minecraft.client.gui.components.AbstractWidget button)
      Adds a single button to the list of buttons. This button will take up a whole row space.
    • addAll

      public void addAll(List<net.minecraft.client.gui.components.AbstractWidget> buttons)
      Adds a List of buttons to the screen.
    • layoutButtons

      public void layoutButtons(boolean centerSingleButtons)
      Repositions row widgets after the list itself has been moved or resized.
    • getEntryContentHeight

      public int getEntryContentHeight()
      Returns:
      the total height required to display all current entries.
    • getRowWidth

      public int getRowWidth()
      Overrides:
      getRowWidth in class net.minecraft.client.gui.components.AbstractSelectionList<ModernListWidget.ModWidgetEntry>
      Returns:
      the total row width for the list widget.