// ------------------------------------------------------------------------------ // // 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.Runtime.CompilerServices; using System.Runtime.InteropServices; using HexaGen.Runtime; using System.Numerics; namespace Dalamud.Bindings.ImGui { public unsafe partial class ImGuiP { /// /// To be documented. /// public static void SetCurrentViewport(ImGuiWindowPtr window, ref ImGuiViewportP viewport) { fixed (ImGuiViewportP* pviewport = &viewport) { SetCurrentViewportNative(window, (ImGuiViewportP*)pviewport); } } /// /// To be documented. /// public static void SetCurrentViewport(ref ImGuiWindow window, ref ImGuiViewportP viewport) { fixed (ImGuiWindow* pwindow = &window) { fixed (ImGuiViewportP* pviewport = &viewport) { SetCurrentViewportNative((ImGuiWindow*)pwindow, (ImGuiViewportP*)pviewport); } } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static ImGuiPlatformMonitor* GetViewportPlatformMonitorNative(ImGuiViewport* viewport) { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[956])(viewport); #else return (ImGuiPlatformMonitor*)((delegate* unmanaged[Cdecl])funcTable[956])((nint)viewport); #endif } /// /// To be documented. /// public static ImGuiPlatformMonitorPtr GetViewportPlatformMonitor(ImGuiViewportPtr viewport) { ImGuiPlatformMonitorPtr ret = GetViewportPlatformMonitorNative(viewport); return ret; } /// /// To be documented. /// public static ImGuiPlatformMonitorPtr GetViewportPlatformMonitor(ref ImGuiViewport viewport) { fixed (ImGuiViewport* pviewport = &viewport) { ImGuiPlatformMonitorPtr ret = GetViewportPlatformMonitorNative((ImGuiViewport*)pviewport); return ret; } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static ImGuiViewportP* FindHoveredViewportFromPlatformWindowStackNative(Vector2 mousePlatformPos) { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[957])(mousePlatformPos); #else return (ImGuiViewportP*)((delegate* unmanaged[Cdecl])funcTable[957])(mousePlatformPos); #endif } /// /// To be documented. /// public static ImGuiViewportPPtr FindHoveredViewportFromPlatformWindowStack(Vector2 mousePlatformPos) { ImGuiViewportPPtr ret = FindHoveredViewportFromPlatformWindowStackNative(mousePlatformPos); return ret; } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void MarkIniSettingsDirtyNative() { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[958])(); #else ((delegate* unmanaged[Cdecl])funcTable[958])(); #endif } /// /// To be documented. /// public static void MarkIniSettingsDirty() { MarkIniSettingsDirtyNative(); } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void MarkIniSettingsDirtyNative(ImGuiWindow* window) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[959])(window); #else ((delegate* unmanaged[Cdecl])funcTable[959])((nint)window); #endif } /// /// To be documented. /// public static void MarkIniSettingsDirty(ImGuiWindowPtr window) { MarkIniSettingsDirtyNative(window); } /// /// To be documented. /// public static void MarkIniSettingsDirty(ref ImGuiWindow window) { fixed (ImGuiWindow* pwindow = &window) { MarkIniSettingsDirtyNative((ImGuiWindow*)pwindow); } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void ClearIniSettingsNative() { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[960])(); #else ((delegate* unmanaged[Cdecl])funcTable[960])(); #endif } /// /// To be documented. /// public static void ClearIniSettings() { ClearIniSettingsNative(); } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static ImGuiWindowSettings* CreateNewWindowSettingsNative(byte* name) { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[961])(name); #else return (ImGuiWindowSettings*)((delegate* unmanaged[Cdecl])funcTable[961])((nint)name); #endif } /// /// To be documented. /// public static ImGuiWindowSettingsPtr CreateNewWindowSettings(byte* name) { ImGuiWindowSettingsPtr ret = CreateNewWindowSettingsNative(name); return ret; } /// /// To be documented. /// public static ImGuiWindowSettingsPtr CreateNewWindowSettings(ref byte name) { fixed (byte* pname = &name) { ImGuiWindowSettingsPtr ret = CreateNewWindowSettingsNative((byte*)pname); return ret; } } /// /// To be documented. /// public static ImGuiWindowSettingsPtr CreateNewWindowSettings(ReadOnlySpan name) { fixed (byte* pname = name) { ImGuiWindowSettingsPtr ret = CreateNewWindowSettingsNative((byte*)pname); return ret; } } /// /// To be documented. /// public static ImGuiWindowSettingsPtr CreateNewWindowSettings(string name) { byte* pStr0 = null; int pStrSize0 = 0; if (name != null) { pStrSize0 = Utils.GetByteCountUTF8(name); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(name, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } ImGuiWindowSettingsPtr ret = CreateNewWindowSettingsNative(pStr0); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret; } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static ImGuiWindowSettings* FindWindowSettingsNative(uint id) { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[962])(id); #else return (ImGuiWindowSettings*)((delegate* unmanaged[Cdecl])funcTable[962])(id); #endif } /// /// To be documented. /// public static ImGuiWindowSettingsPtr FindWindowSettings(uint id) { ImGuiWindowSettingsPtr ret = FindWindowSettingsNative(id); return ret; } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static ImGuiWindowSettings* FindOrCreateWindowSettingsNative(byte* name) { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[963])(name); #else return (ImGuiWindowSettings*)((delegate* unmanaged[Cdecl])funcTable[963])((nint)name); #endif } /// /// To be documented. /// public static ImGuiWindowSettingsPtr FindOrCreateWindowSettings(byte* name) { ImGuiWindowSettingsPtr ret = FindOrCreateWindowSettingsNative(name); return ret; } /// /// To be documented. /// public static ImGuiWindowSettingsPtr FindOrCreateWindowSettings(ref byte name) { fixed (byte* pname = &name) { ImGuiWindowSettingsPtr ret = FindOrCreateWindowSettingsNative((byte*)pname); return ret; } } /// /// To be documented. /// public static ImGuiWindowSettingsPtr FindOrCreateWindowSettings(ReadOnlySpan name) { fixed (byte* pname = name) { ImGuiWindowSettingsPtr ret = FindOrCreateWindowSettingsNative((byte*)pname); return ret; } } /// /// To be documented. /// public static ImGuiWindowSettingsPtr FindOrCreateWindowSettings(string name) { byte* pStr0 = null; int pStrSize0 = 0; if (name != null) { pStrSize0 = Utils.GetByteCountUTF8(name); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(name, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } ImGuiWindowSettingsPtr ret = FindOrCreateWindowSettingsNative(pStr0); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret; } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void AddSettingsHandlerNative(ImGuiSettingsHandler* handler) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[964])(handler); #else ((delegate* unmanaged[Cdecl])funcTable[964])((nint)handler); #endif } /// /// To be documented. /// public static void AddSettingsHandler(ImGuiSettingsHandlerPtr handler) { AddSettingsHandlerNative(handler); } /// /// To be documented. /// public static void AddSettingsHandler(ref ImGuiSettingsHandler handler) { fixed (ImGuiSettingsHandler* phandler = &handler) { AddSettingsHandlerNative((ImGuiSettingsHandler*)phandler); } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void RemoveSettingsHandlerNative(byte* typeName) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[965])(typeName); #else ((delegate* unmanaged[Cdecl])funcTable[965])((nint)typeName); #endif } /// /// To be documented. /// public static void RemoveSettingsHandler(byte* typeName) { RemoveSettingsHandlerNative(typeName); } /// /// To be documented. /// public static void RemoveSettingsHandler(ref byte typeName) { fixed (byte* ptypeName = &typeName) { RemoveSettingsHandlerNative((byte*)ptypeName); } } /// /// To be documented. /// public static void RemoveSettingsHandler(ReadOnlySpan typeName) { fixed (byte* ptypeName = typeName) { RemoveSettingsHandlerNative((byte*)ptypeName); } } /// /// To be documented. /// public static void RemoveSettingsHandler(string typeName) { byte* pStr0 = null; int pStrSize0 = 0; if (typeName != null) { pStrSize0 = Utils.GetByteCountUTF8(typeName); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(typeName, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } RemoveSettingsHandlerNative(pStr0); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static ImGuiSettingsHandler* FindSettingsHandlerNative(byte* typeName) { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[966])(typeName); #else return (ImGuiSettingsHandler*)((delegate* unmanaged[Cdecl])funcTable[966])((nint)typeName); #endif } /// /// To be documented. /// public static ImGuiSettingsHandlerPtr FindSettingsHandler(byte* typeName) { ImGuiSettingsHandlerPtr ret = FindSettingsHandlerNative(typeName); return ret; } /// /// To be documented. /// public static ImGuiSettingsHandlerPtr FindSettingsHandler(ref byte typeName) { fixed (byte* ptypeName = &typeName) { ImGuiSettingsHandlerPtr ret = FindSettingsHandlerNative((byte*)ptypeName); return ret; } } /// /// To be documented. /// public static ImGuiSettingsHandlerPtr FindSettingsHandler(ReadOnlySpan typeName) { fixed (byte* ptypeName = typeName) { ImGuiSettingsHandlerPtr ret = FindSettingsHandlerNative((byte*)ptypeName); return ret; } } /// /// To be documented. /// public static ImGuiSettingsHandlerPtr FindSettingsHandler(string typeName) { byte* pStr0 = null; int pStrSize0 = 0; if (typeName != null) { pStrSize0 = Utils.GetByteCountUTF8(typeName); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(typeName, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } ImGuiSettingsHandlerPtr ret = FindSettingsHandlerNative(pStr0); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret; } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void SetNextWindowScrollNative(Vector2 scroll) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[967])(scroll); #else ((delegate* unmanaged[Cdecl])funcTable[967])(scroll); #endif } /// /// To be documented. /// public static void SetNextWindowScroll(Vector2 scroll) { SetNextWindowScrollNative(scroll); } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void SetScrollXNative(ImGuiWindow* window, float scrollX) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[968])(window, scrollX); #else ((delegate* unmanaged[Cdecl])funcTable[968])((nint)window, scrollX); #endif } /// /// To be documented. /// public static void SetScrollX(ImGuiWindowPtr window, float scrollX) { SetScrollXNative(window, scrollX); } /// /// To be documented. /// public static void SetScrollX(ref ImGuiWindow window, float scrollX) { fixed (ImGuiWindow* pwindow = &window) { SetScrollXNative((ImGuiWindow*)pwindow, scrollX); } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void SetScrollYNative(ImGuiWindow* window, float scrollY) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[969])(window, scrollY); #else ((delegate* unmanaged[Cdecl])funcTable[969])((nint)window, scrollY); #endif } /// /// To be documented. /// public static void SetScrollY(ImGuiWindowPtr window, float scrollY) { SetScrollYNative(window, scrollY); } /// /// To be documented. /// public static void SetScrollY(ref ImGuiWindow window, float scrollY) { fixed (ImGuiWindow* pwindow = &window) { SetScrollYNative((ImGuiWindow*)pwindow, scrollY); } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void SetScrollFromPosXNative(ImGuiWindow* window, float localX, float centerXRatio) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[970])(window, localX, centerXRatio); #else ((delegate* unmanaged[Cdecl])funcTable[970])((nint)window, localX, centerXRatio); #endif } /// /// To be documented. /// public static void SetScrollFromPosX(ImGuiWindowPtr window, float localX, float centerXRatio) { SetScrollFromPosXNative(window, localX, centerXRatio); } /// /// To be documented. /// public static void SetScrollFromPosX(ref ImGuiWindow window, float localX, float centerXRatio) { fixed (ImGuiWindow* pwindow = &window) { SetScrollFromPosXNative((ImGuiWindow*)pwindow, localX, centerXRatio); } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void SetScrollFromPosYNative(ImGuiWindow* window, float localY, float centerYRatio) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[971])(window, localY, centerYRatio); #else ((delegate* unmanaged[Cdecl])funcTable[971])((nint)window, localY, centerYRatio); #endif } /// /// To be documented. /// public static void SetScrollFromPosY(ImGuiWindowPtr window, float localY, float centerYRatio) { SetScrollFromPosYNative(window, localY, centerYRatio); } /// /// To be documented. /// public static void SetScrollFromPosY(ref ImGuiWindow window, float localY, float centerYRatio) { fixed (ImGuiWindow* pwindow = &window) { SetScrollFromPosYNative((ImGuiWindow*)pwindow, localY, centerYRatio); } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void ScrollToItemNative(ImGuiScrollFlags flags) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[972])(flags); #else ((delegate* unmanaged[Cdecl])funcTable[972])(flags); #endif } /// /// To be documented. /// public static void ScrollToItem(ImGuiScrollFlags flags) { ScrollToItemNative(flags); } /// /// To be documented. /// public static void ScrollToItem() { ScrollToItemNative((ImGuiScrollFlags)(0)); } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void ScrollToRectNative(ImGuiWindow* window, ImRect rect, ImGuiScrollFlags flags) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[973])(window, rect, flags); #else ((delegate* unmanaged[Cdecl])funcTable[973])((nint)window, rect, flags); #endif } /// /// To be documented. /// public static void ScrollToRect(ImGuiWindowPtr window, ImRect rect, ImGuiScrollFlags flags) { ScrollToRectNative(window, rect, flags); } /// /// To be documented. /// public static void ScrollToRect(ImGuiWindowPtr window, ImRect rect) { ScrollToRectNative(window, rect, (ImGuiScrollFlags)(0)); } /// /// To be documented. /// public static void ScrollToRect(ref ImGuiWindow window, ImRect rect, ImGuiScrollFlags flags) { fixed (ImGuiWindow* pwindow = &window) { ScrollToRectNative((ImGuiWindow*)pwindow, rect, flags); } } /// /// To be documented. /// public static void ScrollToRect(ref ImGuiWindow window, ImRect rect) { fixed (ImGuiWindow* pwindow = &window) { ScrollToRectNative((ImGuiWindow*)pwindow, rect, (ImGuiScrollFlags)(0)); } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void ScrollToRectExNative(Vector2* pOut, ImGuiWindow* window, ImRect rect, ImGuiScrollFlags flags) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[974])(pOut, window, rect, flags); #else ((delegate* unmanaged[Cdecl])funcTable[974])((nint)pOut, (nint)window, rect, flags); #endif } /// /// To be documented. /// public static Vector2 ScrollToRectEx(ImGuiWindowPtr window, ImRect rect) { Vector2 ret; ScrollToRectExNative(&ret, window, rect, (ImGuiScrollFlags)(0)); return ret; } /// /// To be documented. /// public static Vector2 ScrollToRectEx(ImGuiWindowPtr window, ImRect rect, ImGuiScrollFlags flags) { Vector2 ret; ScrollToRectExNative(&ret, window, rect, flags); return ret; } /// /// To be documented. /// public static void ScrollToRectEx(Vector2* pOut, ImGuiWindowPtr window, ImRect rect, ImGuiScrollFlags flags) { ScrollToRectExNative(pOut, window, rect, flags); } /// /// To be documented. /// public static void ScrollToRectEx(Vector2* pOut, ImGuiWindowPtr window, ImRect rect) { ScrollToRectExNative(pOut, window, rect, (ImGuiScrollFlags)(0)); } /// /// To be documented. /// public static void ScrollToRectEx(ref Vector2 pOut, ImGuiWindowPtr window, ImRect rect, ImGuiScrollFlags flags) { fixed (Vector2* ppOut = &pOut) { ScrollToRectExNative((Vector2*)ppOut, window, rect, flags); } } /// /// To be documented. /// public static void ScrollToRectEx(ref Vector2 pOut, ImGuiWindowPtr window, ImRect rect) { fixed (Vector2* ppOut = &pOut) { ScrollToRectExNative((Vector2*)ppOut, window, rect, (ImGuiScrollFlags)(0)); } } /// /// To be documented. /// public static Vector2 ScrollToRectEx(ref ImGuiWindow window, ImRect rect) { fixed (ImGuiWindow* pwindow = &window) { Vector2 ret; ScrollToRectExNative(&ret, (ImGuiWindow*)pwindow, rect, (ImGuiScrollFlags)(0)); return ret; } } /// /// To be documented. /// public static Vector2 ScrollToRectEx(ref ImGuiWindow window, ImRect rect, ImGuiScrollFlags flags) { fixed (ImGuiWindow* pwindow = &window) { Vector2 ret; ScrollToRectExNative(&ret, (ImGuiWindow*)pwindow, rect, flags); return ret; } } /// /// To be documented. /// public static void ScrollToRectEx(Vector2* pOut, ref ImGuiWindow window, ImRect rect, ImGuiScrollFlags flags) { fixed (ImGuiWindow* pwindow = &window) { ScrollToRectExNative(pOut, (ImGuiWindow*)pwindow, rect, flags); } } /// /// To be documented. /// public static void ScrollToRectEx(Vector2* pOut, ref ImGuiWindow window, ImRect rect) { fixed (ImGuiWindow* pwindow = &window) { ScrollToRectExNative(pOut, (ImGuiWindow*)pwindow, rect, (ImGuiScrollFlags)(0)); } } /// /// To be documented. /// public static void ScrollToRectEx(ref Vector2 pOut, ref ImGuiWindow window, ImRect rect, ImGuiScrollFlags flags) { fixed (Vector2* ppOut = &pOut) { fixed (ImGuiWindow* pwindow = &window) { ScrollToRectExNative((Vector2*)ppOut, (ImGuiWindow*)pwindow, rect, flags); } } } /// /// To be documented. /// public static void ScrollToRectEx(ref Vector2 pOut, ref ImGuiWindow window, ImRect rect) { fixed (Vector2* ppOut = &pOut) { fixed (ImGuiWindow* pwindow = &window) { ScrollToRectExNative((Vector2*)ppOut, (ImGuiWindow*)pwindow, rect, (ImGuiScrollFlags)(0)); } } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void ScrollToBringRectIntoViewNative(ImGuiWindow* window, ImRect rect) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[975])(window, rect); #else ((delegate* unmanaged[Cdecl])funcTable[975])((nint)window, rect); #endif } /// /// To be documented. /// public static void ScrollToBringRectIntoView(ImGuiWindowPtr window, ImRect rect) { ScrollToBringRectIntoViewNative(window, rect); } /// /// To be documented. /// public static void ScrollToBringRectIntoView(ref ImGuiWindow window, ImRect rect) { fixed (ImGuiWindow* pwindow = &window) { ScrollToBringRectIntoViewNative((ImGuiWindow*)pwindow, rect); } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static uint GetItemIDNative() { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[976])(); #else return (uint)((delegate* unmanaged[Cdecl])funcTable[976])(); #endif } /// /// To be documented. /// public static uint GetItemID() { uint ret = GetItemIDNative(); return ret; } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static ImGuiItemStatusFlags GetItemStatusFlagsNative() { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[977])(); #else return (ImGuiItemStatusFlags)((delegate* unmanaged[Cdecl])funcTable[977])(); #endif } /// /// To be documented. /// public static ImGuiItemStatusFlags GetItemStatusFlags() { ImGuiItemStatusFlags ret = GetItemStatusFlagsNative(); return ret; } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static ImGuiItemFlags GetItemFlagsNative() { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[978])(); #else return (ImGuiItemFlags)((delegate* unmanaged[Cdecl])funcTable[978])(); #endif } /// /// To be documented. /// public static ImGuiItemFlags GetItemFlags() { ImGuiItemFlags ret = GetItemFlagsNative(); return ret; } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static uint GetActiveIDNative() { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[979])(); #else return (uint)((delegate* unmanaged[Cdecl])funcTable[979])(); #endif } /// /// To be documented. /// public static uint GetActiveID() { uint ret = GetActiveIDNative(); return ret; } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static uint GetFocusIDNative() { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[980])(); #else return (uint)((delegate* unmanaged[Cdecl])funcTable[980])(); #endif } /// /// To be documented. /// public static uint GetFocusID() { uint ret = GetFocusIDNative(); return ret; } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void SetActiveIDNative(uint id, ImGuiWindow* window) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[981])(id, window); #else ((delegate* unmanaged[Cdecl])funcTable[981])(id, (nint)window); #endif } /// /// To be documented. /// public static void SetActiveID(uint id, ImGuiWindowPtr window) { SetActiveIDNative(id, window); } /// /// To be documented. /// public static void SetActiveID(uint id, ref ImGuiWindow window) { fixed (ImGuiWindow* pwindow = &window) { SetActiveIDNative(id, (ImGuiWindow*)pwindow); } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void SetFocusIDNative(uint id, ImGuiWindow* window) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[982])(id, window); #else ((delegate* unmanaged[Cdecl])funcTable[982])(id, (nint)window); #endif } /// /// To be documented. /// public static void SetFocusID(uint id, ImGuiWindowPtr window) { SetFocusIDNative(id, window); } /// /// To be documented. /// public static void SetFocusID(uint id, ref ImGuiWindow window) { fixed (ImGuiWindow* pwindow = &window) { SetFocusIDNative(id, (ImGuiWindow*)pwindow); } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void ClearActiveIDNative() { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[983])(); #else ((delegate* unmanaged[Cdecl])funcTable[983])(); #endif } /// /// To be documented. /// public static void ClearActiveID() { ClearActiveIDNative(); } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static uint GetHoveredIDNative() { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[984])(); #else return (uint)((delegate* unmanaged[Cdecl])funcTable[984])(); #endif } /// /// To be documented. /// public static uint GetHoveredID() { uint ret = GetHoveredIDNative(); return ret; } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void SetHoveredIDNative(uint id) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[985])(id); #else ((delegate* unmanaged[Cdecl])funcTable[985])(id); #endif } /// /// To be documented. /// public static void SetHoveredID(uint id) { SetHoveredIDNative(id); } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void KeepAliveIDNative(uint id) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[986])(id); #else ((delegate* unmanaged[Cdecl])funcTable[986])(id); #endif } /// /// To be documented. /// public static void KeepAliveID(uint id) { KeepAliveIDNative(id); } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void MarkItemEditedNative(uint id) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[987])(id); #else ((delegate* unmanaged[Cdecl])funcTable[987])(id); #endif } /// /// To be documented. /// public static void MarkItemEdited(uint id) { MarkItemEditedNative(id); } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void PushOverrideIDNative(uint id) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[988])(id); #else ((delegate* unmanaged[Cdecl])funcTable[988])(id); #endif } /// /// To be documented. /// public static void PushOverrideID(uint id) { PushOverrideIDNative(id); } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static uint GetIDWithSeedNative(byte* strIdBegin, byte* strIdEnd, uint seed) { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[989])(strIdBegin, strIdEnd, seed); #else return (uint)((delegate* unmanaged[Cdecl])funcTable[989])((nint)strIdBegin, (nint)strIdEnd, seed); #endif } /// /// To be documented. /// public static uint GetIDWithSeed(byte* strIdBegin, byte* strIdEnd, uint seed) { uint ret = GetIDWithSeedNative(strIdBegin, strIdEnd, seed); return ret; } /// /// To be documented. /// public static uint GetIDWithSeed(ref byte strIdBegin, byte* strIdEnd, uint seed) { fixed (byte* pstrIdBegin = &strIdBegin) { uint ret = GetIDWithSeedNative((byte*)pstrIdBegin, strIdEnd, seed); return ret; } } /// /// To be documented. /// public static uint GetIDWithSeed(ReadOnlySpan strIdBegin, byte* strIdEnd, uint seed) { fixed (byte* pstrIdBegin = strIdBegin) { uint ret = GetIDWithSeedNative((byte*)pstrIdBegin, strIdEnd, seed); return ret; } } /// /// To be documented. /// public static uint GetIDWithSeed(string strIdBegin, byte* strIdEnd, uint seed) { byte* pStr0 = null; int pStrSize0 = 0; if (strIdBegin != null) { pStrSize0 = Utils.GetByteCountUTF8(strIdBegin); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(strIdBegin, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } uint ret = GetIDWithSeedNative(pStr0, strIdEnd, seed); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret; } /// /// To be documented. /// public static uint GetIDWithSeed(byte* strIdBegin, ref byte strIdEnd, uint seed) { fixed (byte* pstrIdEnd = &strIdEnd) { uint ret = GetIDWithSeedNative(strIdBegin, (byte*)pstrIdEnd, seed); return ret; } } /// /// To be documented. /// public static uint GetIDWithSeed(byte* strIdBegin, ReadOnlySpan strIdEnd, uint seed) { fixed (byte* pstrIdEnd = strIdEnd) { uint ret = GetIDWithSeedNative(strIdBegin, (byte*)pstrIdEnd, seed); return ret; } } /// /// To be documented. /// public static uint GetIDWithSeed(byte* strIdBegin, string strIdEnd, uint seed) { byte* pStr0 = null; int pStrSize0 = 0; if (strIdEnd != null) { pStrSize0 = Utils.GetByteCountUTF8(strIdEnd); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(strIdEnd, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } uint ret = GetIDWithSeedNative(strIdBegin, pStr0, seed); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret; } /// /// To be documented. /// public static uint GetIDWithSeed(ref byte strIdBegin, ref byte strIdEnd, uint seed) { fixed (byte* pstrIdBegin = &strIdBegin) { fixed (byte* pstrIdEnd = &strIdEnd) { uint ret = GetIDWithSeedNative((byte*)pstrIdBegin, (byte*)pstrIdEnd, seed); return ret; } } } /// /// To be documented. /// public static uint GetIDWithSeed(ReadOnlySpan strIdBegin, ReadOnlySpan strIdEnd, uint seed) { fixed (byte* pstrIdBegin = strIdBegin) { fixed (byte* pstrIdEnd = strIdEnd) { uint ret = GetIDWithSeedNative((byte*)pstrIdBegin, (byte*)pstrIdEnd, seed); return ret; } } } /// /// To be documented. /// public static uint GetIDWithSeed(string strIdBegin, string strIdEnd, uint seed) { byte* pStr0 = null; int pStrSize0 = 0; if (strIdBegin != null) { pStrSize0 = Utils.GetByteCountUTF8(strIdBegin); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(strIdBegin, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } byte* pStr1 = null; int pStrSize1 = 0; if (strIdEnd != null) { pStrSize1 = Utils.GetByteCountUTF8(strIdEnd); if (pStrSize1 >= Utils.MaxStackallocSize) { pStr1 = Utils.Alloc(pStrSize1 + 1); } else { byte* pStrStack1 = stackalloc byte[pStrSize1 + 1]; pStr1 = pStrStack1; } int pStrOffset1 = Utils.EncodeStringUTF8(strIdEnd, pStr1, pStrSize1); pStr1[pStrOffset1] = 0; } uint ret = GetIDWithSeedNative(pStr0, pStr1, seed); if (pStrSize1 >= Utils.MaxStackallocSize) { Utils.Free(pStr1); } if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret; } /// /// To be documented. /// public static uint GetIDWithSeed(ref byte strIdBegin, ReadOnlySpan strIdEnd, uint seed) { fixed (byte* pstrIdBegin = &strIdBegin) { fixed (byte* pstrIdEnd = strIdEnd) { uint ret = GetIDWithSeedNative((byte*)pstrIdBegin, (byte*)pstrIdEnd, seed); return ret; } } } /// /// To be documented. /// public static uint GetIDWithSeed(ref byte strIdBegin, string strIdEnd, uint seed) { fixed (byte* pstrIdBegin = &strIdBegin) { byte* pStr0 = null; int pStrSize0 = 0; if (strIdEnd != null) { pStrSize0 = Utils.GetByteCountUTF8(strIdEnd); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(strIdEnd, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } uint ret = GetIDWithSeedNative((byte*)pstrIdBegin, pStr0, seed); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret; } } /// /// To be documented. /// public static uint GetIDWithSeed(ReadOnlySpan strIdBegin, ref byte strIdEnd, uint seed) { fixed (byte* pstrIdBegin = strIdBegin) { fixed (byte* pstrIdEnd = &strIdEnd) { uint ret = GetIDWithSeedNative((byte*)pstrIdBegin, (byte*)pstrIdEnd, seed); return ret; } } } /// /// To be documented. /// public static uint GetIDWithSeed(ReadOnlySpan strIdBegin, string strIdEnd, uint seed) { fixed (byte* pstrIdBegin = strIdBegin) { byte* pStr0 = null; int pStrSize0 = 0; if (strIdEnd != null) { pStrSize0 = Utils.GetByteCountUTF8(strIdEnd); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(strIdEnd, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } uint ret = GetIDWithSeedNative((byte*)pstrIdBegin, pStr0, seed); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret; } } /// /// To be documented. /// public static uint GetIDWithSeed(string strIdBegin, ref byte strIdEnd, uint seed) { byte* pStr0 = null; int pStrSize0 = 0; if (strIdBegin != null) { pStrSize0 = Utils.GetByteCountUTF8(strIdBegin); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(strIdBegin, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } fixed (byte* pstrIdEnd = &strIdEnd) { uint ret = GetIDWithSeedNative(pStr0, (byte*)pstrIdEnd, seed); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret; } } /// /// To be documented. /// public static uint GetIDWithSeed(string strIdBegin, ReadOnlySpan strIdEnd, uint seed) { byte* pStr0 = null; int pStrSize0 = 0; if (strIdBegin != null) { pStrSize0 = Utils.GetByteCountUTF8(strIdBegin); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(strIdBegin, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } fixed (byte* pstrIdEnd = strIdEnd) { uint ret = GetIDWithSeedNative(pStr0, (byte*)pstrIdEnd, seed); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret; } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void ItemSizeNative(Vector2 size, float textBaselineY) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[990])(size, textBaselineY); #else ((delegate* unmanaged[Cdecl])funcTable[990])(size, textBaselineY); #endif } /// /// To be documented. /// public static void ItemSize(Vector2 size, float textBaselineY) { ItemSizeNative(size, textBaselineY); } /// /// To be documented. /// public static void ItemSize(Vector2 size) { ItemSizeNative(size, (float)(-1.0f)); } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void ItemSizeNative(ImRect bb, float textBaselineY) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[991])(bb, textBaselineY); #else ((delegate* unmanaged[Cdecl])funcTable[991])(bb, textBaselineY); #endif } /// /// To be documented. /// public static void ItemSize(ImRect bb, float textBaselineY) { ItemSizeNative(bb, textBaselineY); } /// /// To be documented. /// public static void ItemSize(ImRect bb) { ItemSizeNative(bb, (float)(-1.0f)); } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static byte ItemAddNative(ImRect bb, uint id, ImRect* navBb, ImGuiItemFlags extraFlags) { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[992])(bb, id, navBb, extraFlags); #else return (byte)((delegate* unmanaged[Cdecl])funcTable[992])(bb, id, (nint)navBb, extraFlags); #endif } /// /// To be documented. /// public static bool ItemAdd(ImRect bb, uint id, ImRectPtr navBb, ImGuiItemFlags extraFlags) { byte ret = ItemAddNative(bb, id, navBb, extraFlags); return ret != 0; } /// /// To be documented. /// public static bool ItemAdd(ImRect bb, uint id, ImRectPtr navBb) { byte ret = ItemAddNative(bb, id, navBb, (ImGuiItemFlags)(0)); return ret != 0; } /// /// To be documented. /// public static bool ItemAdd(ImRect bb, uint id) { byte ret = ItemAddNative(bb, id, (ImRect*)(default), (ImGuiItemFlags)(0)); return ret != 0; } /// /// To be documented. /// public static bool ItemAdd(ImRect bb, uint id, ImGuiItemFlags extraFlags) { byte ret = ItemAddNative(bb, id, (ImRect*)(default), extraFlags); return ret != 0; } /// /// To be documented. /// public static bool ItemAdd(ImRect bb, uint id, ref ImRect navBb, ImGuiItemFlags extraFlags) { fixed (ImRect* pnavBb = &navBb) { byte ret = ItemAddNative(bb, id, (ImRect*)pnavBb, extraFlags); return ret != 0; } } /// /// To be documented. /// public static bool ItemAdd(ImRect bb, uint id, ref ImRect navBb) { fixed (ImRect* pnavBb = &navBb) { byte ret = ItemAddNative(bb, id, (ImRect*)pnavBb, (ImGuiItemFlags)(0)); return ret != 0; } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static byte ItemHoverableNative(ImRect bb, uint id) { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[993])(bb, id); #else return (byte)((delegate* unmanaged[Cdecl])funcTable[993])(bb, id); #endif } /// /// To be documented. /// public static bool ItemHoverable(ImRect bb, uint id) { byte ret = ItemHoverableNative(bb, id); return ret != 0; } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static byte IsClippedExNative(ImRect bb, uint id) { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[994])(bb, id); #else return (byte)((delegate* unmanaged[Cdecl])funcTable[994])(bb, id); #endif } /// /// To be documented. /// public static bool IsClippedEx(ImRect bb, uint id) { byte ret = IsClippedExNative(bb, id); return ret != 0; } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void SetLastItemDataNative(uint itemId, ImGuiItemFlags inFlags, ImGuiItemStatusFlags statusFlags, ImRect itemRect) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[995])(itemId, inFlags, statusFlags, itemRect); #else ((delegate* unmanaged[Cdecl])funcTable[995])(itemId, inFlags, statusFlags, itemRect); #endif } /// /// To be documented. /// public static void SetLastItemData(uint itemId, ImGuiItemFlags inFlags, ImGuiItemStatusFlags statusFlags, ImRect itemRect) { SetLastItemDataNative(itemId, inFlags, statusFlags, itemRect); } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void CalcItemSizeNative(Vector2* pOut, Vector2 size, float defaultW, float defaultH) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[996])(pOut, size, defaultW, defaultH); #else ((delegate* unmanaged[Cdecl])funcTable[996])((nint)pOut, size, defaultW, defaultH); #endif } /// /// To be documented. /// public static Vector2 CalcItemSize(Vector2 size, float defaultW, float defaultH) { Vector2 ret; CalcItemSizeNative(&ret, size, defaultW, defaultH); return ret; } /// /// To be documented. /// public static void CalcItemSize(Vector2* pOut, Vector2 size, float defaultW, float defaultH) { CalcItemSizeNative(pOut, size, defaultW, defaultH); } /// /// To be documented. /// public static void CalcItemSize(ref Vector2 pOut, Vector2 size, float defaultW, float defaultH) { fixed (Vector2* ppOut = &pOut) { CalcItemSizeNative((Vector2*)ppOut, size, defaultW, defaultH); } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static float CalcWrapWidthForPosNative(Vector2 pos, float wrapPosX) { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[997])(pos, wrapPosX); #else return (float)((delegate* unmanaged[Cdecl])funcTable[997])(pos, wrapPosX); #endif } /// /// To be documented. /// public static float CalcWrapWidthForPos(Vector2 pos, float wrapPosX) { float ret = CalcWrapWidthForPosNative(pos, wrapPosX); return ret; } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void PushMultiItemsWidthsNative(int components, float widthFull) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[998])(components, widthFull); #else ((delegate* unmanaged[Cdecl])funcTable[998])(components, widthFull); #endif } /// /// To be documented. /// public static void PushMultiItemsWidths(int components, float widthFull) { PushMultiItemsWidthsNative(components, widthFull); } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static byte IsItemToggledSelectionNative() { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[999])(); #else return (byte)((delegate* unmanaged[Cdecl])funcTable[999])(); #endif } /// /// To be documented. /// public static bool IsItemToggledSelection() { byte ret = IsItemToggledSelectionNative(); return ret != 0; } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void GetContentRegionMaxAbsNative(Vector2* pOut) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[1000])(pOut); #else ((delegate* unmanaged[Cdecl])funcTable[1000])((nint)pOut); #endif } /// /// To be documented. /// public static Vector2 GetContentRegionMaxAbs() { Vector2 ret; GetContentRegionMaxAbsNative(&ret); return ret; } /// /// To be documented. /// public static void GetContentRegionMaxAbs(Vector2* pOut) { GetContentRegionMaxAbsNative(pOut); } /// /// To be documented. /// public static void GetContentRegionMaxAbs(ref Vector2 pOut) { fixed (Vector2* ppOut = &pOut) { GetContentRegionMaxAbsNative((Vector2*)ppOut); } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void ShrinkWidthsNative(ImGuiShrinkWidthItem* items, int count, float widthExcess) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[1001])(items, count, widthExcess); #else ((delegate* unmanaged[Cdecl])funcTable[1001])((nint)items, count, widthExcess); #endif } /// /// To be documented. /// public static void ShrinkWidths(ImGuiShrinkWidthItemPtr items, int count, float widthExcess) { ShrinkWidthsNative(items, count, widthExcess); } /// /// To be documented. /// public static void ShrinkWidths(ref ImGuiShrinkWidthItem items, int count, float widthExcess) { fixed (ImGuiShrinkWidthItem* pitems = &items) { ShrinkWidthsNative((ImGuiShrinkWidthItem*)pitems, count, widthExcess); } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void PushItemFlagNative(ImGuiItemFlags option, byte enabled) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[1002])(option, enabled); #else ((delegate* unmanaged[Cdecl])funcTable[1002])(option, enabled); #endif } /// /// To be documented. /// public static void PushItemFlag(ImGuiItemFlags option, bool enabled) { PushItemFlagNative(option, enabled ? (byte)1 : (byte)0); } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void PopItemFlagNative() { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[1003])(); #else ((delegate* unmanaged[Cdecl])funcTable[1003])(); #endif } /// /// To be documented. /// public static void PopItemFlag() { PopItemFlagNative(); } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void LogBeginNative(ImGuiLogType type, int autoOpenDepth) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[1004])(type, autoOpenDepth); #else ((delegate* unmanaged[Cdecl])funcTable[1004])(type, autoOpenDepth); #endif } /// /// To be documented. /// public static void LogBegin(ImGuiLogType type, int autoOpenDepth) { LogBeginNative(type, autoOpenDepth); } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void LogToBufferNative(int autoOpenDepth) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[1005])(autoOpenDepth); #else ((delegate* unmanaged[Cdecl])funcTable[1005])(autoOpenDepth); #endif } /// /// To be documented. /// public static void LogToBuffer(int autoOpenDepth) { LogToBufferNative(autoOpenDepth); } /// /// To be documented. /// public static void LogToBuffer() { LogToBufferNative((int)(-1)); } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void LogRenderedTextNative(Vector2* refPos, byte* text, byte* textEnd) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[1006])(refPos, text, textEnd); #else ((delegate* unmanaged[Cdecl])funcTable[1006])((nint)refPos, (nint)text, (nint)textEnd); #endif } /// /// To be documented. /// public static void LogRenderedText(Vector2* refPos, byte* text, byte* textEnd) { LogRenderedTextNative(refPos, text, textEnd); } /// /// To be documented. /// public static void LogRenderedText(Vector2* refPos, byte* text) { LogRenderedTextNative(refPos, text, (byte*)(default)); } /// /// To be documented. /// public static void LogRenderedText(ref Vector2 refPos, byte* text, byte* textEnd) { fixed (Vector2* prefPos = &refPos) { LogRenderedTextNative((Vector2*)prefPos, text, textEnd); } } /// /// To be documented. /// public static void LogRenderedText(ref Vector2 refPos, byte* text) { fixed (Vector2* prefPos = &refPos) { LogRenderedTextNative((Vector2*)prefPos, text, (byte*)(default)); } } /// /// To be documented. /// public static void LogRenderedText(Vector2* refPos, ref byte text, byte* textEnd) { fixed (byte* ptext = &text) { LogRenderedTextNative(refPos, (byte*)ptext, textEnd); } } /// /// To be documented. /// public static void LogRenderedText(Vector2* refPos, ref byte text) { fixed (byte* ptext = &text) { LogRenderedTextNative(refPos, (byte*)ptext, (byte*)(default)); } } /// /// To be documented. /// public static void LogRenderedText(Vector2* refPos, ReadOnlySpan text, byte* textEnd) { fixed (byte* ptext = text) { LogRenderedTextNative(refPos, (byte*)ptext, textEnd); } } /// /// To be documented. /// public static void LogRenderedText(Vector2* refPos, ReadOnlySpan text) { fixed (byte* ptext = text) { LogRenderedTextNative(refPos, (byte*)ptext, (byte*)(default)); } } /// /// To be documented. /// public static void LogRenderedText(Vector2* refPos, string text, byte* textEnd) { byte* pStr0 = null; int pStrSize0 = 0; if (text != null) { pStrSize0 = Utils.GetByteCountUTF8(text); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(text, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } LogRenderedTextNative(refPos, pStr0, textEnd); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } /// /// To be documented. /// public static void LogRenderedText(Vector2* refPos, string text) { byte* pStr0 = null; int pStrSize0 = 0; if (text != null) { pStrSize0 = Utils.GetByteCountUTF8(text); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(text, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } LogRenderedTextNative(refPos, pStr0, (byte*)(default)); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } /// /// To be documented. /// public static void LogRenderedText(ref Vector2 refPos, ref byte text, byte* textEnd) { fixed (Vector2* prefPos = &refPos) { fixed (byte* ptext = &text) { LogRenderedTextNative((Vector2*)prefPos, (byte*)ptext, textEnd); } } } /// /// To be documented. /// public static void LogRenderedText(ref Vector2 refPos, ref byte text) { fixed (Vector2* prefPos = &refPos) { fixed (byte* ptext = &text) { LogRenderedTextNative((Vector2*)prefPos, (byte*)ptext, (byte*)(default)); } } } /// /// To be documented. /// public static void LogRenderedText(ref Vector2 refPos, ReadOnlySpan text, byte* textEnd) { fixed (Vector2* prefPos = &refPos) { fixed (byte* ptext = text) { LogRenderedTextNative((Vector2*)prefPos, (byte*)ptext, textEnd); } } } /// /// To be documented. /// public static void LogRenderedText(ref Vector2 refPos, ReadOnlySpan text) { fixed (Vector2* prefPos = &refPos) { fixed (byte* ptext = text) { LogRenderedTextNative((Vector2*)prefPos, (byte*)ptext, (byte*)(default)); } } } /// /// To be documented. /// public static void LogRenderedText(ref Vector2 refPos, string text, byte* textEnd) { fixed (Vector2* prefPos = &refPos) { byte* pStr0 = null; int pStrSize0 = 0; if (text != null) { pStrSize0 = Utils.GetByteCountUTF8(text); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(text, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } LogRenderedTextNative((Vector2*)prefPos, pStr0, textEnd); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } } /// /// To be documented. /// public static void LogRenderedText(ref Vector2 refPos, string text) { fixed (Vector2* prefPos = &refPos) { byte* pStr0 = null; int pStrSize0 = 0; if (text != null) { pStrSize0 = Utils.GetByteCountUTF8(text); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(text, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } LogRenderedTextNative((Vector2*)prefPos, pStr0, (byte*)(default)); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } } /// /// To be documented. /// public static void LogRenderedText(Vector2* refPos, byte* text, ref byte textEnd) { fixed (byte* ptextEnd = &textEnd) { LogRenderedTextNative(refPos, text, (byte*)ptextEnd); } } /// /// To be documented. /// public static void LogRenderedText(Vector2* refPos, byte* text, ReadOnlySpan textEnd) { fixed (byte* ptextEnd = textEnd) { LogRenderedTextNative(refPos, text, (byte*)ptextEnd); } } /// /// To be documented. /// public static void LogRenderedText(Vector2* refPos, byte* text, string textEnd) { byte* pStr0 = null; int pStrSize0 = 0; if (textEnd != null) { pStrSize0 = Utils.GetByteCountUTF8(textEnd); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(textEnd, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } LogRenderedTextNative(refPos, text, pStr0); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } /// /// To be documented. /// public static void LogRenderedText(ref Vector2 refPos, byte* text, ref byte textEnd) { fixed (Vector2* prefPos = &refPos) { fixed (byte* ptextEnd = &textEnd) { LogRenderedTextNative((Vector2*)prefPos, text, (byte*)ptextEnd); } } } /// /// To be documented. /// public static void LogRenderedText(ref Vector2 refPos, byte* text, ReadOnlySpan textEnd) { fixed (Vector2* prefPos = &refPos) { fixed (byte* ptextEnd = textEnd) { LogRenderedTextNative((Vector2*)prefPos, text, (byte*)ptextEnd); } } } /// /// To be documented. /// public static void LogRenderedText(ref Vector2 refPos, byte* text, string textEnd) { fixed (Vector2* prefPos = &refPos) { byte* pStr0 = null; int pStrSize0 = 0; if (textEnd != null) { pStrSize0 = Utils.GetByteCountUTF8(textEnd); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(textEnd, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } LogRenderedTextNative((Vector2*)prefPos, text, pStr0); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } } /// /// To be documented. /// public static void LogRenderedText(Vector2* refPos, ref byte text, ref byte textEnd) { fixed (byte* ptext = &text) { fixed (byte* ptextEnd = &textEnd) { LogRenderedTextNative(refPos, (byte*)ptext, (byte*)ptextEnd); } } } /// /// To be documented. /// public static void LogRenderedText(Vector2* refPos, ReadOnlySpan text, ReadOnlySpan textEnd) { fixed (byte* ptext = text) { fixed (byte* ptextEnd = textEnd) { LogRenderedTextNative(refPos, (byte*)ptext, (byte*)ptextEnd); } } } /// /// To be documented. /// public static void LogRenderedText(Vector2* refPos, string text, string textEnd) { byte* pStr0 = null; int pStrSize0 = 0; if (text != null) { pStrSize0 = Utils.GetByteCountUTF8(text); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(text, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } byte* pStr1 = null; int pStrSize1 = 0; if (textEnd != null) { pStrSize1 = Utils.GetByteCountUTF8(textEnd); if (pStrSize1 >= Utils.MaxStackallocSize) { pStr1 = Utils.Alloc(pStrSize1 + 1); } else { byte* pStrStack1 = stackalloc byte[pStrSize1 + 1]; pStr1 = pStrStack1; } int pStrOffset1 = Utils.EncodeStringUTF8(textEnd, pStr1, pStrSize1); pStr1[pStrOffset1] = 0; } LogRenderedTextNative(refPos, pStr0, pStr1); if (pStrSize1 >= Utils.MaxStackallocSize) { Utils.Free(pStr1); } if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } /// /// To be documented. /// public static void LogRenderedText(Vector2* refPos, ref byte text, ReadOnlySpan textEnd) { fixed (byte* ptext = &text) { fixed (byte* ptextEnd = textEnd) { LogRenderedTextNative(refPos, (byte*)ptext, (byte*)ptextEnd); } } } /// /// To be documented. /// public static void LogRenderedText(Vector2* refPos, ref byte text, string textEnd) { fixed (byte* ptext = &text) { byte* pStr0 = null; int pStrSize0 = 0; if (textEnd != null) { pStrSize0 = Utils.GetByteCountUTF8(textEnd); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(textEnd, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } LogRenderedTextNative(refPos, (byte*)ptext, pStr0); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } } /// /// To be documented. /// public static void LogRenderedText(Vector2* refPos, ReadOnlySpan text, ref byte textEnd) { fixed (byte* ptext = text) { fixed (byte* ptextEnd = &textEnd) { LogRenderedTextNative(refPos, (byte*)ptext, (byte*)ptextEnd); } } } /// /// To be documented. /// public static void LogRenderedText(Vector2* refPos, ReadOnlySpan text, string textEnd) { fixed (byte* ptext = text) { byte* pStr0 = null; int pStrSize0 = 0; if (textEnd != null) { pStrSize0 = Utils.GetByteCountUTF8(textEnd); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(textEnd, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } LogRenderedTextNative(refPos, (byte*)ptext, pStr0); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } } /// /// To be documented. /// public static void LogRenderedText(Vector2* refPos, string text, ref byte textEnd) { byte* pStr0 = null; int pStrSize0 = 0; if (text != null) { pStrSize0 = Utils.GetByteCountUTF8(text); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(text, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } fixed (byte* ptextEnd = &textEnd) { LogRenderedTextNative(refPos, pStr0, (byte*)ptextEnd); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } } /// /// To be documented. /// public static void LogRenderedText(Vector2* refPos, string text, ReadOnlySpan textEnd) { byte* pStr0 = null; int pStrSize0 = 0; if (text != null) { pStrSize0 = Utils.GetByteCountUTF8(text); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(text, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } fixed (byte* ptextEnd = textEnd) { LogRenderedTextNative(refPos, pStr0, (byte*)ptextEnd); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } } /// /// To be documented. /// public static void LogRenderedText(ref Vector2 refPos, ref byte text, ref byte textEnd) { fixed (Vector2* prefPos = &refPos) { fixed (byte* ptext = &text) { fixed (byte* ptextEnd = &textEnd) { LogRenderedTextNative((Vector2*)prefPos, (byte*)ptext, (byte*)ptextEnd); } } } } /// /// To be documented. /// public static void LogRenderedText(ref Vector2 refPos, ReadOnlySpan text, ReadOnlySpan textEnd) { fixed (Vector2* prefPos = &refPos) { fixed (byte* ptext = text) { fixed (byte* ptextEnd = textEnd) { LogRenderedTextNative((Vector2*)prefPos, (byte*)ptext, (byte*)ptextEnd); } } } } /// /// To be documented. /// public static void LogRenderedText(ref Vector2 refPos, string text, string textEnd) { fixed (Vector2* prefPos = &refPos) { byte* pStr0 = null; int pStrSize0 = 0; if (text != null) { pStrSize0 = Utils.GetByteCountUTF8(text); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(text, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } byte* pStr1 = null; int pStrSize1 = 0; if (textEnd != null) { pStrSize1 = Utils.GetByteCountUTF8(textEnd); if (pStrSize1 >= Utils.MaxStackallocSize) { pStr1 = Utils.Alloc(pStrSize1 + 1); } else { byte* pStrStack1 = stackalloc byte[pStrSize1 + 1]; pStr1 = pStrStack1; } int pStrOffset1 = Utils.EncodeStringUTF8(textEnd, pStr1, pStrSize1); pStr1[pStrOffset1] = 0; } LogRenderedTextNative((Vector2*)prefPos, pStr0, pStr1); if (pStrSize1 >= Utils.MaxStackallocSize) { Utils.Free(pStr1); } if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } } /// /// To be documented. /// public static void LogRenderedText(ref Vector2 refPos, ref byte text, ReadOnlySpan textEnd) { fixed (Vector2* prefPos = &refPos) { fixed (byte* ptext = &text) { fixed (byte* ptextEnd = textEnd) { LogRenderedTextNative((Vector2*)prefPos, (byte*)ptext, (byte*)ptextEnd); } } } } /// /// To be documented. /// public static void LogRenderedText(ref Vector2 refPos, ref byte text, string textEnd) { fixed (Vector2* prefPos = &refPos) { fixed (byte* ptext = &text) { byte* pStr0 = null; int pStrSize0 = 0; if (textEnd != null) { pStrSize0 = Utils.GetByteCountUTF8(textEnd); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(textEnd, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } LogRenderedTextNative((Vector2*)prefPos, (byte*)ptext, pStr0); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } } } /// /// To be documented. /// public static void LogRenderedText(ref Vector2 refPos, ReadOnlySpan text, ref byte textEnd) { fixed (Vector2* prefPos = &refPos) { fixed (byte* ptext = text) { fixed (byte* ptextEnd = &textEnd) { LogRenderedTextNative((Vector2*)prefPos, (byte*)ptext, (byte*)ptextEnd); } } } } /// /// To be documented. /// public static void LogRenderedText(ref Vector2 refPos, ReadOnlySpan text, string textEnd) { fixed (Vector2* prefPos = &refPos) { fixed (byte* ptext = text) { byte* pStr0 = null; int pStrSize0 = 0; if (textEnd != null) { pStrSize0 = Utils.GetByteCountUTF8(textEnd); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(textEnd, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } LogRenderedTextNative((Vector2*)prefPos, (byte*)ptext, pStr0); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } } } /// /// To be documented. /// public static void LogRenderedText(ref Vector2 refPos, string text, ref byte textEnd) { fixed (Vector2* prefPos = &refPos) { byte* pStr0 = null; int pStrSize0 = 0; if (text != null) { pStrSize0 = Utils.GetByteCountUTF8(text); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(text, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } fixed (byte* ptextEnd = &textEnd) { LogRenderedTextNative((Vector2*)prefPos, pStr0, (byte*)ptextEnd); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } } } /// /// To be documented. /// public static void LogRenderedText(ref Vector2 refPos, string text, ReadOnlySpan textEnd) { fixed (Vector2* prefPos = &refPos) { byte* pStr0 = null; int pStrSize0 = 0; if (text != null) { pStrSize0 = Utils.GetByteCountUTF8(text); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(text, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } fixed (byte* ptextEnd = textEnd) { LogRenderedTextNative((Vector2*)prefPos, pStr0, (byte*)ptextEnd); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void LogSetNextTextDecorationNative(byte* prefix, byte* suffix) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[1007])(prefix, suffix); #else ((delegate* unmanaged[Cdecl])funcTable[1007])((nint)prefix, (nint)suffix); #endif } /// /// To be documented. /// public static void LogSetNextTextDecoration(byte* prefix, byte* suffix) { LogSetNextTextDecorationNative(prefix, suffix); } /// /// To be documented. /// public static void LogSetNextTextDecoration(ref byte prefix, byte* suffix) { fixed (byte* pprefix = &prefix) { LogSetNextTextDecorationNative((byte*)pprefix, suffix); } } /// /// To be documented. /// public static void LogSetNextTextDecoration(ReadOnlySpan prefix, byte* suffix) { fixed (byte* pprefix = prefix) { LogSetNextTextDecorationNative((byte*)pprefix, suffix); } } /// /// To be documented. /// public static void LogSetNextTextDecoration(string prefix, byte* suffix) { byte* pStr0 = null; int pStrSize0 = 0; if (prefix != null) { pStrSize0 = Utils.GetByteCountUTF8(prefix); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(prefix, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } LogSetNextTextDecorationNative(pStr0, suffix); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } /// /// To be documented. /// public static void LogSetNextTextDecoration(byte* prefix, ref byte suffix) { fixed (byte* psuffix = &suffix) { LogSetNextTextDecorationNative(prefix, (byte*)psuffix); } } /// /// To be documented. /// public static void LogSetNextTextDecoration(byte* prefix, ReadOnlySpan suffix) { fixed (byte* psuffix = suffix) { LogSetNextTextDecorationNative(prefix, (byte*)psuffix); } } /// /// To be documented. /// public static void LogSetNextTextDecoration(byte* prefix, string suffix) { byte* pStr0 = null; int pStrSize0 = 0; if (suffix != null) { pStrSize0 = Utils.GetByteCountUTF8(suffix); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(suffix, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } LogSetNextTextDecorationNative(prefix, pStr0); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } /// /// To be documented. /// public static void LogSetNextTextDecoration(ref byte prefix, ref byte suffix) { fixed (byte* pprefix = &prefix) { fixed (byte* psuffix = &suffix) { LogSetNextTextDecorationNative((byte*)pprefix, (byte*)psuffix); } } } /// /// To be documented. /// public static void LogSetNextTextDecoration(ReadOnlySpan prefix, ReadOnlySpan suffix) { fixed (byte* pprefix = prefix) { fixed (byte* psuffix = suffix) { LogSetNextTextDecorationNative((byte*)pprefix, (byte*)psuffix); } } } /// /// To be documented. /// public static void LogSetNextTextDecoration(string prefix, string suffix) { byte* pStr0 = null; int pStrSize0 = 0; if (prefix != null) { pStrSize0 = Utils.GetByteCountUTF8(prefix); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(prefix, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } byte* pStr1 = null; int pStrSize1 = 0; if (suffix != null) { pStrSize1 = Utils.GetByteCountUTF8(suffix); if (pStrSize1 >= Utils.MaxStackallocSize) { pStr1 = Utils.Alloc(pStrSize1 + 1); } else { byte* pStrStack1 = stackalloc byte[pStrSize1 + 1]; pStr1 = pStrStack1; } int pStrOffset1 = Utils.EncodeStringUTF8(suffix, pStr1, pStrSize1); pStr1[pStrOffset1] = 0; } LogSetNextTextDecorationNative(pStr0, pStr1); if (pStrSize1 >= Utils.MaxStackallocSize) { Utils.Free(pStr1); } if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } /// /// To be documented. /// public static void LogSetNextTextDecoration(ref byte prefix, ReadOnlySpan suffix) { fixed (byte* pprefix = &prefix) { fixed (byte* psuffix = suffix) { LogSetNextTextDecorationNative((byte*)pprefix, (byte*)psuffix); } } } /// /// To be documented. /// public static void LogSetNextTextDecoration(ref byte prefix, string suffix) { fixed (byte* pprefix = &prefix) { byte* pStr0 = null; int pStrSize0 = 0; if (suffix != null) { pStrSize0 = Utils.GetByteCountUTF8(suffix); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(suffix, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } LogSetNextTextDecorationNative((byte*)pprefix, pStr0); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } } /// /// To be documented. /// public static void LogSetNextTextDecoration(ReadOnlySpan prefix, ref byte suffix) { fixed (byte* pprefix = prefix) { fixed (byte* psuffix = &suffix) { LogSetNextTextDecorationNative((byte*)pprefix, (byte*)psuffix); } } } /// /// To be documented. /// public static void LogSetNextTextDecoration(ReadOnlySpan prefix, string suffix) { fixed (byte* pprefix = prefix) { byte* pStr0 = null; int pStrSize0 = 0; if (suffix != null) { pStrSize0 = Utils.GetByteCountUTF8(suffix); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(suffix, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } LogSetNextTextDecorationNative((byte*)pprefix, pStr0); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } } /// /// To be documented. /// public static void LogSetNextTextDecoration(string prefix, ref byte suffix) { byte* pStr0 = null; int pStrSize0 = 0; if (prefix != null) { pStrSize0 = Utils.GetByteCountUTF8(prefix); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(prefix, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } fixed (byte* psuffix = &suffix) { LogSetNextTextDecorationNative(pStr0, (byte*)psuffix); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } } /// /// To be documented. /// public static void LogSetNextTextDecoration(string prefix, ReadOnlySpan suffix) { byte* pStr0 = null; int pStrSize0 = 0; if (prefix != null) { pStrSize0 = Utils.GetByteCountUTF8(prefix); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(prefix, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } fixed (byte* psuffix = suffix) { LogSetNextTextDecorationNative(pStr0, (byte*)psuffix); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static byte BeginChildExNative(byte* name, uint id, Vector2 sizeArg, byte border, ImGuiWindowFlags flags) { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[1008])(name, id, sizeArg, border, flags); #else return (byte)((delegate* unmanaged[Cdecl])funcTable[1008])((nint)name, id, sizeArg, border, flags); #endif } /// /// To be documented. /// public static bool BeginChildEx(byte* name, uint id, Vector2 sizeArg, bool border, ImGuiWindowFlags flags) { byte ret = BeginChildExNative(name, id, sizeArg, border ? (byte)1 : (byte)0, flags); return ret != 0; } /// /// To be documented. /// public static bool BeginChildEx(ref byte name, uint id, Vector2 sizeArg, bool border, ImGuiWindowFlags flags) { fixed (byte* pname = &name) { byte ret = BeginChildExNative((byte*)pname, id, sizeArg, border ? (byte)1 : (byte)0, flags); return ret != 0; } } /// /// To be documented. /// public static bool BeginChildEx(ReadOnlySpan name, uint id, Vector2 sizeArg, bool border, ImGuiWindowFlags flags) { fixed (byte* pname = name) { byte ret = BeginChildExNative((byte*)pname, id, sizeArg, border ? (byte)1 : (byte)0, flags); return ret != 0; } } /// /// To be documented. /// public static bool BeginChildEx(string name, uint id, Vector2 sizeArg, bool border, ImGuiWindowFlags flags) { byte* pStr0 = null; int pStrSize0 = 0; if (name != null) { pStrSize0 = Utils.GetByteCountUTF8(name); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(name, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } byte ret = BeginChildExNative(pStr0, id, sizeArg, border ? (byte)1 : (byte)0, flags); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret != 0; } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void OpenPopupExNative(uint id, ImGuiPopupFlags popupFlags) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[1009])(id, popupFlags); #else ((delegate* unmanaged[Cdecl])funcTable[1009])(id, popupFlags); #endif } /// /// To be documented. /// public static void OpenPopupEx(uint id, ImGuiPopupFlags popupFlags) { OpenPopupExNative(id, popupFlags); } /// /// To be documented. /// public static void OpenPopupEx(uint id) { OpenPopupExNative(id, (ImGuiPopupFlags)(ImGuiPopupFlags.None)); } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void ClosePopupToLevelNative(int remaining, byte restoreFocusToWindowUnderPopup) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[1010])(remaining, restoreFocusToWindowUnderPopup); #else ((delegate* unmanaged[Cdecl])funcTable[1010])(remaining, restoreFocusToWindowUnderPopup); #endif } /// /// To be documented. /// public static void ClosePopupToLevel(int remaining, bool restoreFocusToWindowUnderPopup) { ClosePopupToLevelNative(remaining, restoreFocusToWindowUnderPopup ? (byte)1 : (byte)0); } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void ClosePopupsOverWindowNative(ImGuiWindow* refWindow, byte restoreFocusToWindowUnderPopup) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[1011])(refWindow, restoreFocusToWindowUnderPopup); #else ((delegate* unmanaged[Cdecl])funcTable[1011])((nint)refWindow, restoreFocusToWindowUnderPopup); #endif } /// /// To be documented. /// public static void ClosePopupsOverWindow(ImGuiWindowPtr refWindow, bool restoreFocusToWindowUnderPopup) { ClosePopupsOverWindowNative(refWindow, restoreFocusToWindowUnderPopup ? (byte)1 : (byte)0); } /// /// To be documented. /// public static void ClosePopupsOverWindow(ref ImGuiWindow refWindow, bool restoreFocusToWindowUnderPopup) { fixed (ImGuiWindow* prefWindow = &refWindow) { ClosePopupsOverWindowNative((ImGuiWindow*)prefWindow, restoreFocusToWindowUnderPopup ? (byte)1 : (byte)0); } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void ClosePopupsExceptModalsNative() { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[1012])(); #else ((delegate* unmanaged[Cdecl])funcTable[1012])(); #endif } /// /// To be documented. /// public static void ClosePopupsExceptModals() { ClosePopupsExceptModalsNative(); } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static byte IsPopupOpenNative(uint id, ImGuiPopupFlags popupFlags) { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[1013])(id, popupFlags); #else return (byte)((delegate* unmanaged[Cdecl])funcTable[1013])(id, popupFlags); #endif } /// /// To be documented. /// public static bool IsPopupOpen(uint id, ImGuiPopupFlags popupFlags) { byte ret = IsPopupOpenNative(id, popupFlags); return ret != 0; } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static byte BeginPopupExNative(uint id, ImGuiWindowFlags extraFlags) { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[1014])(id, extraFlags); #else return (byte)((delegate* unmanaged[Cdecl])funcTable[1014])(id, extraFlags); #endif } /// /// To be documented. /// public static bool BeginPopupEx(uint id, ImGuiWindowFlags extraFlags) { byte ret = BeginPopupExNative(id, extraFlags); return ret != 0; } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void BeginTooltipExNative(ImGuiTooltipFlags tooltipFlags, ImGuiWindowFlags extraWindowFlags) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[1015])(tooltipFlags, extraWindowFlags); #else ((delegate* unmanaged[Cdecl])funcTable[1015])(tooltipFlags, extraWindowFlags); #endif } /// /// To be documented. /// public static void BeginTooltipEx(ImGuiTooltipFlags tooltipFlags, ImGuiWindowFlags extraWindowFlags) { BeginTooltipExNative(tooltipFlags, extraWindowFlags); } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void GetPopupAllowedExtentRectNative(ImRect* pOut, ImGuiWindow* window) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[1016])(pOut, window); #else ((delegate* unmanaged[Cdecl])funcTable[1016])((nint)pOut, (nint)window); #endif } /// /// To be documented. /// public static ImRect GetPopupAllowedExtentRect(ImGuiWindowPtr window) { ImRect ret; GetPopupAllowedExtentRectNative(&ret, window); return ret; } /// /// To be documented. /// public static void GetPopupAllowedExtentRect(ImRectPtr pOut, ImGuiWindowPtr window) { GetPopupAllowedExtentRectNative(pOut, window); } /// /// To be documented. /// public static void GetPopupAllowedExtentRect(ref ImRect pOut, ImGuiWindowPtr window) { fixed (ImRect* ppOut = &pOut) { GetPopupAllowedExtentRectNative((ImRect*)ppOut, window); } } /// /// To be documented. /// public static ImRect GetPopupAllowedExtentRect(ref ImGuiWindow window) { fixed (ImGuiWindow* pwindow = &window) { ImRect ret; GetPopupAllowedExtentRectNative(&ret, (ImGuiWindow*)pwindow); return ret; } } /// /// To be documented. /// public static void GetPopupAllowedExtentRect(ImRectPtr pOut, ref ImGuiWindow window) { fixed (ImGuiWindow* pwindow = &window) { GetPopupAllowedExtentRectNative(pOut, (ImGuiWindow*)pwindow); } } /// /// To be documented. /// public static void GetPopupAllowedExtentRect(ref ImRect pOut, ref ImGuiWindow window) { fixed (ImRect* ppOut = &pOut) { fixed (ImGuiWindow* pwindow = &window) { GetPopupAllowedExtentRectNative((ImRect*)ppOut, (ImGuiWindow*)pwindow); } } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static ImGuiWindow* GetTopMostPopupModalNative() { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[1017])(); #else return (ImGuiWindow*)((delegate* unmanaged[Cdecl])funcTable[1017])(); #endif } /// /// To be documented. /// public static ImGuiWindowPtr GetTopMostPopupModal() { ImGuiWindowPtr ret = GetTopMostPopupModalNative(); return ret; } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static ImGuiWindow* GetTopMostAndVisiblePopupModalNative() { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[1018])(); #else return (ImGuiWindow*)((delegate* unmanaged[Cdecl])funcTable[1018])(); #endif } /// /// To be documented. /// public static ImGuiWindowPtr GetTopMostAndVisiblePopupModal() { ImGuiWindowPtr ret = GetTopMostAndVisiblePopupModalNative(); return ret; } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void FindBestWindowPosForPopupNative(Vector2* pOut, ImGuiWindow* window) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[1019])(pOut, window); #else ((delegate* unmanaged[Cdecl])funcTable[1019])((nint)pOut, (nint)window); #endif } /// /// To be documented. /// public static Vector2 FindBestWindowPosForPopup(ImGuiWindowPtr window) { Vector2 ret; FindBestWindowPosForPopupNative(&ret, window); return ret; } /// /// To be documented. /// public static void FindBestWindowPosForPopup(Vector2* pOut, ImGuiWindowPtr window) { FindBestWindowPosForPopupNative(pOut, window); } /// /// To be documented. /// public static void FindBestWindowPosForPopup(ref Vector2 pOut, ImGuiWindowPtr window) { fixed (Vector2* ppOut = &pOut) { FindBestWindowPosForPopupNative((Vector2*)ppOut, window); } } /// /// To be documented. /// public static Vector2 FindBestWindowPosForPopup(ref ImGuiWindow window) { fixed (ImGuiWindow* pwindow = &window) { Vector2 ret; FindBestWindowPosForPopupNative(&ret, (ImGuiWindow*)pwindow); return ret; } } /// /// To be documented. /// public static void FindBestWindowPosForPopup(Vector2* pOut, ref ImGuiWindow window) { fixed (ImGuiWindow* pwindow = &window) { FindBestWindowPosForPopupNative(pOut, (ImGuiWindow*)pwindow); } } /// /// To be documented. /// public static void FindBestWindowPosForPopup(ref Vector2 pOut, ref ImGuiWindow window) { fixed (Vector2* ppOut = &pOut) { fixed (ImGuiWindow* pwindow = &window) { FindBestWindowPosForPopupNative((Vector2*)ppOut, (ImGuiWindow*)pwindow); } } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static void FindBestWindowPosForPopupExNative(Vector2* pOut, Vector2 refPos, Vector2 size, ImGuiDir* lastDir, ImRect rOuter, ImRect rAvoid, ImGuiPopupPositionPolicy policy) { #if NET5_0_OR_GREATER ((delegate* unmanaged[Cdecl])funcTable[1020])(pOut, refPos, size, lastDir, rOuter, rAvoid, policy); #else ((delegate* unmanaged[Cdecl])funcTable[1020])((nint)pOut, refPos, size, (nint)lastDir, rOuter, rAvoid, policy); #endif } /// /// To be documented. /// public static Vector2 FindBestWindowPosForPopupEx(Vector2 refPos, Vector2 size, ImGuiDir* lastDir, ImRect rOuter, ImRect rAvoid, ImGuiPopupPositionPolicy policy) { Vector2 ret; FindBestWindowPosForPopupExNative(&ret, refPos, size, lastDir, rOuter, rAvoid, policy); return ret; } /// /// To be documented. /// public static void FindBestWindowPosForPopupEx(Vector2* pOut, Vector2 refPos, Vector2 size, ImGuiDir* lastDir, ImRect rOuter, ImRect rAvoid, ImGuiPopupPositionPolicy policy) { FindBestWindowPosForPopupExNative(pOut, refPos, size, lastDir, rOuter, rAvoid, policy); } /// /// To be documented. /// public static void FindBestWindowPosForPopupEx(ref Vector2 pOut, Vector2 refPos, Vector2 size, ImGuiDir* lastDir, ImRect rOuter, ImRect rAvoid, ImGuiPopupPositionPolicy policy) { fixed (Vector2* ppOut = &pOut) { FindBestWindowPosForPopupExNative((Vector2*)ppOut, refPos, size, lastDir, rOuter, rAvoid, policy); } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static byte BeginViewportSideBarNative(byte* name, ImGuiViewport* viewport, ImGuiDir dir, float size, ImGuiWindowFlags windowFlags) { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[1021])(name, viewport, dir, size, windowFlags); #else return (byte)((delegate* unmanaged[Cdecl])funcTable[1021])((nint)name, (nint)viewport, dir, size, windowFlags); #endif } /// /// To be documented. /// public static bool BeginViewportSideBar(byte* name, ImGuiViewportPtr viewport, ImGuiDir dir, float size, ImGuiWindowFlags windowFlags) { byte ret = BeginViewportSideBarNative(name, viewport, dir, size, windowFlags); return ret != 0; } /// /// To be documented. /// public static bool BeginViewportSideBar(ref byte name, ImGuiViewportPtr viewport, ImGuiDir dir, float size, ImGuiWindowFlags windowFlags) { fixed (byte* pname = &name) { byte ret = BeginViewportSideBarNative((byte*)pname, viewport, dir, size, windowFlags); return ret != 0; } } /// /// To be documented. /// public static bool BeginViewportSideBar(ReadOnlySpan name, ImGuiViewportPtr viewport, ImGuiDir dir, float size, ImGuiWindowFlags windowFlags) { fixed (byte* pname = name) { byte ret = BeginViewportSideBarNative((byte*)pname, viewport, dir, size, windowFlags); return ret != 0; } } /// /// To be documented. /// public static bool BeginViewportSideBar(string name, ImGuiViewportPtr viewport, ImGuiDir dir, float size, ImGuiWindowFlags windowFlags) { byte* pStr0 = null; int pStrSize0 = 0; if (name != null) { pStrSize0 = Utils.GetByteCountUTF8(name); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(name, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } byte ret = BeginViewportSideBarNative(pStr0, viewport, dir, size, windowFlags); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret != 0; } /// /// To be documented. /// public static bool BeginViewportSideBar(byte* name, ref ImGuiViewport viewport, ImGuiDir dir, float size, ImGuiWindowFlags windowFlags) { fixed (ImGuiViewport* pviewport = &viewport) { byte ret = BeginViewportSideBarNative(name, (ImGuiViewport*)pviewport, dir, size, windowFlags); return ret != 0; } } /// /// To be documented. /// public static bool BeginViewportSideBar(ref byte name, ref ImGuiViewport viewport, ImGuiDir dir, float size, ImGuiWindowFlags windowFlags) { fixed (byte* pname = &name) { fixed (ImGuiViewport* pviewport = &viewport) { byte ret = BeginViewportSideBarNative((byte*)pname, (ImGuiViewport*)pviewport, dir, size, windowFlags); return ret != 0; } } } /// /// To be documented. /// public static bool BeginViewportSideBar(ReadOnlySpan name, ref ImGuiViewport viewport, ImGuiDir dir, float size, ImGuiWindowFlags windowFlags) { fixed (byte* pname = name) { fixed (ImGuiViewport* pviewport = &viewport) { byte ret = BeginViewportSideBarNative((byte*)pname, (ImGuiViewport*)pviewport, dir, size, windowFlags); return ret != 0; } } } /// /// To be documented. /// public static bool BeginViewportSideBar(string name, ref ImGuiViewport viewport, ImGuiDir dir, float size, ImGuiWindowFlags windowFlags) { byte* pStr0 = null; int pStrSize0 = 0; if (name != null) { pStrSize0 = Utils.GetByteCountUTF8(name); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(name, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } fixed (ImGuiViewport* pviewport = &viewport) { byte ret = BeginViewportSideBarNative(pStr0, (ImGuiViewport*)pviewport, dir, size, windowFlags); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret != 0; } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static byte BeginMenuExNative(byte* label, byte* icon, byte enabled) { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[1022])(label, icon, enabled); #else return (byte)((delegate* unmanaged[Cdecl])funcTable[1022])((nint)label, (nint)icon, enabled); #endif } /// /// To be documented. /// public static bool BeginMenuEx(byte* label, byte* icon, bool enabled) { byte ret = BeginMenuExNative(label, icon, enabled ? (byte)1 : (byte)0); return ret != 0; } /// /// To be documented. /// public static bool BeginMenuEx(byte* label, byte* icon) { byte ret = BeginMenuExNative(label, icon, (byte)(1)); return ret != 0; } /// /// To be documented. /// public static bool BeginMenuEx(ref byte label, byte* icon, bool enabled) { fixed (byte* plabel = &label) { byte ret = BeginMenuExNative((byte*)plabel, icon, enabled ? (byte)1 : (byte)0); return ret != 0; } } /// /// To be documented. /// public static bool BeginMenuEx(ref byte label, byte* icon) { fixed (byte* plabel = &label) { byte ret = BeginMenuExNative((byte*)plabel, icon, (byte)(1)); return ret != 0; } } /// /// To be documented. /// public static bool BeginMenuEx(ReadOnlySpan label, byte* icon, bool enabled) { fixed (byte* plabel = label) { byte ret = BeginMenuExNative((byte*)plabel, icon, enabled ? (byte)1 : (byte)0); return ret != 0; } } /// /// To be documented. /// public static bool BeginMenuEx(ReadOnlySpan label, byte* icon) { fixed (byte* plabel = label) { byte ret = BeginMenuExNative((byte*)plabel, icon, (byte)(1)); return ret != 0; } } /// /// To be documented. /// public static bool BeginMenuEx(string label, byte* icon, bool enabled) { byte* pStr0 = null; int pStrSize0 = 0; if (label != null) { pStrSize0 = Utils.GetByteCountUTF8(label); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(label, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } byte ret = BeginMenuExNative(pStr0, icon, enabled ? (byte)1 : (byte)0); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret != 0; } /// /// To be documented. /// public static bool BeginMenuEx(string label, byte* icon) { byte* pStr0 = null; int pStrSize0 = 0; if (label != null) { pStrSize0 = Utils.GetByteCountUTF8(label); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(label, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } byte ret = BeginMenuExNative(pStr0, icon, (byte)(1)); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret != 0; } /// /// To be documented. /// public static bool BeginMenuEx(byte* label, ref byte icon, bool enabled) { fixed (byte* picon = &icon) { byte ret = BeginMenuExNative(label, (byte*)picon, enabled ? (byte)1 : (byte)0); return ret != 0; } } /// /// To be documented. /// public static bool BeginMenuEx(byte* label, ref byte icon) { fixed (byte* picon = &icon) { byte ret = BeginMenuExNative(label, (byte*)picon, (byte)(1)); return ret != 0; } } /// /// To be documented. /// public static bool BeginMenuEx(byte* label, ReadOnlySpan icon, bool enabled) { fixed (byte* picon = icon) { byte ret = BeginMenuExNative(label, (byte*)picon, enabled ? (byte)1 : (byte)0); return ret != 0; } } /// /// To be documented. /// public static bool BeginMenuEx(byte* label, ReadOnlySpan icon) { fixed (byte* picon = icon) { byte ret = BeginMenuExNative(label, (byte*)picon, (byte)(1)); return ret != 0; } } /// /// To be documented. /// public static bool BeginMenuEx(byte* label, string icon, bool enabled) { byte* pStr0 = null; int pStrSize0 = 0; if (icon != null) { pStrSize0 = Utils.GetByteCountUTF8(icon); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(icon, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } byte ret = BeginMenuExNative(label, pStr0, enabled ? (byte)1 : (byte)0); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret != 0; } /// /// To be documented. /// public static bool BeginMenuEx(byte* label, string icon) { byte* pStr0 = null; int pStrSize0 = 0; if (icon != null) { pStrSize0 = Utils.GetByteCountUTF8(icon); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(icon, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } byte ret = BeginMenuExNative(label, pStr0, (byte)(1)); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret != 0; } /// /// To be documented. /// public static bool BeginMenuEx(ref byte label, ref byte icon, bool enabled) { fixed (byte* plabel = &label) { fixed (byte* picon = &icon) { byte ret = BeginMenuExNative((byte*)plabel, (byte*)picon, enabled ? (byte)1 : (byte)0); return ret != 0; } } } /// /// To be documented. /// public static bool BeginMenuEx(ref byte label, ref byte icon) { fixed (byte* plabel = &label) { fixed (byte* picon = &icon) { byte ret = BeginMenuExNative((byte*)plabel, (byte*)picon, (byte)(1)); return ret != 0; } } } /// /// To be documented. /// public static bool BeginMenuEx(ReadOnlySpan label, ReadOnlySpan icon, bool enabled) { fixed (byte* plabel = label) { fixed (byte* picon = icon) { byte ret = BeginMenuExNative((byte*)plabel, (byte*)picon, enabled ? (byte)1 : (byte)0); return ret != 0; } } } /// /// To be documented. /// public static bool BeginMenuEx(ReadOnlySpan label, ReadOnlySpan icon) { fixed (byte* plabel = label) { fixed (byte* picon = icon) { byte ret = BeginMenuExNative((byte*)plabel, (byte*)picon, (byte)(1)); return ret != 0; } } } /// /// To be documented. /// public static bool BeginMenuEx(string label, string icon, bool enabled) { byte* pStr0 = null; int pStrSize0 = 0; if (label != null) { pStrSize0 = Utils.GetByteCountUTF8(label); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(label, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } byte* pStr1 = null; int pStrSize1 = 0; if (icon != null) { pStrSize1 = Utils.GetByteCountUTF8(icon); if (pStrSize1 >= Utils.MaxStackallocSize) { pStr1 = Utils.Alloc(pStrSize1 + 1); } else { byte* pStrStack1 = stackalloc byte[pStrSize1 + 1]; pStr1 = pStrStack1; } int pStrOffset1 = Utils.EncodeStringUTF8(icon, pStr1, pStrSize1); pStr1[pStrOffset1] = 0; } byte ret = BeginMenuExNative(pStr0, pStr1, enabled ? (byte)1 : (byte)0); if (pStrSize1 >= Utils.MaxStackallocSize) { Utils.Free(pStr1); } if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret != 0; } /// /// To be documented. /// public static bool BeginMenuEx(string label, string icon) { byte* pStr0 = null; int pStrSize0 = 0; if (label != null) { pStrSize0 = Utils.GetByteCountUTF8(label); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(label, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } byte* pStr1 = null; int pStrSize1 = 0; if (icon != null) { pStrSize1 = Utils.GetByteCountUTF8(icon); if (pStrSize1 >= Utils.MaxStackallocSize) { pStr1 = Utils.Alloc(pStrSize1 + 1); } else { byte* pStrStack1 = stackalloc byte[pStrSize1 + 1]; pStr1 = pStrStack1; } int pStrOffset1 = Utils.EncodeStringUTF8(icon, pStr1, pStrSize1); pStr1[pStrOffset1] = 0; } byte ret = BeginMenuExNative(pStr0, pStr1, (byte)(1)); if (pStrSize1 >= Utils.MaxStackallocSize) { Utils.Free(pStr1); } if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret != 0; } /// /// To be documented. /// public static bool BeginMenuEx(ref byte label, ReadOnlySpan icon, bool enabled) { fixed (byte* plabel = &label) { fixed (byte* picon = icon) { byte ret = BeginMenuExNative((byte*)plabel, (byte*)picon, enabled ? (byte)1 : (byte)0); return ret != 0; } } } /// /// To be documented. /// public static bool BeginMenuEx(ref byte label, ReadOnlySpan icon) { fixed (byte* plabel = &label) { fixed (byte* picon = icon) { byte ret = BeginMenuExNative((byte*)plabel, (byte*)picon, (byte)(1)); return ret != 0; } } } /// /// To be documented. /// public static bool BeginMenuEx(ref byte label, string icon, bool enabled) { fixed (byte* plabel = &label) { byte* pStr0 = null; int pStrSize0 = 0; if (icon != null) { pStrSize0 = Utils.GetByteCountUTF8(icon); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(icon, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } byte ret = BeginMenuExNative((byte*)plabel, pStr0, enabled ? (byte)1 : (byte)0); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret != 0; } } /// /// To be documented. /// public static bool BeginMenuEx(ref byte label, string icon) { fixed (byte* plabel = &label) { byte* pStr0 = null; int pStrSize0 = 0; if (icon != null) { pStrSize0 = Utils.GetByteCountUTF8(icon); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(icon, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } byte ret = BeginMenuExNative((byte*)plabel, pStr0, (byte)(1)); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret != 0; } } /// /// To be documented. /// public static bool BeginMenuEx(ReadOnlySpan label, ref byte icon, bool enabled) { fixed (byte* plabel = label) { fixed (byte* picon = &icon) { byte ret = BeginMenuExNative((byte*)plabel, (byte*)picon, enabled ? (byte)1 : (byte)0); return ret != 0; } } } /// /// To be documented. /// public static bool BeginMenuEx(ReadOnlySpan label, ref byte icon) { fixed (byte* plabel = label) { fixed (byte* picon = &icon) { byte ret = BeginMenuExNative((byte*)plabel, (byte*)picon, (byte)(1)); return ret != 0; } } } /// /// To be documented. /// public static bool BeginMenuEx(ReadOnlySpan label, string icon, bool enabled) { fixed (byte* plabel = label) { byte* pStr0 = null; int pStrSize0 = 0; if (icon != null) { pStrSize0 = Utils.GetByteCountUTF8(icon); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(icon, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } byte ret = BeginMenuExNative((byte*)plabel, pStr0, enabled ? (byte)1 : (byte)0); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret != 0; } } /// /// To be documented. /// public static bool BeginMenuEx(ReadOnlySpan label, string icon) { fixed (byte* plabel = label) { byte* pStr0 = null; int pStrSize0 = 0; if (icon != null) { pStrSize0 = Utils.GetByteCountUTF8(icon); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(icon, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } byte ret = BeginMenuExNative((byte*)plabel, pStr0, (byte)(1)); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret != 0; } } /// /// To be documented. /// public static bool BeginMenuEx(string label, ref byte icon, bool enabled) { byte* pStr0 = null; int pStrSize0 = 0; if (label != null) { pStrSize0 = Utils.GetByteCountUTF8(label); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(label, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } fixed (byte* picon = &icon) { byte ret = BeginMenuExNative(pStr0, (byte*)picon, enabled ? (byte)1 : (byte)0); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret != 0; } } /// /// To be documented. /// public static bool BeginMenuEx(string label, ref byte icon) { byte* pStr0 = null; int pStrSize0 = 0; if (label != null) { pStrSize0 = Utils.GetByteCountUTF8(label); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(label, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } fixed (byte* picon = &icon) { byte ret = BeginMenuExNative(pStr0, (byte*)picon, (byte)(1)); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret != 0; } } /// /// To be documented. /// public static bool BeginMenuEx(string label, ReadOnlySpan icon, bool enabled) { byte* pStr0 = null; int pStrSize0 = 0; if (label != null) { pStrSize0 = Utils.GetByteCountUTF8(label); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(label, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } fixed (byte* picon = icon) { byte ret = BeginMenuExNative(pStr0, (byte*)picon, enabled ? (byte)1 : (byte)0); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret != 0; } } /// /// To be documented. /// public static bool BeginMenuEx(string label, ReadOnlySpan icon) { byte* pStr0 = null; int pStrSize0 = 0; if (label != null) { pStrSize0 = Utils.GetByteCountUTF8(label); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(label, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } fixed (byte* picon = icon) { byte ret = BeginMenuExNative(pStr0, (byte*)picon, (byte)(1)); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret != 0; } } /// /// To be documented. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static byte MenuItemExNative(byte* label, byte* icon, byte* shortcut, byte selected, byte enabled) { #if NET5_0_OR_GREATER return ((delegate* unmanaged[Cdecl])funcTable[1023])(label, icon, shortcut, selected, enabled); #else return (byte)((delegate* unmanaged[Cdecl])funcTable[1023])((nint)label, (nint)icon, (nint)shortcut, selected, enabled); #endif } /// /// To be documented. /// public static bool MenuItemEx(byte* label, byte* icon, byte* shortcut, bool selected, bool enabled) { byte ret = MenuItemExNative(label, icon, shortcut, selected ? (byte)1 : (byte)0, enabled ? (byte)1 : (byte)0); return ret != 0; } /// /// To be documented. /// public static bool MenuItemEx(byte* label, byte* icon, byte* shortcut, bool selected) { byte ret = MenuItemExNative(label, icon, shortcut, selected ? (byte)1 : (byte)0, (byte)(1)); return ret != 0; } /// /// To be documented. /// public static bool MenuItemEx(byte* label, byte* icon, byte* shortcut) { byte ret = MenuItemExNative(label, icon, shortcut, (byte)(0), (byte)(1)); return ret != 0; } /// /// To be documented. /// public static bool MenuItemEx(byte* label, byte* icon) { byte ret = MenuItemExNative(label, icon, (byte*)(default), (byte)(0), (byte)(1)); return ret != 0; } /// /// To be documented. /// public static bool MenuItemEx(byte* label, byte* icon, bool selected) { byte ret = MenuItemExNative(label, icon, (byte*)(default), selected ? (byte)1 : (byte)0, (byte)(1)); return ret != 0; } /// /// To be documented. /// public static bool MenuItemEx(byte* label, byte* icon, bool selected, bool enabled) { byte ret = MenuItemExNative(label, icon, (byte*)(default), selected ? (byte)1 : (byte)0, enabled ? (byte)1 : (byte)0); return ret != 0; } /// /// To be documented. /// public static bool MenuItemEx(ref byte label, byte* icon, byte* shortcut, bool selected, bool enabled) { fixed (byte* plabel = &label) { byte ret = MenuItemExNative((byte*)plabel, icon, shortcut, selected ? (byte)1 : (byte)0, enabled ? (byte)1 : (byte)0); return ret != 0; } } /// /// To be documented. /// public static bool MenuItemEx(ref byte label, byte* icon, byte* shortcut, bool selected) { fixed (byte* plabel = &label) { byte ret = MenuItemExNative((byte*)plabel, icon, shortcut, selected ? (byte)1 : (byte)0, (byte)(1)); return ret != 0; } } /// /// To be documented. /// public static bool MenuItemEx(ref byte label, byte* icon, byte* shortcut) { fixed (byte* plabel = &label) { byte ret = MenuItemExNative((byte*)plabel, icon, shortcut, (byte)(0), (byte)(1)); return ret != 0; } } /// /// To be documented. /// public static bool MenuItemEx(ref byte label, byte* icon) { fixed (byte* plabel = &label) { byte ret = MenuItemExNative((byte*)plabel, icon, (byte*)(default), (byte)(0), (byte)(1)); return ret != 0; } } /// /// To be documented. /// public static bool MenuItemEx(ref byte label, byte* icon, bool selected) { fixed (byte* plabel = &label) { byte ret = MenuItemExNative((byte*)plabel, icon, (byte*)(default), selected ? (byte)1 : (byte)0, (byte)(1)); return ret != 0; } } /// /// To be documented. /// public static bool MenuItemEx(ref byte label, byte* icon, bool selected, bool enabled) { fixed (byte* plabel = &label) { byte ret = MenuItemExNative((byte*)plabel, icon, (byte*)(default), selected ? (byte)1 : (byte)0, enabled ? (byte)1 : (byte)0); return ret != 0; } } /// /// To be documented. /// public static bool MenuItemEx(ReadOnlySpan label, byte* icon, byte* shortcut, bool selected, bool enabled) { fixed (byte* plabel = label) { byte ret = MenuItemExNative((byte*)plabel, icon, shortcut, selected ? (byte)1 : (byte)0, enabled ? (byte)1 : (byte)0); return ret != 0; } } /// /// To be documented. /// public static bool MenuItemEx(ReadOnlySpan label, byte* icon, byte* shortcut, bool selected) { fixed (byte* plabel = label) { byte ret = MenuItemExNative((byte*)plabel, icon, shortcut, selected ? (byte)1 : (byte)0, (byte)(1)); return ret != 0; } } /// /// To be documented. /// public static bool MenuItemEx(ReadOnlySpan label, byte* icon, byte* shortcut) { fixed (byte* plabel = label) { byte ret = MenuItemExNative((byte*)plabel, icon, shortcut, (byte)(0), (byte)(1)); return ret != 0; } } /// /// To be documented. /// public static bool MenuItemEx(ReadOnlySpan label, byte* icon) { fixed (byte* plabel = label) { byte ret = MenuItemExNative((byte*)plabel, icon, (byte*)(default), (byte)(0), (byte)(1)); return ret != 0; } } /// /// To be documented. /// public static bool MenuItemEx(ReadOnlySpan label, byte* icon, bool selected) { fixed (byte* plabel = label) { byte ret = MenuItemExNative((byte*)plabel, icon, (byte*)(default), selected ? (byte)1 : (byte)0, (byte)(1)); return ret != 0; } } /// /// To be documented. /// public static bool MenuItemEx(ReadOnlySpan label, byte* icon, bool selected, bool enabled) { fixed (byte* plabel = label) { byte ret = MenuItemExNative((byte*)plabel, icon, (byte*)(default), selected ? (byte)1 : (byte)0, enabled ? (byte)1 : (byte)0); return ret != 0; } } /// /// To be documented. /// public static bool MenuItemEx(string label, byte* icon, byte* shortcut, bool selected, bool enabled) { byte* pStr0 = null; int pStrSize0 = 0; if (label != null) { pStrSize0 = Utils.GetByteCountUTF8(label); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(label, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } byte ret = MenuItemExNative(pStr0, icon, shortcut, selected ? (byte)1 : (byte)0, enabled ? (byte)1 : (byte)0); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret != 0; } /// /// To be documented. /// public static bool MenuItemEx(string label, byte* icon, byte* shortcut, bool selected) { byte* pStr0 = null; int pStrSize0 = 0; if (label != null) { pStrSize0 = Utils.GetByteCountUTF8(label); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(label, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } byte ret = MenuItemExNative(pStr0, icon, shortcut, selected ? (byte)1 : (byte)0, (byte)(1)); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret != 0; } /// /// To be documented. /// public static bool MenuItemEx(string label, byte* icon, byte* shortcut) { byte* pStr0 = null; int pStrSize0 = 0; if (label != null) { pStrSize0 = Utils.GetByteCountUTF8(label); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(label, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } byte ret = MenuItemExNative(pStr0, icon, shortcut, (byte)(0), (byte)(1)); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret != 0; } /// /// To be documented. /// public static bool MenuItemEx(string label, byte* icon) { byte* pStr0 = null; int pStrSize0 = 0; if (label != null) { pStrSize0 = Utils.GetByteCountUTF8(label); if (pStrSize0 >= Utils.MaxStackallocSize) { pStr0 = Utils.Alloc(pStrSize0 + 1); } else { byte* pStrStack0 = stackalloc byte[pStrSize0 + 1]; pStr0 = pStrStack0; } int pStrOffset0 = Utils.EncodeStringUTF8(label, pStr0, pStrSize0); pStr0[pStrOffset0] = 0; } byte ret = MenuItemExNative(pStr0, icon, (byte*)(default), (byte)(0), (byte)(1)); if (pStrSize0 >= Utils.MaxStackallocSize) { Utils.Free(pStr0); } return ret != 0; } } }