// ------------------------------------------------------------------------------ // // 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 ImGuiTableColumn { /// /// To be documented. /// public ImGuiTableColumnFlags Flags; /// /// To be documented. /// public float WidthGiven; /// /// To be documented. /// public float MinX; /// /// To be documented. /// public float MaxX; /// /// To be documented. /// public float WidthRequest; /// /// To be documented. /// public float WidthAuto; /// /// To be documented. /// public float StretchWeight; /// /// To be documented. /// public float InitStretchWeightOrWidth; /// /// To be documented. /// public ImRect ClipRect; /// /// To be documented. /// public uint UserID; /// /// To be documented. /// public float WorkMinX; /// /// To be documented. /// public float WorkMaxX; /// /// To be documented. /// public float ItemWidth; /// /// To be documented. /// public float ContentMaxXFrozen; /// /// To be documented. /// public float ContentMaxXUnfrozen; /// /// To be documented. /// public float ContentMaxXHeadersUsed; /// /// To be documented. /// public float ContentMaxXHeadersIdeal; /// /// To be documented. /// public short NameOffset; /// /// To be documented. /// public sbyte DisplayOrder; /// /// To be documented. /// public sbyte IndexWithinEnabledSet; /// /// To be documented. /// public sbyte PrevEnabledColumn; /// /// To be documented. /// public sbyte NextEnabledColumn; /// /// To be documented. /// public sbyte SortOrder; /// /// To be documented. /// public byte DrawChannelCurrent; /// /// To be documented. /// public byte DrawChannelFrozen; /// /// To be documented. /// public byte DrawChannelUnfrozen; /// /// To be documented. /// public byte IsEnabled; /// /// To be documented. /// public byte IsUserEnabled; /// /// To be documented. /// public byte IsUserEnabledNextFrame; /// /// To be documented. /// public byte IsVisibleX; /// /// To be documented. /// public byte IsVisibleY; /// /// To be documented. /// public byte IsRequestOutput; /// /// To be documented. /// public byte IsSkipItems; /// /// To be documented. /// public byte IsPreserveWidthAuto; /// /// To be documented. /// public sbyte NavLayerCurrent; /// /// To be documented. /// public byte AutoFitQueue; /// /// To be documented. /// public byte CannotSkipItemsQueue; public byte RawBits0; /// /// To be documented. /// public byte SortDirectionsAvailList; /// /// To be documented. /// public unsafe ImGuiTableColumn(ImGuiTableColumnFlags flags = default, float widthGiven = default, float minX = default, float maxX = default, float widthRequest = default, float widthAuto = default, float stretchWeight = default, float initStretchWeightOrWidth = default, ImRect clipRect = default, uint userId = default, float workMinX = default, float workMaxX = default, float itemWidth = default, float contentMaxXFrozen = default, float contentMaxXUnfrozen = default, float contentMaxXHeadersUsed = default, float contentMaxXHeadersIdeal = default, short nameOffset = default, sbyte displayOrder = default, sbyte indexWithinEnabledSet = default, sbyte prevEnabledColumn = default, sbyte nextEnabledColumn = default, sbyte sortOrder = default, byte drawChannelCurrent = default, byte drawChannelFrozen = default, byte drawChannelUnfrozen = default, bool isEnabled = default, bool isUserEnabled = default, bool isUserEnabledNextFrame = default, bool isVisibleX = default, bool isVisibleY = default, bool isRequestOutput = default, bool isSkipItems = default, bool isPreserveWidthAuto = default, sbyte navLayerCurrent = default, byte autoFitQueue = default, byte cannotSkipItemsQueue = default, byte sortDirection = default, byte sortDirectionsAvailCount = default, byte sortDirectionsAvailMask = default, byte sortDirectionsAvailList = default) { Flags = flags; WidthGiven = widthGiven; MinX = minX; MaxX = maxX; WidthRequest = widthRequest; WidthAuto = widthAuto; StretchWeight = stretchWeight; InitStretchWeightOrWidth = initStretchWeightOrWidth; ClipRect = clipRect; UserID = userId; WorkMinX = workMinX; WorkMaxX = workMaxX; ItemWidth = itemWidth; ContentMaxXFrozen = contentMaxXFrozen; ContentMaxXUnfrozen = contentMaxXUnfrozen; ContentMaxXHeadersUsed = contentMaxXHeadersUsed; ContentMaxXHeadersIdeal = contentMaxXHeadersIdeal; NameOffset = nameOffset; DisplayOrder = displayOrder; IndexWithinEnabledSet = indexWithinEnabledSet; PrevEnabledColumn = prevEnabledColumn; NextEnabledColumn = nextEnabledColumn; SortOrder = sortOrder; DrawChannelCurrent = drawChannelCurrent; DrawChannelFrozen = drawChannelFrozen; DrawChannelUnfrozen = drawChannelUnfrozen; IsEnabled = isEnabled ? (byte)1 : (byte)0; IsUserEnabled = isUserEnabled ? (byte)1 : (byte)0; IsUserEnabledNextFrame = isUserEnabledNextFrame ? (byte)1 : (byte)0; IsVisibleX = isVisibleX ? (byte)1 : (byte)0; IsVisibleY = isVisibleY ? (byte)1 : (byte)0; IsRequestOutput = isRequestOutput ? (byte)1 : (byte)0; IsSkipItems = isSkipItems ? (byte)1 : (byte)0; IsPreserveWidthAuto = isPreserveWidthAuto ? (byte)1 : (byte)0; NavLayerCurrent = navLayerCurrent; AutoFitQueue = autoFitQueue; CannotSkipItemsQueue = cannotSkipItemsQueue; SortDirection = sortDirection; SortDirectionsAvailCount = sortDirectionsAvailCount; SortDirectionsAvailMask = sortDirectionsAvailMask; SortDirectionsAvailList = sortDirectionsAvailList; } public byte SortDirection { get => Bitfield.Get(RawBits0, 0, 2); set => Bitfield.Set(ref RawBits0, value, 0, 2); } public byte SortDirectionsAvailCount { get => Bitfield.Get(RawBits0, 2, 2); set => Bitfield.Set(ref RawBits0, value, 2, 2); } public byte SortDirectionsAvailMask { get => Bitfield.Get(RawBits0, 4, 4); set => Bitfield.Set(ref RawBits0, value, 4, 4); } /// /// To be documented. /// public unsafe void Destroy() { fixed (ImGuiTableColumn* @this = &this) { ImGui.DestroyNative(@this); } } } /// /// To be documented. /// #if NET5_0_OR_GREATER [DebuggerDisplay("{DebuggerDisplay,nq}")] #endif public unsafe struct ImGuiTableColumnPtr : IEquatable { public ImGuiTableColumnPtr(ImGuiTableColumn* handle) { Handle = handle; } public ImGuiTableColumn* Handle; public bool IsNull => Handle == null; public static ImGuiTableColumnPtr Null => new ImGuiTableColumnPtr(null); public ImGuiTableColumn this[int index] { get => Handle[index]; set => Handle[index] = value; } public static implicit operator ImGuiTableColumnPtr(ImGuiTableColumn* handle) => new ImGuiTableColumnPtr(handle); public static implicit operator ImGuiTableColumn*(ImGuiTableColumnPtr handle) => handle.Handle; public static bool operator ==(ImGuiTableColumnPtr left, ImGuiTableColumnPtr right) => left.Handle == right.Handle; public static bool operator !=(ImGuiTableColumnPtr left, ImGuiTableColumnPtr right) => left.Handle != right.Handle; public static bool operator ==(ImGuiTableColumnPtr left, ImGuiTableColumn* right) => left.Handle == right; public static bool operator !=(ImGuiTableColumnPtr left, ImGuiTableColumn* right) => left.Handle != right; public bool Equals(ImGuiTableColumnPtr other) => Handle == other.Handle; /// public override bool Equals(object obj) => obj is ImGuiTableColumnPtr handle && Equals(handle); /// public override int GetHashCode() => ((nuint)Handle).GetHashCode(); #if NET5_0_OR_GREATER private string DebuggerDisplay => string.Format("ImGuiTableColumnPtr [0x{0}]", ((nuint)Handle).ToString("X")); #endif /// /// To be documented. /// public ref ImGuiTableColumnFlags Flags => ref Unsafe.AsRef(&Handle->Flags); /// /// To be documented. /// public ref float WidthGiven => ref Unsafe.AsRef(&Handle->WidthGiven); /// /// To be documented. /// public ref float MinX => ref Unsafe.AsRef(&Handle->MinX); /// /// To be documented. /// public ref float MaxX => ref Unsafe.AsRef(&Handle->MaxX); /// /// To be documented. /// public ref float WidthRequest => ref Unsafe.AsRef(&Handle->WidthRequest); /// /// To be documented. /// public ref float WidthAuto => ref Unsafe.AsRef(&Handle->WidthAuto); /// /// To be documented. /// public ref float StretchWeight => ref Unsafe.AsRef(&Handle->StretchWeight); /// /// To be documented. /// public ref float InitStretchWeightOrWidth => ref Unsafe.AsRef(&Handle->InitStretchWeightOrWidth); /// /// To be documented. /// public ref ImRect ClipRect => ref Unsafe.AsRef(&Handle->ClipRect); /// /// To be documented. /// public ref uint UserID => ref Unsafe.AsRef(&Handle->UserID); /// /// To be documented. /// public ref float WorkMinX => ref Unsafe.AsRef(&Handle->WorkMinX); /// /// To be documented. /// public ref float WorkMaxX => ref Unsafe.AsRef(&Handle->WorkMaxX); /// /// To be documented. /// public ref float ItemWidth => ref Unsafe.AsRef(&Handle->ItemWidth); /// /// To be documented. /// public ref float ContentMaxXFrozen => ref Unsafe.AsRef(&Handle->ContentMaxXFrozen); /// /// To be documented. /// public ref float ContentMaxXUnfrozen => ref Unsafe.AsRef(&Handle->ContentMaxXUnfrozen); /// /// To be documented. /// public ref float ContentMaxXHeadersUsed => ref Unsafe.AsRef(&Handle->ContentMaxXHeadersUsed); /// /// To be documented. /// public ref float ContentMaxXHeadersIdeal => ref Unsafe.AsRef(&Handle->ContentMaxXHeadersIdeal); /// /// To be documented. /// public ref short NameOffset => ref Unsafe.AsRef(&Handle->NameOffset); /// /// To be documented. /// public ref sbyte DisplayOrder => ref Unsafe.AsRef(&Handle->DisplayOrder); /// /// To be documented. /// public ref sbyte IndexWithinEnabledSet => ref Unsafe.AsRef(&Handle->IndexWithinEnabledSet); /// /// To be documented. /// public ref sbyte PrevEnabledColumn => ref Unsafe.AsRef(&Handle->PrevEnabledColumn); /// /// To be documented. /// public ref sbyte NextEnabledColumn => ref Unsafe.AsRef(&Handle->NextEnabledColumn); /// /// To be documented. /// public ref sbyte SortOrder => ref Unsafe.AsRef(&Handle->SortOrder); /// /// To be documented. /// public ref byte DrawChannelCurrent => ref Unsafe.AsRef(&Handle->DrawChannelCurrent); /// /// To be documented. /// public ref byte DrawChannelFrozen => ref Unsafe.AsRef(&Handle->DrawChannelFrozen); /// /// To be documented. /// public ref byte DrawChannelUnfrozen => ref Unsafe.AsRef(&Handle->DrawChannelUnfrozen); /// /// To be documented. /// public ref bool IsEnabled => ref Unsafe.AsRef(&Handle->IsEnabled); /// /// To be documented. /// public ref bool IsUserEnabled => ref Unsafe.AsRef(&Handle->IsUserEnabled); /// /// To be documented. /// public ref bool IsUserEnabledNextFrame => ref Unsafe.AsRef(&Handle->IsUserEnabledNextFrame); /// /// To be documented. /// public ref bool IsVisibleX => ref Unsafe.AsRef(&Handle->IsVisibleX); /// /// To be documented. /// public ref bool IsVisibleY => ref Unsafe.AsRef(&Handle->IsVisibleY); /// /// To be documented. /// public ref bool IsRequestOutput => ref Unsafe.AsRef(&Handle->IsRequestOutput); /// /// To be documented. /// public ref bool IsSkipItems => ref Unsafe.AsRef(&Handle->IsSkipItems); /// /// To be documented. /// public ref bool IsPreserveWidthAuto => ref Unsafe.AsRef(&Handle->IsPreserveWidthAuto); /// /// To be documented. /// public ref sbyte NavLayerCurrent => ref Unsafe.AsRef(&Handle->NavLayerCurrent); /// /// To be documented. /// public ref byte AutoFitQueue => ref Unsafe.AsRef(&Handle->AutoFitQueue); /// /// To be documented. /// public ref byte CannotSkipItemsQueue => ref Unsafe.AsRef(&Handle->CannotSkipItemsQueue); /// /// To be documented. /// public byte SortDirection { get => Handle->SortDirection; set => Handle->SortDirection = value; } /// /// To be documented. /// public byte SortDirectionsAvailCount { get => Handle->SortDirectionsAvailCount; set => Handle->SortDirectionsAvailCount = value; } /// /// To be documented. /// public byte SortDirectionsAvailMask { get => Handle->SortDirectionsAvailMask; set => Handle->SortDirectionsAvailMask = value; } /// /// To be documented. /// public ref byte SortDirectionsAvailList => ref Unsafe.AsRef(&Handle->SortDirectionsAvailList); /// /// To be documented. /// public unsafe void Destroy() { ImGui.DestroyNative(Handle); } } }