Bump to version 1.75 (NuGet 1.75.0).

internals
Eric Mellino 5 years ago
parent 1dfd06d6b4
commit 0b9c9ea07d
  1. BIN
      deps/cimgui/linux-x64/cimgui.so
  2. BIN
      deps/cimgui/osx-x64/cimgui.dylib
  3. BIN
      deps/cimgui/win-x64/cimgui.dll
  4. BIN
      deps/cimgui/win-x86/cimgui.dll
  5. 11623
      src/CodeGenerator/definitions.json
  6. 105
      src/CodeGenerator/structs_and_enums.json
  7. 203
      src/ImGui.NET/Generated/ImDrawList.gen.cs
  8. 6
      src/ImGui.NET/Generated/ImFont.gen.cs
  9. 2
      src/ImGui.NET/Generated/ImFontConfig.gen.cs
  10. 504
      src/ImGui.NET/Generated/ImGui.gen.cs
  11. 14
      src/ImGui.NET/Generated/ImGuiIO.gen.cs
  12. 16
      src/ImGui.NET/Generated/ImGuiListClipper.gen.cs
  13. 10
      src/ImGui.NET/Generated/ImGuiMouseButton.gen.cs
  14. 3
      src/ImGui.NET/Generated/ImGuiMouseCursor.gen.cs
  15. 82
      src/ImGui.NET/Generated/ImGuiNative.gen.cs
  16. 11
      src/ImGui.NET/Generated/ImGuiNavInput.gen.cs
  17. 1
      src/ImGui.NET/Generated/ImGuiSelectableFlags.gen.cs
  18. 2
      src/ImGui.NET/Generated/ImGuiStyle.gen.cs
  19. 2
      src/ImGui.NET/Generated/ImGuiTreeNodeFlags.gen.cs
  20. 2
      src/ImGui.NET/ImGui.NET.csproj

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

