// ------------------------------------------------------------------------------ // // 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 ImGuiWindowSettings { /// /// To be documented. /// public uint ID; /// /// To be documented. /// public ImVec2Ih Pos; /// /// To be documented. /// public ImVec2Ih Size; /// /// To be documented. /// public ImVec2Ih ViewportPos; /// /// To be documented. /// public uint ViewportId; /// /// To be documented. /// public uint DockId; /// /// To be documented. /// public uint ClassId; /// /// To be documented. /// public short DockOrder; /// /// To be documented. /// public byte Collapsed; /// /// To be documented. /// public byte WantApply; /// /// To be documented. /// public unsafe ImGuiWindowSettings(uint id = default, ImVec2Ih pos = default, ImVec2Ih size = default, ImVec2Ih viewportPos = default, uint viewportId = default, uint dockId = default, uint classId = default, short dockOrder = default, bool collapsed = default, bool wantApply = default) { ID = id; Pos = pos; Size = size; ViewportPos = viewportPos; ViewportId = viewportId; DockId = dockId; ClassId = classId; DockOrder = dockOrder; Collapsed = collapsed ? (byte)1 : (byte)0; WantApply = wantApply ? (byte)1 : (byte)0; } /// /// To be documented. /// public unsafe void Destroy() { fixed (ImGuiWindowSettings* @this = &this) { ImGui.DestroyNative(@this); } } } /// /// To be documented. /// #if NET5_0_OR_GREATER [DebuggerDisplay("{DebuggerDisplay,nq}")] #endif public unsafe struct ImGuiWindowSettingsPtr : IEquatable { public ImGuiWindowSettingsPtr(ImGuiWindowSettings* handle) { Handle = handle; } public ImGuiWindowSettings* Handle; public bool IsNull => Handle == null; public static ImGuiWindowSettingsPtr Null => new ImGuiWindowSettingsPtr(null); public ImGuiWindowSettings this[int index] { get => Handle[index]; set => Handle[index] = value; } public static implicit operator ImGuiWindowSettingsPtr(ImGuiWindowSettings* handle) => new ImGuiWindowSettingsPtr(handle); public static implicit operator ImGuiWindowSettings*(ImGuiWindowSettingsPtr handle) => handle.Handle; public static bool operator ==(ImGuiWindowSettingsPtr left, ImGuiWindowSettingsPtr right) => left.Handle == right.Handle; public static bool operator !=(ImGuiWindowSettingsPtr left, ImGuiWindowSettingsPtr right) => left.Handle != right.Handle; public static bool operator ==(ImGuiWindowSettingsPtr left, ImGuiWindowSettings* right) => left.Handle == right; public static bool operator !=(ImGuiWindowSettingsPtr left, ImGuiWindowSettings* right) => left.Handle != right; public bool Equals(ImGuiWindowSettingsPtr other) => Handle == other.Handle; /// public override bool Equals(object obj) => obj is ImGuiWindowSettingsPtr handle && Equals(handle); /// public override int GetHashCode() => ((nuint)Handle).GetHashCode(); #if NET5_0_OR_GREATER private string DebuggerDisplay => string.Format("ImGuiWindowSettingsPtr [0x{0}]", ((nuint)Handle).ToString("X")); #endif /// /// To be documented. /// public ref uint ID => ref Unsafe.AsRef(&Handle->ID); /// /// To be documented. /// public ref ImVec2Ih Pos => ref Unsafe.AsRef(&Handle->Pos); /// /// To be documented. /// public ref ImVec2Ih Size => ref Unsafe.AsRef(&Handle->Size); /// /// To be documented. /// public ref ImVec2Ih ViewportPos => ref Unsafe.AsRef(&Handle->ViewportPos); /// /// 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 uint ClassId => ref Unsafe.AsRef(&Handle->ClassId); /// /// To be documented. /// public ref short DockOrder => ref Unsafe.AsRef(&Handle->DockOrder); /// /// To be documented. /// public ref bool Collapsed => ref Unsafe.AsRef(&Handle->Collapsed); /// /// To be documented. /// public ref bool WantApply => ref Unsafe.AsRef(&Handle->WantApply); /// /// To be documented. /// public unsafe void Destroy() { ImGui.DestroyNative(Handle); } } }