From 558b120e2d4924a84860c3f84415ab573040a293 Mon Sep 17 00:00:00 2001 From: isXander Date: Sat, 12 Nov 2022 11:05:16 +0000 Subject: REAL config library --- .../dev/isxander/yacl/test/config/ConfigData.java | 27 ++++++++++++++++++++++ .../dev/isxander/yacl/test/config/Entrypoint.java | 19 +++++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 src/testmod/java/dev/isxander/yacl/test/config/ConfigData.java create mode 100644 src/testmod/java/dev/isxander/yacl/test/config/Entrypoint.java (limited to 'src/testmod/java/dev/isxander/yacl/test/config') diff --git a/src/testmod/java/dev/isxander/yacl/test/config/ConfigData.java b/src/testmod/java/dev/isxander/yacl/test/config/ConfigData.java new file mode 100644 index 0000000..d0d47b1 --- /dev/null +++ b/src/testmod/java/dev/isxander/yacl/test/config/ConfigData.java @@ -0,0 +1,27 @@ +package dev.isxander.yacl.test.config; + +import java.awt.*; + +public class ConfigData { + public boolean booleanToggle = false; + public boolean customBooleanToggle = false; + public boolean tickbox = false; + public int intSlider = 0; + public double doubleSlider = 0; + public float floatSlider = 0; + public long longSlider = 0; + public String textField = "Hello"; + public Color colorOption = Color.red; + public Alphabet enumOption = Alphabet.A; + + public boolean groupTestRoot = false; + public boolean groupTestFirstGroup = false; + public boolean groupTestFirstGroup2 = false; + public boolean groupTestSecondGroup = false; + + public int scrollingSlider = 0; + + public enum Alphabet { + A, B, C + } +} diff --git a/src/testmod/java/dev/isxander/yacl/test/config/Entrypoint.java b/src/testmod/java/dev/isxander/yacl/test/config/Entrypoint.java new file mode 100644 index 0000000..7875700 --- /dev/null +++ b/src/testmod/java/dev/isxander/yacl/test/config/Entrypoint.java @@ -0,0 +1,19 @@ +package dev.isxander.yacl.test.config; + +import com.google.gson.Gson; +import dev.isxander.yacl.config.ConfigInstance; +import dev.isxander.yacl.config.GsonConfigInstance; +import dev.isxander.yacl.config.YACLConfigManager; +import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.loader.api.FabricLoader; + +public class Entrypoint implements ClientModInitializer { + @Override + public void onInitializeClient() { + YACLConfigManager.register(new GsonConfigInstance<>(ConfigData.class, FabricLoader.getInstance().getConfigDir().resolve("yacl-test.json"), new Gson())); + } + + public static ConfigInstance getConfig() { + return YACLConfigManager.getConfigInstance(ConfigData.class); + } +} -- cgit