1
0
Fork 0
mirror of https://github.com/Ellpeck/MLEM.git synced 2024-11-14 18:19:09 +01:00
MLEM/MLEM.Data/Json/RectangleFConverter.cs

26 lines
1.1 KiB
C#
Raw Normal View History

2020-02-27 18:56:49 +01:00
using System;
using System.Globalization;
using MLEM.Misc;
using Newtonsoft.Json;
namespace MLEM.Data.Json {
/// <inheritdoc />
2020-02-27 18:56:49 +01:00
public class RectangleFConverter : JsonConverter<RectangleF> {
/// <inheritdoc />
2020-02-27 18:56:49 +01:00
public override void WriteJson(JsonWriter writer, RectangleF value, JsonSerializer serializer) {
writer.WriteValue(
value.X.ToString(CultureInfo.InvariantCulture) + " " + value.Y.ToString(CultureInfo.InvariantCulture) + " " +
value.Width.ToString(CultureInfo.InvariantCulture) + " " + value.Height.ToString(CultureInfo.InvariantCulture));
}
/// <inheritdoc />
2020-02-27 18:56:49 +01:00
public override RectangleF ReadJson(JsonReader reader, Type objectType, RectangleF existingValue, bool hasExistingValue, JsonSerializer serializer) {
var value = reader.Value.ToString().Split(' ');
return new RectangleF(
float.Parse(value[0], CultureInfo.InvariantCulture), float.Parse(value[1], CultureInfo.InvariantCulture),
float.Parse(value[2], CultureInfo.InvariantCulture), float.Parse(value[3], CultureInfo.InvariantCulture));
}
}
}