From b1df7dc4b278f86d98ddb7e08466fdfffa895d8b Mon Sep 17 00:00:00 2001 From: Ven Date: Tue, 12 Sep 2023 07:25:42 +0100 Subject: [PATCH] Fixed configs not showing up in the GUI, if the field name and the annotation name don't match --- .../lib/internal/impl/config/ParsedConfiguration.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/falsepattern/lib/internal/impl/config/ParsedConfiguration.java b/src/main/java/com/falsepattern/lib/internal/impl/config/ParsedConfiguration.java index eaf418d..e8f7354 100644 --- a/src/main/java/com/falsepattern/lib/internal/impl/config/ParsedConfiguration.java +++ b/src/main/java/com/falsepattern/lib/internal/impl/config/ParsedConfiguration.java @@ -180,7 +180,9 @@ public class ParsedConfiguration { field.setAccessible(true); maxFieldNameLength = Math.max(maxFieldNameLength, field.getName().length()); val fieldClass = field.getType(); - val name = field.getName(); + val name = Optional.ofNullable(field.getAnnotation(Config.Name.class)) + .map(Config.Name::value) + .orElse(field.getName()); AConfigField configField; if (constructors.containsKey(fieldClass)) { fields.put(name, configField = constructors.get(fieldClass).construct(field, rawConfig, category));