Manual overloads for ImGui functions accepting text (#2319)

* wip2

* Implement AutoUtf8Buffer

* reformat

* Work on manual bindings

* restructure

* Name scripts properly

* Update utility functions to use ImU8String

* add overloads

* Add more overloads

* Use ImGuiWindow from gen, support AddCallback

* Use LibraryImport for custom ImGuiNative functinos

* Make manual overloads for string-returning functinos

* Make all overloads with self as its first parameter extension methods

* Fix overload resolution by removing unnecessary

* in => scoped in

* Fix compilation errors
This commit is contained in:
srkizer 2025-08-05 03:14:00 +09:00 committed by GitHub
parent 0c63541864
commit c69329f592
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
293 changed files with 61312 additions and 754 deletions

View file

@ -0,0 +1,26 @@
namespace Dalamud.Bindings.ImGui;
public unsafe partial struct ImGuiWindow
{
public readonly uint GetID(ImU8String str)
{
fixed (ImGuiWindow* thisPtr = &this) return ImGuiP.GetID(thisPtr, str);
}
public readonly uint GetID(void* ptr)
{
fixed (ImGuiWindow* thisPtr = &this) return ImGuiP.GetID(thisPtr, ptr);
}
public readonly uint GetID(int n)
{
fixed (ImGuiWindow* thisPtr = &this) return ImGuiP.GetID(thisPtr, n);
}
}
public unsafe partial struct ImGuiWindowPtr
{
public readonly uint GetID(ImU8String str) => ImGuiP.GetID(this.Handle, str);
public readonly uint GetID(void* ptr) => ImGuiP.GetID(this.Handle, ptr);
public readonly uint GetID(int n) => ImGuiP.GetID(this.Handle, n);
}