diff --git a/src/User32/PublicAPI.Unshipped.txt b/src/User32/PublicAPI.Unshipped.txt index 78d97c4e..ab9e7019 100644 --- a/src/User32/PublicAPI.Unshipped.txt +++ b/src/User32/PublicAPI.Unshipped.txt @@ -34,14 +34,6 @@ PInvoke.User32.DIALOG_DPI_CHANGE_BEHAVIORS.DDC_DEFAULT = 0 -> PInvoke.User32.DIA PInvoke.User32.DIALOG_DPI_CHANGE_BEHAVIORS.DDC_DISABLE_ALL = 1 -> PInvoke.User32.DIALOG_DPI_CHANGE_BEHAVIORS PInvoke.User32.DIALOG_DPI_CHANGE_BEHAVIORS.DDC_DISABLE_CONTROL_RELAYOUT = PInvoke.User32.DIALOG_DPI_CHANGE_BEHAVIORS.DDC_DISABLE_ALL | PInvoke.User32.DIALOG_DPI_CHANGE_BEHAVIORS.DDC_DISABLE_RESIZE -> PInvoke.User32.DIALOG_DPI_CHANGE_BEHAVIORS PInvoke.User32.DIALOG_DPI_CHANGE_BEHAVIORS.DDC_DISABLE_RESIZE = 2 -> PInvoke.User32.DIALOG_DPI_CHANGE_BEHAVIORS -PInvoke.User32.DISPLAY_DEVICE -PInvoke.User32.DISPLAY_DEVICE.DISPLAY_DEVICE() -> void -PInvoke.User32.DISPLAY_DEVICE.DeviceID -> char* -PInvoke.User32.DISPLAY_DEVICE.DeviceKey -> char* -PInvoke.User32.DISPLAY_DEVICE.DeviceName -> char* -PInvoke.User32.DISPLAY_DEVICE.DeviceString -> char* -PInvoke.User32.DISPLAY_DEVICE.StateFlags -> PInvoke.User32.DisplayDeviceFlags -PInvoke.User32.DISPLAY_DEVICE.cb -> uint PInvoke.User32.DPI_AWARENESS PInvoke.User32.DPI_AWARENESS.DPI_AWARENESS_INVALID = -1 -> PInvoke.User32.DPI_AWARENESS PInvoke.User32.DPI_AWARENESS.DPI_AWARENESS_PER_MONITOR_AWARE = 2 -> PInvoke.User32.DPI_AWARENESS @@ -51,13 +43,6 @@ PInvoke.User32.DPI_HOSTING_BEHAVIOR PInvoke.User32.DPI_HOSTING_BEHAVIOR.DPI_HOSTING_BEHAVIOR_DEFAULT = 0 -> PInvoke.User32.DPI_HOSTING_BEHAVIOR PInvoke.User32.DPI_HOSTING_BEHAVIOR.DPI_HOSTING_BEHAVIOR_INVALID = -1 -> PInvoke.User32.DPI_HOSTING_BEHAVIOR PInvoke.User32.DPI_HOSTING_BEHAVIOR.DPI_HOSTING_BEHAVIOR_MIXED = 1 -> PInvoke.User32.DPI_HOSTING_BEHAVIOR -PInvoke.User32.DisplayDeviceFlags -PInvoke.User32.DisplayDeviceFlags.DISPLAY_DEVICE_ACTIVE = 1 -> PInvoke.User32.DisplayDeviceFlags -PInvoke.User32.DisplayDeviceFlags.DISPLAY_DEVICE_MIRRORING_DRIVER = 8 -> PInvoke.User32.DisplayDeviceFlags -PInvoke.User32.DisplayDeviceFlags.DISPLAY_DEVICE_MODESPRUNED = 134217728 -> PInvoke.User32.DisplayDeviceFlags -PInvoke.User32.DisplayDeviceFlags.DISPLAY_DEVICE_PRIMARY_DEVICE = 4 -> PInvoke.User32.DisplayDeviceFlags -PInvoke.User32.DisplayDeviceFlags.DISPLAY_DEVICE_REMOVABLE = 32 -> PInvoke.User32.DisplayDeviceFlags -PInvoke.User32.DisplayDeviceFlags.DISPLAY_DEVICE_VGA_COMPATIBLE = 16 -> PInvoke.User32.DisplayDeviceFlags PInvoke.User32.EnumDisplayDevicesFlags PInvoke.User32.EnumDisplayDevicesFlags.EDD_GET_DEVICE_INTERFACE_NAME = 1 -> PInvoke.User32.EnumDisplayDevicesFlags PInvoke.User32.GetMenuDefaultItemFlags @@ -196,9 +181,6 @@ static PInvoke.User32.CreateCursor(System.IntPtr hInst, int xHotspot, int yHotSp static PInvoke.User32.CreateCursor(System.IntPtr hInst, int xHotspot, int yHotSpot, int nWidth, int nHeight, byte[] pvANDPlane, byte[] pvXORPlane) -> PInvoke.User32.SafeCursorHandle static PInvoke.User32.CreateWindowEx(PInvoke.User32.WindowStylesEx dwExStyle, short lpClassName, string lpWindowName, PInvoke.User32.WindowStyles dwStyle, int x, int y, int nWidth, int nHeight, System.IntPtr hWndParent, System.IntPtr hMenu, System.IntPtr hInstance, System.IntPtr lpParam) -> System.IntPtr static PInvoke.User32.CreateWindowEx(PInvoke.User32.WindowStylesEx dwExStyle, short lpClassName, string lpWindowName, PInvoke.User32.WindowStyles dwStyle, int x, int y, int nWidth, int nHeight, System.IntPtr hWndParent, System.IntPtr hMenu, System.IntPtr hInstance, void* lpParam) -> System.IntPtr -static PInvoke.User32.DISPLAY_DEVICE.Create() -> PInvoke.User32.DISPLAY_DEVICE -static PInvoke.User32.EnumDisplayDevices(string lpDevice, uint iDevNum, System.IntPtr lpDisplayDevice, PInvoke.User32.EnumDisplayDevicesFlags dwFlags) -> bool -static PInvoke.User32.EnumDisplayDevices(string lpDevice, uint iDevNum, ref PInvoke.User32.DISPLAY_DEVICE lpDisplayDevice, PInvoke.User32.EnumDisplayDevicesFlags dwFlags) -> bool static PInvoke.User32.GetCursorInfo(System.IntPtr pci) -> bool static PInvoke.User32.GetCursorInfo(out PInvoke.User32.CURSORINFO pci) -> bool static PInvoke.User32.GetMenuBarInfo(System.IntPtr hwnd, PInvoke.User32.MenuObject idObject, int idItem, System.IntPtr pmbi) -> bool @@ -229,7 +211,7 @@ static extern PInvoke.User32.AreDpiAwarenessContextsEqual(System.IntPtr dpiConte static extern PInvoke.User32.CreateCursor(System.IntPtr hInst, int xHotspot, int yHotSpot, int nWidth, int nHeight, byte* pvANDPlane, byte* pvXORPlane) -> PInvoke.User32.SafeCursorHandle static extern PInvoke.User32.DestroyWindow(System.IntPtr hWnd) -> bool static extern PInvoke.User32.EnableNonClientDpiScaling(System.IntPtr hwnd) -> bool -static extern PInvoke.User32.EnumDisplayDevices(string lpDevice, uint iDevNum, PInvoke.User32.DISPLAY_DEVICE* lpDisplayDevice, PInvoke.User32.EnumDisplayDevicesFlags dwFlags) -> bool +static extern PInvoke.User32.EnumDisplayDevices(string lpDevice, uint iDevNum, PInvoke.DISPLAY_DEVICE* lpDisplayDevice, PInvoke.User32.EnumDisplayDevicesFlags dwFlags) -> bool static extern PInvoke.User32.GetAwarenessFromDpiAwarenessContext(System.IntPtr dpiAwarenessContext) -> PInvoke.User32.DPI_AWARENESS static extern PInvoke.User32.GetCursor() -> PInvoke.User32.SafeCursorHandle static extern PInvoke.User32.GetCursorInfo(PInvoke.User32.CURSORINFO* pci) -> bool diff --git a/src/User32/User32+DISPLAY_DEVICE.cs b/src/User32/User32+DISPLAY_DEVICE.cs deleted file mode 100644 index a3c5e641..00000000 --- a/src/User32/User32+DISPLAY_DEVICE.cs +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright © .NET Foundation and Contributors. All rights reserved. -// Licensed under the MIT license. See LICENSE file in the project root for full license information. - -namespace PInvoke -{ - using System.Runtime.InteropServices; - - /// - /// Contains the nested type. - /// - public partial class User32 - { - /// - /// Receives information about the display device specified by the iDevNum parameter of the function. - /// - public unsafe struct DISPLAY_DEVICE - { - /// - /// Size, in bytes, of the DISPLAY_DEVICE structure. This must be initialized prior to calling . - /// - public uint cb; - - /// - /// An array of characters identifying the device name. This is either the adapter device or the monitor device. - /// - public fixed char DeviceName[32]; - - /// - /// An array of characters containing the device context string. This is either a description of the display adapter or of the display monitor. - /// - public fixed char DeviceString[128]; - - /// - /// Device state flags. - /// - public DisplayDeviceFlags StateFlags; - - /// - /// Not used. - /// - public fixed char DeviceID[128]; - - /// - /// Reserved. - /// - public fixed char DeviceKey[128]; - - /// - /// Initializes a new instance of the struct - /// with the field initialized. - /// - /// - /// An instance of the structure. - /// - public static DISPLAY_DEVICE Create() => new DISPLAY_DEVICE { cb = (uint)sizeof(DISPLAY_DEVICE) }; - } - } -} diff --git a/src/User32/User32+DisplayDeviceFlags.cs b/src/User32/User32+DisplayDeviceFlags.cs deleted file mode 100644 index c91ac32f..00000000 --- a/src/User32/User32+DisplayDeviceFlags.cs +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright © .NET Foundation and Contributors. All rights reserved. -// Licensed under the MIT license. See LICENSE file in the project root for full license information. - -namespace PInvoke -{ - using System; - - /// - /// Contains the nested type. - /// - public partial class User32 - { - /// - /// Device state flags. - /// - [Flags] - public enum DisplayDeviceFlags : uint - { - /// - /// DISPLAY_DEVICE_ACTIVE specifies whether a monitor is presented as being "on" by the respective GDI view. - /// Windows Vista: EnumDisplayDevices will only enumerate monitors that can be presented as being "on". - /// - DISPLAY_DEVICE_ACTIVE = 0x00000001, - - /// - /// Represents a pseudo device used to mirror application drawing for remoting or other purposes. An invisible pseudo monitor is associated with this device. - /// For example, NetMeeting uses it. Note that (SM_MONITORS) only accounts for visible display monitors. - /// - DISPLAY_DEVICE_MIRRORING_DRIVER = 0x00000008, - - /// The device has more display modes than its output devices support. - DISPLAY_DEVICE_MODESPRUNED = 0x08000000, - - /// - /// The primary desktop is on the device. For a system with a single display card, this is always set. - /// For a system with multiple display cards, only one device can have this set. - /// - DISPLAY_DEVICE_PRIMARY_DEVICE = 0x00000004, - - /// The device is removable; it cannot be the primary display. - DISPLAY_DEVICE_REMOVABLE = 0x00000020, - - /// The device is VGA compatible. - DISPLAY_DEVICE_VGA_COMPATIBLE = 0x00000010, - } - } -} diff --git a/src/Windows.Core/DISPLAY_DEVICE+DisplayDeviceFlags.cs b/src/Windows.Core/DISPLAY_DEVICE+DisplayDeviceFlags.cs new file mode 100644 index 00000000..b7bfb931 --- /dev/null +++ b/src/Windows.Core/DISPLAY_DEVICE+DisplayDeviceFlags.cs @@ -0,0 +1,41 @@ +// Copyright © .NET Foundation and Contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +namespace PInvoke +{ + using System; + + /// + /// Device state flags. + /// + [Flags] + public enum DisplayDeviceFlags : uint + { + /// + /// Specifies whether a monitor is presented as being "on" by the respective GDI view. + /// Windows Vista: EnumDisplayDevices will only enumerate monitors that can be presented as being "on". + /// + DISPLAY_DEVICE_ACTIVE = 0x00000001, + + /// + /// Represents a pseudo device used to mirror application drawing for remoting or other purposes. An invisible pseudo monitor is associated with this device. + /// For example, NetMeeting uses it. Note that User32.GetSystemMetrics (SM_MONITORS) only accounts for visible display monitors. + /// + DISPLAY_DEVICE_MIRRORING_DRIVER = 0x00000008, + + /// The device has more display modes than its output devices support. + DISPLAY_DEVICE_MODESPRUNED = 0x08000000, + + /// + /// The primary desktop is on the device. For a system with a single display card, this is always set. + /// For a system with multiple display cards, only one device can have this set. + /// + DISPLAY_DEVICE_PRIMARY_DEVICE = 0x00000004, + + /// The device is removable; it cannot be the primary display. + DISPLAY_DEVICE_REMOVABLE = 0x00000020, + + /// The device is VGA compatible. + DISPLAY_DEVICE_VGA_COMPATIBLE = 0x00000010, + } +} diff --git a/src/Windows.Core/DISPLAY_DEVICE.cs b/src/Windows.Core/DISPLAY_DEVICE.cs new file mode 100644 index 00000000..9d00c161 --- /dev/null +++ b/src/Windows.Core/DISPLAY_DEVICE.cs @@ -0,0 +1,52 @@ +// Copyright © .NET Foundation and Contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +namespace PInvoke +{ + using System.Runtime.InteropServices; + + /// + /// Receives information about the display device specified by the iDevNum parameter of the User32.EnumDisplayDevices function. + /// + public unsafe struct DISPLAY_DEVICE + { + /// + /// Size, in bytes, of the DISPLAY_DEVICE structure. This must be initialized prior to calling User32.EnumDisplayDevices. + /// + public uint cb; + + /// + /// An array of characters identifying the device name. This is either the adapter device or the monitor device. + /// + public fixed char DeviceName[32]; + + /// + /// An array of characters containing the device context string. This is either a description of the display adapter or of the display monitor. + /// + public fixed char DeviceString[128]; + + /// + /// Device state flags. + /// + public DisplayDeviceFlags StateFlags; + + /// + /// Not used. + /// + public fixed char DeviceID[128]; + + /// + /// Reserved. + /// + public fixed char DeviceKey[128]; + + /// + /// Initializes a new instance of the struct + /// with the field initialized. + /// + /// + /// An instance of the structure. + /// + public static DISPLAY_DEVICE Create() => new DISPLAY_DEVICE { cb = (uint)sizeof(DISPLAY_DEVICE) }; + } +} diff --git a/src/Windows.Core/PublicAPI.Unshipped.txt b/src/Windows.Core/PublicAPI.Unshipped.txt index c1b2cbe8..cc6c69f5 100644 --- a/src/Windows.Core/PublicAPI.Unshipped.txt +++ b/src/Windows.Core/PublicAPI.Unshipped.txt @@ -1,8 +1,24 @@ +PInvoke.DISPLAY_DEVICE +PInvoke.DISPLAY_DEVICE.DISPLAY_DEVICE() -> void +PInvoke.DISPLAY_DEVICE.DeviceID -> char* +PInvoke.DISPLAY_DEVICE.DeviceKey -> char* +PInvoke.DISPLAY_DEVICE.DeviceName -> char* +PInvoke.DISPLAY_DEVICE.DeviceString -> char* +PInvoke.DISPLAY_DEVICE.StateFlags -> PInvoke.DisplayDeviceFlags +PInvoke.DISPLAY_DEVICE.cb -> uint +PInvoke.DisplayDeviceFlags +PInvoke.DisplayDeviceFlags.DISPLAY_DEVICE_ACTIVE = 1 -> PInvoke.DisplayDeviceFlags +PInvoke.DisplayDeviceFlags.DISPLAY_DEVICE_MIRRORING_DRIVER = 8 -> PInvoke.DisplayDeviceFlags +PInvoke.DisplayDeviceFlags.DISPLAY_DEVICE_MODESPRUNED = 134217728 -> PInvoke.DisplayDeviceFlags +PInvoke.DisplayDeviceFlags.DISPLAY_DEVICE_PRIMARY_DEVICE = 4 -> PInvoke.DisplayDeviceFlags +PInvoke.DisplayDeviceFlags.DISPLAY_DEVICE_REMOVABLE = 32 -> PInvoke.DisplayDeviceFlags +PInvoke.DisplayDeviceFlags.DISPLAY_DEVICE_VGA_COMPATIBLE = 16 -> PInvoke.DisplayDeviceFlags PInvoke.HResult.Code.CO_E_CANCEL_DISABLED = 2147549504 -> PInvoke.HResult.Code PInvoke.HResult.Code.RPC_E_CALL_CANCELED = 2147549186 -> PInvoke.HResult.Code PInvoke.HResult.Code.RPC_E_CALL_COMPLETE = 2147549463 -> PInvoke.HResult.Code const PInvoke.ApiSets.api_ms_win_core_errorhandling_l1_1_1 = "api-ms-win-core-errorhandling-l1-1-1.dll" -> string const PInvoke.ApiSets.api_ms_win_core_registry_l1_1_0 = "api-ms-win-core-registry-l1-1-0.dll" -> string const PInvoke.ApiSets.api_ms_win_security_sddl_l1_1_0 = "api-ms-win-security-sddl-l1-1-0.dll" -> string +static PInvoke.DISPLAY_DEVICE.Create() -> PInvoke.DISPLAY_DEVICE static PInvoke.POINT.implicit operator PInvoke.POINT(System.Drawing.Point point) -> PInvoke.POINT -static PInvoke.POINT.implicit operator System.Drawing.Point(PInvoke.POINT point) -> System.Drawing.Point +static PInvoke.POINT.implicit operator System.Drawing.Point(PInvoke.POINT point) -> System.Drawing.Point \ No newline at end of file