From aad5111d45a66d943f0bcbe885ccb28249441d11 Mon Sep 17 00:00:00 2001 From: DeDiamondPro <67508414+DeDiamondPro@users.noreply.github.com> Date: Tue, 26 Apr 2022 20:35:35 +0200 Subject: config system rewrite --- .../polyfrost/oneconfig/gui/elements/ModCard.java | 10 +++--- .../oneconfig/gui/elements/config/ConfigPage.java | 26 ++++++++++++++++ .../gui/elements/config/ConfigSwitch.java | 23 ++++++++++++++ .../gui/elements/config/OConfigButton.java | 36 ---------------------- .../gui/elements/config/OConfigCategory.java | 24 --------------- .../gui/elements/config/OConfigColor.java | 24 --------------- .../oneconfig/gui/elements/config/OConfigHud.java | 22 ------------- .../gui/elements/config/OConfigSelector.java | 26 ---------------- .../gui/elements/config/OConfigSlider.java | 28 ----------------- .../gui/elements/config/OConfigSwitch.java | 22 ------------- .../oneconfig/gui/elements/config/OConfigText.java | 26 ---------------- .../oneconfig/gui/pages/ModConfigPage.java | 32 +++++-------------- .../io/polyfrost/oneconfig/gui/pages/ModsPage.java | 4 +-- .../oneconfig/gui/pages/PerformanceModsPage.java | 4 +-- 14 files changed, 66 insertions(+), 241 deletions(-) create mode 100644 src/main/java/io/polyfrost/oneconfig/gui/elements/config/ConfigPage.java create mode 100644 src/main/java/io/polyfrost/oneconfig/gui/elements/config/ConfigSwitch.java delete mode 100644 src/main/java/io/polyfrost/oneconfig/gui/elements/config/OConfigButton.java delete mode 100644 src/main/java/io/polyfrost/oneconfig/gui/elements/config/OConfigCategory.java delete mode 100644 src/main/java/io/polyfrost/oneconfig/gui/elements/config/OConfigColor.java delete mode 100644 src/main/java/io/polyfrost/oneconfig/gui/elements/config/OConfigHud.java delete mode 100644 src/main/java/io/polyfrost/oneconfig/gui/elements/config/OConfigSelector.java delete mode 100644 src/main/java/io/polyfrost/oneconfig/gui/elements/config/OConfigSlider.java delete mode 100644 src/main/java/io/polyfrost/oneconfig/gui/elements/config/OConfigSwitch.java delete mode 100644 src/main/java/io/polyfrost/oneconfig/gui/elements/config/OConfigText.java (limited to 'src/main/java/io/polyfrost/oneconfig/gui') diff --git a/src/main/java/io/polyfrost/oneconfig/gui/elements/ModCard.java b/src/main/java/io/polyfrost/oneconfig/gui/elements/ModCard.java index 071a311..09c6aa0 100644 --- a/src/main/java/io/polyfrost/oneconfig/gui/elements/ModCard.java +++ b/src/main/java/io/polyfrost/oneconfig/gui/elements/ModCard.java @@ -2,7 +2,7 @@ package io.polyfrost.oneconfig.gui.elements; import io.polyfrost.oneconfig.OneConfig; import io.polyfrost.oneconfig.config.OneConfigConfig; -import io.polyfrost.oneconfig.config.data.ModData; +import io.polyfrost.oneconfig.config.data.Mod; import io.polyfrost.oneconfig.config.data.ModType; import io.polyfrost.oneconfig.gui.OneConfigGui; import io.polyfrost.oneconfig.gui.pages.ModConfigPage; @@ -19,14 +19,14 @@ import org.lwjgl.nanovg.NanoVG; public class ModCard extends BasicElement { private final String iconPath; - private final ModData modData; + private final Mod modData; private final BasicElement favoriteHitbox = new BasicElement(32, 32, -2, true); private boolean active, disabled, favorite; private int colorGray = OneConfigConfig.GRAY_600; private int colorPrimary = OneConfigConfig.BLUE_600; private boolean isHoveredMain = false; - public ModCard(@NotNull ModData mod, @Nullable String iconPath, boolean active, boolean disabled, boolean favorite) { + public ModCard(@NotNull Mod mod, @Nullable String iconPath, boolean active, boolean disabled, boolean favorite) { super(244, 119, false); this.modData = mod; this.iconPath = iconPath; @@ -83,7 +83,7 @@ public class ModCard extends BasicElement { public void onClick() { if (isHoveredMain) { - for (ModData data : OneConfig.loadedMods) { + for (Mod data : OneConfig.loadedMods) { if (data.modType != ModType.OTHER) { if (data.name.equalsIgnoreCase(modData.name)) { OneConfigGui.INSTANCE.openPage(new ModConfigPage(data)); @@ -113,7 +113,7 @@ public class ModCard extends BasicElement { } } - public ModData getModData() { + public Mod getModData() { return modData; } diff --git a/src/main/java/io/polyfrost/oneconfig/gui/elements/config/ConfigPage.java b/src/main/java/io/polyfrost/oneconfig/gui/elements/config/ConfigPage.java new file mode 100644 index 0000000..c761cd7 --- /dev/null +++ b/src/main/java/io/polyfrost/oneconfig/gui/elements/config/ConfigPage.java @@ -0,0 +1,26 @@ +package io.polyfrost.oneconfig.gui.elements.config; + +import io.polyfrost.oneconfig.config.data.OptionPage; +import io.polyfrost.oneconfig.config.interfaces.BasicOption; + +import java.lang.reflect.Field; + +public class ConfigPage extends BasicOption { + public final OptionPage page; + + public ConfigPage(Field field, String name, String description, int size, OptionPage page) { + super(field, name, description, size); + this.page = page; + } + + + @Override + public void draw(long vg, int x, int y, int mouseX, int mouseY) { + + } + + @Override + public int getHeight() { + return 0; + } +} diff --git a/src/main/java/io/polyfrost/oneconfig/gui/elements/config/ConfigSwitch.java b/src/main/java/io/polyfrost/oneconfig/gui/elements/config/ConfigSwitch.java new file mode 100644 index 0000000..3da2480 --- /dev/null +++ b/src/main/java/io/polyfrost/oneconfig/gui/elements/config/ConfigSwitch.java @@ -0,0 +1,23 @@ +package io.polyfrost.oneconfig.gui.elements.config; + +import io.polyfrost.oneconfig.config.interfaces.BasicOption; + +import java.lang.reflect.Field; + +public class ConfigSwitch extends BasicOption { + + public ConfigSwitch(Field field, String name, String description, int size) { + super(field, name, description, size); + } + + + @Override + public void draw(long vg, int x, int y, int mouseX, int mouseY) { + + } + + @Override + public int getHeight() { + return 0; + } +} diff --git a/src/main/java/io/polyfrost/oneconfig/gui/elements/config/OConfigButton.java b/src/main/java/io/polyfrost/oneconfig/gui/elements/config/OConfigButton.java deleted file mode 100644 index a19cb55..0000000 --- a/src/main/java/io/polyfrost/oneconfig/gui/elements/config/OConfigButton.java +++ /dev/null @@ -1,36 +0,0 @@ -package io.polyfrost.oneconfig.gui.elements.config; - -import io.polyfrost.oneconfig.config.OneConfigConfig; -import io.polyfrost.oneconfig.config.interfaces.Option; -import io.polyfrost.oneconfig.gui.elements.BasicElement; -import io.polyfrost.oneconfig.lwjgl.RenderManager; -import io.polyfrost.oneconfig.lwjgl.font.Fonts; - -import java.lang.reflect.Field; - -public class OConfigButton extends Option { - private final String text; - private final BasicElement element; - - public OConfigButton(Field field, String name, String description, String text, int size) { - super(field, name, description, size); - this.text = text; - element = new BasicElement(128, 32, 1, true); - } - - @Override - public int getHeight() { - return 0; - } - - @Override - public void draw(long vg, int x, int y, int mouseX, int mouseY) { - if (size == 0) { - RenderManager.drawString(vg, name, x, y + 16, OneConfigConfig.WHITE_90, 14f, Fonts.INTER_MEDIUM); - element.setWidth((int) RenderManager.getTextWidth(vg, text, 12f) + 80); - element.draw(vg, x + 480 - element.getWidth(), y); - RenderManager.drawString(vg, text, x + element.getWidth() / 2f, y + 16, OneConfigConfig.WHITE, 12f, Fonts.INTER_MEDIUM); - // ??? - } - } -} diff --git a/src/main/java/io/polyfrost/oneconfig/gui/elements/config/OConfigCategory.java b/src/main/java/io/polyfrost/oneconfig/gui/elements/config/OConfigCategory.java deleted file mode 100644 index aa763ef..0000000 --- a/src/main/java/io/polyfrost/oneconfig/gui/elements/config/OConfigCategory.java +++ /dev/null @@ -1,24 +0,0 @@ -package io.polyfrost.oneconfig.gui.elements.config; - -import io.polyfrost.oneconfig.config.interfaces.Option; - -import java.util.List; - -public class OConfigCategory extends Option { - public final List