aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/de/hysky/skyblocker/utils/render
diff options
context:
space:
mode:
authorvicisacat <victor.branchu@gmail.com>2024-04-14 17:36:21 +0200
committervicisacat <victor.branchu@gmail.com>2024-04-20 16:09:49 +0200
commitb791e38cbd36360935164e337fa992bf514cbb36 (patch)
treef245ad744288d6f62452c26161878d59f651971d /src/main/java/de/hysky/skyblocker/utils/render
parent3581365e654306cf08d0c4284ddfa454befd519d (diff)
downloadSkyblocker-b791e38cbd36360935164e337fa992bf514cbb36.tar.gz
Skyblocker-b791e38cbd36360935164e337fa992bf514cbb36.tar.bz2
Skyblocker-b791e38cbd36360935164e337fa992bf514cbb36.zip
it works so cool
Diffstat (limited to 'src/main/java/de/hysky/skyblocker/utils/render')
-rw-r--r--src/main/java/de/hysky/skyblocker/utils/render/gui/AbstractPopupScreen.java37
1 files changed, 37 insertions, 0 deletions
diff --git a/src/main/java/de/hysky/skyblocker/utils/render/gui/AbstractPopupScreen.java b/src/main/java/de/hysky/skyblocker/utils/render/gui/AbstractPopupScreen.java
index 2bd15955..e7a3e8b2 100644
--- a/src/main/java/de/hysky/skyblocker/utils/render/gui/AbstractPopupScreen.java
+++ b/src/main/java/de/hysky/skyblocker/utils/render/gui/AbstractPopupScreen.java
@@ -3,10 +3,16 @@ package de.hysky.skyblocker.utils.render.gui;
import com.mojang.blaze3d.platform.GlConst;
import com.mojang.blaze3d.systems.RenderSystem;
import net.minecraft.client.MinecraftClient;
+import net.minecraft.client.font.TextRenderer;
import net.minecraft.client.gui.DrawContext;
import net.minecraft.client.gui.screen.Screen;
+import net.minecraft.client.gui.widget.TextFieldWidget;
import net.minecraft.text.Text;
import net.minecraft.util.Identifier;
+import org.jetbrains.annotations.Nullable;
+import org.lwjgl.glfw.GLFW;
+
+import java.util.function.Consumer;
/**
* A more bare-bones version of Vanilla's Popup Screen. Meant to be extended.
@@ -57,4 +63,35 @@ public class AbstractPopupScreen extends Screen {
super.onDisplayed();
this.backgroundScreen.blur();
}
+
+ public static class EnterConfirmTextFieldWidget extends TextFieldWidget {
+
+ private final Runnable onEnter;
+
+ public EnterConfirmTextFieldWidget(TextRenderer textRenderer, int width, int height, Text text, Runnable onEnter) {
+ this(textRenderer, 0, 0, width, height, text, onEnter);
+ }
+
+ public EnterConfirmTextFieldWidget(TextRenderer textRenderer, int x, int y, int width, int height, Text text,Runnable onEnter) {
+ this(textRenderer, x, y, width, height, null, text, onEnter);
+ }
+
+ public EnterConfirmTextFieldWidget(TextRenderer textRenderer, int x, int y, int width, int height, @Nullable TextFieldWidget copyFrom, Text text, Runnable onEnter) {
+ super(textRenderer, x, y, width, height, copyFrom, text);
+ this.onEnter = onEnter;
+ }
+
+
+ @Override
+ public boolean keyPressed(int keyCode, int scanCode, int modifiers) {
+ if (!super.keyPressed(keyCode, scanCode, modifiers)) {
+ if (keyCode == GLFW.GLFW_KEY_ENTER || keyCode == GLFW.GLFW_KEY_KP_ENTER) {
+ onEnter.run();
+ return true;
+ }
+ } else return true;
+ return false;
+ }
+ }
+
} \ No newline at end of file