| File: Windows\Win32\PInvokeCore.MapWindowPoints.cs | Web Access |
| Project: src\winforms\src\System.Private.Windows.Core\src\Microsoft.Private.Windows.Core.csproj (Microsoft.Private.Windows.Core) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. using System.Drawing; namespace Windows.Win32; internal static partial class PInvokeCore { /// <inheritdoc cref="MapWindowPoints(HWND, HWND, Point*, uint)"/> public static unsafe int MapWindowPoints<TFrom, TTo>(TFrom hWndFrom, TTo hWndTo, ref RECT lpRect) where TFrom : IHandle<HWND> where TTo : IHandle<HWND> { fixed (void* p = &lpRect) { int result = MapWindowPoints(hWndFrom.Handle, hWndTo.Handle, (Point*)p, cPoints: 2); GC.KeepAlive(hWndFrom.Wrapper); GC.KeepAlive(hWndTo.Wrapper); return result; } } /// <inheritdoc cref="MapWindowPoints(HWND, HWND, Point*, uint)"/> public static unsafe int MapWindowPoints<TFrom, TTo>(TFrom hWndFrom, TTo hWndTo, ref Point lpPoint) where TFrom : IHandle<HWND> where TTo : IHandle<HWND> { fixed (void* p = &lpPoint) { int result = MapWindowPoints(hWndFrom.Handle, hWndTo.Handle, (Point*)p, cPoints: 1); GC.KeepAlive(hWndFrom.Wrapper); GC.KeepAlive(hWndTo.Wrapper); return result; } } }