| File: WebEventData\PointerEventArgsReader.cs | Web Access |
| Project: src\aspnetcore\src\Components\Web\src\Microsoft.AspNetCore.Components.Web.csproj (Microsoft.AspNetCore.Components.Web) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. #nullable enable using System.Text.Json; namespace Microsoft.AspNetCore.Components.Web; internal static class PointerEventArgsReader { private static readonly JsonEncodedText PointerId = JsonEncodedText.Encode("pointerId"); private static readonly JsonEncodedText Width = JsonEncodedText.Encode("width"); private static readonly JsonEncodedText Height = JsonEncodedText.Encode("height"); private static readonly JsonEncodedText Pressure = JsonEncodedText.Encode("pressure"); private static readonly JsonEncodedText TiltX = JsonEncodedText.Encode("tiltX"); private static readonly JsonEncodedText TiltY = JsonEncodedText.Encode("tiltY"); private static readonly JsonEncodedText PointerType = JsonEncodedText.Encode("pointerType"); private static readonly JsonEncodedText IsPrimary = JsonEncodedText.Encode("isPrimary"); internal static PointerEventArgs Read(JsonElement jsonElement) { var eventArgs = new PointerEventArgs(); foreach (var property in jsonElement.EnumerateObject()) { if (property.NameEquals(PointerId.EncodedUtf8Bytes)) { eventArgs.PointerId = property.Value.GetInt64(); } else if (property.NameEquals(Width.EncodedUtf8Bytes)) { eventArgs.Width = property.Value.GetSingle(); } else if (property.NameEquals(Height.EncodedUtf8Bytes)) { eventArgs.Height = property.Value.GetSingle(); } else if (property.NameEquals(Pressure.EncodedUtf8Bytes)) { eventArgs.Pressure = property.Value.GetSingle(); } else if (property.NameEquals(TiltX.EncodedUtf8Bytes)) { eventArgs.TiltX = property.Value.GetSingle(); } else if (property.NameEquals(TiltY.EncodedUtf8Bytes)) { eventArgs.TiltY = property.Value.GetSingle(); } else if (property.NameEquals(PointerType.EncodedUtf8Bytes)) { eventArgs.PointerType = property.Value.GetString()!; } else if (property.NameEquals(IsPrimary.EncodedUtf8Bytes)) { eventArgs.IsPrimary = property.Value.GetBoolean(); } else { MouseEventArgsReader.ReadProperty(eventArgs, property); } } return eventArgs; } }