diff options
Diffstat (limited to 'common/src/main/java/dev/isxander/yacl3/gui/TooltipButtonWidget.java')
-rw-r--r-- | common/src/main/java/dev/isxander/yacl3/gui/TooltipButtonWidget.java | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/common/src/main/java/dev/isxander/yacl3/gui/TooltipButtonWidget.java b/common/src/main/java/dev/isxander/yacl3/gui/TooltipButtonWidget.java new file mode 100644 index 0000000..396f20b --- /dev/null +++ b/common/src/main/java/dev/isxander/yacl3/gui/TooltipButtonWidget.java @@ -0,0 +1,25 @@ +package dev.isxander.yacl3.gui; + +import net.minecraft.client.gui.components.Button; +import net.minecraft.client.gui.components.Tooltip; +import net.minecraft.client.gui.screens.Screen; +import net.minecraft.client.gui.screens.inventory.tooltip.ClientTooltipPositioner; +import net.minecraft.network.chat.Component; +import org.jetbrains.annotations.NotNull; + +public class TooltipButtonWidget extends Button { + + protected final Screen screen; + + public TooltipButtonWidget(Screen screen, int x, int y, int width, int height, Component message, Component tooltip, OnPress onPress) { + super(x, y, width, height, message, onPress, DEFAULT_NARRATION); + this.screen = screen; + if (tooltip != null) + setTooltip(Tooltip.create(tooltip)); + } + + @Override + protected @NotNull ClientTooltipPositioner createTooltipPositioner() { + return new YACLTooltipPositioner(this); + } +} |