From f0aac9cac78fc14e2991741061c67b622c039f37 Mon Sep 17 00:00:00 2001 From: DeDiamondPro <67508414+DeDiamondPro@users.noreply.github.com> Date: Tue, 10 May 2022 17:20:24 +0200 Subject: new category system --- .../cc/polyfrost/oneconfig/gui/pages/ModConfigPage.java | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'src/main/java/cc/polyfrost/oneconfig/gui/pages') diff --git a/src/main/java/cc/polyfrost/oneconfig/gui/pages/ModConfigPage.java b/src/main/java/cc/polyfrost/oneconfig/gui/pages/ModConfigPage.java index 790d0e4..bdc7242 100644 --- a/src/main/java/cc/polyfrost/oneconfig/gui/pages/ModConfigPage.java +++ b/src/main/java/cc/polyfrost/oneconfig/gui/pages/ModConfigPage.java @@ -2,6 +2,7 @@ package cc.polyfrost.oneconfig.gui.pages; import cc.polyfrost.oneconfig.config.OneConfigConfig; import cc.polyfrost.oneconfig.config.data.OptionPage; +import cc.polyfrost.oneconfig.config.data.OptionSubcategory; import cc.polyfrost.oneconfig.config.interfaces.BasicOption; import cc.polyfrost.oneconfig.gui.OneConfigGui; import cc.polyfrost.oneconfig.gui.elements.BasicButton; @@ -38,7 +39,7 @@ public class ModConfigPage extends Page { @Override public void draw(long vg, int x, int y) { - if (page.categories.size() == 0) return; + /* String filter = OneConfigGui.INSTANCE == null ? "" : OneConfigGui.INSTANCE.getSearchValue().toLowerCase().trim(); LinkedHashMap> filteredSubcategories = new LinkedHashMap<>(page.categories.get(selectedCategory).subcategories); if (!filter.equals("")) { @@ -141,7 +142,14 @@ public class ModConfigPage extends Page { optionLastY += option.getHeight() + 16; } } + }*/ + + if (page.categories.size() == 0) return; + int optionY = y + (page.categories.size() == 1 ? 16 : 64); + for (OptionSubcategory subCategory : page.categories.get(selectedCategory).subcategories) { + optionY += subCategory.draw(vg, x + 30, optionY); } + totalSize = optionY - y; } @Override @@ -166,9 +174,9 @@ public class ModConfigPage extends Page { @Override public void keyTyped(char key, int keyCode) { if (page.categories.size() == 0) return; - for (String subCategory : page.categories.get(selectedCategory).subcategories.keySet()) { - for (int i = 0; i < page.categories.get(selectedCategory).subcategories.get(subCategory).size(); i++) { - page.categories.get(selectedCategory).subcategories.get(subCategory).get(i).keyTyped(key, keyCode); + for (OptionSubcategory subCategory : page.categories.get(selectedCategory).subcategories) { + for (BasicOption option : subCategory.options) { + option.keyTyped(key, keyCode); } } } -- cgit From e299255d82e69e461893ce8ff0ec945c253d945f Mon Sep 17 00:00:00 2001 From: DeDiamondPro <67508414+DeDiamondPro@users.noreply.github.com> Date: Tue, 10 May 2022 17:48:05 +0200 Subject: button --- .../oneconfig/gui/pages/ModConfigPage.java | 105 --------------------- 1 file changed, 105 deletions(-) (limited to 'src/main/java/cc/polyfrost/oneconfig/gui/pages') diff --git a/src/main/java/cc/polyfrost/oneconfig/gui/pages/ModConfigPage.java b/src/main/java/cc/polyfrost/oneconfig/gui/pages/ModConfigPage.java index bdc7242..797f573 100644 --- a/src/main/java/cc/polyfrost/oneconfig/gui/pages/ModConfigPage.java +++ b/src/main/java/cc/polyfrost/oneconfig/gui/pages/ModConfigPage.java @@ -39,111 +39,6 @@ public class ModConfigPage extends Page { @Override public void draw(long vg, int x, int y) { - /* - String filter = OneConfigGui.INSTANCE == null ? "" : OneConfigGui.INSTANCE.getSearchValue().toLowerCase().trim(); - LinkedHashMap> filteredSubcategories = new LinkedHashMap<>(page.categories.get(selectedCategory).subcategories); - if (!filter.equals("")) { - filteredSubcategories.clear(); - for (String subCategory : page.categories.get(selectedCategory).subcategories.keySet()) { - if (subCategory.toLowerCase().contains(filter)) { - filteredSubcategories.put(subCategory, page.categories.get(selectedCategory).subcategories.get(subCategory)); - continue; - } - for (BasicOption option : page.categories.get(selectedCategory).subcategories.get(subCategory)) { - if (!option.getName().toLowerCase().contains(filter)) continue; - if (!filteredSubcategories.containsKey(subCategory)) - filteredSubcategories.put(subCategory, new ArrayList<>()); - filteredSubcategories.get(subCategory).add(option); - } - } - } - int optionX = x + 30; - int optionY = y + (page.categories.size() == 1 ? 16 : 64); - - // Top page buttons - for (ConfigPageButton page : page.categories.get(selectedCategory).topPages) { - if (!page.getName().toLowerCase().contains(filter) && !page.description.toLowerCase().contains(filter)) - continue; - page.draw(vg, optionX, optionY); - optionY += page.getHeight() + 16; - } - - // Background - if (filteredSubcategories.keySet().size() > 0) { - int backgroundSize = 16; - for (String subCategory : filteredSubcategories.keySet()) { - backgroundSize += 48; - for (int i = 0; i < filteredSubcategories.get(subCategory).size(); i++) { - BasicOption option = filteredSubcategories.get(subCategory).get(i); - if (i + 1 < filteredSubcategories.get(subCategory).size()) { - BasicOption nextOption = filteredSubcategories.get(subCategory).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 + 14, optionY, 1024, backgroundSize, OneConfigConfig.GRAY_900, 20); - } - - // draw options - int optionLastY = optionY + 16; - if (filteredSubcategories.keySet().size() > 0) { - optionY += 16; - for (String subCategory : filteredSubcategories.keySet()) { - RenderManager.drawString(vg, subCategory, optionX, optionY + 16, OneConfigConfig.WHITE_90, 24f, Fonts.MEDIUM); - optionY += 48; - for (int i = 0; i < filteredSubcategories.get(subCategory).size(); i++) { - BasicOption option = filteredSubcategories.get(subCategory).get(i); - option.draw(vg, optionX, optionY); - if (i + 1 < filteredSubcategories.get(subCategory).size()) { - BasicOption nextOption = filteredSubcategories.get(subCategory).get(i + 1); - if (option.size == 1 && option.hasHalfSize() && nextOption.size == 1 && nextOption.hasHalfSize()) { - nextOption.draw(vg, optionX + 512, optionY); - optionY += Math.max(option.getHeight(), nextOption.getHeight()) + 16; - i++; - continue; - } - } - optionY += option.getHeight() + 16; - } - } - optionY += 16; - } - - // Bottom page buttons - for (ConfigPageButton page : page.categories.get(selectedCategory).bottomPages) { - if (!page.getName().toLowerCase().contains(filter) && !page.description.toLowerCase().contains(filter)) - continue; - page.draw(vg, optionX, optionY); - optionY += page.getHeight() + 16; - } - totalSize = optionY - y; - - // Draw last options - if (filteredSubcategories.keySet().size() > 0) { - for (String subCategory : filteredSubcategories.keySet()) { - optionLastY += 48; - for (int i = 0; i < filteredSubcategories.get(subCategory).size(); i++) { - BasicOption option = filteredSubcategories.get(subCategory).get(i); - option.drawLast(vg, optionX, optionLastY); - if (i + 1 < filteredSubcategories.get(subCategory).size()) { - BasicOption nextOption = filteredSubcategories.get(subCategory).get(i + 1); - if (option.size == 1 && option.hasHalfSize() && nextOption.size == 1 && nextOption.hasHalfSize()) { - nextOption.drawLast(vg, optionX + 512, optionLastY); - optionLastY += Math.max(option.getHeight(), nextOption.getHeight()) + 16; - i++; - continue; - } - } - optionLastY += option.getHeight() + 16; - } - } - }*/ - if (page.categories.size() == 0) return; int optionY = y + (page.categories.size() == 1 ? 16 : 64); for (OptionSubcategory subCategory : page.categories.get(selectedCategory).subcategories) { -- cgit