diff options
| author | DeDiamondPro <67508414+DeDiamondPro@users.noreply.github.com> | 2022-06-05 17:43:23 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-06-05 17:43:23 +0200 |
| commit | ab7256dff5d6d37488081ba7a01b36d3ee9ef563 (patch) | |
| tree | 8207341e6c402848cdbe7b2f2297f5f975e0e083 /src/main/java/cc/polyfrost/oneconfig/config/data | |
| parent | a903cfc4d3f76cf3db24749b65156d126fa714e7 (diff) | |
| download | OneConfig-ab7256dff5d6d37488081ba7a01b36d3ee9ef563.tar.gz OneConfig-ab7256dff5d6d37488081ba7a01b36d3ee9ef563.tar.bz2 OneConfig-ab7256dff5d6d37488081ba7a01b36d3ee9ef563.zip | |
refactor (#36)
* refactor
* fix vig compat
* fix nanovg thingy
* e
* finalize
* gui utils package thingy
Diffstat (limited to 'src/main/java/cc/polyfrost/oneconfig/config/data')
4 files changed, 3 insertions, 150 deletions
diff --git a/src/main/java/cc/polyfrost/oneconfig/config/data/Mod.java b/src/main/java/cc/polyfrost/oneconfig/config/data/Mod.java index 241dca7..090d1f8 100644 --- a/src/main/java/cc/polyfrost/oneconfig/config/data/Mod.java +++ b/src/main/java/cc/polyfrost/oneconfig/config/data/Mod.java @@ -1,7 +1,8 @@ package cc.polyfrost.oneconfig.config.data; -import cc.polyfrost.oneconfig.config.interfaces.Config; -import cc.polyfrost.oneconfig.config.migration.Migrator; +import cc.polyfrost.oneconfig.config.Config; +import cc.polyfrost.oneconfig.config.elements.OptionPage; +import cc.polyfrost.oneconfig.config.migration.vigilance.Migrator; import org.jetbrains.annotations.Nullable; public class Mod { diff --git a/src/main/java/cc/polyfrost/oneconfig/config/data/OptionCategory.java b/src/main/java/cc/polyfrost/oneconfig/config/data/OptionCategory.java deleted file mode 100644 index 76b2b34..0000000 --- a/src/main/java/cc/polyfrost/oneconfig/config/data/OptionCategory.java +++ /dev/null @@ -1,7 +0,0 @@ -package cc.polyfrost.oneconfig.config.data; - -import java.util.ArrayList; - -public class OptionCategory { - public final ArrayList<OptionSubcategory> subcategories = new ArrayList<>(); -} diff --git a/src/main/java/cc/polyfrost/oneconfig/config/data/OptionPage.java b/src/main/java/cc/polyfrost/oneconfig/config/data/OptionPage.java deleted file mode 100644 index 32a07b9..0000000 --- a/src/main/java/cc/polyfrost/oneconfig/config/data/OptionPage.java +++ /dev/null @@ -1,19 +0,0 @@ -package cc.polyfrost.oneconfig.config.data; - -import java.util.LinkedHashMap; - -public class OptionPage { - public final String name; - public final Mod mod; - /** - * Depth 1 = categories - * Depth 2 = subcategories - * Depth 3 = list of options - */ - public final LinkedHashMap<String, OptionCategory> categories = new LinkedHashMap<>(); - - public OptionPage(String name, Mod mod) { - this.name = name; - this.mod = mod; - } -} diff --git a/src/main/java/cc/polyfrost/oneconfig/config/data/OptionSubcategory.java b/src/main/java/cc/polyfrost/oneconfig/config/data/OptionSubcategory.java deleted file mode 100644 index e69e077..0000000 --- a/src/main/java/cc/polyfrost/oneconfig/config/data/OptionSubcategory.java +++ /dev/null @@ -1,122 +0,0 @@ -package cc.polyfrost.oneconfig.config.data; - -import cc.polyfrost.oneconfig.config.OneConfigConfig; -import cc.polyfrost.oneconfig.config.interfaces.BasicOption; -import cc.polyfrost.oneconfig.gui.OneConfigGui; -import cc.polyfrost.oneconfig.gui.elements.config.ConfigPageButton; -import cc.polyfrost.oneconfig.lwjgl.RenderManager; -import cc.polyfrost.oneconfig.lwjgl.font.Fonts; - -import java.util.ArrayList; - -public class OptionSubcategory { - private final String name; - public ArrayList<BasicOption> options = new ArrayList<>(); - public ArrayList<ConfigPageButton> topButtons = new ArrayList<>(); - public ArrayList<ConfigPageButton> bottomButtons = new ArrayList<>(); - private ArrayList<BasicOption> filteredOptions = new ArrayList<>(); - private int drawLastY; - - public OptionSubcategory(String name) { - this.name = name; - } - - public int draw(long vg, int x, int y) { - String filter = OneConfigGui.INSTANCE == null ? "" : OneConfigGui.INSTANCE.getSearchValue().toLowerCase().trim(); - filteredOptions = new ArrayList<>(options); - ArrayList<ConfigPageButton> filteredTop = new ArrayList<>(topButtons); - ArrayList<ConfigPageButton> filteredBottom = new ArrayList<>(bottomButtons); - if (!filter.equals("") && !name.toLowerCase().contains(filter)) { - filteredOptions.clear(); - filteredTop.clear(); - filteredBottom.clear(); - for (BasicOption option : options) { - if (option.getName().toLowerCase().contains(filter)) filteredOptions.add(option); - } - for (ConfigPageButton page : topButtons) { - if (page.getName().toLowerCase().contains(filter) || page.description.toLowerCase().contains(filter)) - filteredTop.add(page); - } - for (ConfigPageButton page : bottomButtons) { - if (page.getName().toLowerCase().contains(filter) || page.description.toLowerCase().contains(filter)) - filteredBottom.add(page); - } - } - if (filteredOptions.size() == 0 && filteredTop.size() == 0 && filteredBottom.size() == 0) return 0; - int optionY = y; - if (!name.equals("")) { - RenderManager.drawText(vg, name, x, y + 12, OneConfigConfig.WHITE_90, 24, Fonts.MEDIUM); - optionY += 36; - } - - for (ConfigPageButton page : filteredTop) { - page.draw(vg, x, optionY); - optionY += page.getHeight() + 16; - } - - if (filteredOptions.size() > 0) { - int backgroundSize = 16; - for (int i = 0; i < filteredOptions.size(); i++) { - BasicOption option = filteredOptions.get(i); - if (i + 1 < filteredOptions.size()) { - BasicOption nextOption = filteredOptions.get(i + 1); - if (option.size == 1 && option.hasHalfSize() && nextOption.size == 1 && nextOption.hasHalfSize()) { - backgroundSize += Math.max(option.getHeight(), nextOption.getHeight()) + 16; - i++; - continue; - } - } - backgroundSize += option.getHeight() + 16; - } - RenderManager.drawRoundedRect(vg, x - 16, optionY, 1024, backgroundSize, OneConfigConfig.GRAY_900, 20); - optionY += 16; - } - - drawLastY = optionY; - if (filteredOptions.size() > 0) { - for (int i = 0; i < filteredOptions.size(); i++) { - BasicOption option = filteredOptions.get(i); - option.draw(vg, x, optionY); - if (i + 1 < filteredOptions.size()) { - BasicOption nextOption = filteredOptions.get(i + 1); - if (option.size == 1 && option.hasHalfSize() && nextOption.size == 1 && nextOption.hasHalfSize()) { - nextOption.draw(vg, x + 512, optionY); - optionY += Math.max(option.getHeight(), nextOption.getHeight()) + 16; - i++; - continue; - } - } - optionY += option.getHeight() + 16; - } - optionY += 16; - } - - for (ConfigPageButton page : filteredBottom) { - page.draw(vg, x, optionY); - optionY += page.getHeight() + 16; - } - - return optionY - y; - } - - public void drawLast(long vg, int x) { - for (int i = 0; i < filteredOptions.size(); i++) { - BasicOption option = filteredOptions.get(i); - option.drawLast(vg, x, drawLastY); - if (i + 1 < filteredOptions.size()) { - BasicOption nextOption = filteredOptions.get(i + 1); - if (option.size == 1 && option.hasHalfSize() && nextOption.size == 1 && nextOption.hasHalfSize()) { - nextOption.drawLast(vg, x + 512, drawLastY); - drawLastY += Math.max(option.getHeight(), nextOption.getHeight()) + 16; - i++; - continue; - } - } - drawLastY += option.getHeight() + 16; - } - } - - public String getName() { - return name; - } -} |
