diff --git a/src/Moryx.ControlSystem/VisualInstructions/EnumInstructionResult.cs b/src/Moryx.ControlSystem/VisualInstructions/EnumInstructionResult.cs index 605f6c7..c8627a6 100644 --- a/src/Moryx.ControlSystem/VisualInstructions/EnumInstructionResult.cs +++ b/src/Moryx.ControlSystem/VisualInstructions/EnumInstructionResult.cs @@ -5,6 +5,7 @@ using System; using System.Collections.Generic; using System.Linq; +using System.Globalization; namespace Moryx.ControlSystem.VisualInstructions { @@ -24,15 +25,28 @@ public static IReadOnlyList PossibleResults(Type resultEnum, params stri /// /// Determine possible string buttons from enum result /// + [Obsolete("Use the 'InstructionResults' method instead!'")] public static IReadOnlyList PossibleInstructionResults(Type resultEnum, params string[] exceptions) { return ParseEnum(resultEnum, exceptions).Select(pair => new InstructionResult { - Key = pair.Value.ToString("D"), + Key = pair.Value.ToString("D", CultureInfo.InvariantCulture), DisplayValue = pair.Key }).ToList(); } + /// + /// Determine possible string buttons from enum result + /// + public static InstructionResult[] InstructionResults(Type resultEnum, params string[] exceptions) + { + return ParseEnum(resultEnum, exceptions).Select(pair => new InstructionResult + { + Key = pair.Value.ToString("D", CultureInfo.InvariantCulture), + DisplayValue = pair.Key + }).ToArray(); + } + /// /// Parse the given result back to an enum value /// @@ -46,7 +60,7 @@ public static int ResultToEnumValue(Type resultEnum, string result) /// public static int ResultToEnumValue(Type resultEnum, InstructionResult result) { - return int.Parse(result.Key); + return int.Parse(result.Key, CultureInfo.InvariantCulture); } /// @@ -79,7 +93,7 @@ public static TEnum ResultToGenericEnumValue(string result) public static TEnum ResultToGenericEnumValue(InstructionResult result) where TEnum : Enum { - var numeric = int.Parse(result.Key); + var numeric = int.Parse(result.Key, CultureInfo.InvariantCulture); return (TEnum)Enum.ToObject(typeof(TEnum), numeric); }