mirror of
https://github.com/goatcorp/Dalamud.git
synced 2025-12-30 12:23:39 +01:00
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:
parent
0c63541864
commit
c69329f592
293 changed files with 61312 additions and 754 deletions
38
imgui/Dalamud.Bindings.ImGui/Custom/ImFont.Custom.cs
Normal file
38
imgui/Dalamud.Bindings.ImGui/Custom/ImFont.Custom.cs
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
using System.Numerics;
|
||||
|
||||
namespace Dalamud.Bindings.ImGui;
|
||||
|
||||
public unsafe partial struct ImFont
|
||||
{
|
||||
public readonly int CalcWordWrapPositionA(float scale, ReadOnlySpan<byte> text, float wrapWidth)
|
||||
{
|
||||
fixed (ImFont* thisPtr = &this) return ImGui.CalcWordWrapPositionA(thisPtr, scale, text, wrapWidth);
|
||||
}
|
||||
|
||||
public readonly void RenderText(
|
||||
ImDrawListPtr drawList, float size, Vector2 pos, uint col, Vector4 clipRect, ImU8String text,
|
||||
float wrapWidth = 0.0f, bool cpuFineClip = false)
|
||||
{
|
||||
fixed (ImFont* thisPtr =
|
||||
&this) ImGui.RenderText(thisPtr, drawList, size, pos, col, clipRect, text, wrapWidth, cpuFineClip);
|
||||
}
|
||||
}
|
||||
|
||||
public partial struct ImFontPtr
|
||||
{
|
||||
public readonly int CalcWordWrapPositionA(float scale, ImU8String text, float wrapWidth) =>
|
||||
ImGui.CalcWordWrapPositionA(this, scale, text, wrapWidth);
|
||||
|
||||
public readonly void RenderText(
|
||||
ImDrawListPtr drawList, float size, Vector2 pos, uint col, Vector4 clipRect, ImU8String text,
|
||||
float wrapWidth = 0.0f, bool cpuFineClip = false) => ImGui.RenderText(
|
||||
this,
|
||||
drawList,
|
||||
size,
|
||||
pos,
|
||||
col,
|
||||
clipRect,
|
||||
text,
|
||||
wrapWidth,
|
||||
cpuFineClip);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue