diff --git a/src/DesktopMagic/Helpers/ColorJsonConverter.cs b/src/DesktopMagic/Helpers/ColorJsonConverter.cs new file mode 100644 index 0000000..efbe86a --- /dev/null +++ b/src/DesktopMagic/Helpers/ColorJsonConverter.cs @@ -0,0 +1,19 @@ +using System; +using System.Drawing; +using System.Text.Json; +using System.Text.Json.Serialization; + +namespace DesktopMagic.Helpers; + +public class ColorJsonConverter : JsonConverter +{ + public override Color Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) + { + return ColorTranslator.FromHtml(reader.GetString() ?? "#000000"); + } + + public override void Write(Utf8JsonWriter writer, Color value, JsonSerializerOptions options) + { + writer.WriteStringValue("#" + value.A.ToString("X2").ToLower() + value.R.ToString("X2") + value.G.ToString("X2") + value.B.ToString("X2").ToLower()); + } +} \ No newline at end of file diff --git a/src/DesktopMagic/MainWindow.xaml b/src/DesktopMagic/MainWindow.xaml index 3c532b8..8e5212e 100644 --- a/src/DesktopMagic/MainWindow.xaml +++ b/src/DesktopMagic/MainWindow.xaml @@ -130,7 +130,7 @@ - +