@ -1077,6 +1077,28 @@
"value": 22 "value": 22
} }
], ],
"ImGuiMouseButton_": [
{
"calc_value": 0,
"name": "ImGuiMouseButton_Left",
"value": "0"
},
{
"calc_value": 1,
"name": "ImGuiMouseButton_Right",
"value": "1"
},
{
"calc_value": 2,
"name": "ImGuiMouseButton_Middle",
"value": "2"
},
{
"calc_value": 5,
"name": "ImGuiMouseButton_COUNT",
"value": "5"
}
],
"ImGuiMouseCursor_": [ "ImGuiMouseCursor_": [
{ {
"calc_value": -1, "calc_value": -1,
@ -1125,8 +1147,13 @@
}, },
{ {
"calc_value": 8, "calc_value": 8,
"name": "ImGuiMouseCursor_COUNT", "name": "ImGuiMouseCursor_NotAllowed",
"value": 8 "value": 8
},
{
"calc_value": 9,
"name": "ImGuiMouseCursor_COUNT",
"value": 9
} }
], ],
"ImGuiNavInput_": [ "ImGuiNavInput_": [
@ -1217,33 +1244,28 @@
}, },
{ {
"calc_value": 17, "calc_value": 17,
"name": "ImGuiNavInput_KeyTab_", "name": "ImGuiNavInput_KeyLeft_",
"value": 17 "value": 17
}, },
{ {
"calc_value": 18, "calc_value": 18,
"name": "ImGuiNavInput_KeyLeft_", "name": "ImGuiNavInput_KeyRight_",
"value": 18 "value": 18
}, },
{ {
"calc_value": 19, "calc_value": 19,
"name": "ImGuiNavInput_KeyRight_", "name": "ImGuiNavInput_KeyUp_",
"value": 19 "value": 19
}, },
{ {
"calc_value": 20, "calc_value": 20,
"name": "ImGuiNavInput_KeyUp_", "name": "ImGuiNavInput_KeyDown_",
"value": 20 "value": 20
}, },
{ {
"calc_value": 21, "calc_value": 21,
"name": "ImGuiNavInput_KeyDown_",
"value": 21
},
{
"calc_value": 22,
"name": "ImGuiNavInput_COUNT", "name": "ImGuiNavInput_COUNT",
"value": 22 "value": 21
}, },
{ {
"calc_value": 16, "calc_value": 16,
@ -1276,6 +1298,11 @@
"calc_value": 8, "calc_value": 8,
"name": "ImGuiSelectableFlags_Disabled", "name": "ImGuiSelectableFlags_Disabled",
"value": "1 << 3" "value": "1 << 3"
},
{
"calc_value": 16,
"name": "ImGuiSelectableFlags_AllowItemOverlap",
"value": "1 << 4"
} }
], ],
"ImGuiStyleVar_": [ "ImGuiStyleVar_": [
@ -1545,6 +1572,16 @@
"name": "ImGuiTreeNodeFlags_FramePadding", "name": "ImGuiTreeNodeFlags_FramePadding",
"value": "1 << 10" "value": "1 << 10"
}, },
{
"calc_value": 2048,
"name": "ImGuiTreeNodeFlags_SpanAvailWidth",
"value": "1 << 11"
},
{
"calc_value": 4096,
"name": "ImGuiTreeNodeFlags_SpanFullWidth",
"value": "1 << 12"
},
{ {
"calc_value": 8192, "calc_value": 8192,
"name": "ImGuiTreeNodeFlags_NavLeftJumpsBackHere", "name": "ImGuiTreeNodeFlags_NavLeftJumpsBackHere",
@ -1933,6 +1970,14 @@
"name": "FallbackChar", "name": "FallbackChar",
"type": "ImWchar" "type": "ImWchar"
}, },
{
"name": "EllipsisChar",
"type": "ImWchar"
},
{
"name": "DirtyLookupTables",
"type": "bool"
},
{ {
"name": "Scale", "name": "Scale",
"type": "float" "type": "float"
@ -1948,10 +1993,6 @@
{ {
"name": "MetricsTotalSurface", "name": "MetricsTotalSurface",
"type": "int" "type": "int"
},
{
"name": "DirtyLookupTables",
"type": "bool"
} }
], ],
"ImFontAtlas": [ "ImFontAtlas": [
@ -2119,6 +2160,10 @@
"name": "RasterizerMultiply", "name": "RasterizerMultiply",
"type": "float" "type": "float"
}, },
{
"name": "EllipsisChar",
"type": "ImWchar"
},
{ {
"name": "Name[40]", "name": "Name[40]",
"size": 40, "size": 40,
@ -2276,6 +2321,10 @@
"name": "ConfigWindowsMoveFromTitleBarOnly", "name": "ConfigWindowsMoveFromTitleBarOnly",
"type": "bool" "type": "bool"
}, },
{
"name": "ConfigWindowsMemoryCompactTimer",
"type": "float"
},
{ {
"name": "BackendPlatformName", "name": "BackendPlatformName",
"type": "const char*" "type": "const char*"
@ -2360,7 +2409,7 @@
}, },
{ {
"name": "NavInputs[ImGuiNavInput_COUNT]", "name": "NavInputs[ImGuiNavInput_COUNT]",
"size": 22, "size": 21,
"type": "float" "type": "float"
}, },
{ {
@ -2490,12 +2539,12 @@
}, },
{ {
"name": "NavInputsDownDuration[ImGuiNavInput_COUNT]", "name": "NavInputsDownDuration[ImGuiNavInput_COUNT]",
"size": 22, "size": 21,
"type": "float" "type": "float"
}, },
{ {
"name": "NavInputsDownDurationPrev[ImGuiNavInput_COUNT]", "name": "NavInputsDownDurationPrev[ImGuiNavInput_COUNT]",
"size": 22, "size": 21,
"type": "float" "type": "float"
}, },
{ {
@ -2556,12 +2605,12 @@
], ],
"ImGuiListClipper": [ "ImGuiListClipper": [
{ {
"name": "StartPosY", "name": "DisplayStart",
"type": "float" "type": "int"
}, },
{ {
"name": "ItemsHeight", "name": "DisplayEnd",
"type": "float" "type": "int"
}, },
{ {
"name": "ItemsCount", "name": "ItemsCount",
@ -2572,12 +2621,12 @@
"type": "int" "type": "int"
}, },
{ {
"name": "DisplayStart", "name": "ItemsHeight",
"type": "int" "type": "float"
}, },
{ {
"name": "DisplayEnd", "name": "StartPosY",
"type": "int" "type": "float"
} }
], ],
"ImGuiOnceUponAFrame": [ "ImGuiOnceUponAFrame": [
@ -2793,6 +2842,10 @@
"name": "CurveTessellationTol", "name": "CurveTessellationTol",
"type": "float" "type": "float"
}, },
{
"name": "CircleSegmentMaxError",
"type": "float"
},
{ {
"name": "Colors[ImGuiCol_COUNT]", "name": "Colors[ImGuiCol_COUNT]",
"size": 48, "size": 48,

@ -44,43 +44,43 @@ namespace ImGuiNET
public ImVector<IntPtr> _TextureIdStack => new ImVector<IntPtr>(NativePtr->_TextureIdStack); public ImVector<IntPtr> _TextureIdStack => new ImVector<IntPtr>(NativePtr->_TextureIdStack);
public ImVector<Vector2> _Path => new ImVector<Vector2>(NativePtr->_Path); public ImVector<Vector2> _Path => new ImVector<Vector2>(NativePtr->_Path);
public ref ImDrawListSplitter _Splitter => ref Unsafe.AsRef<ImDrawListSplitter>(&NativePtr->_Splitter); public ref ImDrawListSplitter _Splitter => ref Unsafe.AsRef<ImDrawListSplitter>(&NativePtr->_Splitter);
public void AddBezierCurve(Vector2 pos0, Vector2 cp0, Vector2 cp1, Vector2 pos1, uint col, float thickness) public void AddBezierCurve(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, uint col, float thickness)
{ {
int num_segments = 0; int num_segments = 0;
ImGuiNative.ImDrawList_AddBezierCurve(NativePtr, pos0, cp0, cp1, pos1, col, thickness, num_segments); ImGuiNative.ImDrawList_AddBezierCurve(NativePtr, p1, p2, p3, p4, col, thickness, num_segments);
} }
public void AddBezierCurve(Vector2 pos0, Vector2 cp0, Vector2 cp1, Vector2 pos1, uint col, float thickness, int num_segments) public void AddBezierCurve(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, uint col, float thickness, int num_segments)
{ {
ImGuiNative.ImDrawList_AddBezierCurve(NativePtr, pos0, cp0, cp1, pos1, col, thickness, num_segments); ImGuiNative.ImDrawList_AddBezierCurve(NativePtr, p1, p2, p3, p4, col, thickness, num_segments);
} }
public void AddCallback(IntPtr callback, IntPtr callback_data) public void AddCallback(IntPtr callback, IntPtr callback_data)
{ {
void* native_callback_data = (void*)callback_data.ToPointer(); void* native_callback_data = (void*)callback_data.ToPointer();
ImGuiNative.ImDrawList_AddCallback(NativePtr, callback, native_callback_data); ImGuiNative.ImDrawList_AddCallback(NativePtr, callback, native_callback_data);
} }
public void AddCircle(Vector2 centre, float radius, uint col) public void AddCircle(Vector2 center, float radius, uint col)
{ {
int num_segments = 12; int num_segments = 12;
float thickness = 1.0f; float thickness = 1.0f;
ImGuiNative.ImDrawList_AddCircle(NativePtr, centre, radius, col, num_segments, thickness); ImGuiNative.ImDrawList_AddCircle(NativePtr, center, radius, col, num_segments, thickness);
} }
public void AddCircle(Vector2 centre, float radius, uint col, int num_segments) public void AddCircle(Vector2 center, float radius, uint col, int num_segments)
{ {
float thickness = 1.0f; float thickness = 1.0f;
ImGuiNative.ImDrawList_AddCircle(NativePtr, centre, radius, col, num_segments, thickness); ImGuiNative.ImDrawList_AddCircle(NativePtr, center, radius, col, num_segments, thickness);
} }
public void AddCircle(Vector2 centre, float radius, uint col, int num_segments, float thickness) public void AddCircle(Vector2 center, float radius, uint col, int num_segments, float thickness)
{ {
ImGuiNative.ImDrawList_AddCircle(NativePtr, centre, radius, col, num_segments, thickness); ImGuiNative.ImDrawList_AddCircle(NativePtr, center, radius, col, num_segments, thickness);
} }
public void AddCircleFilled(Vector2 centre, float radius, uint col) public void AddCircleFilled(Vector2 center, float radius, uint col)
{ {
int num_segments = 12; int num_segments = 12;
ImGuiNative.ImDrawList_AddCircleFilled(NativePtr, centre, radius, col, num_segments); ImGuiNative.ImDrawList_AddCircleFilled(NativePtr, center, radius, col, num_segments);
} }
public void AddCircleFilled(Vector2 centre, float radius, uint col, int num_segments) public void AddCircleFilled(Vector2 center, float radius, uint col, int num_segments)
{ {
ImGuiNative.ImDrawList_AddCircleFilled(NativePtr, centre, radius, col, num_segments); ImGuiNative.ImDrawList_AddCircleFilled(NativePtr, center, radius, col, num_segments);
} }
public void AddConvexPolyFilled(ref Vector2 points, int num_points, uint col) public void AddConvexPolyFilled(ref Vector2 points, int num_points, uint col)
{ {
@ -93,84 +93,97 @@ namespace ImGuiNET
{ {
ImGuiNative.ImDrawList_AddDrawCmd(NativePtr); ImGuiNative.ImDrawList_AddDrawCmd(NativePtr);
} }
public void AddImage(IntPtr user_texture_id, Vector2 a, Vector2 b) public void AddImage(IntPtr user_texture_id, Vector2 p_min, Vector2 p_max)
{ {
Vector2 uv_a = new Vector2(); Vector2 uv_min = new Vector2();
Vector2 uv_b = new Vector2(1, 1); Vector2 uv_max = new Vector2(1, 1);
uint col = 0xFFFFFFFF; uint col = 0xFFFFFFFF;
ImGuiNative.ImDrawList_AddImage(NativePtr, user_texture_id, a, b, uv_a, uv_b, col); ImGuiNative.ImDrawList_AddImage(NativePtr, user_texture_id, p_min, p_max, uv_min, uv_max, col);
} }
public void AddImage(IntPtr user_texture_id, Vector2 a, Vector2 b, Vector2 uv_a) public void AddImage(IntPtr user_texture_id, Vector2 p_min, Vector2 p_max, Vector2 uv_min)
{ {
Vector2 uv_b = new Vector2(1, 1); Vector2 uv_max = new Vector2(1, 1);
uint col = 0xFFFFFFFF; uint col = 0xFFFFFFFF;
ImGuiNative.ImDrawList_AddImage(NativePtr, user_texture_id, a, b, uv_a, uv_b, col); ImGuiNative.ImDrawList_AddImage(NativePtr, user_texture_id, p_min, p_max, uv_min, uv_max, col);
} }
public void AddImage(IntPtr user_texture_id, Vector2 a, Vector2 b, Vector2 uv_a, Vector2 uv_b) public void AddImage(IntPtr user_texture_id, Vector2 p_min, Vector2 p_max, Vector2 uv_min, Vector2 uv_max)
{ {
uint col = 0xFFFFFFFF; uint col = 0xFFFFFFFF;
ImGuiNative.ImDrawList_AddImage(NativePtr, user_texture_id, a, b, uv_a, uv_b, col); ImGuiNative.ImDrawList_AddImage(NativePtr, user_texture_id, p_min, p_max, uv_min, uv_max, col);
} }
public void AddImage(IntPtr user_texture_id, Vector2 a, Vector2 b, Vector2 uv_a, Vector2 uv_b, uint col) public void AddImage(IntPtr user_texture_id, Vector2 p_min, Vector2 p_max, Vector2 uv_min, Vector2 uv_max, uint col)
{ {
ImGuiNative.ImDrawList_AddImage(NativePtr, user_texture_id, a, b, uv_a, uv_b, col); ImGuiNative.ImDrawList_AddImage(NativePtr, user_texture_id, p_min, p_max, uv_min, uv_max, col);
} }
public void AddImageQuad(IntPtr user_texture_id, Vector2 a, Vector2 b, Vector2 c, Vector2 d) public void AddImageQuad(IntPtr user_texture_id, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4)
{ {
Vector2 uv_a = new Vector2(); Vector2 uv1 = new Vector2();
Vector2 uv_b = new Vector2(1, 0); Vector2 uv2 = new Vector2(1, 0);
Vector2 uv_c = new Vector2(1, 1); Vector2 uv3 = new Vector2(1, 1);
Vector2 uv_d = new Vector2(0, 1); Vector2 uv4 = new Vector2(0, 1);
uint col = 0xFFFFFFFF; uint col = 0xFFFFFFFF;
ImGuiNative.ImDrawList_AddImageQuad(NativePtr, user_texture_id, a, b, c, d, uv_a, uv_b, uv_c, uv_d, col); ImGuiNative.ImDrawList_AddImageQuad(NativePtr, user_texture_id, p1, p2, p3, p4, uv1, uv2, uv3, uv4, col);
} }
public void AddImageQuad(IntPtr user_texture_id, Vector2 a, Vector2 b, Vector2 c, Vector2 d, Vector2 uv_a) public void AddImageQuad(IntPtr user_texture_id, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, Vector2 uv1)
{ {
Vector2 uv_b = new Vector2(1, 0); Vector2 uv2 = new Vector2(1, 0);
Vector2 uv_c = new Vector2(1, 1); Vector2 uv3 = new Vector2(1, 1);
Vector2 uv_d = new Vector2(0, 1); Vector2 uv4 = new Vector2(0, 1);
uint col = 0xFFFFFFFF; uint col = 0xFFFFFFFF;
ImGuiNative.ImDrawList_AddImageQuad(NativePtr, user_texture_id, a, b, c, d, uv_a, uv_b, uv_c, uv_d, col); ImGuiNative.ImDrawList_AddImageQuad(NativePtr, user_texture_id, p1, p2, p3, p4, uv1, uv2, uv3, uv4, col);
} }
public void AddImageQuad(IntPtr user_texture_id, Vector2 a, Vector2 b, Vector2 c, Vector2 d, Vector2 uv_a, Vector2 uv_b) public void AddImageQuad(IntPtr user_texture_id, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, Vector2 uv1, Vector2 uv2)
{ {
Vector2 uv_c = new Vector2(1, 1); Vector2 uv3 = new Vector2(1, 1);
Vector2 uv_d = new Vector2(0, 1); Vector2 uv4 = new Vector2(0, 1);
uint col = 0xFFFFFFFF; uint col = 0xFFFFFFFF;
ImGuiNative.ImDrawList_AddImageQuad(NativePtr, user_texture_id, a, b, c, d, uv_a, uv_b, uv_c, uv_d, col); ImGuiNative.ImDrawList_AddImageQuad(NativePtr, user_texture_id, p1, p2, p3, p4, uv1, uv2, uv3, uv4, col);
} }
public void AddImageQuad(IntPtr user_texture_id, Vector2 a, Vector2 b, Vector2 c, Vector2 d, Vector2 uv_a, Vector2 uv_b, Vector2 uv_c) public void AddImageQuad(IntPtr user_texture_id, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, Vector2 uv1, Vector2 uv2, Vector2 uv3)
{ {
Vector2 uv_d = new Vector2(0, 1); Vector2 uv4 = new Vector2(0, 1);
uint col = 0xFFFFFFFF; uint col = 0xFFFFFFFF;
ImGuiNative.ImDrawList_AddImageQuad(NativePtr, user_texture_id, a, b, c, d, uv_a, uv_b, uv_c, uv_d, col); ImGuiNative.ImDrawList_AddImageQuad(NativePtr, user_texture_id, p1, p2, p3, p4, uv1, uv2, uv3, uv4, col);
} }
public void AddImageQuad(IntPtr user_texture_id, Vector2 a, Vector2 b, Vector2 c, Vector2 d, Vector2 uv_a, Vector2 uv_b, Vector2 uv_c, Vector2 uv_d) public void AddImageQuad(IntPtr user_texture_id, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, Vector2 uv1, Vector2 uv2, Vector2 uv3, Vector2 uv4)
{ {
uint col = 0xFFFFFFFF; uint col = 0xFFFFFFFF;
ImGuiNative.ImDrawList_AddImageQuad(NativePtr, user_texture_id, a, b, c, d, uv_a, uv_b, uv_c, uv_d, col); ImGuiNative.ImDrawList_AddImageQuad(NativePtr, user_texture_id, p1, p2, p3, p4, uv1, uv2, uv3, uv4, col);
} }
public void AddImageQuad(IntPtr user_texture_id, Vector2 a, Vector2 b, Vector2 c, Vector2 d, Vector2 uv_a, Vector2 uv_b, Vector2 uv_c, Vector2 uv_d, uint col) public void AddImageQuad(IntPtr user_texture_id, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, Vector2 uv1, Vector2 uv2, Vector2 uv3, Vector2 uv4, uint col)
{ {
ImGuiNative.ImDrawList_AddImageQuad(NativePtr, user_texture_id, a, b, c, d, uv_a, uv_b, uv_c, uv_d, col); ImGuiNative.ImDrawList_AddImageQuad(NativePtr, user_texture_id, p1, p2, p3, p4, uv1, uv2, uv3, uv4, col);
} }
public void AddImageRounded(IntPtr user_texture_id, Vector2 a, Vector2 b, Vector2 uv_a, Vector2 uv_b, uint col, float rounding) public void AddImageRounded(IntPtr user_texture_id, Vector2 p_min, Vector2 p_max, Vector2 uv_min, Vector2 uv_max, uint col, float rounding)
{ {
ImDrawCornerFlags rounding_corners = ImDrawCornerFlags.All; ImDrawCornerFlags rounding_corners = ImDrawCornerFlags.All;
ImGuiNative.ImDrawList_AddImageRounded(NativePtr, user_texture_id, a, b, uv_a, uv_b, col, rounding, rounding_corners); ImGuiNative.ImDrawList_AddImageRounded(NativePtr, user_texture_id, p_min, p_max, uv_min, uv_max, col, rounding, rounding_corners);
} }
public void AddImageRounded(IntPtr user_texture_id, Vector2 a, Vector2 b, Vector2 uv_a, Vector2 uv_b, uint col, float rounding, ImDrawCornerFlags rounding_corners) public void AddImageRounded(IntPtr user_texture_id, Vector2 p_min, Vector2 p_max, Vector2 uv_min, Vector2 uv_max, uint col, float rounding, ImDrawCornerFlags rounding_corners)
{ {
ImGuiNative.ImDrawList_AddImageRounded(NativePtr, user_texture_id, a, b, uv_a, uv_b, col, rounding, rounding_corners); ImGuiNative.ImDrawList_AddImageRounded(NativePtr, user_texture_id, p_min, p_max, uv_min, uv_max, col, rounding, rounding_corners);
} }
public void AddLine(Vector2 a, Vector2 b, uint col) public void AddLine(Vector2 p1, Vector2 p2, uint col)
{ {
float thickness = 1.0f; float thickness = 1.0f;
ImGuiNative.ImDrawList_AddLine(NativePtr, a, b, col, thickness); ImGuiNative.ImDrawList_AddLine(NativePtr, p1, p2, col, thickness);
} }
public void AddLine(Vector2 a, Vector2 b, uint col, float thickness) public void AddLine(Vector2 p1, Vector2 p2, uint col, float thickness)
{ {
ImGuiNative.ImDrawList_AddLine(NativePtr, a, b, col, thickness); ImGuiNative.ImDrawList_AddLine(NativePtr, p1, p2, col, thickness);
}
public void AddNgon(Vector2 center, float radius, uint col, int num_segments)
{
float thickness = 1.0f;
ImGuiNative.ImDrawList_AddNgon(NativePtr, center, radius, col, num_segments, thickness);
}
public void AddNgon(Vector2 center, float radius, uint col, int num_segments, float thickness)
{
ImGuiNative.ImDrawList_AddNgon(NativePtr, center, radius, col, num_segments, thickness);
}
public void AddNgonFilled(Vector2 center, float radius, uint col, int num_segments)
{
ImGuiNative.ImDrawList_AddNgonFilled(NativePtr, center, radius, col, num_segments);
} }
public void AddPolyline(ref Vector2 points, int num_points, uint col, bool closed, float thickness) public void AddPolyline(ref Vector2 points, int num_points, uint col, bool closed, float thickness)
{ {
@ -180,72 +193,72 @@ namespace ImGuiNET
ImGuiNative.ImDrawList_AddPolyline(NativePtr, native_points, num_points, col, native_closed, thickness); ImGuiNative.ImDrawList_AddPolyline(NativePtr, native_points, num_points, col, native_closed, thickness);
} }
} }
public void AddQuad(Vector2 a, Vector2 b, Vector2 c, Vector2 d, uint col) public void AddQuad(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, uint col)
{ {
float thickness = 1.0f; float thickness = 1.0f;
ImGuiNative.ImDrawList_AddQuad(NativePtr, a, b, c, d, col, thickness); ImGuiNative.ImDrawList_AddQuad(NativePtr, p1, p2, p3, p4, col, thickness);
} }
public void AddQuad(Vector2 a, Vector2 b, Vector2 c, Vector2 d, uint col, float thickness) public void AddQuad(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, uint col, float thickness)
{ {
ImGuiNative.ImDrawList_AddQuad(NativePtr, a, b, c, d, col, thickness); ImGuiNative.ImDrawList_AddQuad(NativePtr, p1, p2, p3, p4, col, thickness);
} }
public void AddQuadFilled(Vector2 a, Vector2 b, Vector2 c, Vector2 d, uint col) public void AddQuadFilled(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, uint col)
{ {
ImGuiNative.ImDrawList_AddQuadFilled(NativePtr, a, b, c, d, col); ImGuiNative.ImDrawList_AddQuadFilled(NativePtr, p1, p2, p3, p4, col);
} }
public void AddRect(Vector2 a, Vector2 b, uint col) public void AddRect(Vector2 p_min, Vector2 p_max, uint col)
{ {
float rounding = 0.0f; float rounding = 0.0f;
ImDrawCornerFlags rounding_corners = ImDrawCornerFlags.All; ImDrawCornerFlags rounding_corners = ImDrawCornerFlags.All;
float thickness = 1.0f; float thickness = 1.0f;
ImGuiNative.ImDrawList_AddRect(NativePtr, a, b, col, rounding, rounding_corners, thickness); ImGuiNative.ImDrawList_AddRect(NativePtr, p_min, p_max, col, rounding, rounding_corners, thickness);
} }
public void AddRect(Vector2 a, Vector2 b, uint col, float rounding) public void AddRect(Vector2 p_min, Vector2 p_max, uint col, float rounding)
{ {
ImDrawCornerFlags rounding_corners = ImDrawCornerFlags.All; ImDrawCornerFlags rounding_corners = ImDrawCornerFlags.All;
float thickness = 1.0f; float thickness = 1.0f;
ImGuiNative.ImDrawList_AddRect(NativePtr, a, b, col, rounding, rounding_corners, thickness); ImGuiNative.ImDrawList_AddRect(NativePtr, p_min, p_max, col, rounding, rounding_corners, thickness);
} }
public void AddRect(Vector2 a, Vector2 b, uint col, float rounding, ImDrawCornerFlags rounding_corners) public void AddRect(Vector2 p_min, Vector2 p_max, uint col, float rounding, ImDrawCornerFlags rounding_corners)
{ {
float thickness = 1.0f; float thickness = 1.0f;
ImGuiNative.ImDrawList_AddRect(NativePtr, a, b, col, rounding, rounding_corners, thickness); ImGuiNative.ImDrawList_AddRect(NativePtr, p_min, p_max, col, rounding, rounding_corners, thickness);
} }
public void AddRect(Vector2 a, Vector2 b, uint col, float rounding, ImDrawCornerFlags rounding_corners, float thickness) public void AddRect(Vector2 p_min, Vector2 p_max, uint col, float rounding, ImDrawCornerFlags rounding_corners, float thickness)
{ {
ImGuiNative.ImDrawList_AddRect(NativePtr, a, b, col, rounding, rounding_corners, thickness); ImGuiNative.ImDrawList_AddRect(NativePtr, p_min, p_max, col, rounding, rounding_corners, thickness);
} }
public void AddRectFilled(Vector2 a, Vector2 b, uint col) public void AddRectFilled(Vector2 p_min, Vector2 p_max, uint col)
{ {
float rounding = 0.0f; float rounding = 0.0f;
ImDrawCornerFlags rounding_corners = ImDrawCornerFlags.All; ImDrawCornerFlags rounding_corners = ImDrawCornerFlags.All;
ImGuiNative.ImDrawList_AddRectFilled(NativePtr, a, b, col, rounding, rounding_corners); ImGuiNative.ImDrawList_AddRectFilled(NativePtr, p_min, p_max, col, rounding, rounding_corners);
} }
public void AddRectFilled(Vector2 a, Vector2 b, uint col, float rounding) public void AddRectFilled(Vector2 p_min, Vector2 p_max, uint col, float rounding)
{ {
ImDrawCornerFlags rounding_corners = ImDrawCornerFlags.All; ImDrawCornerFlags rounding_corners = ImDrawCornerFlags.All;
ImGuiNative.ImDrawList_AddRectFilled(NativePtr, a, b, col, rounding, rounding_corners); ImGuiNative.ImDrawList_AddRectFilled(NativePtr, p_min, p_max, col, rounding, rounding_corners);
} }
public void AddRectFilled(Vector2 a, Vector2 b, uint col, float rounding, ImDrawCornerFlags rounding_corners) public void AddRectFilled(Vector2 p_min, Vector2 p_max, uint col, float rounding, ImDrawCornerFlags rounding_corners)
{ {
ImGuiNative.ImDrawList_AddRectFilled(NativePtr, a, b, col, rounding, rounding_corners); ImGuiNative.ImDrawList_AddRectFilled(NativePtr, p_min, p_max, col, rounding, rounding_corners);
} }
public void AddRectFilledMultiColor(Vector2 a, Vector2 b, uint col_upr_left, uint col_upr_right, uint col_bot_right, uint col_bot_left) public void AddRectFilledMultiColor(Vector2 p_min, Vector2 p_max, uint col_upr_left, uint col_upr_right, uint col_bot_right, uint col_bot_left)
{ {
ImGuiNative.ImDrawList_AddRectFilledMultiColor(NativePtr, a, b, col_upr_left, col_upr_right, col_bot_right, col_bot_left); ImGuiNative.ImDrawList_AddRectFilledMultiColor(NativePtr, p_min, p_max, col_upr_left, col_upr_right, col_bot_right, col_bot_left);
} }
public void AddTriangle(Vector2 a, Vector2 b, Vector2 c, uint col) public void AddTriangle(Vector2 p1, Vector2 p2, Vector2 p3, uint col)
{ {
float thickness = 1.0f; float thickness = 1.0f;
ImGuiNative.ImDrawList_AddTriangle(NativePtr, a, b, c, col, thickness); ImGuiNative.ImDrawList_AddTriangle(NativePtr, p1, p2, p3, col, thickness);
} }
public void AddTriangle(Vector2 a, Vector2 b, Vector2 c, uint col, float thickness) public void AddTriangle(Vector2 p1, Vector2 p2, Vector2 p3, uint col, float thickness)
{ {
ImGuiNative.ImDrawList_AddTriangle(NativePtr, a, b, c, col, thickness); ImGuiNative.ImDrawList_AddTriangle(NativePtr, p1, p2, p3, col, thickness);
} }
public void AddTriangleFilled(Vector2 a, Vector2 b, Vector2 c, uint col) public void AddTriangleFilled(Vector2 p1, Vector2 p2, Vector2 p3, uint col)
{ {
ImGuiNative.ImDrawList_AddTriangleFilled(NativePtr, a, b, c, col); ImGuiNative.ImDrawList_AddTriangleFilled(NativePtr, p1, p2, p3, col);
} }
public void ChannelsMerge() public void ChannelsMerge()
{ {
@ -286,27 +299,27 @@ namespace ImGuiNET
Vector2 ret = ImGuiNative.ImDrawList_GetClipRectMin(NativePtr); Vector2 ret = ImGuiNative.ImDrawList_GetClipRectMin(NativePtr);
return ret; return ret;
} }
public void PathArcTo(Vector2 centre, float radius, float a_min, float a_max) public void PathArcTo(Vector2 center, float radius, float a_min, float a_max)
{ {
int num_segments = 10; int num_segments = 10;
ImGuiNative.ImDrawList_PathArcTo(NativePtr, centre, radius, a_min, a_max, num_segments); ImGuiNative.ImDrawList_PathArcTo(NativePtr, center, radius, a_min, a_max, num_segments);
} }
public void PathArcTo(Vector2 centre, float radius, float a_min, float a_max, int num_segments) public void PathArcTo(Vector2 center, float radius, float a_min, float a_max, int num_segments)
{ {
ImGuiNative.ImDrawList_PathArcTo(NativePtr, centre, radius, a_min, a_max, num_segments); ImGuiNative.ImDrawList_PathArcTo(NativePtr, center, radius, a_min, a_max, num_segments);
} }
public void PathArcToFast(Vector2 centre, float radius, int a_min_of_12, int a_max_of_12) public void PathArcToFast(Vector2 center, float radius, int a_min_of_12, int a_max_of_12)
{ {
ImGuiNative.ImDrawList_PathArcToFast(NativePtr, centre, radius, a_min_of_12, a_max_of_12); ImGuiNative.ImDrawList_PathArcToFast(NativePtr, center, radius, a_min_of_12, a_max_of_12);
} }
public void PathBezierCurveTo(Vector2 p1, Vector2 p2, Vector2 p3) public void PathBezierCurveTo(Vector2 p2, Vector2 p3, Vector2 p4)
{ {
int num_segments = 0; int num_segments = 0;
ImGuiNative.ImDrawList_PathBezierCurveTo(NativePtr, p1, p2, p3, num_segments); ImGuiNative.ImDrawList_PathBezierCurveTo(NativePtr, p2, p3, p4, num_segments);
} }
public void PathBezierCurveTo(Vector2 p1, Vector2 p2, Vector2 p3, int num_segments) public void PathBezierCurveTo(Vector2 p2, Vector2 p3, Vector2 p4, int num_segments)
{ {
ImGuiNative.ImDrawList_PathBezierCurveTo(NativePtr, p1, p2, p3, num_segments); ImGuiNative.ImDrawList_PathBezierCurveTo(NativePtr, p2, p3, p4, num_segments);
} }
public void PathClear() public void PathClear()
{ {
@ -374,6 +387,10 @@ namespace ImGuiNET
{ {
ImGuiNative.ImDrawList_PrimReserve(NativePtr, idx_count, vtx_count); ImGuiNative.ImDrawList_PrimReserve(NativePtr, idx_count, vtx_count);
} }
public void PrimUnreserve(int idx_count, int vtx_count)
{
ImGuiNative.ImDrawList_PrimUnreserve(NativePtr, idx_count, vtx_count);
}
public void PrimVtx(Vector2 pos, Vector2 uv, uint col) public void PrimVtx(Vector2 pos, Vector2 uv, uint col)
{ {
ImGuiNative.ImDrawList_PrimVtx(NativePtr, pos, uv, col); ImGuiNative.ImDrawList_PrimVtx(NativePtr, pos, uv, col);

@ -18,11 +18,12 @@ namespace ImGuiNET
public ImFontConfig* ConfigData; public ImFontConfig* ConfigData;
public short ConfigDataCount; public short ConfigDataCount;
public ushort FallbackChar; public ushort FallbackChar;
public ushort EllipsisChar;
public byte DirtyLookupTables;
public float Scale; public float Scale;
public float Ascent; public float Ascent;
public float Descent; public float Descent;
public int MetricsTotalSurface; public int MetricsTotalSurface;
public byte DirtyLookupTables;
} }
public unsafe partial struct ImFontPtr public unsafe partial struct ImFontPtr
{ {
@ -43,11 +44,12 @@ namespace ImGuiNET
public ImFontConfigPtr ConfigData => new ImFontConfigPtr(NativePtr->ConfigData); public ImFontConfigPtr ConfigData => new ImFontConfigPtr(NativePtr->ConfigData);
public ref short ConfigDataCount => ref Unsafe.AsRef<short>(&NativePtr->ConfigDataCount); public ref short ConfigDataCount => ref Unsafe.AsRef<short>(&NativePtr->ConfigDataCount);
public ref ushort FallbackChar => ref Unsafe.AsRef<ushort>(&NativePtr->FallbackChar); public ref ushort FallbackChar => ref Unsafe.AsRef<ushort>(&NativePtr->FallbackChar);
public ref ushort EllipsisChar => ref Unsafe.AsRef<ushort>(&NativePtr->EllipsisChar);
public ref bool DirtyLookupTables => ref Unsafe.AsRef<bool>(&NativePtr->DirtyLookupTables);
public ref float Scale => ref Unsafe.AsRef<float>(&NativePtr->Scale); public ref float Scale => ref Unsafe.AsRef<float>(&NativePtr->Scale);
public ref float Ascent => ref Unsafe.AsRef<float>(&NativePtr->Ascent); public ref float Ascent => ref Unsafe.AsRef<float>(&NativePtr->Ascent);
public ref float Descent => ref Unsafe.AsRef<float>(&NativePtr->Descent); public ref float Descent => ref Unsafe.AsRef<float>(&NativePtr->Descent);
public ref int MetricsTotalSurface => ref Unsafe.AsRef<int>(&NativePtr->MetricsTotalSurface); public ref int MetricsTotalSurface => ref Unsafe.AsRef<int>(&NativePtr->MetricsTotalSurface);
public ref bool DirtyLookupTables => ref Unsafe.AsRef<bool>(&NativePtr->DirtyLookupTables);
public void AddGlyph(ushort c, float x0, float y0, float x1, float y1, float u0, float v0, float u1, float v1, float advance_x) public void AddGlyph(ushort c, float x0, float y0, float x1, float y1, float u0, float v0, float u1, float v1, float advance_x)
{ {
ImGuiNative.ImFont_AddGlyph(NativePtr, c, x0, y0, x1, y1, u0, v0, u1, v1, advance_x); ImGuiNative.ImFont_AddGlyph(NativePtr, c, x0, y0, x1, y1, u0, v0, u1, v1, advance_x);

@ -23,6 +23,7 @@ namespace ImGuiNET
public byte MergeMode; public byte MergeMode;
public uint RasterizerFlags; public uint RasterizerFlags;
public float RasterizerMultiply; public float RasterizerMultiply;
public ushort EllipsisChar;
public fixed byte Name[40]; public fixed byte Name[40];
public ImFont* DstFont; public ImFont* DstFont;
} }
@ -50,6 +51,7 @@ namespace ImGuiNET
public ref bool MergeMode => ref Unsafe.AsRef<bool>(&NativePtr->MergeMode); public ref bool MergeMode => ref Unsafe.AsRef<bool>(&NativePtr->MergeMode);
public ref uint RasterizerFlags => ref Unsafe.AsRef<uint>(&NativePtr->RasterizerFlags); public ref uint RasterizerFlags => ref Unsafe.AsRef<uint>(&NativePtr->RasterizerFlags);
public ref float RasterizerMultiply => ref Unsafe.AsRef<float>(&NativePtr->RasterizerMultiply); public ref float RasterizerMultiply => ref Unsafe.AsRef<float>(&NativePtr->RasterizerMultiply);
public ref ushort EllipsisChar => ref Unsafe.AsRef<ushort>(&NativePtr->EllipsisChar);
public RangeAccessor<byte> Name => new RangeAccessor<byte>(NativePtr->Name, 40); public RangeAccessor<byte> Name => new RangeAccessor<byte>(NativePtr->Name, 40);
public ImFontPtr DstFont => new ImFontPtr(NativePtr->DstFont); public ImFontPtr DstFont => new ImFontPtr(NativePtr->DstFont);
public void Destroy() public void Destroy()

File diff suppressed because it is too large Load Diff

@ -31,6 +31,7 @@ namespace ImGuiNET
public byte ConfigInputTextCursorBlink; public byte ConfigInputTextCursorBlink;
public byte ConfigWindowsResizeFromEdges; public byte ConfigWindowsResizeFromEdges;
public byte ConfigWindowsMoveFromTitleBarOnly; public byte ConfigWindowsMoveFromTitleBarOnly;
public float ConfigWindowsMemoryCompactTimer;
public byte* BackendPlatformName; public byte* BackendPlatformName;
public byte* BackendRendererName; public byte* BackendRendererName;
public void* BackendPlatformUserData; public void* BackendPlatformUserData;
@ -51,7 +52,7 @@ namespace ImGuiNET
public byte KeyAlt; public byte KeyAlt;
public byte KeySuper; public byte KeySuper;
public fixed byte KeysDown[512]; public fixed byte KeysDown[512];
public fixed float NavInputs[22]; public fixed float NavInputs[21];
public byte WantCaptureMouse; public byte WantCaptureMouse;
public byte WantCaptureKeyboard; public byte WantCaptureKeyboard;
public byte WantTextInput; public byte WantTextInput;
@ -88,8 +89,8 @@ namespace ImGuiNET
public fixed float MouseDragMaxDistanceSqr[5]; public fixed float MouseDragMaxDistanceSqr[5];
public fixed float KeysDownDuration[512]; public fixed float KeysDownDuration[512];
public fixed float KeysDownDurationPrev[512]; public fixed float KeysDownDurationPrev[512];
public fixed float NavInputsDownDuration[22]; public fixed float NavInputsDownDuration[21];
public fixed float NavInputsDownDurationPrev[22]; public fixed float NavInputsDownDurationPrev[21];
public ImVector InputQueueCharacters; public ImVector InputQueueCharacters;
} }
public unsafe partial struct ImGuiIOPtr public unsafe partial struct ImGuiIOPtr
@ -124,6 +125,7 @@ namespace ImGuiNET
public ref bool ConfigInputTextCursorBlink => ref Unsafe.AsRef<bool>(&NativePtr->ConfigInputTextCursorBlink); public ref bool ConfigInputTextCursorBlink => ref Unsafe.AsRef<bool>(&NativePtr->ConfigInputTextCursorBlink);
public ref bool ConfigWindowsResizeFromEdges => ref Unsafe.AsRef<bool>(&NativePtr->ConfigWindowsResizeFromEdges); public ref bool ConfigWindowsResizeFromEdges => ref Unsafe.AsRef<bool>(&NativePtr->ConfigWindowsResizeFromEdges);
public ref bool ConfigWindowsMoveFromTitleBarOnly => ref Unsafe.AsRef<bool>(&NativePtr->ConfigWindowsMoveFromTitleBarOnly); public ref bool ConfigWindowsMoveFromTitleBarOnly => ref Unsafe.AsRef<bool>(&NativePtr->ConfigWindowsMoveFromTitleBarOnly);
public ref float ConfigWindowsMemoryCompactTimer => ref Unsafe.AsRef<float>(&NativePtr->ConfigWindowsMemoryCompactTimer);
public NullTerminatedString BackendPlatformName => new NullTerminatedString(NativePtr->BackendPlatformName); public NullTerminatedString BackendPlatformName => new NullTerminatedString(NativePtr->BackendPlatformName);
public NullTerminatedString BackendRendererName => new NullTerminatedString(NativePtr->BackendRendererName); public NullTerminatedString BackendRendererName => new NullTerminatedString(NativePtr->BackendRendererName);
public IntPtr BackendPlatformUserData { get => (IntPtr)NativePtr->BackendPlatformUserData; set => NativePtr->BackendPlatformUserData = (void*)value; } public IntPtr BackendPlatformUserData { get => (IntPtr)NativePtr->BackendPlatformUserData; set => NativePtr->BackendPlatformUserData = (void*)value; }
@ -144,7 +146,7 @@ namespace ImGuiNET
public ref bool KeyAlt => ref Unsafe.AsRef<bool>(&NativePtr->KeyAlt); public ref bool KeyAlt => ref Unsafe.AsRef<bool>(&NativePtr->KeyAlt);
public ref bool KeySuper => ref Unsafe.AsRef<bool>(&NativePtr->KeySuper); public ref bool KeySuper => ref Unsafe.AsRef<bool>(&NativePtr->KeySuper);
public RangeAccessor<bool> KeysDown => new RangeAccessor<bool>(NativePtr->KeysDown, 512); public RangeAccessor<bool> KeysDown => new RangeAccessor<bool>(NativePtr->KeysDown, 512);
public RangeAccessor<float> NavInputs => new RangeAccessor<float>(NativePtr->NavInputs, 22); public RangeAccessor<float> NavInputs => new RangeAccessor<float>(NativePtr->NavInputs, 21);
public ref bool WantCaptureMouse => ref Unsafe.AsRef<bool>(&NativePtr->WantCaptureMouse); public ref bool WantCaptureMouse => ref Unsafe.AsRef<bool>(&NativePtr->WantCaptureMouse);
public ref bool WantCaptureKeyboard => ref Unsafe.AsRef<bool>(&NativePtr->WantCaptureKeyboard); public ref bool WantCaptureKeyboard => ref Unsafe.AsRef<bool>(&NativePtr->WantCaptureKeyboard);
public ref bool WantTextInput => ref Unsafe.AsRef<bool>(&NativePtr->WantTextInput); public ref bool WantTextInput => ref Unsafe.AsRef<bool>(&NativePtr->WantTextInput);
@ -173,8 +175,8 @@ namespace ImGuiNET
public RangeAccessor<float> MouseDragMaxDistanceSqr => new RangeAccessor<float>(NativePtr->MouseDragMaxDistanceSqr, 5); public RangeAccessor<float> MouseDragMaxDistanceSqr => new RangeAccessor<float>(NativePtr->MouseDragMaxDistanceSqr, 5);
public RangeAccessor<float> KeysDownDuration => new RangeAccessor<float>(NativePtr->KeysDownDuration, 512); public RangeAccessor<float> KeysDownDuration => new RangeAccessor<float>(NativePtr->KeysDownDuration, 512);
public RangeAccessor<float> KeysDownDurationPrev => new RangeAccessor<float>(NativePtr->KeysDownDurationPrev, 512); public RangeAccessor<float> KeysDownDurationPrev => new RangeAccessor<float>(NativePtr->KeysDownDurationPrev, 512);
public RangeAccessor<float> NavInputsDownDuration => new RangeAccessor<float>(NativePtr->NavInputsDownDuration, 22); public RangeAccessor<float> NavInputsDownDuration => new RangeAccessor<float>(NativePtr->NavInputsDownDuration, 21);
public RangeAccessor<float> NavInputsDownDurationPrev => new RangeAccessor<float>(NativePtr->NavInputsDownDurationPrev, 22); public RangeAccessor<float> NavInputsDownDurationPrev => new RangeAccessor<float>(NativePtr->NavInputsDownDurationPrev, 21);
public ImVector<ushort> InputQueueCharacters => new ImVector<ushort>(NativePtr->InputQueueCharacters); public ImVector<ushort> InputQueueCharacters => new ImVector<ushort>(NativePtr->InputQueueCharacters);
public void AddInputCharacter(uint c) public void AddInputCharacter(uint c)
{ {

@ -7,12 +7,12 @@ namespace ImGuiNET
{ {
public unsafe partial struct ImGuiListClipper public unsafe partial struct ImGuiListClipper
{ {
public float StartPosY;
public float ItemsHeight;
public int ItemsCount;
public int StepNo;
public int DisplayStart; public int DisplayStart;
public int DisplayEnd; public int DisplayEnd;
public int ItemsCount;
public int StepNo;
public float ItemsHeight;
public float StartPosY;
} }
public unsafe partial struct ImGuiListClipperPtr public unsafe partial struct ImGuiListClipperPtr
{ {
@ -22,12 +22,12 @@ namespace ImGuiNET
public static implicit operator ImGuiListClipperPtr(ImGuiListClipper* nativePtr) => new ImGuiListClipperPtr(nativePtr); public static implicit operator ImGuiListClipperPtr(ImGuiListClipper* nativePtr) => new ImGuiListClipperPtr(nativePtr);
public static implicit operator ImGuiListClipper* (ImGuiListClipperPtr wrappedPtr) => wrappedPtr.NativePtr; public static implicit operator ImGuiListClipper* (ImGuiListClipperPtr wrappedPtr) => wrappedPtr.NativePtr;
public static implicit operator ImGuiListClipperPtr(IntPtr nativePtr) => new ImGuiListClipperPtr(nativePtr); public static implicit operator ImGuiListClipperPtr(IntPtr nativePtr) => new ImGuiListClipperPtr(nativePtr);
public ref float StartPosY => ref Unsafe.AsRef<float>(&NativePtr->StartPosY);
public ref float ItemsHeight => ref Unsafe.AsRef<float>(&NativePtr->ItemsHeight);
public ref int ItemsCount => ref Unsafe.AsRef<int>(&NativePtr->ItemsCount);
public ref int StepNo => ref Unsafe.AsRef<int>(&NativePtr->StepNo);
public ref int DisplayStart => ref Unsafe.AsRef<int>(&NativePtr->DisplayStart); public ref int DisplayStart => ref Unsafe.AsRef<int>(&NativePtr->DisplayStart);
public ref int DisplayEnd => ref Unsafe.AsRef<int>(&NativePtr->DisplayEnd); public ref int DisplayEnd => ref Unsafe.AsRef<int>(&NativePtr->DisplayEnd);
public ref int ItemsCount => ref Unsafe.AsRef<int>(&NativePtr->ItemsCount);
public ref int StepNo => ref Unsafe.AsRef<int>(&NativePtr->StepNo);
public ref float ItemsHeight => ref Unsafe.AsRef<float>(&NativePtr->ItemsHeight);
public ref float StartPosY => ref Unsafe.AsRef<float>(&NativePtr->StartPosY);
public void Begin(int items_count) public void Begin(int items_count)
{ {
float items_height = -1.0f; float items_height = -1.0f;

@ -0,0 +1,10 @@
namespace ImGuiNET
{
public enum ImGuiMouseButton
{
Left = 0,
Right = 1,
Middle = 2,
COUNT = 5,
}
}

@ -11,6 +11,7 @@ namespace ImGuiNET
ResizeNESW = 5, ResizeNESW = 5,
ResizeNWSE = 6, ResizeNWSE = 6,
Hand = 7, Hand = 7,
COUNT = 8, NotAllowed = 8,
COUNT = 9,
} }
} }

@ -37,11 +37,11 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igBeginPopup(byte* str_id, ImGuiWindowFlags flags); public static extern byte igBeginPopup(byte* str_id, ImGuiWindowFlags flags);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igBeginPopupContextItem(byte* str_id, int mouse_button); public static extern byte igBeginPopupContextItem(byte* str_id, ImGuiMouseButton mouse_button);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igBeginPopupContextVoid(byte* str_id, int mouse_button); public static extern byte igBeginPopupContextVoid(byte* str_id, ImGuiMouseButton mouse_button);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igBeginPopupContextWindow(byte* str_id, int mouse_button, byte also_over_items); public static extern byte igBeginPopupContextWindow(byte* str_id, ImGuiMouseButton mouse_button, byte also_over_items);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igBeginPopupModal(byte* name, byte* p_open, ImGuiWindowFlags flags); public static extern byte igBeginPopupModal(byte* name, byte* p_open, ImGuiWindowFlags flags);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
@ -127,9 +127,9 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igDragIntRange2(byte* label, int* v_current_min, int* v_current_max, float v_speed, int v_min, int v_max, byte* format, byte* format_max); public static extern byte igDragIntRange2(byte* label, int* v_current_min, int* v_current_max, float v_speed, int v_min, int v_max, byte* format, byte* format_max);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igDragScalar(byte* label, ImGuiDataType data_type, void* v, float v_speed, void* v_min, void* v_max, byte* format, float power); public static extern byte igDragScalar(byte* label, ImGuiDataType data_type, void* p_data, float v_speed, void* p_min, void* p_max, byte* format, float power);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igDragScalarN(byte* label, ImGuiDataType data_type, void* v, int components, float v_speed, void* v_min, void* v_max, byte* format, float power); public static extern byte igDragScalarN(byte* label, ImGuiDataType data_type, void* p_data, int components, float v_speed, void* p_min, void* p_max, byte* format, float power);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igDummy(Vector2 size); public static extern void igDummy(Vector2 size);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
@ -237,7 +237,7 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern ImGuiMouseCursor igGetMouseCursor(); public static extern ImGuiMouseCursor igGetMouseCursor();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl, EntryPoint = "igGetMouseDragDelta_nonUDT2")] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl, EntryPoint = "igGetMouseDragDelta_nonUDT2")]
public static extern Vector2 igGetMouseDragDelta(int button, float lock_threshold); public static extern Vector2 igGetMouseDragDelta(ImGuiMouseButton button, float lock_threshold);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl, EntryPoint = "igGetMousePos_nonUDT2")] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl, EntryPoint = "igGetMousePos_nonUDT2")]
public static extern Vector2 igGetMousePos(); public static extern Vector2 igGetMousePos();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl, EntryPoint = "igGetMousePosOnOpeningCurrentPopup_nonUDT2")] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl, EntryPoint = "igGetMousePosOnOpeningCurrentPopup_nonUDT2")]
@ -309,9 +309,9 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igInputInt4(byte* label, int* v, ImGuiInputTextFlags flags); public static extern byte igInputInt4(byte* label, int* v, ImGuiInputTextFlags flags);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igInputScalar(byte* label, ImGuiDataType data_type, void* v, void* step, void* step_fast, byte* format, ImGuiInputTextFlags flags); public static extern byte igInputScalar(byte* label, ImGuiDataType data_type, void* p_data, void* p_step, void* p_step_fast, byte* format, ImGuiInputTextFlags flags);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igInputScalarN(byte* label, ImGuiDataType data_type, void* v, int components, void* step, void* step_fast, byte* format, ImGuiInputTextFlags flags); public static extern byte igInputScalarN(byte* label, ImGuiDataType data_type, void* p_data, int components, void* p_step, void* p_step_fast, byte* format, ImGuiInputTextFlags flags);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igInputText(byte* label, byte* buf, uint buf_size, ImGuiInputTextFlags flags, ImGuiInputTextCallback callback, void* user_data); public static extern byte igInputText(byte* label, byte* buf, uint buf_size, ImGuiInputTextFlags flags, ImGuiInputTextCallback callback, void* user_data);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
@ -333,7 +333,7 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igIsItemActive(); public static extern byte igIsItemActive();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igIsItemClicked(int mouse_button); public static extern byte igIsItemClicked(ImGuiMouseButton mouse_button);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igIsItemDeactivated(); public static extern byte igIsItemDeactivated();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
@ -345,6 +345,8 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igIsItemHovered(ImGuiHoveredFlags flags); public static extern byte igIsItemHovered(ImGuiHoveredFlags flags);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igIsItemToggledOpen();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igIsItemVisible(); public static extern byte igIsItemVisible();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igIsKeyDown(int user_key_index); public static extern byte igIsKeyDown(int user_key_index);
@ -353,19 +355,19 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igIsKeyReleased(int user_key_index); public static extern byte igIsKeyReleased(int user_key_index);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igIsMouseClicked(int button, byte repeat); public static extern byte igIsMouseClicked(ImGuiMouseButton button, byte repeat);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igIsMouseDoubleClicked(int button); public static extern byte igIsMouseDoubleClicked(ImGuiMouseButton button);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igIsMouseDown(int button); public static extern byte igIsMouseDown(ImGuiMouseButton button);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igIsMouseDragging(int button, float lock_threshold); public static extern byte igIsMouseDragging(ImGuiMouseButton button, float lock_threshold);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igIsMouseHoveringRect(Vector2 r_min, Vector2 r_max, byte clip); public static extern byte igIsMouseHoveringRect(Vector2 r_min, Vector2 r_max, byte clip);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igIsMousePosValid(Vector2* mouse_pos); public static extern byte igIsMousePosValid(Vector2* mouse_pos);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igIsMouseReleased(int button); public static extern byte igIsMouseReleased(ImGuiMouseButton button);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igIsPopupOpen(byte* str_id); public static extern byte igIsPopupOpen(byte* str_id);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
@ -423,7 +425,7 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igOpenPopup(byte* str_id); public static extern void igOpenPopup(byte* str_id);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igOpenPopupOnItemClick(byte* str_id, int mouse_button); public static extern byte igOpenPopupOnItemClick(byte* str_id, ImGuiMouseButton mouse_button);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igPlotHistogramFloatPtr(byte* label, float* values, int values_count, int values_offset, byte* overlay_text, float scale_min, float scale_max, Vector2 graph_size, int stride); public static extern void igPlotHistogramFloatPtr(byte* label, float* values, int values_count, int values_offset, byte* overlay_text, float scale_min, float scale_max, Vector2 graph_size, int stride);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
@ -483,7 +485,7 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igRender(); public static extern void igRender();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igResetMouseDragDelta(int button); public static extern void igResetMouseDragDelta(ImGuiMouseButton button);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igSameLine(float offset_from_start_x, float spacing); public static extern void igSameLine(float offset_from_start_x, float spacing);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
@ -523,7 +525,7 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igSetKeyboardFocusHere(int offset); public static extern void igSetKeyboardFocusHere(int offset);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igSetMouseCursor(ImGuiMouseCursor type); public static extern void igSetMouseCursor(ImGuiMouseCursor cursor_type);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igSetNextItemOpen(byte is_open, ImGuiCond cond); public static extern void igSetNextItemOpen(byte is_open, ImGuiCond cond);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
@ -611,9 +613,9 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igSliderInt4(byte* label, int* v, int v_min, int v_max, byte* format); public static extern byte igSliderInt4(byte* label, int* v, int v_min, int v_max, byte* format);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igSliderScalar(byte* label, ImGuiDataType data_type, void* v, void* v_min, void* v_max, byte* format, float power); public static extern byte igSliderScalar(byte* label, ImGuiDataType data_type, void* p_data, void* p_min, void* p_max, byte* format, float power);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igSliderScalarN(byte* label, ImGuiDataType data_type, void* v, int components, void* v_min, void* v_max, byte* format, float power); public static extern byte igSliderScalarN(byte* label, ImGuiDataType data_type, void* p_data, int components, void* p_min, void* p_max, byte* format, float power);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igSmallButton(byte* label); public static extern byte igSmallButton(byte* label);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
@ -667,7 +669,7 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igVSliderInt(byte* label, Vector2 size, int* v, int v_min, int v_max, byte* format); public static extern byte igVSliderInt(byte* label, Vector2 size, int* v, int v_min, int v_max, byte* format);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igVSliderScalar(byte* label, Vector2 size, ImGuiDataType data_type, void* v, void* v_min, void* v_max, byte* format, float power); public static extern byte igVSliderScalar(byte* label, Vector2 size, ImGuiDataType data_type, void* p_data, void* p_min, void* p_max, byte* format, float power);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImColor_destroy(ImColor* self); public static extern void ImColor_destroy(ImColor* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl, EntryPoint = "ImColor_HSV_nonUDT2")] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl, EntryPoint = "ImColor_HSV_nonUDT2")]
@ -699,45 +701,49 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawData_ScaleClipRects(ImDrawData* self, Vector2 fb_scale); public static extern void ImDrawData_ScaleClipRects(ImDrawData* self, Vector2 fb_scale);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddBezierCurve(ImDrawList* self, Vector2 pos0, Vector2 cp0, Vector2 cp1, Vector2 pos1, uint col, float thickness, int num_segments); public static extern void ImDrawList_AddBezierCurve(ImDrawList* self, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, uint col, float thickness, int num_segments);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddCallback(ImDrawList* self, IntPtr callback, void* callback_data); public static extern void ImDrawList_AddCallback(ImDrawList* self, IntPtr callback, void* callback_data);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddCircle(ImDrawList* self, Vector2 centre, float radius, uint col, int num_segments, float thickness); public static extern void ImDrawList_AddCircle(ImDrawList* self, Vector2 center, float radius, uint col, int num_segments, float thickness);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddCircleFilled(ImDrawList* self, Vector2 centre, float radius, uint col, int num_segments); public static extern void ImDrawList_AddCircleFilled(ImDrawList* self, Vector2 center, float radius, uint col, int num_segments);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddConvexPolyFilled(ImDrawList* self, Vector2* points, int num_points, uint col); public static extern void ImDrawList_AddConvexPolyFilled(ImDrawList* self, Vector2* points, int num_points, uint col);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddDrawCmd(ImDrawList* self); public static extern void ImDrawList_AddDrawCmd(ImDrawList* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddImage(ImDrawList* self, IntPtr user_texture_id, Vector2 a, Vector2 b, Vector2 uv_a, Vector2 uv_b, uint col); public static extern void ImDrawList_AddImage(ImDrawList* self, IntPtr user_texture_id, Vector2 p_min, Vector2 p_max, Vector2 uv_min, Vector2 uv_max, uint col);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddImageQuad(ImDrawList* self, IntPtr user_texture_id, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, Vector2 uv1, Vector2 uv2, Vector2 uv3, Vector2 uv4, uint col);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddImageQuad(ImDrawList* self, IntPtr user_texture_id, Vector2 a, Vector2 b, Vector2 c, Vector2 d, Vector2 uv_a, Vector2 uv_b, Vector2 uv_c, Vector2 uv_d, uint col); public static extern void ImDrawList_AddImageRounded(ImDrawList* self, IntPtr user_texture_id, Vector2 p_min, Vector2 p_max, Vector2 uv_min, Vector2 uv_max, uint col, float rounding, ImDrawCornerFlags rounding_corners);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddImageRounded(ImDrawList* self, IntPtr user_texture_id, Vector2 a, Vector2 b, Vector2 uv_a, Vector2 uv_b, uint col, float rounding, ImDrawCornerFlags rounding_corners); public static extern void ImDrawList_AddLine(ImDrawList* self, Vector2 p1, Vector2 p2, uint col, float thickness);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddLine(ImDrawList* self, Vector2 a, Vector2 b, uint col, float thickness); public static extern void ImDrawList_AddNgon(ImDrawList* self, Vector2 center, float radius, uint col, int num_segments, float thickness);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddNgonFilled(ImDrawList* self, Vector2 center, float radius, uint col, int num_segments);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddPolyline(ImDrawList* self, Vector2* points, int num_points, uint col, byte closed, float thickness); public static extern void ImDrawList_AddPolyline(ImDrawList* self, Vector2* points, int num_points, uint col, byte closed, float thickness);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddQuad(ImDrawList* self, Vector2 a, Vector2 b, Vector2 c, Vector2 d, uint col, float thickness); public static extern void ImDrawList_AddQuad(ImDrawList* self, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, uint col, float thickness);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddQuadFilled(ImDrawList* self, Vector2 a, Vector2 b, Vector2 c, Vector2 d, uint col); public static extern void ImDrawList_AddQuadFilled(ImDrawList* self, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, uint col);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddRect(ImDrawList* self, Vector2 a, Vector2 b, uint col, float rounding, ImDrawCornerFlags rounding_corners, float thickness); public static extern void ImDrawList_AddRect(ImDrawList* self, Vector2 p_min, Vector2 p_max, uint col, float rounding, ImDrawCornerFlags rounding_corners, float thickness);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddRectFilled(ImDrawList* self, Vector2 a, Vector2 b, uint col, float rounding, ImDrawCornerFlags rounding_corners); public static extern void ImDrawList_AddRectFilled(ImDrawList* self, Vector2 p_min, Vector2 p_max, uint col, float rounding, ImDrawCornerFlags rounding_corners);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddRectFilledMultiColor(ImDrawList* self, Vector2 a, Vector2 b, uint col_upr_left, uint col_upr_right, uint col_bot_right, uint col_bot_left); public static extern void ImDrawList_AddRectFilledMultiColor(ImDrawList* self, Vector2 p_min, Vector2 p_max, uint col_upr_left, uint col_upr_right, uint col_bot_right, uint col_bot_left);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddText(ImDrawList* self, Vector2 pos, uint col, byte* text_begin, byte* text_end); public static extern void ImDrawList_AddText(ImDrawList* self, Vector2 pos, uint col, byte* text_begin, byte* text_end);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddTextFontPtr(ImDrawList* self, ImFont* font, float font_size, Vector2 pos, uint col, byte* text_begin, byte* text_end, float wrap_width, Vector4* cpu_fine_clip_rect); public static extern void ImDrawList_AddTextFontPtr(ImDrawList* self, ImFont* font, float font_size, Vector2 pos, uint col, byte* text_begin, byte* text_end, float wrap_width, Vector4* cpu_fine_clip_rect);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddTriangle(ImDrawList* self, Vector2 a, Vector2 b, Vector2 c, uint col, float thickness); public static extern void ImDrawList_AddTriangle(ImDrawList* self, Vector2 p1, Vector2 p2, Vector2 p3, uint col, float thickness);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddTriangleFilled(ImDrawList* self, Vector2 a, Vector2 b, Vector2 c, uint col); public static extern void ImDrawList_AddTriangleFilled(ImDrawList* self, Vector2 p1, Vector2 p2, Vector2 p3, uint col);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_ChannelsMerge(ImDrawList* self); public static extern void ImDrawList_ChannelsMerge(ImDrawList* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
@ -759,11 +765,11 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern ImDrawList* ImDrawList_ImDrawList(IntPtr shared_data); public static extern ImDrawList* ImDrawList_ImDrawList(IntPtr shared_data);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_PathArcTo(ImDrawList* self, Vector2 centre, float radius, float a_min, float a_max, int num_segments); public static extern void ImDrawList_PathArcTo(ImDrawList* self, Vector2 center, float radius, float a_min, float a_max, int num_segments);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_PathArcToFast(ImDrawList* self, Vector2 centre, float radius, int a_min_of_12, int a_max_of_12); public static extern void ImDrawList_PathArcToFast(ImDrawList* self, Vector2 center, float radius, int a_min_of_12, int a_max_of_12);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_PathBezierCurveTo(ImDrawList* self, Vector2 p1, Vector2 p2, Vector2 p3, int num_segments); public static extern void ImDrawList_PathBezierCurveTo(ImDrawList* self, Vector2 p2, Vector2 p3, Vector2 p4, int num_segments);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_PathClear(ImDrawList* self); public static extern void ImDrawList_PathClear(ImDrawList* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
@ -789,6 +795,8 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_PrimReserve(ImDrawList* self, int idx_count, int vtx_count); public static extern void ImDrawList_PrimReserve(ImDrawList* self, int idx_count, int vtx_count);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_PrimUnreserve(ImDrawList* self, int idx_count, int vtx_count);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_PrimVtx(ImDrawList* self, Vector2 pos, Vector2 uv, uint col); public static extern void ImDrawList_PrimVtx(ImDrawList* self, Vector2 pos, Vector2 uv, uint col);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_PrimWriteIdx(ImDrawList* self, ushort idx); public static extern void ImDrawList_PrimWriteIdx(ImDrawList* self, ushort idx);

@ -19,12 +19,11 @@ namespace ImGuiNET
TweakSlow = 14, TweakSlow = 14,
TweakFast = 15, TweakFast = 15,
KeyMenu = 16, KeyMenu = 16,
KeyTab = 17, KeyLeft = 17,
KeyLeft = 18, KeyRight = 18,
KeyRight = 19, KeyUp = 19,
KeyUp = 20, KeyDown = 20,
KeyDown = 21, COUNT = 21,
COUNT = 22,
InternalStart = KeyMenu, InternalStart = KeyMenu,
} }
} }

