mirror of
https://github.com/goatcorp/Dalamud.git
synced 2025-12-30 20:33:40 +01:00
Add more overloads
This commit is contained in:
parent
97738f5a67
commit
f7749237ee
3 changed files with 112 additions and 4 deletions
|
|
@ -300,7 +300,7 @@ public static unsafe partial class ImGui
|
||||||
public static bool DragScalar<T>(
|
public static bool DragScalar<T>(
|
||||||
ImU8String label, ImGuiDataType dataType, scoped ref T v, float vSpeed,
|
ImU8String label, ImGuiDataType dataType, scoped ref T v, float vSpeed,
|
||||||
scoped in T vMin, scoped in T vMax, ImU8String format = default,
|
scoped in T vMin, scoped in T vMax, ImU8String format = default,
|
||||||
ImGuiSliderFlags flags = ImGuiSliderFlags.None) where T : unmanaged, INumber<T>, IBinaryNumber<T>
|
ImGuiSliderFlags flags = ImGuiSliderFlags.None) where T : unmanaged, IBinaryNumber<T>
|
||||||
{
|
{
|
||||||
fixed (byte* labelPtr = &label.GetPinnableNullTerminatedReference())
|
fixed (byte* labelPtr = &label.GetPinnableNullTerminatedReference())
|
||||||
fixed (byte* formatPtr = &format.GetPinnableNullTerminatedReference())
|
fixed (byte* formatPtr = &format.GetPinnableNullTerminatedReference())
|
||||||
|
|
@ -318,7 +318,7 @@ public static unsafe partial class ImGui
|
||||||
public static bool DragScalar<T>(
|
public static bool DragScalar<T>(
|
||||||
ImU8String label, ImGuiDataType dataType, Span<T> v, float vSpeed,
|
ImU8String label, ImGuiDataType dataType, Span<T> v, float vSpeed,
|
||||||
scoped in T vMin, scoped in T vMax, ImU8String format = default,
|
scoped in T vMin, scoped in T vMax, ImU8String format = default,
|
||||||
ImGuiSliderFlags flags = ImGuiSliderFlags.None) where T : unmanaged, INumber<T>, IBinaryNumber<T>
|
ImGuiSliderFlags flags = ImGuiSliderFlags.None) where T : unmanaged, IBinaryNumber<T>
|
||||||
{
|
{
|
||||||
fixed (byte* labelPtr = &label.GetPinnableNullTerminatedReference())
|
fixed (byte* labelPtr = &label.GetPinnableNullTerminatedReference())
|
||||||
fixed (byte* formatPtr = &format.GetPinnableNullTerminatedReference())
|
fixed (byte* formatPtr = &format.GetPinnableNullTerminatedReference())
|
||||||
|
|
@ -342,6 +342,59 @@ public static unsafe partial class ImGui
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static bool DragScalar<T>(
|
||||||
|
ImU8String label, scoped ref T v, float vSpeed,
|
||||||
|
scoped in T vMin, scoped in T vMax, ImU8String format = default,
|
||||||
|
ImGuiSliderFlags flags = ImGuiSliderFlags.None) where T : unmanaged, IBinaryNumber<T>
|
||||||
|
{
|
||||||
|
fixed (byte* labelPtr = &label.GetPinnableNullTerminatedReference())
|
||||||
|
fixed (byte* formatPtr = &format.GetPinnableNullTerminatedReference())
|
||||||
|
fixed (T* vPtr = &v)
|
||||||
|
fixed (T* vMinPtr = &vMin)
|
||||||
|
fixed (T* vMaxPtr = &vMax)
|
||||||
|
{
|
||||||
|
var res = ImGuiNative.DragScalar(
|
||||||
|
labelPtr,
|
||||||
|
GetImGuiDataType<T>(),
|
||||||
|
vPtr,
|
||||||
|
vSpeed,
|
||||||
|
vMinPtr,
|
||||||
|
vMaxPtr,
|
||||||
|
formatPtr,
|
||||||
|
flags) != 0;
|
||||||
|
label.Dispose();
|
||||||
|
format.Dispose();
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static bool DragScalar<T>(
|
||||||
|
ImU8String label, Span<T> v, float vSpeed,
|
||||||
|
scoped in T vMin, scoped in T vMax, ImU8String format = default,
|
||||||
|
ImGuiSliderFlags flags = ImGuiSliderFlags.None) where T : unmanaged, IBinaryNumber<T>
|
||||||
|
{
|
||||||
|
fixed (byte* labelPtr = &label.GetPinnableNullTerminatedReference())
|
||||||
|
fixed (byte* formatPtr = &format.GetPinnableNullTerminatedReference())
|
||||||
|
fixed (T* vPtr = v)
|
||||||
|
fixed (T* vMinPtr = &vMin)
|
||||||
|
fixed (T* vMaxPtr = &vMax)
|
||||||
|
{
|
||||||
|
var res = ImGuiNative.DragScalarN(
|
||||||
|
labelPtr,
|
||||||
|
GetImGuiDataType<T>(),
|
||||||
|
vPtr,
|
||||||
|
v.Length,
|
||||||
|
vSpeed,
|
||||||
|
vMinPtr,
|
||||||
|
vMaxPtr,
|
||||||
|
formatPtr,
|
||||||
|
flags) != 0;
|
||||||
|
label.Dispose();
|
||||||
|
format.Dispose();
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public static bool DragFloatRange2(
|
public static bool DragFloatRange2(
|
||||||
ImU8String label, scoped ref float vCurrentMin,
|
ImU8String label, scoped ref float vCurrentMin,
|
||||||
scoped ref float vCurrentMax, float vSpeed = 1.0f, float vMin = 0.0f, float vMax = 0.0f,
|
scoped ref float vCurrentMax, float vSpeed = 1.0f, float vMin = 0.0f, float vMax = 0.0f,
|
||||||
|
|
|
||||||
|
|
@ -285,7 +285,7 @@ public static unsafe partial class ImGui
|
||||||
scoped in T step, scoped in T stepFast,
|
scoped in T step, scoped in T stepFast,
|
||||||
ImU8String format = default,
|
ImU8String format = default,
|
||||||
ImGuiInputTextFlags flags = ImGuiInputTextFlags.None)
|
ImGuiInputTextFlags flags = ImGuiInputTextFlags.None)
|
||||||
where T : unmanaged, INumber<T>, IBinaryNumber<T>
|
where T : unmanaged, IBinaryNumber<T>
|
||||||
{
|
{
|
||||||
fixed (byte* labelPtr = &label.GetPinnableNullTerminatedReference())
|
fixed (byte* labelPtr = &label.GetPinnableNullTerminatedReference())
|
||||||
fixed (byte* formatPtr = &format.GetPinnableNullTerminatedReference())
|
fixed (byte* formatPtr = &format.GetPinnableNullTerminatedReference())
|
||||||
|
|
@ -340,7 +340,7 @@ public static unsafe partial class ImGui
|
||||||
scoped in T step, scoped in T stepFast,
|
scoped in T step, scoped in T stepFast,
|
||||||
ImU8String format = default,
|
ImU8String format = default,
|
||||||
ImGuiInputTextFlags flags = ImGuiInputTextFlags.None)
|
ImGuiInputTextFlags flags = ImGuiInputTextFlags.None)
|
||||||
where T : unmanaged, INumber<T>, IBinaryNumber<T>
|
where T : unmanaged, IBinaryNumber<T>
|
||||||
{
|
{
|
||||||
fixed (byte* labelPtr = &label.GetPinnableNullTerminatedReference())
|
fixed (byte* labelPtr = &label.GetPinnableNullTerminatedReference())
|
||||||
fixed (byte* formatPtr = &format.GetPinnableNullTerminatedReference())
|
fixed (byte* formatPtr = &format.GetPinnableNullTerminatedReference())
|
||||||
|
|
|
||||||
|
|
@ -311,6 +311,61 @@ public static unsafe partial class ImGui
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static bool SliderScalar<T>(
|
||||||
|
ImU8String label, scoped ref T v,
|
||||||
|
scoped in T vMin, scoped in T vMax,
|
||||||
|
ImU8String format = default,
|
||||||
|
ImGuiSliderFlags flags = ImGuiSliderFlags.None)
|
||||||
|
where T : unmanaged, IBinaryNumber<T>
|
||||||
|
{
|
||||||
|
fixed (byte* labelPtr = &label.GetPinnableNullTerminatedReference())
|
||||||
|
fixed (byte* formatPtr = &format.GetPinnableNullTerminatedReference())
|
||||||
|
fixed (T* vPtr = &v)
|
||||||
|
fixed (T* vMinPtr = &vMin)
|
||||||
|
fixed (T* vMaxPtr = &vMax)
|
||||||
|
{
|
||||||
|
var res = ImGuiNative.SliderScalar(
|
||||||
|
labelPtr,
|
||||||
|
GetImGuiDataType<T>(),
|
||||||
|
vPtr,
|
||||||
|
vMinPtr,
|
||||||
|
vMaxPtr,
|
||||||
|
formatPtr,
|
||||||
|
flags) != 0;
|
||||||
|
label.Dispose();
|
||||||
|
format.Dispose();
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static bool SliderScalar<T>(
|
||||||
|
ImU8String label, Span<T> v, scoped in T vMin,
|
||||||
|
scoped in T vMax,
|
||||||
|
ImU8String format = default,
|
||||||
|
ImGuiSliderFlags flags = ImGuiSliderFlags.None)
|
||||||
|
where T : unmanaged, INumber<T>, IBinaryNumber<T>
|
||||||
|
{
|
||||||
|
fixed (byte* labelPtr = &label.GetPinnableNullTerminatedReference())
|
||||||
|
fixed (byte* formatPtr = &format.GetPinnableNullTerminatedReference())
|
||||||
|
fixed (T* vPtr = v)
|
||||||
|
fixed (T* vMinPtr = &vMin)
|
||||||
|
fixed (T* vMaxPtr = &vMax)
|
||||||
|
{
|
||||||
|
var res = ImGuiNative.SliderScalarN(
|
||||||
|
labelPtr,
|
||||||
|
GetImGuiDataType<T>(),
|
||||||
|
vPtr,
|
||||||
|
v.Length,
|
||||||
|
vMinPtr,
|
||||||
|
vMaxPtr,
|
||||||
|
formatPtr,
|
||||||
|
flags) != 0;
|
||||||
|
label.Dispose();
|
||||||
|
format.Dispose();
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public static bool SliderAngle(
|
public static bool SliderAngle(
|
||||||
ImU8String label, ref float vRad, float vDegreesMin = -360.0f,
|
ImU8String label, ref float vRad, float vDegreesMin = -360.0f,
|
||||||
float vDegreesMax = +360.0f,
|
float vDegreesMax = +360.0f,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue