diff options
author | DeDiamondPro <67508414+DeDiamondPro@users.noreply.github.com> | 2022-05-20 20:54:33 +0200 |
---|---|---|
committer | DeDiamondPro <67508414+DeDiamondPro@users.noreply.github.com> | 2022-05-20 20:54:33 +0200 |
commit | 13965c418bb9429d2ff92fbcbb29fad73e8a120f (patch) | |
tree | ab744b0afa6f43de0a7a04da3bda870099fee589 /src/main/java/cc/polyfrost/oneconfig/gui/elements/config | |
parent | 85a8ae69736f93a1a972b696fd9d2fba5d435884 (diff) | |
download | OneConfig-13965c418bb9429d2ff92fbcbb29fad73e8a120f.tar.gz OneConfig-13965c418bb9429d2ff92fbcbb29fad73e8a120f.tar.bz2 OneConfig-13965c418bb9429d2ff92fbcbb29fad73e8a120f.zip |
some small stuff and start on multi line textbox
Diffstat (limited to 'src/main/java/cc/polyfrost/oneconfig/gui/elements/config')
-rw-r--r-- | src/main/java/cc/polyfrost/oneconfig/gui/elements/config/ConfigDropdown.java | 38 | ||||
-rw-r--r-- | src/main/java/cc/polyfrost/oneconfig/gui/elements/config/ConfigTextBox.java | 19 |
2 files changed, 30 insertions, 27 deletions
diff --git a/src/main/java/cc/polyfrost/oneconfig/gui/elements/config/ConfigDropdown.java b/src/main/java/cc/polyfrost/oneconfig/gui/elements/config/ConfigDropdown.java index c01228d..f6041c9 100644 --- a/src/main/java/cc/polyfrost/oneconfig/gui/elements/config/ConfigDropdown.java +++ b/src/main/java/cc/polyfrost/oneconfig/gui/elements/config/ConfigDropdown.java @@ -35,8 +35,8 @@ public class ConfigDropdown extends BasicOption { // TODO: remove dividers and f else hovered = InputUtils.isAreaHovered(x + 352, y, 640, 32) && isEnabled(); if (hovered && InputUtils.isClicked() || opened && InputUtils.isClicked(true) && - (size == 1 && !InputUtils.isAreaHovered(x + 224, y + 40, 256, options.length * 36) || - size == 2 && !InputUtils.isAreaHovered(x + 352, y + 40, 640, options.length * 36))) { + (size == 1 && !InputUtils.isAreaHovered(x + 224, y + 40, 256, options.length * 32) || + size == 2 && !InputUtils.isAreaHovered(x + 352, y + 40, 640, options.length * 32))) { opened = !opened; InputUtils.blockClicks(opened); } @@ -88,16 +88,16 @@ public class ConfigDropdown extends BasicOption { // TODO: remove dividers and f RenderManager.drawSvg(vg, SVGs.DROPDOWN_LIST, x + 452, y + 4, 24, 24); NanoVG.nvgGlobalAlpha(vg, 1f); - RenderManager.drawRoundedRect(vg, x + 224, y + 48, 256, options.length * 36, OneConfigConfig.GRAY_700, 12); - RenderManager.drawHollowRoundRect(vg, x + 223, y + 47, 258, options.length * 36 + 2, new Color(204, 204, 204, 77).getRGB(), 11, 1); - int optionY = y + 48; + RenderManager.drawRoundedRect(vg, x + 224, y + 48, 256, options.length * 32 + 8, OneConfigConfig.GRAY_700, 12); + RenderManager.drawHollowRoundRect(vg, x + 223, y + 47, 258, options.length * 32 + 10, new Color(204, 204, 204, 77).getRGB(), 12, 1); + int optionY = y + 52; for (String option : options) { int color = OneConfigConfig.WHITE_80; - boolean optionHovered = InputUtils.isAreaHovered(x + 224, optionY, 252, 36); + boolean optionHovered = InputUtils.isAreaHovered(x + 224, optionY, 252, 32); if (optionHovered && Mouse.isButtonDown(0)) { - RenderManager.drawRoundedRect(vg, x + 228, optionY + 4, 248, 28, OneConfigConfig.BLUE_700_80, 8); + RenderManager.drawRoundedRect(vg, x + 228, optionY + 2, 248, 28, OneConfigConfig.BLUE_700_80, 8); } else if (optionHovered) { - RenderManager.drawRoundedRect(vg, x + 228, optionY + 4, 248, 28, OneConfigConfig.BLUE_700, 8); + RenderManager.drawRoundedRect(vg, x + 228, optionY + 2, 248, 28, OneConfigConfig.BLUE_700, 8); color = OneConfigConfig.WHITE; } if (optionHovered && InputUtils.isClicked(true)) { @@ -109,10 +109,8 @@ public class ConfigDropdown extends BasicOption { // TODO: remove dividers and f InputUtils.blockClicks(false); } - RenderManager.drawString(vg, option, x + 240, optionY + 20, color, 14, Fonts.MEDIUM); - if (!options[options.length - 1].equals(option)) - RenderManager.drawLine(vg, x + 232, optionY + 36, x + 472, optionY + 36, 1, new Color(204, 204, 204, 77).getRGB()); - optionY += 36; + RenderManager.drawString(vg, option, x + 240, optionY + 18, color, 14, Fonts.MEDIUM); + optionY += 32; } } else { RenderManager.drawRoundedRect(vg, x + 352, y, 640, 32, backgroundColor, 12); @@ -122,22 +120,20 @@ public class ConfigDropdown extends BasicOption { // TODO: remove dividers and f RenderManager.drawSvg(vg, SVGs.DROPDOWN_LIST, x + 964, y + 4, 24, 24); NanoVG.nvgGlobalAlpha(vg, 1f); - RenderManager.drawRoundedRect(vg, x + 352, y + 48, 640, options.length * 36, OneConfigConfig.GRAY_700, 12); - RenderManager.drawHollowRoundRect(vg, x + 351, y + 47, 642, options.length * 36 + 2, new Color(204, 204, 204, 77).getRGB(), 10, 1); - int optionY = y + 48; + RenderManager.drawRoundedRect(vg, x + 352, y + 48, 640, options.length * 32 + 8, OneConfigConfig.GRAY_700, 12); + RenderManager.drawHollowRoundRect(vg, x + 351, y + 47, 642, options.length * 32 + 10, new Color(204, 204, 204, 77).getRGB(), 12, 1); + int optionY = y + 52; for (String option : options) { int color = OneConfigConfig.WHITE_80; boolean optionHovered = InputUtils.isAreaHovered(x + 352, optionY, 640, 36); if (optionHovered && Mouse.isButtonDown(0)) { - RenderManager.drawRoundedRect(vg, x + 356, optionY + 4, 632, 28, OneConfigConfig.BLUE_700_80, 8); + RenderManager.drawRoundedRect(vg, x + 356, optionY + 2, 632, 28, OneConfigConfig.BLUE_700_80, 8); } else if (optionHovered) { - RenderManager.drawRoundedRect(vg, x + 356, optionY + 4, 632, 28, OneConfigConfig.BLUE_700, 8); + RenderManager.drawRoundedRect(vg, x + 356, optionY + 2, 632, 28, OneConfigConfig.BLUE_700, 8); color = OneConfigConfig.WHITE; } - RenderManager.drawString(vg, option, x + 368, optionY + 20, color, 14, Fonts.MEDIUM); - if (!options[options.length - 1].equals(option)) - RenderManager.drawLine(vg, x + 360, optionY + 36, x + 984, optionY + 36, 1, new Color(204, 204, 204, 77).getRGB()); + RenderManager.drawString(vg, option, x + 368, optionY + 18, color, 14, Fonts.MEDIUM); if (optionHovered && InputUtils.isClicked(true)) { try { @@ -147,7 +143,7 @@ public class ConfigDropdown extends BasicOption { // TODO: remove dividers and f opened = false; InputUtils.blockClicks(false); } - optionY += 36; + optionY += 32; } } NanoVG.nvgGlobalAlpha(vg, 1f); diff --git a/src/main/java/cc/polyfrost/oneconfig/gui/elements/config/ConfigTextBox.java b/src/main/java/cc/polyfrost/oneconfig/gui/elements/config/ConfigTextBox.java index d420f01..dbe0482 100644 --- a/src/main/java/cc/polyfrost/oneconfig/gui/elements/config/ConfigTextBox.java +++ b/src/main/java/cc/polyfrost/oneconfig/gui/elements/config/ConfigTextBox.java @@ -2,12 +2,12 @@ package cc.polyfrost.oneconfig.gui.elements.config; import cc.polyfrost.oneconfig.config.OneConfigConfig; import cc.polyfrost.oneconfig.config.interfaces.BasicOption; +import cc.polyfrost.oneconfig.gui.elements.text.TextInputField; import cc.polyfrost.oneconfig.lwjgl.RenderManager; import cc.polyfrost.oneconfig.lwjgl.font.Fonts; -import cc.polyfrost.oneconfig.lwjgl.image.Images; import cc.polyfrost.oneconfig.lwjgl.image.SVGs; import cc.polyfrost.oneconfig.utils.InputUtils; -import cc.polyfrost.oneconfig.gui.elements.text.TextInputField; +import org.lwjgl.input.Mouse; import org.lwjgl.nanovg.NanoVG; import java.awt.*; @@ -37,11 +37,18 @@ public class ConfigTextBox extends BasicOption { } catch (IllegalAccessException ignored) { } + if (multiLine && textField.getLines() > 2) textField.setHeight(64 + 24 * (textField.getLines() - 2)); + else if (multiLine) textField.setHeight(64); textField.draw(vg, x + (size == 1 && hasHalfSize() ? 224 : 352), y); - if (secure) - RenderManager.drawSvg(vg, SVGs.EYE, x + 967, y + 7, 18, 18, new Color(196, 196, 196).getRGB()); - if (secure && InputUtils.isAreaClicked(x + 967, y + 7, 18, 18)) textField.setPassword(!textField.getPassword()); + if (secure) { + SVGs icon = textField.getPassword() ? SVGs.EYE_OFF : SVGs.EYE; + boolean hovered = InputUtils.isAreaHovered(x + 967, y + 7, 18, 18) && isEnabled(); + int color = hovered ? OneConfigConfig.WHITE : OneConfigConfig.WHITE_80; + if (hovered && InputUtils.isClicked()) textField.setPassword(!textField.getPassword()); + if (hovered && Mouse.isButtonDown(0)) NanoVG.nvgGlobalAlpha(vg, 0.5f); + RenderManager.drawSvg(vg, icon, x + 967, y + 7, 18, 18, color); + } NanoVG.nvgGlobalAlpha(vg, 1f); } @@ -57,7 +64,7 @@ public class ConfigTextBox extends BasicOption { @Override public int getHeight() { - return multiLine ? 64 : 32; + return multiLine ? textField.getHeight() : 32; } @Override |