// ------------------------------------------------------------------------------ // // This code was generated by a tool. // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // // ------------------------------------------------------------------------------ using System; using System.Diagnostics; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using HexaGen.Runtime; using System.Numerics; namespace Dalamud.Bindings.ImGui { /// /// To be documented. /// [StructLayout(LayoutKind.Sequential)] public partial struct ImGuiNextWindowData { /// /// To be documented. /// public ImGuiNextWindowDataFlags Flags; /// /// To be documented. /// public ImGuiCond PosCond; /// /// To be documented. /// public ImGuiCond SizeCond; /// /// To be documented. /// public ImGuiCond CollapsedCond; /// /// To be documented. /// public ImGuiCond DockCond; /// /// To be documented. /// public Vector2 PosVal; /// /// To be documented. /// public Vector2 PosPivotVal; /// /// To be documented. /// public Vector2 SizeVal; /// /// To be documented. /// public Vector2 ContentSizeVal; /// /// To be documented. /// public Vector2 ScrollVal; /// /// To be documented. /// public byte PosUndock; /// /// To be documented. /// public byte CollapsedVal; /// /// To be documented. /// public ImRect SizeConstraintRect; /// /// To be documented. /// public unsafe void* SizeCallback; /// /// To be documented. /// public unsafe void* SizeCallbackUserData; /// /// To be documented. /// public float BgAlphaVal; /// /// To be documented. /// public uint ViewportId; /// /// To be documented. /// public uint DockId; /// /// To be documented. /// public ImGuiWindowClass WindowClass; /// /// To be documented. /// public Vector2 MenuBarOffsetMinVal; /// /// To be documented. /// public unsafe ImGuiNextWindowData(ImGuiNextWindowDataFlags flags = default, ImGuiCond posCond = default, ImGuiCond sizeCond = default, ImGuiCond collapsedCond = default, ImGuiCond dockCond = default, Vector2 posVal = default, Vector2 posPivotVal = default, Vector2 sizeVal = default, Vector2 contentSizeVal = default, Vector2 scrollVal = default, bool posUndock = default, bool collapsedVal = default, ImRect sizeConstraintRect = default, ImGuiSizeCallback sizeCallback = default, void* sizeCallbackUserData = default, float bgAlphaVal = default, uint viewportId = default, uint dockId = default, ImGuiWindowClass windowClass = default, Vector2 menuBarOffsetMinVal = default) { Flags = flags; PosCond = posCond; SizeCond = sizeCond; CollapsedCond = collapsedCond; DockCond = dockCond; PosVal = posVal; PosPivotVal = posPivotVal; SizeVal = sizeVal; ContentSizeVal = contentSizeVal; ScrollVal = scrollVal; PosUndock = posUndock ? (byte)1 : (byte)0; CollapsedVal = collapsedVal ? (byte)1 : (byte)0; SizeConstraintRect = sizeConstraintRect; SizeCallback = (void*)Marshal.GetFunctionPointerForDelegate(sizeCallback); SizeCallbackUserData = sizeCallbackUserData; BgAlphaVal = bgAlphaVal; ViewportId = viewportId; DockId = dockId; WindowClass = windowClass; MenuBarOffsetMinVal = menuBarOffsetMinVal; } /// /// To be documented. /// public unsafe void Destroy() { fixed (ImGuiNextWindowData* @this = &this) { ImGui.DestroyNative(@this); } } } /// /// To be documented. /// #if NET5_0_OR_GREATER [DebuggerDisplay("{DebuggerDisplay,nq}")] #endif public unsafe struct ImGuiNextWindowDataPtr : IEquatable { public ImGuiNextWindowDataPtr(ImGuiNextWindowData* handle) { Handle = handle; } public ImGuiNextWindowData* Handle; public bool IsNull => Handle == null; public static ImGuiNextWindowDataPtr Null => new ImGuiNextWindowDataPtr(null); public ImGuiNextWindowData this[int index] { get => Handle[index]; set => Handle[index] = value; } public static implicit operator ImGuiNextWindowDataPtr(ImGuiNextWindowData* handle) => new ImGuiNextWindowDataPtr(handle); public static implicit operator ImGuiNextWindowData*(ImGuiNextWindowDataPtr handle) => handle.Handle; public static bool operator ==(ImGuiNextWindowDataPtr left, ImGuiNextWindowDataPtr right) => left.Handle == right.Handle; public static bool operator !=(ImGuiNextWindowDataPtr left, ImGuiNextWindowDataPtr right) => left.Handle != right.Handle; public static bool operator ==(ImGuiNextWindowDataPtr left, ImGuiNextWindowData* right) => left.Handle == right; public static bool operator !=(ImGuiNextWindowDataPtr left, ImGuiNextWindowData* right) => left.Handle != right; public bool Equals(ImGuiNextWindowDataPtr other) => Handle == other.Handle; /// public override bool Equals(object obj) => obj is ImGuiNextWindowDataPtr handle && Equals(handle); /// public override int GetHashCode() => ((nuint)Handle).GetHashCode(); #if NET5_0_OR_GREATER private string DebuggerDisplay => string.Format("ImGuiNextWindowDataPtr [0x{0}]", ((nuint)Handle).ToString("X")); #endif /// /// To be documented. /// public ref ImGuiNextWindowDataFlags Flags => ref Unsafe.AsRef(&Handle->Flags); /// /// To be documented. /// public ref ImGuiCond PosCond => ref Unsafe.AsRef(&Handle->PosCond); /// /// To be documented. /// public ref ImGuiCond SizeCond => ref Unsafe.AsRef(&Handle->SizeCond); /// /// To be documented. /// public ref ImGuiCond CollapsedCond => ref Unsafe.AsRef(&Handle->CollapsedCond); /// /// To be documented. /// public ref ImGuiCond DockCond => ref Unsafe.AsRef(&Handle->DockCond); /// /// To be documented. /// public ref Vector2 PosVal => ref Unsafe.AsRef(&Handle->PosVal); /// /// To be documented. /// public ref Vector2 PosPivotVal => ref Unsafe.AsRef(&Handle->PosPivotVal); /// /// To be documented. /// public ref Vector2 SizeVal => ref Unsafe.AsRef(&Handle->SizeVal); /// /// To be documented. /// public ref Vector2 ContentSizeVal => ref Unsafe.AsRef(&Handle->ContentSizeVal); /// /// To be documented. /// public ref Vector2 ScrollVal => ref Unsafe.AsRef(&Handle->ScrollVal); /// /// To be documented. /// public ref bool PosUndock => ref Unsafe.AsRef(&Handle->PosUndock); /// /// To be documented. /// public ref bool CollapsedVal => ref Unsafe.AsRef(&Handle->CollapsedVal); /// /// To be documented. /// public ref ImRect SizeConstraintRect => ref Unsafe.AsRef(&Handle->SizeConstraintRect); /// /// To be documented. /// public void* SizeCallback { get => Handle->SizeCallback; set => Handle->SizeCallback = value; } /// /// To be documented. /// public void* SizeCallbackUserData { get => Handle->SizeCallbackUserData; set => Handle->SizeCallbackUserData = value; } /// /// To be documented. /// public ref float BgAlphaVal => ref Unsafe.AsRef(&Handle->BgAlphaVal); /// /// To be documented. /// public ref uint ViewportId => ref Unsafe.AsRef(&Handle->ViewportId); /// /// To be documented. /// public ref uint DockId => ref Unsafe.AsRef(&Handle->DockId); /// /// To be documented. /// public ref ImGuiWindowClass WindowClass => ref Unsafe.AsRef(&Handle->WindowClass); /// /// To be documented. /// public ref Vector2 MenuBarOffsetMinVal => ref Unsafe.AsRef(&Handle->MenuBarOffsetMinVal); /// /// To be documented. /// public unsafe void Destroy() { ImGui.DestroyNative(Handle); } } }