aboutsummaryrefslogtreecommitdiff
path: root/test-common/src/main/java/dev/isxander/yacl3/test/GuiTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'test-common/src/main/java/dev/isxander/yacl3/test/GuiTest.java')
-rw-r--r--test-common/src/main/java/dev/isxander/yacl3/test/GuiTest.java41
1 files changed, 37 insertions, 4 deletions
diff --git a/test-common/src/main/java/dev/isxander/yacl3/test/GuiTest.java b/test-common/src/main/java/dev/isxander/yacl3/test/GuiTest.java
index 71b57f0..c8981d4 100644
--- a/test-common/src/main/java/dev/isxander/yacl3/test/GuiTest.java
+++ b/test-common/src/main/java/dev/isxander/yacl3/test/GuiTest.java
@@ -1,10 +1,7 @@
package dev.isxander.yacl3.test;
import dev.isxander.yacl3.api.*;
-import dev.isxander.yacl3.api.controller.BooleanControllerBuilder;
-import dev.isxander.yacl3.api.controller.IntegerSliderControllerBuilder;
-import dev.isxander.yacl3.api.controller.StringControllerBuilder;
-import dev.isxander.yacl3.api.controller.TickBoxControllerBuilder;
+import dev.isxander.yacl3.api.controller.*;
import dev.isxander.yacl3.gui.RequireRestartScreen;
import dev.isxander.yacl3.gui.controllers.*;
import dev.isxander.yacl3.gui.controllers.cycling.EnumController;
@@ -26,6 +23,7 @@ import net.minecraft.network.chat.ClickEvent;
import net.minecraft.network.chat.Component;
import net.minecraft.network.chat.HoverEvent;
import net.minecraft.resources.ResourceLocation;
+import net.minecraft.world.item.Item;
import java.awt.Color;
import java.nio.file.Path;
@@ -237,6 +235,41 @@ public class GuiTest {
.build())
.build())
.group(OptionGroup.createBuilder()
+ .name(Component.literal("Dropdown Controllers"))
+ .option(Option.<String>createBuilder()
+ .name(Component.literal("String Dropdown"))
+ .binding(
+ defaults.stringOptions,
+ () -> config.stringOptions,
+ (value) -> config.stringOptions = value
+ )
+ .controller(opt -> DropdownStringControllerBuilder.create(opt)
+ .values("Apple", "Banana", "Cherry", "Date")
+ )
+ .build())
+ .option(Option.<String>createBuilder()
+ .name(Component.literal("String suggestions"))
+ .binding(
+ defaults.stringSuggestions,
+ () -> config.stringSuggestions,
+ (value) -> config.stringSuggestions = value
+ )
+ .controller(opt -> DropdownStringControllerBuilder.create(opt)
+ .values("Apple", "Banana", "Cherry", "Date")
+ .allowAnyValue(true)
+ )
+ .build())
+ .option(Option.<Item>createBuilder()
+ .name(Component.literal("Item Dropdown"))
+ .binding(
+ defaults.item,
+ () -> config.item,
+ (value) -> config.item = value
+ )
+ .controller(ItemControllerBuilder::create)
+ .build())
+ .build())
+ .group(OptionGroup.createBuilder()
.name(Component.literal("Options that aren't really options"))
.option(ButtonOption.createBuilder()
.name(Component.literal("Button \"Option\""))