@ -8,5 +8,6 @@ namespace ImGuiNET
SpanAllColumns = 1 << 1, SpanAllColumns = 1 << 1,
AllowDoubleClick = 1 << 2, AllowDoubleClick = 1 << 2,
Disabled = 1 << 3, Disabled = 1 << 3,
AllowItemOverlap = 1 << 4,
} }
} }

@ -41,6 +41,7 @@ namespace ImGuiNET
public byte AntiAliasedLines; public byte AntiAliasedLines;
public byte AntiAliasedFill; public byte AntiAliasedFill;
public float CurveTessellationTol; public float CurveTessellationTol;
public float CircleSegmentMaxError;
public Vector4 Colors_0; public Vector4 Colors_0;
public Vector4 Colors_1; public Vector4 Colors_1;
public Vector4 Colors_2; public Vector4 Colors_2;
@ -132,6 +133,7 @@ namespace ImGuiNET
public ref bool AntiAliasedLines => ref Unsafe.AsRef<bool>(&NativePtr->AntiAliasedLines); public ref bool AntiAliasedLines => ref Unsafe.AsRef<bool>(&NativePtr->AntiAliasedLines);
public ref bool AntiAliasedFill => ref Unsafe.AsRef<bool>(&NativePtr->AntiAliasedFill); public ref bool AntiAliasedFill => ref Unsafe.AsRef<bool>(&NativePtr->AntiAliasedFill);
public ref float CurveTessellationTol => ref Unsafe.AsRef<float>(&NativePtr->CurveTessellationTol); public ref float CurveTessellationTol => ref Unsafe.AsRef<float>(&NativePtr->CurveTessellationTol);
public ref float CircleSegmentMaxError => ref Unsafe.AsRef<float>(&NativePtr->CircleSegmentMaxError);
public RangeAccessor<Vector4> Colors => new RangeAccessor<Vector4>(&NativePtr->Colors_0, 48); public RangeAccessor<Vector4> Colors => new RangeAccessor<Vector4>(&NativePtr->Colors_0, 48);
public void Destroy() public void Destroy()
{ {

@ -15,6 +15,8 @@ namespace ImGuiNET
Leaf = 1 << 8, Leaf = 1 << 8,
Bullet = 1 << 9, Bullet = 1 << 9,
FramePadding = 1 << 10, FramePadding = 1 << 10,
SpanAvailWidth = 1 << 11,
SpanFullWidth = 1 << 12,
NavLeftJumpsBackHere = 1 << 13, NavLeftJumpsBackHere = 1 << 13,
CollapsingHeader = Framed | NoTreePushOnOpen | NoAutoOpenOnLog, CollapsingHeader = Framed | NoTreePushOnOpen | NoAutoOpenOnLog,
} }

@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk"> <Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup> <PropertyGroup>
<Description>A .NET wrapper for the Dear ImGui library.</Description> <Description>A .NET wrapper for the Dear ImGui library.</Description>
<AssemblyVersion>1.72.0</AssemblyVersion> <AssemblyVersion>1.75.0</AssemblyVersion>
<Authors>Eric Mellino</Authors> <Authors>Eric Mellino</Authors>
<TargetFramework>netstandard2.0</TargetFramework> <TargetFramework>netstandard2.0</TargetFramework>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks> <AllowUnsafeBlocks>true</AllowUnsafeBlocks>

Loading…
Cancel
Save