From 4894f5602c10ba50f320c94def24587b9c7e4aa5 Mon Sep 17 00:00:00 2001 From: Frank Date: Fri, 15 Jul 2022 00:57:29 +0200 Subject: [PATCH] Added Test Screen --- .../bclib/client/gui/modmenu/TestScreen.java | 61 +++++++++++++++++++ .../modmenu/ModMenuEntryPoint.java | 1 + 2 files changed, 62 insertions(+) create mode 100644 src/main/java/org/betterx/bclib/client/gui/modmenu/TestScreen.java diff --git a/src/main/java/org/betterx/bclib/client/gui/modmenu/TestScreen.java b/src/main/java/org/betterx/bclib/client/gui/modmenu/TestScreen.java new file mode 100644 index 00000000..ed262c7b --- /dev/null +++ b/src/main/java/org/betterx/bclib/client/gui/modmenu/TestScreen.java @@ -0,0 +1,61 @@ +package org.betterx.bclib.client.gui.modmenu; + +import org.betterx.ui.layout.components.Button; +import org.betterx.ui.layout.components.HorizontalStack; +import org.betterx.ui.layout.components.Panel; +import org.betterx.ui.layout.components.VerticalStack; +import org.betterx.ui.layout.values.DynamicSize; + +import com.mojang.blaze3d.vertex.PoseStack; +import net.minecraft.client.gui.screens.Screen; +import net.minecraft.network.chat.Component; + +public class TestScreen extends Screen { + public TestScreen(Component component) { + super(component); + } + + Panel main; + + @Override + protected void init() { + super.init(); + main = new Panel(this.width, this.height); + HorizontalStack columns = new HorizontalStack<>(DynamicSize.relative(1), DynamicSize.relative(1)); + VerticalStack rows = new VerticalStack<>(DynamicSize.fit(), DynamicSize.relative(1)); +// columns.add(new Empty(DynamicSize.fill(), DynamicSize.fill())); +// columns.add(rows); +// columns.add(new Empty(DynamicSize.fill(), DynamicSize.fill())); + + rows.addFiller(); + rows.add(new Button( + DynamicSize.fit(), DynamicSize.fit(), + Component.literal("test"), + (bt) -> { + }, + (bt, pose, x, y) -> { + } + ).centerHorizontal() + ); + rows.addSpacer(8); + rows.add(new Button( + DynamicSize.fit(), DynamicSize.fit(), + Component.literal("Hello World"), + (bt) -> { + }, + (bt, pose, x, y) -> { + } + ).centerHorizontal() + ); + rows.addFiller(); + main.setChild(HorizontalStack.centered(rows)); + main.calculateLayout(); + } + + @Override + public void render(PoseStack poseStack, int i, int j, float f) { + renderDirtBackground(i); + main.render(poseStack); + super.render(poseStack, i, j, f); + } +} diff --git a/src/main/java/org/betterx/bclib/integration/modmenu/ModMenuEntryPoint.java b/src/main/java/org/betterx/bclib/integration/modmenu/ModMenuEntryPoint.java index 7a10c0e1..dd7ca33e 100644 --- a/src/main/java/org/betterx/bclib/integration/modmenu/ModMenuEntryPoint.java +++ b/src/main/java/org/betterx/bclib/integration/modmenu/ModMenuEntryPoint.java @@ -26,6 +26,7 @@ public class ModMenuEntryPoint implements ModMenuApi { @Override public ConfigScreenFactory getModConfigScreenFactory() { + //return (parent) -> new TestScreen(Component.literal("Hello Test")); return (parent) -> new MainScreen(parent); }