diff --git a/DelauneyTriangulation/Models/Converters.cs b/DelauneyTriangulation/Models/Converters.cs new file mode 100644 index 0000000..f4c7338 --- /dev/null +++ b/DelauneyTriangulation/Models/Converters.cs @@ -0,0 +1,25 @@ +using System; +using System.Globalization; +using Avalonia; +using Avalonia.Data.Converters; + +namespace DelauneyTriangulation.Models; + +public class Converters +{ + +} + +public sealed class EmptyStringIntConverter : IValueConverter +{ + public static readonly EmptyStringIntConverter Instance = new(); + + public object? Convert(object? value, Type targetType, object? parameter, CultureInfo culture) => value?.ToString(); + + public object? ConvertBack(object? value, Type targetType, object? parameter, CultureInfo culture) + { + var s = value as string; + if (string.IsNullOrWhiteSpace(s)) return 0; + return int.TryParse(s, NumberStyles.Integer, culture, out var n) ? n : 0; + } +} \ No newline at end of file