From 4403cf68f697ca1cce475f59a738829ffa6c7fcc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jindra=20Pet=C5=99=C3=ADk?= Date: Tue, 13 May 2025 09:42:44 +0200 Subject: [PATCH] Fixed: Enum configuration default values. (Unable to drag item problem, etc.) --- .../decompiler/flash/configuration/Configuration.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/configuration/Configuration.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/configuration/Configuration.java index 45b7d7215..5df8c633c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/configuration/Configuration.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/configuration/Configuration.java @@ -1503,7 +1503,8 @@ public final class Configuration { * @param field Field * @return Default value */ - public static Object getDefaultValue(Field field) { + @SuppressWarnings("unchecked") + public static Object getDefaultValue(Field field) { Object defaultValue = null; ConfigurationDefaultBoolean aBool = field.getAnnotation(ConfigurationDefaultBoolean.class); if (aBool != null) { @@ -1516,6 +1517,11 @@ public final class Configuration { ConfigurationDefaultString aString = field.getAnnotation(ConfigurationDefaultString.class); if (aString != null) { defaultValue = aString.value(); + + Class type = ConfigurationItem.getConfigurationFieldType(field); + if (type.isEnum()) { + return Enum.valueOf(type.asSubclass(Enum.class), (String) defaultValue); + } } ConfigurationDefaultDouble aDouble = field.getAnnotation(ConfigurationDefaultDouble.class); if (aDouble != null) {