mirror of
https://github.com/kangyu-california/PersistentWindows.git
synced 2025-05-10 20:45:38 +02:00
54 lines
1.8 KiB
C#
54 lines
1.8 KiB
C#
using System.Runtime.InteropServices;
|
|
|
|
namespace PersistentWindows.Common.WinApiBridge
|
|
{
|
|
//[StructLayout(LayoutKind.Sequential)]
|
|
public struct WindowPlacement
|
|
{
|
|
/// <summary>
|
|
/// The length of the structure, in bytes. Before calling the GetWindowPlacement or SetWindowPlacement functions, set this member to sizeof(WINDOWPLACEMENT).
|
|
/// <para>
|
|
/// GetWindowPlacement and SetWindowPlacement fail if this member is not set correctly.
|
|
/// </para>
|
|
/// </summary>
|
|
public int Length { get; set; }
|
|
|
|
/// <summary>
|
|
/// Specifies flags that control the position of the minimized window and the method by which the window is restored.
|
|
/// </summary>
|
|
public int Flags { get; set; }
|
|
|
|
/// <summary>
|
|
/// The current show state of the window.
|
|
/// </summary>
|
|
public ShowWindowCommands ShowCmd { get; set; }
|
|
|
|
/// <summary>
|
|
/// The coordinates of the window's upper-left corner when the window is minimized.
|
|
/// </summary>
|
|
public POINT MinPosition { get; set; }
|
|
|
|
/// <summary>
|
|
/// The coordinates of the window's upper-left corner when the window is maximized.
|
|
/// </summary>
|
|
public POINT MaxPosition { get; set; }
|
|
|
|
/// <summary>
|
|
/// The window's coordinates when the window is in the restored position.
|
|
/// </summary>
|
|
public RECT NormalPosition { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gets the default (empty) value.
|
|
/// </summary>
|
|
public static WindowPlacement Default
|
|
{
|
|
get
|
|
{
|
|
WindowPlacement result = new WindowPlacement();
|
|
result.Length = Marshal.SizeOf(result);
|
|
return result;
|
|
}
|
|
}
|
|
}
|
|
}
|