using System;
using Avalonia.Data.Converters;
namespace DesertPaintCodex.Converters
{
public class EnumBooleanConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
if (value is not Enum en) return false;
string? parameterString = parameter.ToString();
if (parameterString == null) return false;
object parameterValue = Enum.Parse(value.GetType(), parameterString);
return parameterValue.Equals(value);
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
if (value is not bool) return false;
string? parameterString = parameter.ToString();
if (parameterString == null) return false;
return Enum.Parse(targetType, parameterString);
}
}
}