Fixed: Enum configuration default values. (Unable to drag item problem, etc.)

This commit is contained in:
Jindra Petřík
2025-05-13 09:42:44 +02:00
parent 2bf516ca08
commit 4403cf68f6

View File

@@ -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) {