using System; using System.Globalization; using System.Windows.Data; using System.Windows.Media; using MaterialDesignThemes.Wpf; namespace SicSetupMaker.Converters { public class LogLevelToIconConverter : IValueConverter { public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { if (value is LogLevels level) { var brushConv = new LogLevelToSolidColorBrushConverter(); var icon = new PackIcon(); switch (level) { case LogLevels.Info: icon.Kind = PackIconKind.InfoCircle; break; case LogLevels.Warning: icon.Kind = PackIconKind.AlertCircle; break; case LogLevels.Error: case LogLevels.Critical: icon.Kind = PackIconKind.CloseCircle; break; default: icon.Kind = PackIconKind.CheckboxBlankCircle; break; } icon.Foreground = brushConv.Convert(level, targetType, parameter, culture) as SolidColorBrush; return icon; } else { return null; } } public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) { throw new NotImplementedException(); } } }