From 322ddc0efaa322d4ac0d51436df0b376592940a5 Mon Sep 17 00:00:00 2001 From: differenceclouds Date: Thu, 14 Nov 2024 09:41:20 -0500 Subject: [PATCH] Added storageType parameter to FromEnum Perhaps the default value for the parameter should be left off, or set to String, but I don't want to make a breaking change. --- .../Properties/CustomTypes/CustomEnumDefinition.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/DotTiled/Properties/CustomTypes/CustomEnumDefinition.cs b/src/DotTiled/Properties/CustomTypes/CustomEnumDefinition.cs index 72593d9..e2b8bb4 100644 --- a/src/DotTiled/Properties/CustomTypes/CustomEnumDefinition.cs +++ b/src/DotTiled/Properties/CustomTypes/CustomEnumDefinition.cs @@ -52,7 +52,7 @@ public class CustomEnumDefinition : ICustomTypeDefinition /// /// /// - public static CustomEnumDefinition FromEnum() where T : Enum + public static CustomEnumDefinition FromEnum(CustomEnumStorageType storageType = CustomEnumStorageType.Int) where T : Enum { var type = typeof(T); var isFlags = type.GetCustomAttributes(typeof(FlagsAttribute), false).Length != 0; @@ -60,7 +60,7 @@ public class CustomEnumDefinition : ICustomTypeDefinition return new CustomEnumDefinition { Name = type.Name, - StorageType = CustomEnumStorageType.Int, + StorageType = storageType, Values = Enum.GetNames(type).ToList(), ValueAsFlags = isFlags }; @@ -70,7 +70,7 @@ public class CustomEnumDefinition : ICustomTypeDefinition /// Creates a custom enum definition from the specified enum type. /// /// - public static CustomEnumDefinition FromEnum(Type type) + public static CustomEnumDefinition FromEnum(Type type, CustomEnumStorageType storageType = CustomEnumStorageType.Int) { if (!type.IsEnum) throw new ArgumentException("Type must be an enum.", nameof(type)); @@ -80,7 +80,7 @@ public class CustomEnumDefinition : ICustomTypeDefinition return new CustomEnumDefinition { Name = type.Name, - StorageType = CustomEnumStorageType.Int, + StorageType = storageType, Values = Enum.GetNames(type).ToList(), ValueAsFlags = isFlags };