Class AbstractSelectionList<E extends AbstractSelectionList.Entry<E>>

All Implemented Interfaces:
ContainerEventHandler, GuiEventListener, Widget, NarratableEntry, NarrationSupplier
Direct Known Subclasses:
ContainerObjectSelectionList, ObjectSelectionList

public abstract class AbstractSelectionList<E extends AbstractSelectionList.Entry<E>> extends AbstractContainerEventHandler implements Widget, NarratableEntry
  • Field Details

    • minecraft

      protected final Minecraft minecraft
    • itemHeight

      protected final int itemHeight
    • children

      private final List<E extends AbstractSelectionList.Entry<E>> children
    • width

      protected int width
    • height

      protected int height
    • y0

      protected int y0
    • y1

      protected int y1
    • x1

      protected int x1
    • x0

      protected int x0
    • centerListVertically

      protected boolean centerListVertically
    • scrollAmount

      private double scrollAmount
    • renderSelection

      private boolean renderSelection
    • renderHeader

      private boolean renderHeader
    • headerHeight

      protected int headerHeight
    • scrolling

      private boolean scrolling
    • selected

      @Nullable private E extends AbstractSelectionList.Entry<E> selected
    • renderBackground

      private boolean renderBackground
    • renderTopAndBottom

      private boolean renderTopAndBottom
    • hovered

      @Nullable private E extends AbstractSelectionList.Entry<E> hovered
  • Constructor Details

    • AbstractSelectionList

      public AbstractSelectionList(Minecraft p_93404_, int p_93405_, int p_93406_, int p_93407_, int p_93408_, int p_93409_)
  • Method Details

    • setRenderSelection

      public void setRenderSelection(boolean p_93472_)
    • setRenderHeader

      protected void setRenderHeader(boolean p_93474_, int p_93475_)
    • getRowWidth

      public int getRowWidth()
    • getSelected

      @Nullable public E getSelected()
    • setSelected

      public void setSelected(@Nullable E p_93462_)
    • setRenderBackground

      public void setRenderBackground(boolean p_93489_)
    • setRenderTopAndBottom

      public void setRenderTopAndBottom(boolean p_93497_)
    • getFocused

      @Nullable public E getFocused()
      Specified by:
      getFocused in interface ContainerEventHandler
      Overrides:
      getFocused in class AbstractContainerEventHandler
    • children

      public final List<E> children()
      Specified by:
      children in interface ContainerEventHandler
    • clearEntries

      protected final void clearEntries()
    • replaceEntries

      protected void replaceEntries(Collection<E> p_93470_)
    • getEntry

      protected E getEntry(int p_93501_)
    • addEntry

      protected int addEntry(E p_93487_)
    • getItemCount

      protected int getItemCount()
    • isSelectedItem

      protected boolean isSelectedItem(int p_93504_)
    • getEntryAtPosition

      @Nullable protected final E getEntryAtPosition(double p_93413_, double p_93414_)
    • updateSize

      public void updateSize(int p_93438_, int p_93439_, int p_93440_, int p_93441_)
    • setLeftPos

      public void setLeftPos(int p_93508_)
    • getMaxPosition

      protected int getMaxPosition()
    • clickedHeader

      protected void clickedHeader(int p_93431_, int p_93432_)
    • renderHeader

      protected void renderHeader(PoseStack p_93458_, int p_93459_, int p_93460_, Tesselator p_93461_)
    • renderBackground

      protected void renderBackground(PoseStack p_93442_)
    • renderDecorations

      protected void renderDecorations(PoseStack p_93443_, int p_93444_, int p_93445_)
    • render

      public void render(PoseStack p_93447_, int p_93448_, int p_93449_, float p_93450_)
      Specified by:
      render in interface Widget
    • centerScrollOn

      protected void centerScrollOn(E p_93495_)
    • ensureVisible

      protected void ensureVisible(E p_93499_)
    • scroll

      private void scroll(int p_93430_)
    • getScrollAmount

      public double getScrollAmount()
    • setScrollAmount

      public void setScrollAmount(double p_93411_)
    • getMaxScroll

      public int getMaxScroll()
    • getScrollBottom

      public int getScrollBottom()
    • updateScrollingState

      protected void updateScrollingState(double p_93482_, double p_93483_, int p_93484_)
    • getScrollbarPosition

      protected int getScrollbarPosition()
    • mouseClicked

      public boolean mouseClicked(double p_93420_, double p_93421_, int p_93422_)
      Specified by:
      mouseClicked in interface ContainerEventHandler
      Specified by:
      mouseClicked in interface GuiEventListener
    • mouseReleased

      public boolean mouseReleased(double p_93491_, double p_93492_, int p_93493_)
      Specified by:
      mouseReleased in interface ContainerEventHandler
      Specified by:
      mouseReleased in interface GuiEventListener
    • mouseDragged

      public boolean mouseDragged(double p_93424_, double p_93425_, int p_93426_, double p_93427_, double p_93428_)
      Specified by:
      mouseDragged in interface ContainerEventHandler
      Specified by:
      mouseDragged in interface GuiEventListener
    • mouseScrolled

      public boolean mouseScrolled(double p_93416_, double p_93417_, double p_93418_)
      Specified by:
      mouseScrolled in interface ContainerEventHandler
      Specified by:
      mouseScrolled in interface GuiEventListener
    • keyPressed

      public boolean keyPressed(int p_93434_, int p_93435_, int p_93436_)
      Specified by:
      keyPressed in interface ContainerEventHandler
      Specified by:
      keyPressed in interface GuiEventListener
    • moveSelection

      protected void moveSelection(AbstractSelectionList.SelectionDirection p_93463_)
    • refreshSelection

      protected void refreshSelection()
    • moveSelection

      protected void moveSelection(AbstractSelectionList.SelectionDirection p_93465_, Predicate<E> p_93466_)
    • isMouseOver

      public boolean isMouseOver(double p_93479_, double p_93480_)
      Specified by:
      isMouseOver in interface GuiEventListener
    • renderList

      protected void renderList(PoseStack p_93452_, int p_93453_, int p_93454_, int p_93455_, int p_93456_, float p_93457_)
    • getRowLeft

      public int getRowLeft()
    • getRowRight

      public int getRowRight()
    • getRowTop

      protected int getRowTop(int p_93512_)
    • getRowBottom

      private int getRowBottom(int p_93486_)
    • isFocused

      protected boolean isFocused()
    • narrationPriority

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

      @Nullable protected E remove(int p_93515_)
    • removeEntry

      protected boolean removeEntry(E p_93503_)
    • getHovered

      @Nullable protected E getHovered()
    • bindEntryToSelf

      void bindEntryToSelf(AbstractSelectionList.Entry<E> p_93506_)
    • narrateListElementPosition

      protected void narrateListElementPosition(NarrationElementOutput p_168791_, E p_168792_)
    • getWidth

      public int getWidth()
    • getHeight

      public int getHeight()
    • getTop

      public int getTop()
    • getBottom

      public int getBottom()
    • getLeft

      public int getLeft()
    • getRight

      public int getRight()