You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
mastermind/Sources/MauiSpark/Convertisseurs/CouleurVersCouleurMAUI.cs

61 lines
2.0 KiB

using CoreLibrary.Core;
using System.Globalization;
namespace MauiSpark.Convertisseurs
{
public class CouleurVersCouleurMAUI : IValueConverter
{
public static Color Rouge { get; private set; } = Color.FromRgb(255, 0, 0);
public static Color Vert { get; private set; } = Color.FromRgb(0, 255, 0);
public static Color Bleu { get; private set; } = Color.FromRgb(0, 0, 255);
public static Color Jaune { get; private set; } = Color.FromRgb(255, 255, 0);
public static Color Noir { get; private set; } = Color.FromRgb(0, 0, 0);
public static Color Blanc { get; private set; } = Color.FromRgb(255, 255, 255);
public object Convert(object? value, Type targetType, object? parameter, CultureInfo culture)
{
if (value is not Couleur)
return Noir;
switch (value)
{
case Couleur.Blanc:
return Blanc;
case Couleur.Bleu:
return Bleu;
case Couleur.Vert:
return Vert;
case Couleur.Rouge:
return Rouge;
case Couleur.Noir:
return Noir;
case Couleur.Jaune:
return Jaune;
default:
return Noir;
}
}
public object ConvertBack(object? value, Type targetType, object? parameter, CultureInfo culture)
{
if (value is not Color) return Couleur.Noir;
if (value.Equals(Rouge))
return Couleur.Rouge;
if (value.Equals(Vert))
return Couleur.Vert;
if (value.Equals(Bleu))
return Couleur.Bleu;
if (value.Equals(Jaune))
return Couleur.Jaune;
if (value.Equals(Noir))
return Couleur.Noir;
if (value.Equals(Blanc))
return Couleur.Blanc;
return Couleur.Noir;
}
}
}