Package net.minecraftforge.client.gui
Class ModMismatchDisconnectedScreen.MismatchInfoPanel
java.lang.Object
net.minecraft.client.gui.GuiComponent
net.minecraft.client.gui.components.events.AbstractContainerEventHandler
net.minecraftforge.client.gui.widget.ScrollPanel
net.minecraftforge.client.gui.ModMismatchDisconnectedScreen.MismatchInfoPanel
- All Implemented Interfaces:
ContainerEventHandler
,GuiEventListener
,Widget
,NarratableEntry
,NarrationSupplier
- Enclosing class:
- ModMismatchDisconnectedScreen
-
Nested Class Summary
Nested classes/interfaces inherited from interface net.minecraft.client.gui.narration.NarratableEntry
NarratableEntry.NarrationPriority
-
Field Summary
Modifier and TypeFieldDescriptionprivate final int
private final List<org.apache.commons.lang3.tuple.Pair<FormattedCharSequence,
org.apache.commons.lang3.tuple.Pair<FormattedCharSequence, FormattedCharSequence>>> private final int
private final int
private final int
private final int
Fields inherited from class net.minecraftforge.client.gui.widget.ScrollPanel
border, bottom, captureMouse, height, left, right, scrollDistance, top, width
Fields inherited from class net.minecraft.client.gui.GuiComponent
BACKGROUND_LOCATION, GUI_ICONS_LOCATION, STATS_ICON_LOCATION
Fields inherited from interface net.minecraft.client.gui.components.events.GuiEventListener
DOUBLE_CLICK_THRESHOLD_MS
-
Constructor Summary
ConstructorDescriptionMismatchInfoPanel
(Minecraft client, int width, int height, int top, int left) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
drawPanel
(PoseStack stack, int entryRight, int relativeY, Tesselator tess, int mouseX, int mouseY) Draw anything special on the screen.getComponentStyleAt
(double x, double y) protected int
boolean
mouseClicked
(double mouseX, double mouseY, int button) void
private List<org.apache.commons.lang3.tuple.Pair<FormattedCharSequence,
org.apache.commons.lang3.tuple.Pair<FormattedCharSequence, FormattedCharSequence>>> splitLineToWidth
(MutableComponent name, org.apache.commons.lang3.tuple.Pair<String, String> versions) Splits the raw name and version strings, making them use multiple lines if needed, to fit within the table dimensions.private MutableComponent
toModNameComponent
(ResourceLocation id, String modName, int color) Adds a style information to the given mod name string.void
Methods inherited from class net.minecraftforge.client.gui.widget.ScrollPanel
children, clickPanel, drawBackground, drawGradientRect, getScrollAmount, isMouseOver, mouseDragged, mouseReleased, mouseScrolled
Methods inherited from class net.minecraft.client.gui.components.events.AbstractContainerEventHandler
getFocused, isDragging, setDragging, setFocused
Methods inherited from class net.minecraft.client.gui.GuiComponent
blit, blit, blit, blit, blit, blitOutlineBlack, disableScissor, drawCenteredString, drawCenteredString, drawCenteredString, drawString, drawString, drawString, enableScissor, fill, fillGradient, fillGradient, fillGradient, getBlitOffset, hLine, setBlitOffset, vLine
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
changeFocus, charTyped, getChildAt, keyPressed, keyReleased, magicalSpecialHackyFocus, setInitialFocus
Methods inherited from interface net.minecraft.client.gui.components.events.GuiEventListener
mouseMoved
Methods inherited from interface net.minecraft.client.gui.narration.NarratableEntry
isActive
-
Field Details
-
lineTable
private final List<org.apache.commons.lang3.tuple.Pair<FormattedCharSequence,org.apache.commons.lang3.tuple.Pair<FormattedCharSequence, lineTableFormattedCharSequence>>> -
contentSize
private final int contentSize -
nameIndent
private final int nameIndent- See Also:
-
tableWidth
private final int tableWidth -
nameWidth
private final int nameWidth -
versionWidth
private final int versionWidth
-
-
Constructor Details
-
MismatchInfoPanel
-
-
Method Details
-
splitLineToWidth
private List<org.apache.commons.lang3.tuple.Pair<FormattedCharSequence,org.apache.commons.lang3.tuple.Pair<FormattedCharSequence, splitLineToWidthFormattedCharSequence>>> (MutableComponent name, org.apache.commons.lang3.tuple.Pair<String, String> versions) Splits the raw name and version strings, making them use multiple lines if needed, to fit within the table dimensions. The style assigned to the name element is then applied to the entire content row.- Parameters:
name
- The first element of the content row, usually representing a table section header or the name of a mod entryversions
- The last two elements of the content row, usually representing the mod versions. If either one or both of them are not given, the first element may take up more space within the table.- Returns:
- A list of table rows consisting of 3 elements each which consist of the same content as was given by the parameters, but split up to fit within the table dimensions.
-
toModNameComponent
Adds a style information to the given mod name string. The style assigned to the returned component contains the color of the mod name, a hover event containing the given id, and an optional click event, which opens the homepage of mod, if present.- Parameters:
id
- An id that gets displayed in the hover event. Depending on the origin it may only consist of a namespace (the mod id) or a namespace + path (a channel id associated with the mod).modName
- The name of the mod. It will be rendered as the main text component.color
- Defines the color of the returned style information. An odd number will result in a yellow, an even one in a gold color. This color variation makes it easier for users to distinguish different mod entries.- Returns:
- A component with the mod name as the main text component, and an assigned style which will be used for the whole content row.
-
getContentHeight
protected int getContentHeight()- Specified by:
getContentHeight
in classScrollPanel
-
drawPanel
protected void drawPanel(PoseStack stack, int entryRight, int relativeY, Tesselator tess, int mouseX, int mouseY) Description copied from class:ScrollPanel
Draw anything special on the screen. Scissor (RenderSystem.enableScissor) is enabled for anything that is rendered outside the view box. Do not mess with Scissor unless you support this.- Specified by:
drawPanel
in classScrollPanel
-
render
- Specified by:
render
in interfaceWidget
- Overrides:
render
in classScrollPanel
-
getComponentStyleAt
-
mouseClicked
public boolean mouseClicked(double mouseX, double mouseY, int button) - Specified by:
mouseClicked
in interfaceContainerEventHandler
- Specified by:
mouseClicked
in interfaceGuiEventListener
- Overrides:
mouseClicked
in classScrollPanel
-
narrationPriority
-
updateNarration
-