45 lines
1.6 KiB
C#
45 lines
1.6 KiB
C#
namespace Common.UI.Infrastructure
|
|
{
|
|
using Common.Hardware.SIRT;
|
|
using Common.Hardware.SIRT.Parameters;
|
|
|
|
using System;
|
|
using System.Globalization;
|
|
using System.Windows.Data;
|
|
using System.Windows.Media;
|
|
|
|
internal class TaskStateToBackgroundBrushConverter : IValueConverter
|
|
{
|
|
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
|
|
{
|
|
var converter = new BrushConverter();
|
|
var error = (SolidColorBrush)converter.ConvertFrom("#22FFA07A");
|
|
var success = (SolidColorBrush)converter.ConvertFrom("#2290EE90");
|
|
var info = (SolidColorBrush)converter.ConvertFrom("#22ADD8E6");
|
|
var warning = (SolidColorBrush)converter.ConvertFrom("#22F5EF42");
|
|
var brush = Brushes.White;
|
|
|
|
if (value is string label)
|
|
{
|
|
switch (label)
|
|
{
|
|
case nameof(SIRTTaskState.Pending):; break;
|
|
case nameof(SIRTMessage.BUP): brush = warning; break;
|
|
case nameof(SIRTMessage.LAT): brush = warning; break;
|
|
case nameof(SIRTMessage.DEBUG): brush = info; break;
|
|
case nameof(PAMStatus.OK): brush = success; break;
|
|
case "ACKN": brush = warning; break;
|
|
default: brush = error; break;
|
|
}
|
|
}
|
|
|
|
return brush;
|
|
}
|
|
|
|
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
}
|
|
}
|