Updated to ImGui 1.82 and recent ImPlot, ImNodes and ImGuizmo

internals
Alex Hildebrand 4 years ago
parent 3db0d27423
commit 7ab250feb8
  1. 8
      src/CodeGenerator/ImguiDefinitions.cs
  2. 9
      src/CodeGenerator/TypeInfo.cs
  3. 18456
      src/CodeGenerator/definitions/cimgui/definitions.json
  4. 5734
      src/CodeGenerator/definitions/cimgui/structs_and_enums.json
  5. 104
      src/CodeGenerator/definitions/cimguizmo/definitions.json
  6. 77
      src/CodeGenerator/definitions/cimguizmo/structs_and_enums.json
  7. 160
      src/CodeGenerator/definitions/cimnodes/definitions.json
  8. 19
      src/CodeGenerator/definitions/cimnodes/structs_and_enums.json
  9. 11512
      src/CodeGenerator/definitions/cimplot/definitions.json
  10. 1158
      src/CodeGenerator/definitions/cimplot/structs_and_enums.json
  11. 2
      src/ImGui.NET.SampleProgram/MemoryEditor.cs
  12. 4
      src/ImGui.NET/Generated/ImColor.gen.cs
  13. 26
      src/ImGui.NET/Generated/ImDrawCmdHeader.gen.cs
  14. 17
      src/ImGui.NET/Generated/ImDrawCornerFlags.gen.cs
  15. 6
      src/ImGui.NET/Generated/ImDrawData.gen.cs
  16. 21
      src/ImGui.NET/Generated/ImDrawFlags.gen.cs
  17. 144
      src/ImGui.NET/Generated/ImDrawList.gen.cs
  18. 8
      src/ImGui.NET/Generated/ImDrawListFlags.gen.cs
  19. 2
      src/ImGui.NET/Generated/ImFont.gen.cs
  20. 10
      src/ImGui.NET/Generated/ImFontAtlas.gen.cs
  21. 6
      src/ImGui.NET/Generated/ImFontAtlasFlags.gen.cs
  22. 4
      src/ImGui.NET/Generated/ImFontConfig.gen.cs
  23. 6
      src/ImGui.NET/Generated/ImFontGlyph.gen.cs
  24. 881
      src/ImGui.NET/Generated/ImGui.gen.cs
  25. 11
      src/ImGui.NET/Generated/ImGuiBackendFlags.gen.cs
  26. 10
      src/ImGui.NET/Generated/ImGuiButtonFlags.gen.cs
  27. 29
      src/ImGui.NET/Generated/ImGuiCol.gen.cs
  28. 56
      src/ImGui.NET/Generated/ImGuiColorEditFlags.gen.cs
  29. 16
      src/ImGui.NET/Generated/ImGuiComboFlags.gen.cs
  30. 8
      src/ImGui.NET/Generated/ImGuiCond.gen.cs
  31. 20
      src/ImGui.NET/Generated/ImGuiConfigFlags.gen.cs
  32. 14
      src/ImGui.NET/Generated/ImGuiDockNodeFlags.gen.cs
  33. 20
      src/ImGui.NET/Generated/ImGuiDragDropFlags.gen.cs
  34. 8
      src/ImGui.NET/Generated/ImGuiFocusedFlags.gen.cs
  35. 18
      src/ImGui.NET/Generated/ImGuiHoveredFlags.gen.cs
  36. 30
      src/ImGui.NET/Generated/ImGuiIO.gen.cs
  37. 8
      src/ImGui.NET/Generated/ImGuiInputTextCallbackData.gen.cs
  38. 43
      src/ImGui.NET/Generated/ImGuiInputTextFlags.gen.cs
  39. 8
      src/ImGui.NET/Generated/ImGuiKeyModFlags.gen.cs
  40. 2
      src/ImGui.NET/Generated/ImGuiListClipper.gen.cs
  41. 146
      src/ImGui.NET/Generated/ImGuiNative.gen.cs
  42. 2
      src/ImGui.NET/Generated/ImGuiNavInput.gen.cs
  43. 78
      src/ImGui.NET/Generated/ImGuiPlatformIO.gen.cs
  44. 34
      src/ImGui.NET/Generated/ImGuiPlatformMonitor.gen.cs
  45. 12
      src/ImGui.NET/Generated/ImGuiPopupFlags.gen.cs
  46. 10
      src/ImGui.NET/Generated/ImGuiSelectableFlags.gen.cs
  47. 10
      src/ImGui.NET/Generated/ImGuiSliderFlags.gen.cs
  48. 9
      src/ImGui.NET/Generated/ImGuiSortDirection.gen.cs
  49. 15
      src/ImGui.NET/Generated/ImGuiStyle.gen.cs
  50. 17
      src/ImGui.NET/Generated/ImGuiStyleVar.gen.cs
  51. 20
      src/ImGui.NET/Generated/ImGuiTabBarFlags.gen.cs
  52. 13
      src/ImGui.NET/Generated/ImGuiTabItemFlags.gen.cs
  53. 10
      src/ImGui.NET/Generated/ImGuiTableBgTarget.gen.cs
  54. 32
      src/ImGui.NET/Generated/ImGuiTableColumnFlags.gen.cs
  55. 32
      src/ImGui.NET/Generated/ImGuiTableColumnSortSpecs.gen.cs
  56. 43
      src/ImGui.NET/Generated/ImGuiTableFlags.gen.cs
  57. 9
      src/ImGui.NET/Generated/ImGuiTableRowFlags.gen.cs
  58. 30
      src/ImGui.NET/Generated/ImGuiTableSortSpecs.gen.cs
  59. 30
      src/ImGui.NET/Generated/ImGuiTreeNodeFlags.gen.cs
  60. 40
      src/ImGui.NET/Generated/ImGuiViewport.gen.cs
  61. 13
      src/ImGui.NET/Generated/ImGuiViewportFlags.gen.cs
  62. 40
      src/ImGui.NET/Generated/ImGuiWindowClass.gen.cs
  63. 60
      src/ImGui.NET/Generated/ImGuiWindowFlags.gen.cs
  64. 48
      src/ImGui.NET/Generated/STB_TexteditState.gen.cs
  65. 32
      src/ImGui.NET/Generated/StbTexteditRow.gen.cs
  66. 28
      src/ImGui.NET/Generated/StbUndoRecord.gen.cs
  67. 130
      src/ImGui.NET/Generated/StbUndoState.gen.cs
  68. 13
      src/ImGuizmo.NET/Generated/ImGuizmo.gen.cs
  69. 6
      src/ImGuizmo.NET/Generated/ImGuizmoNative.gen.cs
  70. 18
      src/ImGuizmo.NET/Generated/OPERATION.gen.cs
  71. 4
      src/ImNodes.NET/Generated/AttributeFlags.gen.cs
  72. 4
      src/ImNodes.NET/Generated/ImNodes.gen.cs
  73. 2
      src/ImNodes.NET/Generated/ImNodesNative.gen.cs
  74. 4
      src/ImNodes.NET/Generated/StyleFlags.gen.cs
  75. 9067
      src/ImPlot.NET/Generated/ImPlot.gen.cs
  76. 21
      src/ImPlot.NET/Generated/ImPlotAxisFlags.gen.cs
  77. 26
      src/ImPlot.NET/Generated/ImPlotFlags.gen.cs
  78. 49
      src/ImPlot.NET/Generated/ImPlotInputMap.gen.cs
  79. 16
      src/ImPlot.NET/Generated/ImPlotLocation.gen.cs
  80. 116
      src/ImPlot.NET/Generated/ImPlotNative.gen.cs
  81. 2
      src/ImPlot.NET/Generated/ImPlotStyle.gen.cs
  82. 7
      src/ImPlot.NET/Generated/ImPlotStyleVar.gen.cs

@ -65,12 +65,12 @@ namespace CodeGenerator
{ {
JProperty jp = (JProperty)jt; JProperty jp = (JProperty)jt;
string name = jp.Name; string name = jp.Name;
if (typeLocations?[jp.Name]?.Value<string>() == "internal") { if (typeLocations?[jp.Name]?.Value<string>().Contains("internal") ?? false) {
return null; return null;
} }
EnumMember[] elements = jp.Values().Select(v => EnumMember[] elements = jp.Values().Select(v =>
{ {
return new EnumMember(v["name"].ToString(), v["value"].ToString()); return new EnumMember(v["name"].ToString(), v["calc_value"].ToString());
}).ToArray(); }).ToArray();
return new EnumDefinition(name, elements); return new EnumDefinition(name, elements);
}).Where(x => x != null).ToArray(); }).Where(x => x != null).ToArray();
@ -79,7 +79,7 @@ namespace CodeGenerator
{ {
JProperty jp = (JProperty)jt; JProperty jp = (JProperty)jt;
string name = jp.Name; string name = jp.Name;
if (typeLocations?[jp.Name]?.Value<string>() == "internal") { if (typeLocations?[jp.Name]?.Value<string>().Contains("internal") ?? false) {
return null; return null;
} }
TypeReference[] fields = jp.Values().Select(v => TypeReference[] fields = jp.Values().Select(v =>
@ -120,7 +120,7 @@ namespace CodeGenerator
} }
} }
if (friendlyName == null) { return null; } if (friendlyName == null) { return null; }
if (val["location"]?.ToString() == "internal") return null; if (val["location"]?.ToString().Contains("internal") ?? false) return null;
string exportedName = ov_cimguiname; string exportedName = ov_cimguiname;
if (exportedName == null) if (exportedName == null)

@ -39,6 +39,9 @@ namespace CodeGenerator
{ "ImGuiContext*", "IntPtr" }, { "ImGuiContext*", "IntPtr" },
{ "ImPlotContext*", "IntPtr" }, { "ImPlotContext*", "IntPtr" },
{ "EditorContext*", "IntPtr" }, { "EditorContext*", "IntPtr" },
{ "ImGuiMemAllocFunc", "IntPtr" },
{ "ImGuiMemFreeFunc", "IntPtr" },
{ "ImFontBuilderIO", "IntPtr" },
{ "float[2]", "Vector2*" }, { "float[2]", "Vector2*" },
{ "float[3]", "Vector3*" }, { "float[3]", "Vector3*" },
{ "float[4]", "Vector4*" }, { "float[4]", "Vector4*" },
@ -76,6 +79,8 @@ namespace CodeGenerator
{ "NULL", "null"}, { "NULL", "null"},
{ "nullptr", "null"}, { "nullptr", "null"},
{ "ImVec2(0,0)", "new Vector2()" }, { "ImVec2(0,0)", "new Vector2()" },
{ "ImVec2(0.0f,0.0f)", "new Vector2()" },
{ "ImVec2(-FLT_MIN,0)", "new Vector2(-float.MinValue, 0.0f)" },
{ "ImVec2(-1,0)", "new Vector2(-1, 0)" }, { "ImVec2(-1,0)", "new Vector2(-1, 0)" },
{ "ImVec2(1,0)", "new Vector2(1, 0)" }, { "ImVec2(1,0)", "new Vector2(1, 0)" },
{ "ImVec2(1,1)", "new Vector2(1, 1)" }, { "ImVec2(1,1)", "new Vector2(1, 1)" },
@ -92,6 +97,10 @@ namespace CodeGenerator
{ "ImGuiCond_Once", "ImGuiCond.Once"}, { "ImGuiCond_Once", "ImGuiCond.Once"},
{ "ImPlotOrientation_Vertical", "ImPlotOrientation.Vertical"}, { "ImPlotOrientation_Vertical", "ImPlotOrientation.Vertical"},
{ "PinShape_CircleFilled", "PinShape._CircleFilled"}, { "PinShape_CircleFilled", "PinShape._CircleFilled"},
{ "ImGuiPopupFlags_None", "ImGuiPopupFlags.None"},
{ "ImGuiNavHighlightFlags_TypeDefault", "ImGuiNavHighlightFlags.TypeDefault"},
{ "ImGuiKeyModFlags_Ctrl", "ImGuiKeyModFlags.Ctrl"},
{ "ImPlotYAxis_1", "ImPlotYAxis._1"},
{ "FLT_MAX", "float.MaxValue" }, { "FLT_MAX", "float.MaxValue" },
{ "(((ImU32)(255)<<24)|((ImU32)(255)<<16)|((ImU32)(255)<<8)|((ImU32)(255)<<0))", "0xFFFFFFFF" }, { "(((ImU32)(255)<<24)|((ImU32)(255)<<16)|((ImU32)(255)<<8)|((ImU32)(255)<<0))", "0xFFFFFFFF" },
{ "sizeof(ImU8)", "sizeof(byte)"}, { "sizeof(ImU8)", "sizeof(byte)"},

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@ -1,4 +1,26 @@
{ {
"ImGuizmo_AllowAxisFlip": [
{
"args": "(bool value)",
"argsT": [
{
"name": "value",
"type": "bool"
}
],
"argsoriginal": "(bool value)",
"call_args": "(value)",
"cimguiname": "ImGuizmo_AllowAxisFlip",
"defaults": {},
"funcname": "AllowAxisFlip",
"location": "ImGuizmo:212",
"namespace": "ImGuizmo",
"ov_cimguiname": "ImGuizmo_AllowAxisFlip",
"ret": "void",
"signature": "(bool)",
"stname": ""
}
],
"ImGuizmo_BeginFrame": [ "ImGuizmo_BeginFrame": [
{ {
"args": "()", "args": "()",
@ -42,7 +64,7 @@
"cimguiname": "ImGuizmo_DecomposeMatrixToComponents", "cimguiname": "ImGuizmo_DecomposeMatrixToComponents",
"defaults": {}, "defaults": {},
"funcname": "DecomposeMatrixToComponents", "funcname": "DecomposeMatrixToComponents",
"location": "ImGuizmo:145", "location": "ImGuizmo:151",
"namespace": "ImGuizmo", "namespace": "ImGuizmo",
"ov_cimguiname": "ImGuizmo_DecomposeMatrixToComponents", "ov_cimguiname": "ImGuizmo_DecomposeMatrixToComponents",
"ret": "void", "ret": "void",
@ -76,7 +98,7 @@
"cimguiname": "ImGuizmo_DrawCubes", "cimguiname": "ImGuizmo_DrawCubes",
"defaults": {}, "defaults": {},
"funcname": "DrawCubes", "funcname": "DrawCubes",
"location": "ImGuizmo:153", "location": "ImGuizmo:159",
"namespace": "ImGuizmo", "namespace": "ImGuizmo",
"ov_cimguiname": "ImGuizmo_DrawCubes", "ov_cimguiname": "ImGuizmo_DrawCubes",
"ret": "void", "ret": "void",
@ -110,7 +132,7 @@
"cimguiname": "ImGuizmo_DrawGrid", "cimguiname": "ImGuizmo_DrawGrid",
"defaults": {}, "defaults": {},
"funcname": "DrawGrid", "funcname": "DrawGrid",
"location": "ImGuizmo:154", "location": "ImGuizmo:160",
"namespace": "ImGuizmo", "namespace": "ImGuizmo",
"ov_cimguiname": "ImGuizmo_DrawGrid", "ov_cimguiname": "ImGuizmo_DrawGrid",
"ret": "void", "ret": "void",
@ -132,7 +154,7 @@
"cimguiname": "ImGuizmo_Enable", "cimguiname": "ImGuizmo_Enable",
"defaults": {}, "defaults": {},
"funcname": "Enable", "funcname": "Enable",
"location": "ImGuizmo:131", "location": "ImGuizmo:137",
"namespace": "ImGuizmo", "namespace": "ImGuizmo",
"ov_cimguiname": "ImGuizmo_Enable", "ov_cimguiname": "ImGuizmo_Enable",
"ret": "void", "ret": "void",
@ -149,7 +171,7 @@
"cimguiname": "ImGuizmo_IsOver", "cimguiname": "ImGuizmo_IsOver",
"defaults": {}, "defaults": {},
"funcname": "IsOver", "funcname": "IsOver",
"location": "ImGuizmo:124", "location": "ImGuizmo:130",
"namespace": "ImGuizmo", "namespace": "ImGuizmo",
"ov_cimguiname": "ImGuizmo_IsOverNil", "ov_cimguiname": "ImGuizmo_IsOverNil",
"ret": "bool", "ret": "bool",
@ -169,7 +191,7 @@
"cimguiname": "ImGuizmo_IsOver", "cimguiname": "ImGuizmo_IsOver",
"defaults": {}, "defaults": {},
"funcname": "IsOver", "funcname": "IsOver",
"location": "ImGuizmo:185", "location": "ImGuizmo:206",
"namespace": "ImGuizmo", "namespace": "ImGuizmo",
"ov_cimguiname": "ImGuizmo_IsOverOPERATION", "ov_cimguiname": "ImGuizmo_IsOverOPERATION",
"ret": "bool", "ret": "bool",
@ -186,7 +208,7 @@
"cimguiname": "ImGuizmo_IsUsing", "cimguiname": "ImGuizmo_IsUsing",
"defaults": {}, "defaults": {},
"funcname": "IsUsing", "funcname": "IsUsing",
"location": "ImGuizmo:127", "location": "ImGuizmo:133",
"namespace": "ImGuizmo", "namespace": "ImGuizmo",
"ov_cimguiname": "ImGuizmo_IsUsing", "ov_cimguiname": "ImGuizmo_IsUsing",
"ret": "bool", "ret": "bool",
@ -196,7 +218,7 @@
], ],
"ImGuizmo_Manipulate": [ "ImGuizmo_Manipulate": [
{ {
"args": "(const float* view,const float* projection,OPERATION operation,MODE mode,float* matrix,float* deltaMatrix,float* snap,float* localBounds,float* boundsSnap)", "args": "(const float* view,const float* projection,OPERATION operation,MODE mode,float* matrix,float* deltaMatrix,const float* snap,const float* localBounds,const float* boundsSnap)",
"argsT": [ "argsT": [
{ {
"name": "view", "name": "view",
@ -224,18 +246,18 @@
}, },
{ {
"name": "snap", "name": "snap",
"type": "float*" "type": "const float*"
}, },
{ {
"name": "localBounds", "name": "localBounds",
"type": "float*" "type": "const float*"
}, },
{ {
"name": "boundsSnap", "name": "boundsSnap",
"type": "float*" "type": "const float*"
} }
], ],
"argsoriginal": "(const float* view,const float* projection,OPERATION operation,MODE mode,float* matrix,float* deltaMatrix=NULL,float* snap=NULL,float* localBounds=NULL,float* boundsSnap=NULL)", "argsoriginal": "(const float* view,const float* projection,OPERATION operation,MODE mode,float* matrix,float* deltaMatrix=NULL,const float* snap=NULL,const float* localBounds=NULL,const float* boundsSnap=NULL)",
"call_args": "(view,projection,operation,mode,matrix,deltaMatrix,snap,localBounds,boundsSnap)", "call_args": "(view,projection,operation,mode,matrix,deltaMatrix,snap,localBounds,boundsSnap)",
"cimguiname": "ImGuizmo_Manipulate", "cimguiname": "ImGuizmo_Manipulate",
"defaults": { "defaults": {
@ -245,11 +267,11 @@
"snap": "NULL" "snap": "NULL"
}, },
"funcname": "Manipulate", "funcname": "Manipulate",
"location": "ImGuizmo:174", "location": "ImGuizmo:195",
"namespace": "ImGuizmo", "namespace": "ImGuizmo",
"ov_cimguiname": "ImGuizmo_Manipulate", "ov_cimguiname": "ImGuizmo_Manipulate",
"ret": "bool", "ret": "bool",
"signature": "(const float*,const float*,OPERATION,MODE,float*,float*,float*,float*,float*)", "signature": "(const float*,const float*,OPERATION,MODE,float*,float*,const float*,const float*,const float*)",
"stname": "" "stname": ""
} }
], ],
@ -279,7 +301,7 @@
"cimguiname": "ImGuizmo_RecomposeMatrixFromComponents", "cimguiname": "ImGuizmo_RecomposeMatrixFromComponents",
"defaults": {}, "defaults": {},
"funcname": "RecomposeMatrixFromComponents", "funcname": "RecomposeMatrixFromComponents",
"location": "ImGuizmo:146", "location": "ImGuizmo:152",
"namespace": "ImGuizmo", "namespace": "ImGuizmo",
"ov_cimguiname": "ImGuizmo_RecomposeMatrixFromComponents", "ov_cimguiname": "ImGuizmo_RecomposeMatrixFromComponents",
"ret": "void", "ret": "void",
@ -311,6 +333,28 @@
"stname": "" "stname": ""
} }
], ],
"ImGuizmo_SetGizmoSizeClipSpace": [
{
"args": "(float value)",
"argsT": [
{
"name": "value",
"type": "float"
}
],
"argsoriginal": "(float value)",
"call_args": "(value)",
"cimguiname": "ImGuizmo_SetGizmoSizeClipSpace",
"defaults": {},
"funcname": "SetGizmoSizeClipSpace",
"location": "ImGuizmo:207",
"namespace": "ImGuizmo",
"ov_cimguiname": "ImGuizmo_SetGizmoSizeClipSpace",
"ret": "void",
"signature": "(float)",
"stname": ""
}
],
"ImGuizmo_SetID": [ "ImGuizmo_SetID": [
{ {
"args": "(int id)", "args": "(int id)",
@ -325,7 +369,7 @@
"cimguiname": "ImGuizmo_SetID", "cimguiname": "ImGuizmo_SetID",
"defaults": {}, "defaults": {},
"funcname": "SetID", "funcname": "SetID",
"location": "ImGuizmo:182", "location": "ImGuizmo:203",
"namespace": "ImGuizmo", "namespace": "ImGuizmo",
"ov_cimguiname": "ImGuizmo_SetID", "ov_cimguiname": "ImGuizmo_SetID",
"ret": "void", "ret": "void",
@ -333,6 +377,28 @@
"stname": "" "stname": ""
} }
], ],
"ImGuizmo_SetImGuiContext": [
{
"args": "(ImGuiContext* ctx)",
"argsT": [
{
"name": "ctx",
"type": "ImGuiContext*"
}
],
"argsoriginal": "(ImGuiContext* ctx)",
"call_args": "(ctx)",
"cimguiname": "ImGuizmo_SetImGuiContext",
"defaults": {},
"funcname": "SetImGuiContext",
"location": "ImGuizmo:127",
"namespace": "ImGuizmo",
"ov_cimguiname": "ImGuizmo_SetImGuiContext",
"ret": "void",
"signature": "(ImGuiContext*)",
"stname": ""
}
],
"ImGuizmo_SetOrthographic": [ "ImGuizmo_SetOrthographic": [
{ {
"args": "(bool isOrthographic)", "args": "(bool isOrthographic)",
@ -347,7 +413,7 @@
"cimguiname": "ImGuizmo_SetOrthographic", "cimguiname": "ImGuizmo_SetOrthographic",
"defaults": {}, "defaults": {},
"funcname": "SetOrthographic", "funcname": "SetOrthographic",
"location": "ImGuizmo:150", "location": "ImGuizmo:156",
"namespace": "ImGuizmo", "namespace": "ImGuizmo",
"ov_cimguiname": "ImGuizmo_SetOrthographic", "ov_cimguiname": "ImGuizmo_SetOrthographic",
"ret": "void", "ret": "void",
@ -381,7 +447,7 @@
"cimguiname": "ImGuizmo_SetRect", "cimguiname": "ImGuizmo_SetRect",
"defaults": {}, "defaults": {},
"funcname": "SetRect", "funcname": "SetRect",
"location": "ImGuizmo:148", "location": "ImGuizmo:154",
"namespace": "ImGuizmo", "namespace": "ImGuizmo",
"ov_cimguiname": "ImGuizmo_SetRect", "ov_cimguiname": "ImGuizmo_SetRect",
"ret": "void", "ret": "void",
@ -419,7 +485,7 @@
"cimguiname": "ImGuizmo_ViewManipulate", "cimguiname": "ImGuizmo_ViewManipulate",
"defaults": {}, "defaults": {},
"funcname": "ViewManipulate", "funcname": "ViewManipulate",
"location": "ImGuizmo:180", "location": "ImGuizmo:201",
"namespace": "ImGuizmo", "namespace": "ImGuizmo",
"ov_cimguiname": "ImGuizmo_ViewManipulate", "ov_cimguiname": "ImGuizmo_ViewManipulate",
"ret": "void", "ret": "void",

@ -13,31 +13,82 @@
} }
], ],
"OPERATION": [ "OPERATION": [
{
"calc_value": 0,
"name": "TRANSLATE",
"value": "0"
},
{ {
"calc_value": 1, "calc_value": 1,
"name": "ROTATE", "name": "TRANSLATE_X",
"value": "1" "value": "(1u << 0)"
}, },
{ {
"calc_value": 2, "calc_value": 2,
"name": "SCALE", "name": "TRANSLATE_Y",
"value": "2" "value": "(1u << 1)"
}, },
{ {
"calc_value": 3, "calc_value": 4,
"name": "TRANSLATE_Z",
"value": "(1u << 2)"
},
{
"calc_value": 8,
"name": "ROTATE_X",
"value": "(1u << 3)"
},
{
"calc_value": 16,
"name": "ROTATE_Y",
"value": "(1u << 4)"
},
{
"calc_value": 32,
"name": "ROTATE_Z",
"value": "(1u << 5)"
},
{
"calc_value": 64,
"name": "ROTATE_SCREEN",
"value": "(1u << 6)"
},
{
"calc_value": 128,
"name": "SCALE_X",
"value": "(1u << 7)"
},
{
"calc_value": 256,
"name": "SCALE_Y",
"value": "(1u << 8)"
},
{
"calc_value": 512,
"name": "SCALE_Z",
"value": "(1u << 9)"
},
{
"calc_value": 1024,
"name": "BOUNDS", "name": "BOUNDS",
"value": "3" "value": "(1u << 10)"
},
{
"calc_value": 7,
"name": "TRANSLATE",
"value": "TRANSLATE_X | TRANSLATE_Y | TRANSLATE_Z"
},
{
"calc_value": 120,
"name": "ROTATE",
"value": "ROTATE_X | ROTATE_Y | ROTATE_Z | ROTATE_SCREEN"
},
{
"calc_value": 896,
"name": "SCALE",
"value": "SCALE_X | SCALE_Y | SCALE_Z"
} }
] ]
}, },
"enumtypes": [],
"locations": { "locations": {
"MODE": "ImGuizmo:168", "MODE": "ImGuizmo:189",
"OPERATION": "ImGuizmo:160" "OPERATION": "ImGuizmo:166"
}, },
"structs": [] "structs": []
} }

@ -9,7 +9,7 @@
"constructor": true, "constructor": true,
"defaults": {}, "defaults": {},
"funcname": "EmulateThreeButtonMouse", "funcname": "EmulateThreeButtonMouse",
"location": "imnodes:86", "location": "imnodes:87",
"ov_cimguiname": "EmulateThreeButtonMouse_EmulateThreeButtonMouse", "ov_cimguiname": "EmulateThreeButtonMouse_EmulateThreeButtonMouse",
"signature": "()", "signature": "()",
"stname": "EmulateThreeButtonMouse" "stname": "EmulateThreeButtonMouse"
@ -44,7 +44,7 @@
"constructor": true, "constructor": true,
"defaults": {}, "defaults": {},
"funcname": "IO", "funcname": "IO",
"location": "imnodes:108", "location": "imnodes:109",
"ov_cimguiname": "IO_IO", "ov_cimguiname": "IO_IO",
"signature": "()", "signature": "()",
"stname": "IO" "stname": "IO"
@ -79,7 +79,7 @@
"constructor": true, "constructor": true,
"defaults": {}, "defaults": {},
"funcname": "LinkDetachWithModifierClick", "funcname": "LinkDetachWithModifierClick",
"location": "imnodes:96", "location": "imnodes:97",
"ov_cimguiname": "LinkDetachWithModifierClick_LinkDetachWithModifierClick", "ov_cimguiname": "LinkDetachWithModifierClick_LinkDetachWithModifierClick",
"signature": "()", "signature": "()",
"stname": "LinkDetachWithModifierClick" "stname": "LinkDetachWithModifierClick"
@ -114,7 +114,7 @@
"constructor": true, "constructor": true,
"defaults": {}, "defaults": {},
"funcname": "Style", "funcname": "Style",
"location": "imnodes:148", "location": "imnodes:149",
"ov_cimguiname": "Style_Style", "ov_cimguiname": "Style_Style",
"signature": "()", "signature": "()",
"stname": "Style" "stname": "Style"
@ -159,7 +159,7 @@
"shape": "PinShape_CircleFilled" "shape": "PinShape_CircleFilled"
}, },
"funcname": "BeginInputAttribute", "funcname": "BeginInputAttribute",
"location": "imnodes:210", "location": "imnodes:216",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_BeginInputAttribute", "ov_cimguiname": "imnodes_BeginInputAttribute",
"ret": "void", "ret": "void",
@ -181,7 +181,7 @@
"cimguiname": "imnodes_BeginNode", "cimguiname": "imnodes_BeginNode",
"defaults": {}, "defaults": {},
"funcname": "BeginNode", "funcname": "BeginNode",
"location": "imnodes:189", "location": "imnodes:195",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_BeginNode", "ov_cimguiname": "imnodes_BeginNode",
"ret": "void", "ret": "void",
@ -198,7 +198,7 @@
"cimguiname": "imnodes_BeginNodeEditor", "cimguiname": "imnodes_BeginNodeEditor",
"defaults": {}, "defaults": {},
"funcname": "BeginNodeEditor", "funcname": "BeginNodeEditor",
"location": "imnodes:180", "location": "imnodes:185",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_BeginNodeEditor", "ov_cimguiname": "imnodes_BeginNodeEditor",
"ret": "void", "ret": "void",
@ -215,7 +215,7 @@
"cimguiname": "imnodes_BeginNodeTitleBar", "cimguiname": "imnodes_BeginNodeTitleBar",
"defaults": {}, "defaults": {},
"funcname": "BeginNodeTitleBar", "funcname": "BeginNodeTitleBar",
"location": "imnodes:197", "location": "imnodes:203",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_BeginNodeTitleBar", "ov_cimguiname": "imnodes_BeginNodeTitleBar",
"ret": "void", "ret": "void",
@ -243,7 +243,7 @@
"shape": "PinShape_CircleFilled" "shape": "PinShape_CircleFilled"
}, },
"funcname": "BeginOutputAttribute", "funcname": "BeginOutputAttribute",
"location": "imnodes:213", "location": "imnodes:219",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_BeginOutputAttribute", "ov_cimguiname": "imnodes_BeginOutputAttribute",
"ret": "void", "ret": "void",
@ -265,7 +265,7 @@
"cimguiname": "imnodes_BeginStaticAttribute", "cimguiname": "imnodes_BeginStaticAttribute",
"defaults": {}, "defaults": {},
"funcname": "BeginStaticAttribute", "funcname": "BeginStaticAttribute",
"location": "imnodes:218", "location": "imnodes:224",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_BeginStaticAttribute", "ov_cimguiname": "imnodes_BeginStaticAttribute",
"ret": "void", "ret": "void",
@ -282,7 +282,7 @@
"cimguiname": "imnodes_ClearLinkSelection", "cimguiname": "imnodes_ClearLinkSelection",
"defaults": {}, "defaults": {},
"funcname": "ClearLinkSelection", "funcname": "ClearLinkSelection",
"location": "imnodes:272", "location": "imnodes:278",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_ClearLinkSelection", "ov_cimguiname": "imnodes_ClearLinkSelection",
"ret": "void", "ret": "void",
@ -299,7 +299,7 @@
"cimguiname": "imnodes_ClearNodeSelection", "cimguiname": "imnodes_ClearNodeSelection",
"defaults": {}, "defaults": {},
"funcname": "ClearNodeSelection", "funcname": "ClearNodeSelection",
"location": "imnodes:271", "location": "imnodes:277",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_ClearNodeSelection", "ov_cimguiname": "imnodes_ClearNodeSelection",
"ret": "void", "ret": "void",
@ -316,7 +316,7 @@
"cimguiname": "imnodes_EditorContextCreate", "cimguiname": "imnodes_EditorContextCreate",
"defaults": {}, "defaults": {},
"funcname": "EditorContextCreate", "funcname": "EditorContextCreate",
"location": "imnodes:158", "location": "imnodes:159",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_EditorContextCreate", "ov_cimguiname": "imnodes_EditorContextCreate",
"ret": "EditorContext*", "ret": "EditorContext*",
@ -338,7 +338,7 @@
"cimguiname": "imnodes_EditorContextFree", "cimguiname": "imnodes_EditorContextFree",
"defaults": {}, "defaults": {},
"funcname": "EditorContextFree", "funcname": "EditorContextFree",
"location": "imnodes:159", "location": "imnodes:160",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_EditorContextFree", "ov_cimguiname": "imnodes_EditorContextFree",
"ret": "void", "ret": "void",
@ -360,7 +360,7 @@
"cimguiname": "imnodes_EditorContextGetPanning", "cimguiname": "imnodes_EditorContextGetPanning",
"defaults": {}, "defaults": {},
"funcname": "EditorContextGetPanning", "funcname": "EditorContextGetPanning",
"location": "imnodes:161", "location": "imnodes:162",
"namespace": "imnodes", "namespace": "imnodes",
"nonUDT": 1, "nonUDT": 1,
"ov_cimguiname": "imnodes_EditorContextGetPanning", "ov_cimguiname": "imnodes_EditorContextGetPanning",
@ -383,7 +383,7 @@
"cimguiname": "imnodes_EditorContextMoveToNode", "cimguiname": "imnodes_EditorContextMoveToNode",
"defaults": {}, "defaults": {},
"funcname": "EditorContextMoveToNode", "funcname": "EditorContextMoveToNode",
"location": "imnodes:163", "location": "imnodes:164",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_EditorContextMoveToNode", "ov_cimguiname": "imnodes_EditorContextMoveToNode",
"ret": "void", "ret": "void",
@ -405,7 +405,7 @@
"cimguiname": "imnodes_EditorContextResetPanning", "cimguiname": "imnodes_EditorContextResetPanning",
"defaults": {}, "defaults": {},
"funcname": "EditorContextResetPanning", "funcname": "EditorContextResetPanning",
"location": "imnodes:162", "location": "imnodes:163",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_EditorContextResetPanning", "ov_cimguiname": "imnodes_EditorContextResetPanning",
"ret": "void", "ret": "void",
@ -427,7 +427,7 @@
"cimguiname": "imnodes_EditorContextSet", "cimguiname": "imnodes_EditorContextSet",
"defaults": {}, "defaults": {},
"funcname": "EditorContextSet", "funcname": "EditorContextSet",
"location": "imnodes:160", "location": "imnodes:161",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_EditorContextSet", "ov_cimguiname": "imnodes_EditorContextSet",
"ret": "void", "ret": "void",
@ -444,7 +444,7 @@
"cimguiname": "imnodes_EndInputAttribute", "cimguiname": "imnodes_EndInputAttribute",
"defaults": {}, "defaults": {},
"funcname": "EndInputAttribute", "funcname": "EndInputAttribute",
"location": "imnodes:211", "location": "imnodes:217",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_EndInputAttribute", "ov_cimguiname": "imnodes_EndInputAttribute",
"ret": "void", "ret": "void",
@ -461,7 +461,7 @@
"cimguiname": "imnodes_EndNode", "cimguiname": "imnodes_EndNode",
"defaults": {}, "defaults": {},
"funcname": "EndNode", "funcname": "EndNode",
"location": "imnodes:190", "location": "imnodes:196",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_EndNode", "ov_cimguiname": "imnodes_EndNode",
"ret": "void", "ret": "void",
@ -478,7 +478,7 @@
"cimguiname": "imnodes_EndNodeEditor", "cimguiname": "imnodes_EndNodeEditor",
"defaults": {}, "defaults": {},
"funcname": "EndNodeEditor", "funcname": "EndNodeEditor",
"location": "imnodes:181", "location": "imnodes:186",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_EndNodeEditor", "ov_cimguiname": "imnodes_EndNodeEditor",
"ret": "void", "ret": "void",
@ -495,7 +495,7 @@
"cimguiname": "imnodes_EndNodeTitleBar", "cimguiname": "imnodes_EndNodeTitleBar",
"defaults": {}, "defaults": {},
"funcname": "EndNodeTitleBar", "funcname": "EndNodeTitleBar",
"location": "imnodes:198", "location": "imnodes:204",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_EndNodeTitleBar", "ov_cimguiname": "imnodes_EndNodeTitleBar",
"ret": "void", "ret": "void",
@ -512,7 +512,7 @@
"cimguiname": "imnodes_EndOutputAttribute", "cimguiname": "imnodes_EndOutputAttribute",
"defaults": {}, "defaults": {},
"funcname": "EndOutputAttribute", "funcname": "EndOutputAttribute",
"location": "imnodes:214", "location": "imnodes:220",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_EndOutputAttribute", "ov_cimguiname": "imnodes_EndOutputAttribute",
"ret": "void", "ret": "void",
@ -529,7 +529,7 @@
"cimguiname": "imnodes_EndStaticAttribute", "cimguiname": "imnodes_EndStaticAttribute",
"defaults": {}, "defaults": {},
"funcname": "EndStaticAttribute", "funcname": "EndStaticAttribute",
"location": "imnodes:219", "location": "imnodes:225",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_EndStaticAttribute", "ov_cimguiname": "imnodes_EndStaticAttribute",
"ret": "void", "ret": "void",
@ -546,7 +546,7 @@
"cimguiname": "imnodes_GetIO", "cimguiname": "imnodes_GetIO",
"defaults": {}, "defaults": {},
"funcname": "GetIO", "funcname": "GetIO",
"location": "imnodes:169", "location": "imnodes:174",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_GetIO", "ov_cimguiname": "imnodes_GetIO",
"ret": "IO*", "ret": "IO*",
@ -573,7 +573,7 @@
"cimguiname": "imnodes_GetNodeDimensions", "cimguiname": "imnodes_GetNodeDimensions",
"defaults": {}, "defaults": {},
"funcname": "GetNodeDimensions", "funcname": "GetNodeDimensions",
"location": "imnodes:192", "location": "imnodes:198",
"namespace": "imnodes", "namespace": "imnodes",
"nonUDT": 1, "nonUDT": 1,
"ov_cimguiname": "imnodes_GetNodeDimensions", "ov_cimguiname": "imnodes_GetNodeDimensions",
@ -600,7 +600,7 @@
"cimguiname": "imnodes_GetNodeEditorSpacePos", "cimguiname": "imnodes_GetNodeEditorSpacePos",
"defaults": {}, "defaults": {},
"funcname": "GetNodeEditorSpacePos", "funcname": "GetNodeEditorSpacePos",
"location": "imnodes:247", "location": "imnodes:253",
"namespace": "imnodes", "namespace": "imnodes",
"nonUDT": 1, "nonUDT": 1,
"ov_cimguiname": "imnodes_GetNodeEditorSpacePos", "ov_cimguiname": "imnodes_GetNodeEditorSpacePos",
@ -627,7 +627,7 @@
"cimguiname": "imnodes_GetNodeGridSpacePos", "cimguiname": "imnodes_GetNodeGridSpacePos",
"defaults": {}, "defaults": {},
"funcname": "GetNodeGridSpacePos", "funcname": "GetNodeGridSpacePos",
"location": "imnodes:248", "location": "imnodes:254",
"namespace": "imnodes", "namespace": "imnodes",
"nonUDT": 1, "nonUDT": 1,
"ov_cimguiname": "imnodes_GetNodeGridSpacePos", "ov_cimguiname": "imnodes_GetNodeGridSpacePos",
@ -654,7 +654,7 @@
"cimguiname": "imnodes_GetNodeScreenSpacePos", "cimguiname": "imnodes_GetNodeScreenSpacePos",
"defaults": {}, "defaults": {},
"funcname": "GetNodeScreenSpacePos", "funcname": "GetNodeScreenSpacePos",
"location": "imnodes:246", "location": "imnodes:252",
"namespace": "imnodes", "namespace": "imnodes",
"nonUDT": 1, "nonUDT": 1,
"ov_cimguiname": "imnodes_GetNodeScreenSpacePos", "ov_cimguiname": "imnodes_GetNodeScreenSpacePos",
@ -677,7 +677,7 @@
"cimguiname": "imnodes_GetSelectedLinks", "cimguiname": "imnodes_GetSelectedLinks",
"defaults": {}, "defaults": {},
"funcname": "GetSelectedLinks", "funcname": "GetSelectedLinks",
"location": "imnodes:268", "location": "imnodes:274",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_GetSelectedLinks", "ov_cimguiname": "imnodes_GetSelectedLinks",
"ret": "void", "ret": "void",
@ -699,7 +699,7 @@
"cimguiname": "imnodes_GetSelectedNodes", "cimguiname": "imnodes_GetSelectedNodes",
"defaults": {}, "defaults": {},
"funcname": "GetSelectedNodes", "funcname": "GetSelectedNodes",
"location": "imnodes:267", "location": "imnodes:273",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_GetSelectedNodes", "ov_cimguiname": "imnodes_GetSelectedNodes",
"ret": "void", "ret": "void",
@ -716,7 +716,7 @@
"cimguiname": "imnodes_GetStyle", "cimguiname": "imnodes_GetStyle",
"defaults": {}, "defaults": {},
"funcname": "GetStyle", "funcname": "GetStyle",
"location": "imnodes:172", "location": "imnodes:177",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_GetStyle", "ov_cimguiname": "imnodes_GetStyle",
"ret": "Style*", "ret": "Style*",
@ -734,7 +734,7 @@
"cimguiname": "imnodes_Initialize", "cimguiname": "imnodes_Initialize",
"defaults": {}, "defaults": {},
"funcname": "Initialize", "funcname": "Initialize",
"location": "imnodes:166", "location": "imnodes:167",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_Initialize", "ov_cimguiname": "imnodes_Initialize",
"ret": "void", "ret": "void",
@ -758,7 +758,7 @@
"attribute_id": "((void*)0)" "attribute_id": "((void*)0)"
}, },
"funcname": "IsAnyAttributeActive", "funcname": "IsAnyAttributeActive",
"location": "imnodes:278", "location": "imnodes:284",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_IsAnyAttributeActive", "ov_cimguiname": "imnodes_IsAnyAttributeActive",
"ret": "bool", "ret": "bool",
@ -775,7 +775,7 @@
"cimguiname": "imnodes_IsAttributeActive", "cimguiname": "imnodes_IsAttributeActive",
"defaults": {}, "defaults": {},
"funcname": "IsAttributeActive", "funcname": "IsAttributeActive",
"location": "imnodes:276", "location": "imnodes:282",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_IsAttributeActive", "ov_cimguiname": "imnodes_IsAttributeActive",
"ret": "bool", "ret": "bool",
@ -792,7 +792,7 @@
"cimguiname": "imnodes_IsEditorHovered", "cimguiname": "imnodes_IsEditorHovered",
"defaults": {}, "defaults": {},
"funcname": "IsEditorHovered", "funcname": "IsEditorHovered",
"location": "imnodes:252", "location": "imnodes:258",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_IsEditorHovered", "ov_cimguiname": "imnodes_IsEditorHovered",
"ret": "bool", "ret": "bool",
@ -824,7 +824,7 @@
"created_from_snap": "((void*)0)" "created_from_snap": "((void*)0)"
}, },
"funcname": "IsLinkCreated", "funcname": "IsLinkCreated",
"location": "imnodes:293", "location": "imnodes:299",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_IsLinkCreatedBoolPtr", "ov_cimguiname": "imnodes_IsLinkCreatedBoolPtr",
"ret": "bool", "ret": "bool",
@ -862,7 +862,7 @@
"created_from_snap": "((void*)0)" "created_from_snap": "((void*)0)"
}, },
"funcname": "IsLinkCreated", "funcname": "IsLinkCreated",
"location": "imnodes:297", "location": "imnodes:303",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_IsLinkCreatedIntPtr", "ov_cimguiname": "imnodes_IsLinkCreatedIntPtr",
"ret": "bool", "ret": "bool",
@ -884,7 +884,7 @@
"cimguiname": "imnodes_IsLinkDestroyed", "cimguiname": "imnodes_IsLinkDestroyed",
"defaults": {}, "defaults": {},
"funcname": "IsLinkDestroyed", "funcname": "IsLinkDestroyed",
"location": "imnodes:306", "location": "imnodes:312",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_IsLinkDestroyed", "ov_cimguiname": "imnodes_IsLinkDestroyed",
"ret": "bool", "ret": "bool",
@ -913,7 +913,7 @@
"started_at_attribute_id": "((void*)0)" "started_at_attribute_id": "((void*)0)"
}, },
"funcname": "IsLinkDropped", "funcname": "IsLinkDropped",
"location": "imnodes:291", "location": "imnodes:297",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_IsLinkDropped", "ov_cimguiname": "imnodes_IsLinkDropped",
"ret": "bool", "ret": "bool",
@ -935,7 +935,7 @@
"cimguiname": "imnodes_IsLinkHovered", "cimguiname": "imnodes_IsLinkHovered",
"defaults": {}, "defaults": {},
"funcname": "IsLinkHovered", "funcname": "IsLinkHovered",
"location": "imnodes:257", "location": "imnodes:263",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_IsLinkHovered", "ov_cimguiname": "imnodes_IsLinkHovered",
"ret": "bool", "ret": "bool",
@ -957,7 +957,7 @@
"cimguiname": "imnodes_IsLinkStarted", "cimguiname": "imnodes_IsLinkStarted",
"defaults": {}, "defaults": {},
"funcname": "IsLinkStarted", "funcname": "IsLinkStarted",
"location": "imnodes:284", "location": "imnodes:290",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_IsLinkStarted", "ov_cimguiname": "imnodes_IsLinkStarted",
"ret": "bool", "ret": "bool",
@ -979,7 +979,7 @@
"cimguiname": "imnodes_IsNodeHovered", "cimguiname": "imnodes_IsNodeHovered",
"defaults": {}, "defaults": {},
"funcname": "IsNodeHovered", "funcname": "IsNodeHovered",
"location": "imnodes:256", "location": "imnodes:262",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_IsNodeHovered", "ov_cimguiname": "imnodes_IsNodeHovered",
"ret": "bool", "ret": "bool",
@ -1001,7 +1001,7 @@
"cimguiname": "imnodes_IsPinHovered", "cimguiname": "imnodes_IsPinHovered",
"defaults": {}, "defaults": {},
"funcname": "IsPinHovered", "funcname": "IsPinHovered",
"location": "imnodes:258", "location": "imnodes:264",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_IsPinHovered", "ov_cimguiname": "imnodes_IsPinHovered",
"ret": "bool", "ret": "bool",
@ -1031,7 +1031,7 @@
"cimguiname": "imnodes_Link", "cimguiname": "imnodes_Link",
"defaults": {}, "defaults": {},
"funcname": "Link", "funcname": "Link",
"location": "imnodes:228", "location": "imnodes:234",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_Link", "ov_cimguiname": "imnodes_Link",
"ret": "void", "ret": "void",
@ -1053,7 +1053,7 @@
"cimguiname": "imnodes_LoadCurrentEditorStateFromIniFile", "cimguiname": "imnodes_LoadCurrentEditorStateFromIniFile",
"defaults": {}, "defaults": {},
"funcname": "LoadCurrentEditorStateFromIniFile", "funcname": "LoadCurrentEditorStateFromIniFile",
"location": "imnodes:320", "location": "imnodes:326",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_LoadCurrentEditorStateFromIniFile", "ov_cimguiname": "imnodes_LoadCurrentEditorStateFromIniFile",
"ret": "void", "ret": "void",
@ -1079,7 +1079,7 @@
"cimguiname": "imnodes_LoadCurrentEditorStateFromIniString", "cimguiname": "imnodes_LoadCurrentEditorStateFromIniString",
"defaults": {}, "defaults": {},
"funcname": "LoadCurrentEditorStateFromIniString", "funcname": "LoadCurrentEditorStateFromIniString",
"location": "imnodes:314", "location": "imnodes:320",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_LoadCurrentEditorStateFromIniString", "ov_cimguiname": "imnodes_LoadCurrentEditorStateFromIniString",
"ret": "void", "ret": "void",
@ -1105,7 +1105,7 @@
"cimguiname": "imnodes_LoadEditorStateFromIniFile", "cimguiname": "imnodes_LoadEditorStateFromIniFile",
"defaults": {}, "defaults": {},
"funcname": "LoadEditorStateFromIniFile", "funcname": "LoadEditorStateFromIniFile",
"location": "imnodes:321", "location": "imnodes:327",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_LoadEditorStateFromIniFile", "ov_cimguiname": "imnodes_LoadEditorStateFromIniFile",
"ret": "void", "ret": "void",
@ -1135,7 +1135,7 @@
"cimguiname": "imnodes_LoadEditorStateFromIniString", "cimguiname": "imnodes_LoadEditorStateFromIniString",
"defaults": {}, "defaults": {},
"funcname": "LoadEditorStateFromIniString", "funcname": "LoadEditorStateFromIniString",
"location": "imnodes:315", "location": "imnodes:321",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_LoadEditorStateFromIniString", "ov_cimguiname": "imnodes_LoadEditorStateFromIniString",
"ret": "void", "ret": "void",
@ -1152,7 +1152,7 @@
"cimguiname": "imnodes_NumSelectedLinks", "cimguiname": "imnodes_NumSelectedLinks",
"defaults": {}, "defaults": {},
"funcname": "NumSelectedLinks", "funcname": "NumSelectedLinks",
"location": "imnodes:263", "location": "imnodes:269",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_NumSelectedLinks", "ov_cimguiname": "imnodes_NumSelectedLinks",
"ret": "int", "ret": "int",
@ -1169,7 +1169,7 @@
"cimguiname": "imnodes_NumSelectedNodes", "cimguiname": "imnodes_NumSelectedNodes",
"defaults": {}, "defaults": {},
"funcname": "NumSelectedNodes", "funcname": "NumSelectedNodes",
"location": "imnodes:262", "location": "imnodes:268",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_NumSelectedNodes", "ov_cimguiname": "imnodes_NumSelectedNodes",
"ret": "int", "ret": "int",
@ -1186,7 +1186,7 @@
"cimguiname": "imnodes_PopAttributeFlag", "cimguiname": "imnodes_PopAttributeFlag",
"defaults": {}, "defaults": {},
"funcname": "PopAttributeFlag", "funcname": "PopAttributeFlag",
"location": "imnodes:223", "location": "imnodes:229",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_PopAttributeFlag", "ov_cimguiname": "imnodes_PopAttributeFlag",
"ret": "void", "ret": "void",
@ -1203,7 +1203,7 @@
"cimguiname": "imnodes_PopColorStyle", "cimguiname": "imnodes_PopColorStyle",
"defaults": {}, "defaults": {},
"funcname": "PopColorStyle", "funcname": "PopColorStyle",
"location": "imnodes:185", "location": "imnodes:190",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_PopColorStyle", "ov_cimguiname": "imnodes_PopColorStyle",
"ret": "void", "ret": "void",
@ -1220,7 +1220,7 @@
"cimguiname": "imnodes_PopStyleVar", "cimguiname": "imnodes_PopStyleVar",
"defaults": {}, "defaults": {},
"funcname": "PopStyleVar", "funcname": "PopStyleVar",
"location": "imnodes:187", "location": "imnodes:192",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_PopStyleVar", "ov_cimguiname": "imnodes_PopStyleVar",
"ret": "void", "ret": "void",
@ -1242,7 +1242,7 @@
"cimguiname": "imnodes_PushAttributeFlag", "cimguiname": "imnodes_PushAttributeFlag",
"defaults": {}, "defaults": {},
"funcname": "PushAttributeFlag", "funcname": "PushAttributeFlag",
"location": "imnodes:222", "location": "imnodes:228",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_PushAttributeFlag", "ov_cimguiname": "imnodes_PushAttributeFlag",
"ret": "void", "ret": "void",
@ -1268,7 +1268,7 @@
"cimguiname": "imnodes_PushColorStyle", "cimguiname": "imnodes_PushColorStyle",
"defaults": {}, "defaults": {},
"funcname": "PushColorStyle", "funcname": "PushColorStyle",
"location": "imnodes:184", "location": "imnodes:189",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_PushColorStyle", "ov_cimguiname": "imnodes_PushColorStyle",
"ret": "void", "ret": "void",
@ -1294,7 +1294,7 @@
"cimguiname": "imnodes_PushStyleVar", "cimguiname": "imnodes_PushStyleVar",
"defaults": {}, "defaults": {},
"funcname": "PushStyleVar", "funcname": "PushStyleVar",
"location": "imnodes:186", "location": "imnodes:191",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_PushStyleVar", "ov_cimguiname": "imnodes_PushStyleVar",
"ret": "void", "ret": "void",
@ -1316,7 +1316,7 @@
"cimguiname": "imnodes_SaveCurrentEditorStateToIniFile", "cimguiname": "imnodes_SaveCurrentEditorStateToIniFile",
"defaults": {}, "defaults": {},
"funcname": "SaveCurrentEditorStateToIniFile", "funcname": "SaveCurrentEditorStateToIniFile",
"location": "imnodes:317", "location": "imnodes:323",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_SaveCurrentEditorStateToIniFile", "ov_cimguiname": "imnodes_SaveCurrentEditorStateToIniFile",
"ret": "void", "ret": "void",
@ -1340,7 +1340,7 @@
"data_size": "((void*)0)" "data_size": "((void*)0)"
}, },
"funcname": "SaveCurrentEditorStateToIniString", "funcname": "SaveCurrentEditorStateToIniString",
"location": "imnodes:311", "location": "imnodes:317",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_SaveCurrentEditorStateToIniString", "ov_cimguiname": "imnodes_SaveCurrentEditorStateToIniString",
"ret": "const char*", "ret": "const char*",
@ -1366,7 +1366,7 @@
"cimguiname": "imnodes_SaveEditorStateToIniFile", "cimguiname": "imnodes_SaveEditorStateToIniFile",
"defaults": {}, "defaults": {},
"funcname": "SaveEditorStateToIniFile", "funcname": "SaveEditorStateToIniFile",
"location": "imnodes:318", "location": "imnodes:324",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_SaveEditorStateToIniFile", "ov_cimguiname": "imnodes_SaveEditorStateToIniFile",
"ret": "void", "ret": "void",
@ -1394,7 +1394,7 @@
"data_size": "((void*)0)" "data_size": "((void*)0)"
}, },
"funcname": "SaveEditorStateToIniString", "funcname": "SaveEditorStateToIniString",
"location": "imnodes:312", "location": "imnodes:318",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_SaveEditorStateToIniString", "ov_cimguiname": "imnodes_SaveEditorStateToIniString",
"ret": "const char*", "ret": "const char*",
@ -1402,6 +1402,28 @@
"stname": "" "stname": ""
} }
], ],
"imnodes_SetImGuiContext": [
{
"args": "(ImGuiContext* ctx)",
"argsT": [
{
"name": "ctx",
"type": "ImGuiContext*"
}
],
"argsoriginal": "(ImGuiContext* ctx)",
"call_args": "(ctx)",
"cimguiname": "imnodes_SetImGuiContext",
"defaults": {},
"funcname": "SetImGuiContext",
"location": "imnodes:172",
"namespace": "imnodes",
"ov_cimguiname": "imnodes_SetImGuiContext",
"ret": "void",
"signature": "(ImGuiContext*)",
"stname": ""
}
],
"imnodes_SetNodeDraggable": [ "imnodes_SetNodeDraggable": [
{ {
"args": "(int node_id,const bool draggable)", "args": "(int node_id,const bool draggable)",
@ -1420,7 +1442,7 @@
"cimguiname": "imnodes_SetNodeDraggable", "cimguiname": "imnodes_SetNodeDraggable",
"defaults": {}, "defaults": {},
"funcname": "SetNodeDraggable", "funcname": "SetNodeDraggable",
"location": "imnodes:231", "location": "imnodes:237",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_SetNodeDraggable", "ov_cimguiname": "imnodes_SetNodeDraggable",
"ret": "void", "ret": "void",
@ -1446,7 +1468,7 @@
"cimguiname": "imnodes_SetNodeEditorSpacePos", "cimguiname": "imnodes_SetNodeEditorSpacePos",
"defaults": {}, "defaults": {},
"funcname": "SetNodeEditorSpacePos", "funcname": "SetNodeEditorSpacePos",
"location": "imnodes:243", "location": "imnodes:249",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_SetNodeEditorSpacePos", "ov_cimguiname": "imnodes_SetNodeEditorSpacePos",
"ret": "void", "ret": "void",
@ -1472,7 +1494,7 @@
"cimguiname": "imnodes_SetNodeGridSpacePos", "cimguiname": "imnodes_SetNodeGridSpacePos",
"defaults": {}, "defaults": {},
"funcname": "SetNodeGridSpacePos", "funcname": "SetNodeGridSpacePos",
"location": "imnodes:244", "location": "imnodes:250",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_SetNodeGridSpacePos", "ov_cimguiname": "imnodes_SetNodeGridSpacePos",
"ret": "void", "ret": "void",
@ -1498,7 +1520,7 @@
"cimguiname": "imnodes_SetNodeScreenSpacePos", "cimguiname": "imnodes_SetNodeScreenSpacePos",
"defaults": {}, "defaults": {},
"funcname": "SetNodeScreenSpacePos", "funcname": "SetNodeScreenSpacePos",
"location": "imnodes:242", "location": "imnodes:248",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_SetNodeScreenSpacePos", "ov_cimguiname": "imnodes_SetNodeScreenSpacePos",
"ret": "void", "ret": "void",
@ -1515,7 +1537,7 @@
"cimguiname": "imnodes_Shutdown", "cimguiname": "imnodes_Shutdown",
"defaults": {}, "defaults": {},
"funcname": "Shutdown", "funcname": "Shutdown",
"location": "imnodes:167", "location": "imnodes:168",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_Shutdown", "ov_cimguiname": "imnodes_Shutdown",
"ret": "void", "ret": "void",
@ -1532,7 +1554,7 @@
"cimguiname": "imnodes_StyleColorsClassic", "cimguiname": "imnodes_StyleColorsClassic",
"defaults": {}, "defaults": {},
"funcname": "StyleColorsClassic", "funcname": "StyleColorsClassic",
"location": "imnodes:175", "location": "imnodes:180",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_StyleColorsClassic", "ov_cimguiname": "imnodes_StyleColorsClassic",
"ret": "void", "ret": "void",
@ -1549,7 +1571,7 @@
"cimguiname": "imnodes_StyleColorsDark", "cimguiname": "imnodes_StyleColorsDark",
"defaults": {}, "defaults": {},
"funcname": "StyleColorsDark", "funcname": "StyleColorsDark",
"location": "imnodes:174", "location": "imnodes:179",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_StyleColorsDark", "ov_cimguiname": "imnodes_StyleColorsDark",
"ret": "void", "ret": "void",
@ -1566,7 +1588,7 @@
"cimguiname": "imnodes_StyleColorsLight", "cimguiname": "imnodes_StyleColorsLight",
"defaults": {}, "defaults": {},
"funcname": "StyleColorsLight", "funcname": "StyleColorsLight",
"location": "imnodes:176", "location": "imnodes:181",
"namespace": "imnodes", "namespace": "imnodes",
"ov_cimguiname": "imnodes_StyleColorsLight", "ov_cimguiname": "imnodes_StyleColorsLight",
"ret": "void", "ret": "void",

@ -226,16 +226,17 @@
} }
] ]
}, },
"enumtypes": [],
"locations": { "locations": {
"AttributeFlags": "imnodes:67", "AttributeFlags": "imnodes:68",
"ColorStyle": "imnodes:9", "ColorStyle": "imnodes:10",
"EmulateThreeButtonMouse": "imnodes:84", "EmulateThreeButtonMouse": "imnodes:85",
"IO": "imnodes:82", "IO": "imnodes:83",
"LinkDetachWithModifierClick": "imnodes:94", "LinkDetachWithModifierClick": "imnodes:95",
"PinShape": "imnodes:56", "PinShape": "imnodes:57",
"Style": "imnodes:111", "Style": "imnodes:112",
"StyleFlags": "imnodes:48", "StyleFlags": "imnodes:49",
"StyleVar": "imnodes:30" "StyleVar": "imnodes:31"
}, },
"structs": { "structs": {
"EmulateThreeButtonMouse": [ "EmulateThreeButtonMouse": [

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@ -143,7 +143,7 @@ namespace ImGuiNET
} }
ImGui.PushItemWidth(ImGui.CalcTextSize("FF").X); ImGui.PushItemWidth(ImGui.CalcTextSize("FF").X);
var flags = ImGuiInputTextFlags.CharsHexadecimal | ImGuiInputTextFlags.EnterReturnsTrue | ImGuiInputTextFlags.AutoSelectAll | ImGuiInputTextFlags.NoHorizontalScroll | ImGuiInputTextFlags.AlwaysInsertMode | ImGuiInputTextFlags.CallbackAlways; var flags = ImGuiInputTextFlags.CharsHexadecimal | ImGuiInputTextFlags.EnterReturnsTrue | ImGuiInputTextFlags.AutoSelectAll | ImGuiInputTextFlags.NoHorizontalScroll | ImGuiInputTextFlags.CallbackAlways;
if (ImGui.InputText("##data", DataInput, 32, flags, callback, (IntPtr)(&cursor_pos))) if (ImGui.InputText("##data", DataInput, 32, flags, callback, (IntPtr)(&cursor_pos)))
data_write = data_next = true; data_write = data_next = true;

@ -26,13 +26,13 @@ namespace ImGuiNET
{ {
ImColor __retval; ImColor __retval;
float a = 1.0f; float a = 1.0f;
ImGuiNative.ImColor_HSV(&__retval, (ImColor*)(NativePtr), h, s, v, a); ImGuiNative.ImColor_HSV(&__retval, h, s, v, a);
return __retval; return __retval;
} }
public ImColor HSV(float h, float s, float v, float a) public ImColor HSV(float h, float s, float v, float a)
{ {
ImColor __retval; ImColor __retval;
ImGuiNative.ImColor_HSV(&__retval, (ImColor*)(NativePtr), h, s, v, a); ImGuiNative.ImColor_HSV(&__retval, h, s, v, a);
return __retval; return __retval;
} }
public void SetHSV(float h, float s, float v) public void SetHSV(float h, float s, float v)

@ -0,0 +1,26 @@
using System;
using System.Numerics;
using System.Runtime.CompilerServices;
using System.Text;
namespace ImGuiNET
{
public unsafe partial struct ImDrawCmdHeader
{
public Vector4 ClipRect;
public IntPtr TextureId;
public uint VtxOffset;
}
public unsafe partial struct ImDrawCmdHeaderPtr
{
public ImDrawCmdHeader* NativePtr { get; }
public ImDrawCmdHeaderPtr(ImDrawCmdHeader* nativePtr) => NativePtr = nativePtr;
public ImDrawCmdHeaderPtr(IntPtr nativePtr) => NativePtr = (ImDrawCmdHeader*)nativePtr;
public static implicit operator ImDrawCmdHeaderPtr(ImDrawCmdHeader* nativePtr) => new ImDrawCmdHeaderPtr(nativePtr);
public static implicit operator ImDrawCmdHeader* (ImDrawCmdHeaderPtr wrappedPtr) => wrappedPtr.NativePtr;
public static implicit operator ImDrawCmdHeaderPtr(IntPtr nativePtr) => new ImDrawCmdHeaderPtr(nativePtr);
public ref Vector4 ClipRect => ref Unsafe.AsRef<Vector4>(&NativePtr->ClipRect);
public ref IntPtr TextureId => ref Unsafe.AsRef<IntPtr>(&NativePtr->TextureId);
public ref uint VtxOffset => ref Unsafe.AsRef<uint>(&NativePtr->VtxOffset);
}
}

@ -1,17 +0,0 @@
namespace ImGuiNET
{
[System.Flags]
public enum ImDrawCornerFlags
{
None = 0,
TopLeft = 1 << 0,
TopRight = 1 << 1,
BotLeft = 1 << 2,
BotRight = 1 << 3,
Top = TopLeft | TopRight,
Bot = BotLeft | BotRight,
Left = TopLeft | BotLeft,
Right = TopRight | BotRight,
All = 0xF,
}
}

@ -8,14 +8,13 @@ namespace ImGuiNET
public unsafe partial struct ImDrawData public unsafe partial struct ImDrawData
{ {
public byte Valid; public byte Valid;
public ImDrawList** CmdLists;
public int CmdListsCount; public int CmdListsCount;
public int TotalIdxCount; public int TotalIdxCount;
public int TotalVtxCount; public int TotalVtxCount;
public ImDrawList** CmdLists;
public Vector2 DisplayPos; public Vector2 DisplayPos;
public Vector2 DisplaySize; public Vector2 DisplaySize;
public Vector2 FramebufferScale; public Vector2 FramebufferScale;
public ImGuiViewport* OwnerViewport;
} }
public unsafe partial struct ImDrawDataPtr public unsafe partial struct ImDrawDataPtr
{ {
@ -26,14 +25,13 @@ namespace ImGuiNET
public static implicit operator ImDrawData* (ImDrawDataPtr wrappedPtr) => wrappedPtr.NativePtr; public static implicit operator ImDrawData* (ImDrawDataPtr wrappedPtr) => wrappedPtr.NativePtr;
public static implicit operator ImDrawDataPtr(IntPtr nativePtr) => new ImDrawDataPtr(nativePtr); public static implicit operator ImDrawDataPtr(IntPtr nativePtr) => new ImDrawDataPtr(nativePtr);
public ref bool Valid => ref Unsafe.AsRef<bool>(&NativePtr->Valid); public ref bool Valid => ref Unsafe.AsRef<bool>(&NativePtr->Valid);
public IntPtr CmdLists { get => (IntPtr)NativePtr->CmdLists; set => NativePtr->CmdLists = (ImDrawList**)value; }
public ref int CmdListsCount => ref Unsafe.AsRef<int>(&NativePtr->CmdListsCount); public ref int CmdListsCount => ref Unsafe.AsRef<int>(&NativePtr->CmdListsCount);
public ref int TotalIdxCount => ref Unsafe.AsRef<int>(&NativePtr->TotalIdxCount); public ref int TotalIdxCount => ref Unsafe.AsRef<int>(&NativePtr->TotalIdxCount);
public ref int TotalVtxCount => ref Unsafe.AsRef<int>(&NativePtr->TotalVtxCount); public ref int TotalVtxCount => ref Unsafe.AsRef<int>(&NativePtr->TotalVtxCount);
public IntPtr CmdLists { get => (IntPtr)NativePtr->CmdLists; set => NativePtr->CmdLists = (ImDrawList**)value; }
public ref Vector2 DisplayPos => ref Unsafe.AsRef<Vector2>(&NativePtr->DisplayPos); public ref Vector2 DisplayPos => ref Unsafe.AsRef<Vector2>(&NativePtr->DisplayPos);
public ref Vector2 DisplaySize => ref Unsafe.AsRef<Vector2>(&NativePtr->DisplaySize); public ref Vector2 DisplaySize => ref Unsafe.AsRef<Vector2>(&NativePtr->DisplaySize);
public ref Vector2 FramebufferScale => ref Unsafe.AsRef<Vector2>(&NativePtr->FramebufferScale); public ref Vector2 FramebufferScale => ref Unsafe.AsRef<Vector2>(&NativePtr->FramebufferScale);
public ImGuiViewportPtr OwnerViewport => new ImGuiViewportPtr(NativePtr->OwnerViewport);
public void Clear() public void Clear()
{ {
ImGuiNative.ImDrawData_Clear((ImDrawData*)(NativePtr)); ImGuiNative.ImDrawData_Clear((ImDrawData*)(NativePtr));

@ -0,0 +1,21 @@
namespace ImGuiNET
{
[System.Flags]
public enum ImDrawFlags
{
None = 0,
Closed = 1,
RoundCornersTopLeft = 16,
RoundCornersTopRight = 32,
RoundCornersBottomLeft = 64,
RoundCornersBottomRight = 128,
RoundCornersNone = 256,
RoundCornersTop = 48,
RoundCornersBottom = 192,
RoundCornersLeft = 80,
RoundCornersRight = 160,
RoundCornersAll = 240,
RoundCornersDefault = 240,
RoundCornersMask = 496,
}
}

@ -11,16 +11,17 @@ namespace ImGuiNET
public ImVector IdxBuffer; public ImVector IdxBuffer;
public ImVector VtxBuffer; public ImVector VtxBuffer;
public ImDrawListFlags Flags; public ImDrawListFlags Flags;
public uint _VtxCurrentIdx;
public IntPtr _Data; public IntPtr _Data;
public byte* _OwnerName; public byte* _OwnerName;
public uint _VtxCurrentIdx;
public ImDrawVert* _VtxWritePtr; public ImDrawVert* _VtxWritePtr;
public ushort* _IdxWritePtr; public ushort* _IdxWritePtr;
public ImVector _ClipRectStack; public ImVector _ClipRectStack;
public ImVector _TextureIdStack; public ImVector _TextureIdStack;
public ImVector _Path; public ImVector _Path;
public ImDrawCmd _CmdHeader; public ImDrawCmdHeader _CmdHeader;
public ImDrawListSplitter _Splitter; public ImDrawListSplitter _Splitter;
public float _FringeScale;
} }
public unsafe partial struct ImDrawListPtr public unsafe partial struct ImDrawListPtr
{ {
@ -34,16 +35,22 @@ namespace ImGuiNET
public ImVector<ushort> IdxBuffer => new ImVector<ushort>(NativePtr->IdxBuffer); public ImVector<ushort> IdxBuffer => new ImVector<ushort>(NativePtr->IdxBuffer);
public ImPtrVector<ImDrawVertPtr> VtxBuffer => new ImPtrVector<ImDrawVertPtr>(NativePtr->VtxBuffer, Unsafe.SizeOf<ImDrawVert>()); public ImPtrVector<ImDrawVertPtr> VtxBuffer => new ImPtrVector<ImDrawVertPtr>(NativePtr->VtxBuffer, Unsafe.SizeOf<ImDrawVert>());
public ref ImDrawListFlags Flags => ref Unsafe.AsRef<ImDrawListFlags>(&NativePtr->Flags); public ref ImDrawListFlags Flags => ref Unsafe.AsRef<ImDrawListFlags>(&NativePtr->Flags);
public ref uint _VtxCurrentIdx => ref Unsafe.AsRef<uint>(&NativePtr->_VtxCurrentIdx);
public ref IntPtr _Data => ref Unsafe.AsRef<IntPtr>(&NativePtr->_Data); public ref IntPtr _Data => ref Unsafe.AsRef<IntPtr>(&NativePtr->_Data);
public NullTerminatedString _OwnerName => new NullTerminatedString(NativePtr->_OwnerName); public NullTerminatedString _OwnerName => new NullTerminatedString(NativePtr->_OwnerName);
public ref uint _VtxCurrentIdx => ref Unsafe.AsRef<uint>(&NativePtr->_VtxCurrentIdx);
public ImDrawVertPtr _VtxWritePtr => new ImDrawVertPtr(NativePtr->_VtxWritePtr); public ImDrawVertPtr _VtxWritePtr => new ImDrawVertPtr(NativePtr->_VtxWritePtr);
public IntPtr _IdxWritePtr { get => (IntPtr)NativePtr->_IdxWritePtr; set => NativePtr->_IdxWritePtr = (ushort*)value; } public IntPtr _IdxWritePtr { get => (IntPtr)NativePtr->_IdxWritePtr; set => NativePtr->_IdxWritePtr = (ushort*)value; }
public ImVector<Vector4> _ClipRectStack => new ImVector<Vector4>(NativePtr->_ClipRectStack); public ImVector<Vector4> _ClipRectStack => new ImVector<Vector4>(NativePtr->_ClipRectStack);
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 ImDrawCmd _CmdHeader => ref Unsafe.AsRef<ImDrawCmd>(&NativePtr->_CmdHeader); public ref ImDrawCmdHeader _CmdHeader => ref Unsafe.AsRef<ImDrawCmdHeader>(&NativePtr->_CmdHeader);
public ref ImDrawListSplitter _Splitter => ref Unsafe.AsRef<ImDrawListSplitter>(&NativePtr->_Splitter); public ref ImDrawListSplitter _Splitter => ref Unsafe.AsRef<ImDrawListSplitter>(&NativePtr->_Splitter);
public ref float _FringeScale => ref Unsafe.AsRef<float>(&NativePtr->_FringeScale);
public int _CalcCircleAutoSegmentCount(float radius)
{
int ret = ImGuiNative.ImDrawList__CalcCircleAutoSegmentCount((ImDrawList*)(NativePtr), radius);
return ret;
}
public void _ClearFreeMemory() public void _ClearFreeMemory()
{ {
ImGuiNative.ImDrawList__ClearFreeMemory((ImDrawList*)(NativePtr)); ImGuiNative.ImDrawList__ClearFreeMemory((ImDrawList*)(NativePtr));
@ -60,6 +67,14 @@ namespace ImGuiNET
{ {
ImGuiNative.ImDrawList__OnChangedVtxOffset((ImDrawList*)(NativePtr)); ImGuiNative.ImDrawList__OnChangedVtxOffset((ImDrawList*)(NativePtr));
} }
public void _PathArcToFastEx(Vector2 center, float radius, int a_min_sample, int a_max_sample, int a_step)
{
ImGuiNative.ImDrawList__PathArcToFastEx((ImDrawList*)(NativePtr), center, radius, a_min_sample, a_max_sample, a_step);
}
public void _PathArcToN(Vector2 center, float radius, float a_min, float a_max, int num_segments)
{
ImGuiNative.ImDrawList__PathArcToN((ImDrawList*)(NativePtr), center, radius, a_min, a_max, num_segments);
}
public void _PopUnusedDrawCmd() public void _PopUnusedDrawCmd()
{ {
ImGuiNative.ImDrawList__PopUnusedDrawCmd((ImDrawList*)(NativePtr)); ImGuiNative.ImDrawList__PopUnusedDrawCmd((ImDrawList*)(NativePtr));
@ -68,14 +83,23 @@ namespace ImGuiNET
{ {
ImGuiNative.ImDrawList__ResetForNewFrame((ImDrawList*)(NativePtr)); ImGuiNative.ImDrawList__ResetForNewFrame((ImDrawList*)(NativePtr));
} }
public void AddBezierCurve(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, uint col, float thickness) public void AddBezierCubic(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, uint col, float thickness)
{
int num_segments = 0;
ImGuiNative.ImDrawList_AddBezierCubic((ImDrawList*)(NativePtr), p1, p2, p3, p4, col, thickness, num_segments);
}
public void AddBezierCubic(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, uint col, float thickness, int num_segments)
{
ImGuiNative.ImDrawList_AddBezierCubic((ImDrawList*)(NativePtr), p1, p2, p3, p4, col, thickness, num_segments);
}
public void AddBezierQuadratic(Vector2 p1, Vector2 p2, Vector2 p3, uint col, float thickness)
{ {
int num_segments = 0; int num_segments = 0;
ImGuiNative.ImDrawList_AddBezierCurve((ImDrawList*)(NativePtr), p1, p2, p3, p4, col, thickness, num_segments); ImGuiNative.ImDrawList_AddBezierQuadratic((ImDrawList*)(NativePtr), p1, p2, p3, col, thickness, num_segments);
} }
public void AddBezierCurve(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, uint col, float thickness, int num_segments) public void AddBezierQuadratic(Vector2 p1, Vector2 p2, Vector2 p3, uint col, float thickness, int num_segments)
{ {
ImGuiNative.ImDrawList_AddBezierCurve((ImDrawList*)(NativePtr), p1, p2, p3, p4, col, thickness, num_segments); ImGuiNative.ImDrawList_AddBezierQuadratic((ImDrawList*)(NativePtr), p1, p2, p3, col, thickness, num_segments);
} }
public void AddCallback(IntPtr callback, IntPtr callback_data) public void AddCallback(IntPtr callback, IntPtr callback_data)
{ {
@ -121,18 +145,18 @@ namespace ImGuiNET
{ {
Vector2 uv_min = new Vector2(); Vector2 uv_min = new Vector2();
Vector2 uv_max = new Vector2(1, 1); Vector2 uv_max = new Vector2(1, 1);
uint col = 0xFFFFFFFF; uint col = 4294967295;
ImGuiNative.ImDrawList_AddImage((ImDrawList*)(NativePtr), user_texture_id, p_min, p_max, uv_min, uv_max, col); ImGuiNative.ImDrawList_AddImage((ImDrawList*)(NativePtr), user_texture_id, p_min, p_max, uv_min, uv_max, col);
} }
public void AddImage(IntPtr user_texture_id, Vector2 p_min, Vector2 p_max, Vector2 uv_min) public void AddImage(IntPtr user_texture_id, Vector2 p_min, Vector2 p_max, Vector2 uv_min)
{ {
Vector2 uv_max = new Vector2(1, 1); Vector2 uv_max = new Vector2(1, 1);
uint col = 0xFFFFFFFF; uint col = 4294967295;
ImGuiNative.ImDrawList_AddImage((ImDrawList*)(NativePtr), user_texture_id, p_min, p_max, uv_min, uv_max, col); ImGuiNative.ImDrawList_AddImage((ImDrawList*)(NativePtr), user_texture_id, p_min, p_max, uv_min, uv_max, col);
} }
public void AddImage(IntPtr user_texture_id, Vector2 p_min, Vector2 p_max, Vector2 uv_min, Vector2 uv_max) public void AddImage(IntPtr user_texture_id, Vector2 p_min, Vector2 p_max, Vector2 uv_min, Vector2 uv_max)
{ {
uint col = 0xFFFFFFFF; uint col = 4294967295;
ImGuiNative.ImDrawList_AddImage((ImDrawList*)(NativePtr), user_texture_id, p_min, p_max, uv_min, uv_max, col); ImGuiNative.ImDrawList_AddImage((ImDrawList*)(NativePtr), user_texture_id, p_min, p_max, uv_min, uv_max, col);
} }
public void AddImage(IntPtr user_texture_id, Vector2 p_min, Vector2 p_max, Vector2 uv_min, Vector2 uv_max, uint col) public void AddImage(IntPtr user_texture_id, Vector2 p_min, Vector2 p_max, Vector2 uv_min, Vector2 uv_max, uint col)
@ -145,7 +169,7 @@ namespace ImGuiNET
Vector2 uv2 = new Vector2(1, 0); Vector2 uv2 = new Vector2(1, 0);
Vector2 uv3 = new Vector2(1, 1); Vector2 uv3 = new Vector2(1, 1);
Vector2 uv4 = new Vector2(0, 1); Vector2 uv4 = new Vector2(0, 1);
uint col = 0xFFFFFFFF; uint col = 4294967295;
ImGuiNative.ImDrawList_AddImageQuad((ImDrawList*)(NativePtr), user_texture_id, p1, p2, p3, p4, uv1, uv2, uv3, uv4, col); ImGuiNative.ImDrawList_AddImageQuad((ImDrawList*)(NativePtr), user_texture_id, p1, p2, p3, p4, uv1, uv2, uv3, uv4, col);
} }
public void AddImageQuad(IntPtr user_texture_id, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, Vector2 uv1) public void AddImageQuad(IntPtr user_texture_id, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, Vector2 uv1)
@ -153,25 +177,25 @@ namespace ImGuiNET
Vector2 uv2 = new Vector2(1, 0); Vector2 uv2 = new Vector2(1, 0);
Vector2 uv3 = new Vector2(1, 1); Vector2 uv3 = new Vector2(1, 1);
Vector2 uv4 = new Vector2(0, 1); Vector2 uv4 = new Vector2(0, 1);
uint col = 0xFFFFFFFF; uint col = 4294967295;
ImGuiNative.ImDrawList_AddImageQuad((ImDrawList*)(NativePtr), user_texture_id, p1, p2, p3, p4, uv1, uv2, uv3, uv4, col); ImGuiNative.ImDrawList_AddImageQuad((ImDrawList*)(NativePtr), user_texture_id, p1, p2, p3, p4, uv1, uv2, uv3, uv4, col);
} }
public void AddImageQuad(IntPtr user_texture_id, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, Vector2 uv1, Vector2 uv2) public void AddImageQuad(IntPtr user_texture_id, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, Vector2 uv1, Vector2 uv2)
{ {
Vector2 uv3 = new Vector2(1, 1); Vector2 uv3 = new Vector2(1, 1);
Vector2 uv4 = new Vector2(0, 1); Vector2 uv4 = new Vector2(0, 1);
uint col = 0xFFFFFFFF; uint col = 4294967295;
ImGuiNative.ImDrawList_AddImageQuad((ImDrawList*)(NativePtr), user_texture_id, p1, p2, p3, p4, uv1, uv2, uv3, uv4, col); ImGuiNative.ImDrawList_AddImageQuad((ImDrawList*)(NativePtr), user_texture_id, p1, p2, p3, p4, uv1, uv2, uv3, uv4, col);
} }
public void AddImageQuad(IntPtr user_texture_id, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, Vector2 uv1, Vector2 uv2, Vector2 uv3) public void AddImageQuad(IntPtr user_texture_id, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, Vector2 uv1, Vector2 uv2, Vector2 uv3)
{ {
Vector2 uv4 = new Vector2(0, 1); Vector2 uv4 = new Vector2(0, 1);
uint col = 0xFFFFFFFF; uint col = 4294967295;
ImGuiNative.ImDrawList_AddImageQuad((ImDrawList*)(NativePtr), user_texture_id, p1, p2, p3, p4, uv1, uv2, uv3, uv4, col); ImGuiNative.ImDrawList_AddImageQuad((ImDrawList*)(NativePtr), user_texture_id, p1, p2, p3, p4, uv1, uv2, uv3, uv4, col);
} }
public void AddImageQuad(IntPtr user_texture_id, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, Vector2 uv1, Vector2 uv2, Vector2 uv3, Vector2 uv4) 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 = 4294967295;
ImGuiNative.ImDrawList_AddImageQuad((ImDrawList*)(NativePtr), user_texture_id, p1, p2, p3, p4, uv1, uv2, uv3, uv4, col); ImGuiNative.ImDrawList_AddImageQuad((ImDrawList*)(NativePtr), user_texture_id, p1, p2, p3, p4, uv1, uv2, uv3, uv4, 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) 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)
@ -180,12 +204,12 @@ namespace ImGuiNET
} }
public void AddImageRounded(IntPtr user_texture_id, Vector2 p_min, Vector2 p_max, Vector2 uv_min, Vector2 uv_max, 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; ImDrawFlags flags = (ImDrawFlags)0;
ImGuiNative.ImDrawList_AddImageRounded((ImDrawList*)(NativePtr), user_texture_id, p_min, p_max, uv_min, uv_max, col, rounding, rounding_corners); ImGuiNative.ImDrawList_AddImageRounded((ImDrawList*)(NativePtr), user_texture_id, p_min, p_max, uv_min, uv_max, col, rounding, flags);
} }
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) public void AddImageRounded(IntPtr user_texture_id, Vector2 p_min, Vector2 p_max, Vector2 uv_min, Vector2 uv_max, uint col, float rounding, ImDrawFlags flags)
{ {
ImGuiNative.ImDrawList_AddImageRounded((ImDrawList*)(NativePtr), user_texture_id, p_min, p_max, uv_min, uv_max, col, rounding, rounding_corners); ImGuiNative.ImDrawList_AddImageRounded((ImDrawList*)(NativePtr), user_texture_id, p_min, p_max, uv_min, uv_max, col, rounding, flags);
} }
public void AddLine(Vector2 p1, Vector2 p2, uint col) public void AddLine(Vector2 p1, Vector2 p2, uint col)
{ {
@ -209,12 +233,11 @@ namespace ImGuiNET
{ {
ImGuiNative.ImDrawList_AddNgonFilled((ImDrawList*)(NativePtr), center, radius, col, num_segments); ImGuiNative.ImDrawList_AddNgonFilled((ImDrawList*)(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, ImDrawFlags flags, float thickness)
{ {
byte native_closed = closed ? (byte)1 : (byte)0;
fixed (Vector2* native_points = &points) fixed (Vector2* native_points = &points)
{ {
ImGuiNative.ImDrawList_AddPolyline((ImDrawList*)(NativePtr), native_points, num_points, col, native_closed, thickness); ImGuiNative.ImDrawList_AddPolyline((ImDrawList*)(NativePtr), native_points, num_points, col, flags, thickness);
} }
} }
public void AddQuad(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, uint col) public void AddQuad(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, uint col)
@ -233,39 +256,39 @@ namespace ImGuiNET
public void AddRect(Vector2 p_min, Vector2 p_max, 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; ImDrawFlags flags = (ImDrawFlags)0;
float thickness = 1.0f; float thickness = 1.0f;
ImGuiNative.ImDrawList_AddRect((ImDrawList*)(NativePtr), p_min, p_max, col, rounding, rounding_corners, thickness); ImGuiNative.ImDrawList_AddRect((ImDrawList*)(NativePtr), p_min, p_max, col, rounding, flags, thickness);
} }
public void AddRect(Vector2 p_min, Vector2 p_max, uint col, float rounding) public void AddRect(Vector2 p_min, Vector2 p_max, uint col, float rounding)
{ {
ImDrawCornerFlags rounding_corners = ImDrawCornerFlags.All; ImDrawFlags flags = (ImDrawFlags)0;
float thickness = 1.0f; float thickness = 1.0f;
ImGuiNative.ImDrawList_AddRect((ImDrawList*)(NativePtr), p_min, p_max, col, rounding, rounding_corners, thickness); ImGuiNative.ImDrawList_AddRect((ImDrawList*)(NativePtr), p_min, p_max, col, rounding, flags, thickness);
} }
public void AddRect(Vector2 p_min, Vector2 p_max, uint col, float rounding, ImDrawCornerFlags rounding_corners) public void AddRect(Vector2 p_min, Vector2 p_max, uint col, float rounding, ImDrawFlags flags)
{ {
float thickness = 1.0f; float thickness = 1.0f;
ImGuiNative.ImDrawList_AddRect((ImDrawList*)(NativePtr), p_min, p_max, col, rounding, rounding_corners, thickness); ImGuiNative.ImDrawList_AddRect((ImDrawList*)(NativePtr), p_min, p_max, col, rounding, flags, thickness);
} }
public void AddRect(Vector2 p_min, Vector2 p_max, uint col, float rounding, ImDrawCornerFlags rounding_corners, float thickness) public void AddRect(Vector2 p_min, Vector2 p_max, uint col, float rounding, ImDrawFlags flags, float thickness)
{ {
ImGuiNative.ImDrawList_AddRect((ImDrawList*)(NativePtr), p_min, p_max, col, rounding, rounding_corners, thickness); ImGuiNative.ImDrawList_AddRect((ImDrawList*)(NativePtr), p_min, p_max, col, rounding, flags, thickness);
} }
public void AddRectFilled(Vector2 p_min, Vector2 p_max, 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; ImDrawFlags flags = (ImDrawFlags)0;
ImGuiNative.ImDrawList_AddRectFilled((ImDrawList*)(NativePtr), p_min, p_max, col, rounding, rounding_corners); ImGuiNative.ImDrawList_AddRectFilled((ImDrawList*)(NativePtr), p_min, p_max, col, rounding, flags);
} }
public void AddRectFilled(Vector2 p_min, Vector2 p_max, uint col, float rounding) public void AddRectFilled(Vector2 p_min, Vector2 p_max, uint col, float rounding)
{ {
ImDrawCornerFlags rounding_corners = ImDrawCornerFlags.All; ImDrawFlags flags = (ImDrawFlags)0;
ImGuiNative.ImDrawList_AddRectFilled((ImDrawList*)(NativePtr), p_min, p_max, col, rounding, rounding_corners); ImGuiNative.ImDrawList_AddRectFilled((ImDrawList*)(NativePtr), p_min, p_max, col, rounding, flags);
} }
public void AddRectFilled(Vector2 p_min, Vector2 p_max, uint col, float rounding, ImDrawCornerFlags rounding_corners) public void AddRectFilled(Vector2 p_min, Vector2 p_max, uint col, float rounding, ImDrawFlags flags)
{ {
ImGuiNative.ImDrawList_AddRectFilled((ImDrawList*)(NativePtr), p_min, p_max, col, rounding, rounding_corners); ImGuiNative.ImDrawList_AddRectFilled((ImDrawList*)(NativePtr), p_min, p_max, col, rounding, flags);
} }
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) 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)
{ {
@ -319,7 +342,7 @@ namespace ImGuiNET
} }
public void PathArcTo(Vector2 center, 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 = 0;
ImGuiNative.ImDrawList_PathArcTo((ImDrawList*)(NativePtr), center, radius, a_min, a_max, num_segments); ImGuiNative.ImDrawList_PathArcTo((ImDrawList*)(NativePtr), center, radius, a_min, a_max, num_segments);
} }
public void PathArcTo(Vector2 center, 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)
@ -330,14 +353,23 @@ namespace ImGuiNET
{ {
ImGuiNative.ImDrawList_PathArcToFast((ImDrawList*)(NativePtr), center, radius, a_min_of_12, a_max_of_12); ImGuiNative.ImDrawList_PathArcToFast((ImDrawList*)(NativePtr), center, radius, a_min_of_12, a_max_of_12);
} }
public void PathBezierCurveTo(Vector2 p2, Vector2 p3, Vector2 p4) public void PathBezierCubicCurveTo(Vector2 p2, Vector2 p3, Vector2 p4)
{
int num_segments = 0;
ImGuiNative.ImDrawList_PathBezierCubicCurveTo((ImDrawList*)(NativePtr), p2, p3, p4, num_segments);
}
public void PathBezierCubicCurveTo(Vector2 p2, Vector2 p3, Vector2 p4, int num_segments)
{
ImGuiNative.ImDrawList_PathBezierCubicCurveTo((ImDrawList*)(NativePtr), p2, p3, p4, num_segments);
}
public void PathBezierQuadraticCurveTo(Vector2 p2, Vector2 p3)
{ {
int num_segments = 0; int num_segments = 0;
ImGuiNative.ImDrawList_PathBezierCurveTo((ImDrawList*)(NativePtr), p2, p3, p4, num_segments); ImGuiNative.ImDrawList_PathBezierQuadraticCurveTo((ImDrawList*)(NativePtr), p2, p3, num_segments);
} }
public void PathBezierCurveTo(Vector2 p2, Vector2 p3, Vector2 p4, int num_segments) public void PathBezierQuadraticCurveTo(Vector2 p2, Vector2 p3, int num_segments)
{ {
ImGuiNative.ImDrawList_PathBezierCurveTo((ImDrawList*)(NativePtr), p2, p3, p4, num_segments); ImGuiNative.ImDrawList_PathBezierQuadraticCurveTo((ImDrawList*)(NativePtr), p2, p3, num_segments);
} }
public void PathClear() public void PathClear()
{ {
@ -358,28 +390,32 @@ namespace ImGuiNET
public void PathRect(Vector2 rect_min, Vector2 rect_max) public void PathRect(Vector2 rect_min, Vector2 rect_max)
{ {
float rounding = 0.0f; float rounding = 0.0f;
ImDrawCornerFlags rounding_corners = ImDrawCornerFlags.All; ImDrawFlags flags = (ImDrawFlags)0;
ImGuiNative.ImDrawList_PathRect((ImDrawList*)(NativePtr), rect_min, rect_max, rounding, rounding_corners); ImGuiNative.ImDrawList_PathRect((ImDrawList*)(NativePtr), rect_min, rect_max, rounding, flags);
} }
public void PathRect(Vector2 rect_min, Vector2 rect_max, float rounding) public void PathRect(Vector2 rect_min, Vector2 rect_max, float rounding)
{ {
ImDrawCornerFlags rounding_corners = ImDrawCornerFlags.All; ImDrawFlags flags = (ImDrawFlags)0;
ImGuiNative.ImDrawList_PathRect((ImDrawList*)(NativePtr), rect_min, rect_max, rounding, rounding_corners); ImGuiNative.ImDrawList_PathRect((ImDrawList*)(NativePtr), rect_min, rect_max, rounding, flags);
} }
public void PathRect(Vector2 rect_min, Vector2 rect_max, float rounding, ImDrawCornerFlags rounding_corners) public void PathRect(Vector2 rect_min, Vector2 rect_max, float rounding, ImDrawFlags flags)
{ {
ImGuiNative.ImDrawList_PathRect((ImDrawList*)(NativePtr), rect_min, rect_max, rounding, rounding_corners); ImGuiNative.ImDrawList_PathRect((ImDrawList*)(NativePtr), rect_min, rect_max, rounding, flags);
}
public void PathStroke(uint col)
{
ImDrawFlags flags = (ImDrawFlags)0;
float thickness = 1.0f;
ImGuiNative.ImDrawList_PathStroke((ImDrawList*)(NativePtr), col, flags, thickness);
} }
public void PathStroke(uint col, bool closed) public void PathStroke(uint col, ImDrawFlags flags)
{ {
byte native_closed = closed ? (byte)1 : (byte)0;
float thickness = 1.0f; float thickness = 1.0f;
ImGuiNative.ImDrawList_PathStroke((ImDrawList*)(NativePtr), col, native_closed, thickness); ImGuiNative.ImDrawList_PathStroke((ImDrawList*)(NativePtr), col, flags, thickness);
} }
public void PathStroke(uint col, bool closed, float thickness) public void PathStroke(uint col, ImDrawFlags flags, float thickness)
{ {
byte native_closed = closed ? (byte)1 : (byte)0; ImGuiNative.ImDrawList_PathStroke((ImDrawList*)(NativePtr), col, flags, thickness);
ImGuiNative.ImDrawList_PathStroke((ImDrawList*)(NativePtr), col, native_closed, thickness);
} }
public void PopClipRect() public void PopClipRect()
{ {

@ -4,9 +4,9 @@ namespace ImGuiNET
public enum ImDrawListFlags public enum ImDrawListFlags
{ {
None = 0, None = 0,
AntiAliasedLines = 1 << 0, AntiAliasedLines = 1,
AntiAliasedLinesUseTex = 1 << 1, AntiAliasedLinesUseTex = 2,
AntiAliasedFill = 1 << 2, AntiAliasedFill = 4,
AllowVtxOffset = 1 << 3, AllowVtxOffset = 8,
} }
} }

@ -13,7 +13,6 @@ namespace ImGuiNET
public ImVector IndexLookup; public ImVector IndexLookup;
public ImVector Glyphs; public ImVector Glyphs;
public ImFontGlyph* FallbackGlyph; public ImFontGlyph* FallbackGlyph;
public Vector2 DisplayOffset;
public ImFontAtlas* ContainerAtlas; public ImFontAtlas* ContainerAtlas;
public ImFontConfig* ConfigData; public ImFontConfig* ConfigData;
public short ConfigDataCount; public short ConfigDataCount;
@ -40,7 +39,6 @@ namespace ImGuiNET
public ImVector<ushort> IndexLookup => new ImVector<ushort>(NativePtr->IndexLookup); public ImVector<ushort> IndexLookup => new ImVector<ushort>(NativePtr->IndexLookup);
public ImPtrVector<ImFontGlyphPtr> Glyphs => new ImPtrVector<ImFontGlyphPtr>(NativePtr->Glyphs, Unsafe.SizeOf<ImFontGlyph>()); public ImPtrVector<ImFontGlyphPtr> Glyphs => new ImPtrVector<ImFontGlyphPtr>(NativePtr->Glyphs, Unsafe.SizeOf<ImFontGlyph>());
public ImFontGlyphPtr FallbackGlyph => new ImFontGlyphPtr(NativePtr->FallbackGlyph); public ImFontGlyphPtr FallbackGlyph => new ImFontGlyphPtr(NativePtr->FallbackGlyph);
public ref Vector2 DisplayOffset => ref Unsafe.AsRef<Vector2>(&NativePtr->DisplayOffset);
public ImFontAtlasPtr ContainerAtlas => new ImFontAtlasPtr(NativePtr->ContainerAtlas); public ImFontAtlasPtr ContainerAtlas => new ImFontAtlasPtr(NativePtr->ContainerAtlas);
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);

@ -7,11 +7,12 @@ namespace ImGuiNET
{ {
public unsafe partial struct ImFontAtlas public unsafe partial struct ImFontAtlas
{ {
public byte Locked;
public ImFontAtlasFlags Flags; public ImFontAtlasFlags Flags;
public IntPtr TexID; public IntPtr TexID;
public int TexDesiredWidth; public int TexDesiredWidth;
public int TexGlyphPadding; public int TexGlyphPadding;
public byte Locked;
public byte TexPixelsUseColors;
public byte* TexPixelsAlpha8; public byte* TexPixelsAlpha8;
public uint* TexPixelsRGBA32; public uint* TexPixelsRGBA32;
public int TexWidth; public int TexWidth;
@ -85,6 +86,8 @@ namespace ImGuiNET
public Vector4 TexUvLines_61; public Vector4 TexUvLines_61;
public Vector4 TexUvLines_62; public Vector4 TexUvLines_62;
public Vector4 TexUvLines_63; public Vector4 TexUvLines_63;
public IntPtr* FontBuilderIO;
public uint FontBuilderFlags;
public int PackIdMouseCursors; public int PackIdMouseCursors;
public int PackIdLines; public int PackIdLines;
} }
@ -96,11 +99,12 @@ namespace ImGuiNET
public static implicit operator ImFontAtlasPtr(ImFontAtlas* nativePtr) => new ImFontAtlasPtr(nativePtr); public static implicit operator ImFontAtlasPtr(ImFontAtlas* nativePtr) => new ImFontAtlasPtr(nativePtr);
public static implicit operator ImFontAtlas* (ImFontAtlasPtr wrappedPtr) => wrappedPtr.NativePtr; public static implicit operator ImFontAtlas* (ImFontAtlasPtr wrappedPtr) => wrappedPtr.NativePtr;
public static implicit operator ImFontAtlasPtr(IntPtr nativePtr) => new ImFontAtlasPtr(nativePtr); public static implicit operator ImFontAtlasPtr(IntPtr nativePtr) => new ImFontAtlasPtr(nativePtr);
public ref bool Locked => ref Unsafe.AsRef<bool>(&NativePtr->Locked);
public ref ImFontAtlasFlags Flags => ref Unsafe.AsRef<ImFontAtlasFlags>(&NativePtr->Flags); public ref ImFontAtlasFlags Flags => ref Unsafe.AsRef<ImFontAtlasFlags>(&NativePtr->Flags);
public ref IntPtr TexID => ref Unsafe.AsRef<IntPtr>(&NativePtr->TexID); public ref IntPtr TexID => ref Unsafe.AsRef<IntPtr>(&NativePtr->TexID);
public ref int TexDesiredWidth => ref Unsafe.AsRef<int>(&NativePtr->TexDesiredWidth); public ref int TexDesiredWidth => ref Unsafe.AsRef<int>(&NativePtr->TexDesiredWidth);
public ref int TexGlyphPadding => ref Unsafe.AsRef<int>(&NativePtr->TexGlyphPadding); public ref int TexGlyphPadding => ref Unsafe.AsRef<int>(&NativePtr->TexGlyphPadding);
public ref bool Locked => ref Unsafe.AsRef<bool>(&NativePtr->Locked);
public ref bool TexPixelsUseColors => ref Unsafe.AsRef<bool>(&NativePtr->TexPixelsUseColors);
public IntPtr TexPixelsAlpha8 { get => (IntPtr)NativePtr->TexPixelsAlpha8; set => NativePtr->TexPixelsAlpha8 = (byte*)value; } public IntPtr TexPixelsAlpha8 { get => (IntPtr)NativePtr->TexPixelsAlpha8; set => NativePtr->TexPixelsAlpha8 = (byte*)value; }
public IntPtr TexPixelsRGBA32 { get => (IntPtr)NativePtr->TexPixelsRGBA32; set => NativePtr->TexPixelsRGBA32 = (uint*)value; } public IntPtr TexPixelsRGBA32 { get => (IntPtr)NativePtr->TexPixelsRGBA32; set => NativePtr->TexPixelsRGBA32 = (uint*)value; }
public ref int TexWidth => ref Unsafe.AsRef<int>(&NativePtr->TexWidth); public ref int TexWidth => ref Unsafe.AsRef<int>(&NativePtr->TexWidth);
@ -111,6 +115,8 @@ namespace ImGuiNET
public ImPtrVector<ImFontAtlasCustomRectPtr> CustomRects => new ImPtrVector<ImFontAtlasCustomRectPtr>(NativePtr->CustomRects, Unsafe.SizeOf<ImFontAtlasCustomRect>()); public ImPtrVector<ImFontAtlasCustomRectPtr> CustomRects => new ImPtrVector<ImFontAtlasCustomRectPtr>(NativePtr->CustomRects, Unsafe.SizeOf<ImFontAtlasCustomRect>());
public ImPtrVector<ImFontConfigPtr> ConfigData => new ImPtrVector<ImFontConfigPtr>(NativePtr->ConfigData, Unsafe.SizeOf<ImFontConfig>()); public ImPtrVector<ImFontConfigPtr> ConfigData => new ImPtrVector<ImFontConfigPtr>(NativePtr->ConfigData, Unsafe.SizeOf<ImFontConfig>());
public RangeAccessor<Vector4> TexUvLines => new RangeAccessor<Vector4>(&NativePtr->TexUvLines_0, 64); public RangeAccessor<Vector4> TexUvLines => new RangeAccessor<Vector4>(&NativePtr->TexUvLines_0, 64);
public IntPtr FontBuilderIO { get => (IntPtr)NativePtr->FontBuilderIO; set => NativePtr->FontBuilderIO = (IntPtr*)value; }
public ref uint FontBuilderFlags => ref Unsafe.AsRef<uint>(&NativePtr->FontBuilderFlags);
public ref int PackIdMouseCursors => ref Unsafe.AsRef<int>(&NativePtr->PackIdMouseCursors); public ref int PackIdMouseCursors => ref Unsafe.AsRef<int>(&NativePtr->PackIdMouseCursors);
public ref int PackIdLines => ref Unsafe.AsRef<int>(&NativePtr->PackIdLines); public ref int PackIdLines => ref Unsafe.AsRef<int>(&NativePtr->PackIdLines);
public int AddCustomRectFontGlyph(ImFontPtr font, ushort id, int width, int height, float advance_x) public int AddCustomRectFontGlyph(ImFontPtr font, ushort id, int width, int height, float advance_x)

@ -4,8 +4,8 @@ namespace ImGuiNET
public enum ImFontAtlasFlags public enum ImFontAtlasFlags
{ {
None = 0, None = 0,
NoPowerOfTwoHeight = 1 << 0, NoPowerOfTwoHeight = 1,
NoMouseCursors = 1 << 1, NoMouseCursors = 2,
NoBakedLines = 1 << 2, NoBakedLines = 4,
} }
} }

@ -21,7 +21,7 @@ namespace ImGuiNET
public float GlyphMinAdvanceX; public float GlyphMinAdvanceX;
public float GlyphMaxAdvanceX; public float GlyphMaxAdvanceX;
public byte MergeMode; public byte MergeMode;
public uint RasterizerFlags; public uint FontBuilderFlags;
public float RasterizerMultiply; public float RasterizerMultiply;
public ushort EllipsisChar; public ushort EllipsisChar;
public fixed byte Name[40]; public fixed byte Name[40];
@ -49,7 +49,7 @@ namespace ImGuiNET
public ref float GlyphMinAdvanceX => ref Unsafe.AsRef<float>(&NativePtr->GlyphMinAdvanceX); public ref float GlyphMinAdvanceX => ref Unsafe.AsRef<float>(&NativePtr->GlyphMinAdvanceX);
public ref float GlyphMaxAdvanceX => ref Unsafe.AsRef<float>(&NativePtr->GlyphMaxAdvanceX); public ref float GlyphMaxAdvanceX => ref Unsafe.AsRef<float>(&NativePtr->GlyphMaxAdvanceX);
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 FontBuilderFlags => ref Unsafe.AsRef<uint>(&NativePtr->FontBuilderFlags);
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 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);

@ -7,8 +7,9 @@ namespace ImGuiNET
{ {
public unsafe partial struct ImFontGlyph public unsafe partial struct ImFontGlyph
{ {
public uint Codepoint; public uint Colored;
public uint Visible; public uint Visible;
public uint Codepoint;
public float AdvanceX; public float AdvanceX;
public float X0; public float X0;
public float Y0; public float Y0;
@ -27,8 +28,9 @@ namespace ImGuiNET
public static implicit operator ImFontGlyphPtr(ImFontGlyph* nativePtr) => new ImFontGlyphPtr(nativePtr); public static implicit operator ImFontGlyphPtr(ImFontGlyph* nativePtr) => new ImFontGlyphPtr(nativePtr);
public static implicit operator ImFontGlyph* (ImFontGlyphPtr wrappedPtr) => wrappedPtr.NativePtr; public static implicit operator ImFontGlyph* (ImFontGlyphPtr wrappedPtr) => wrappedPtr.NativePtr;
public static implicit operator ImFontGlyphPtr(IntPtr nativePtr) => new ImFontGlyphPtr(nativePtr); public static implicit operator ImFontGlyphPtr(IntPtr nativePtr) => new ImFontGlyphPtr(nativePtr);
public ref uint Codepoint => ref Unsafe.AsRef<uint>(&NativePtr->Codepoint); public ref uint Colored => ref Unsafe.AsRef<uint>(&NativePtr->Colored);
public ref uint Visible => ref Unsafe.AsRef<uint>(&NativePtr->Visible); public ref uint Visible => ref Unsafe.AsRef<uint>(&NativePtr->Visible);
public ref uint Codepoint => ref Unsafe.AsRef<uint>(&NativePtr->Codepoint);
public ref float AdvanceX => ref Unsafe.AsRef<float>(&NativePtr->AdvanceX); public ref float AdvanceX => ref Unsafe.AsRef<float>(&NativePtr->AdvanceX);
public ref float X0 => ref Unsafe.AsRef<float>(&NativePtr->X0); public ref float X0 => ref Unsafe.AsRef<float>(&NativePtr->X0);
public ref float Y0 => ref Unsafe.AsRef<float>(&NativePtr->Y0); public ref float Y0 => ref Unsafe.AsRef<float>(&NativePtr->Y0);

File diff suppressed because it is too large Load Diff

@ -4,12 +4,9 @@ namespace ImGuiNET
public enum ImGuiBackendFlags public enum ImGuiBackendFlags
{ {
None = 0, None = 0,
HasGamepad = 1 << 0, HasGamepad = 1,
HasMouseCursors = 1 << 1, HasMouseCursors = 2,
HasSetMousePos = 1 << 2, HasSetMousePos = 4,
RendererHasVtxOffset = 1 << 3, RendererHasVtxOffset = 8,
PlatformHasViewports = 1 << 10,
HasMouseHoveredViewport = 1 << 11,
RendererHasViewports = 1 << 12,
} }
} }

@ -4,10 +4,10 @@ namespace ImGuiNET
public enum ImGuiButtonFlags public enum ImGuiButtonFlags
{ {
None = 0, None = 0,
MouseButtonLeft = 1 << 0, MouseButtonLeft = 1,
MouseButtonRight = 1 << 1, MouseButtonRight = 2,
MouseButtonMiddle = 1 << 2, MouseButtonMiddle = 4,
MouseButtonMask = MouseButtonLeft | MouseButtonRight | MouseButtonMiddle, MouseButtonMask = 7,
MouseButtonDefault = MouseButtonLeft, MouseButtonDefault = 1,
} }
} }

@ -40,18 +40,21 @@ namespace ImGuiNET
TabActive = 35, TabActive = 35,
TabUnfocused = 36, TabUnfocused = 36,
TabUnfocusedActive = 37, TabUnfocusedActive = 37,
DockingPreview = 38, PlotLines = 38,
DockingEmptyBg = 39, PlotLinesHovered = 39,
PlotLines = 40, PlotHistogram = 40,
PlotLinesHovered = 41, PlotHistogramHovered = 41,
PlotHistogram = 42, TableHeaderBg = 42,
PlotHistogramHovered = 43, TableBorderStrong = 43,
TextSelectedBg = 44, TableBorderLight = 44,
DragDropTarget = 45, TableRowBg = 45,
NavHighlight = 46, TableRowBgAlt = 46,
NavWindowingHighlight = 47, TextSelectedBg = 47,
NavWindowingDimBg = 48, DragDropTarget = 48,
ModalWindowDimBg = 49, NavHighlight = 49,
COUNT = 50, NavWindowingHighlight = 50,
NavWindowingDimBg = 51,
ModalWindowDimBg = 52,
COUNT = 53,
} }
} }

@ -4,33 +4,33 @@ namespace ImGuiNET
public enum ImGuiColorEditFlags public enum ImGuiColorEditFlags
{ {
None = 0, None = 0,
NoAlpha = 1 << 1, NoAlpha = 2,
NoPicker = 1 << 2, NoPicker = 4,
NoOptions = 1 << 3, NoOptions = 8,
NoSmallPreview = 1 << 4, NoSmallPreview = 16,
NoInputs = 1 << 5, NoInputs = 32,
NoTooltip = 1 << 6, NoTooltip = 64,
NoLabel = 1 << 7, NoLabel = 128,
NoSidePreview = 1 << 8, NoSidePreview = 256,
NoDragDrop = 1 << 9, NoDragDrop = 512,
NoBorder = 1 << 10, NoBorder = 1024,
AlphaBar = 1 << 16, AlphaBar = 65536,
AlphaPreview = 1 << 17, AlphaPreview = 131072,
AlphaPreviewHalf = 1 << 18, AlphaPreviewHalf = 262144,
HDR = 1 << 19, HDR = 524288,
DisplayRGB = 1 << 20, DisplayRGB = 1048576,
DisplayHSV = 1 << 21, DisplayHSV = 2097152,
DisplayHex = 1 << 22, DisplayHex = 4194304,
Uint8 = 1 << 23, Uint8 = 8388608,
Float = 1 << 24, Float = 16777216,
PickerHueBar = 1 << 25, PickerHueBar = 33554432,
PickerHueWheel = 1 << 26, PickerHueWheel = 67108864,
InputRGB = 1 << 27, InputRGB = 134217728,
InputHSV = 1 << 28, InputHSV = 268435456,
_OptionsDefault = Uint8 | DisplayRGB | InputRGB | PickerHueBar, _OptionsDefault = 177209344,
_DisplayMask = DisplayRGB | DisplayHSV | DisplayHex, _DisplayMask = 7340032,
_DataTypeMask = Uint8 | Float, _DataTypeMask = 25165824,
_PickerMask = PickerHueWheel | PickerHueBar, _PickerMask = 100663296,
_InputMask = InputRGB | InputHSV, _InputMask = 402653184,
} }
} }

@ -4,13 +4,13 @@ namespace ImGuiNET
public enum ImGuiComboFlags public enum ImGuiComboFlags
{ {
None = 0, None = 0,
PopupAlignLeft = 1 << 0, PopupAlignLeft = 1,
HeightSmall = 1 << 1, HeightSmall = 2,
HeightRegular = 1 << 2, HeightRegular = 4,
HeightLarge = 1 << 3, HeightLarge = 8,
HeightLargest = 1 << 4, HeightLargest = 16,
NoArrowButton = 1 << 5, NoArrowButton = 32,
NoPreview = 1 << 6, NoPreview = 64,
HeightMask = HeightSmall | HeightRegular | HeightLarge | HeightLargest, HeightMask = 30,
} }
} }

@ -3,9 +3,9 @@ namespace ImGuiNET
public enum ImGuiCond public enum ImGuiCond
{ {
None = 0, None = 0,
Always = 1 << 0, Always = 1,
Once = 1 << 1, Once = 2,
FirstUseEver = 1 << 2, FirstUseEver = 4,
Appearing = 1 << 3, Appearing = 8,
} }
} }

@ -4,17 +4,13 @@ namespace ImGuiNET
public enum ImGuiConfigFlags public enum ImGuiConfigFlags
{ {
None = 0, None = 0,
NavEnableKeyboard = 1 << 0, NavEnableKeyboard = 1,
NavEnableGamepad = 1 << 1, NavEnableGamepad = 2,
NavEnableSetMousePos = 1 << 2, NavEnableSetMousePos = 4,
NavNoCaptureKeyboard = 1 << 3, NavNoCaptureKeyboard = 8,
NoMouse = 1 << 4, NoMouse = 16,
NoMouseCursorChange = 1 << 5, NoMouseCursorChange = 32,
DockingEnable = 1 << 6, IsSRGB = 1048576,
ViewportsEnable = 1 << 10, IsTouchScreen = 2097152,
DpiEnableScaleViewports = 1 << 14,
DpiEnableScaleFonts = 1 << 15,
IsSRGB = 1 << 20,
IsTouchScreen = 1 << 21,
} }
} }

@ -1,14 +0,0 @@
namespace ImGuiNET
{
[System.Flags]
public enum ImGuiDockNodeFlags
{
None = 0,
KeepAliveOnly = 1 << 0,
NoDockingInCentralNode = 1 << 2,
PassthruCentralNode = 1 << 3,
NoSplit = 1 << 4,
NoResize = 1 << 5,
AutoHideTabBar = 1 << 6,
}
}

@ -4,15 +4,15 @@ namespace ImGuiNET
public enum ImGuiDragDropFlags public enum ImGuiDragDropFlags
{ {
None = 0, None = 0,
SourceNoPreviewTooltip = 1 << 0, SourceNoPreviewTooltip = 1,
SourceNoDisableHover = 1 << 1, SourceNoDisableHover = 2,
SourceNoHoldToOpenOthers = 1 << 2, SourceNoHoldToOpenOthers = 4,
SourceAllowNullID = 1 << 3, SourceAllowNullID = 8,
SourceExtern = 1 << 4, SourceExtern = 16,
SourceAutoExpirePayload = 1 << 5, SourceAutoExpirePayload = 32,
AcceptBeforeDelivery = 1 << 10, AcceptBeforeDelivery = 1024,
AcceptNoDrawDefaultRect = 1 << 11, AcceptNoDrawDefaultRect = 2048,
AcceptNoPreviewTooltip = 1 << 12, AcceptNoPreviewTooltip = 4096,
AcceptPeekOnly = AcceptBeforeDelivery | AcceptNoDrawDefaultRect, AcceptPeekOnly = 3072,
} }
} }

@ -4,9 +4,9 @@ namespace ImGuiNET
public enum ImGuiFocusedFlags public enum ImGuiFocusedFlags
{ {
None = 0, None = 0,
ChildWindows = 1 << 0, ChildWindows = 1,
RootWindow = 1 << 1, RootWindow = 2,
AnyWindow = 1 << 2, AnyWindow = 4,
RootAndChildWindows = RootWindow | ChildWindows, RootAndChildWindows = 3,
} }
} }

@ -4,14 +4,14 @@ namespace ImGuiNET
public enum ImGuiHoveredFlags public enum ImGuiHoveredFlags
{ {
None = 0, None = 0,
ChildWindows = 1 << 0, ChildWindows = 1,
RootWindow = 1 << 1, RootWindow = 2,
AnyWindow = 1 << 2, AnyWindow = 4,
AllowWhenBlockedByPopup = 1 << 3, AllowWhenBlockedByPopup = 8,
AllowWhenBlockedByActiveItem = 1 << 5, AllowWhenBlockedByActiveItem = 32,
AllowWhenOverlapped = 1 << 6, AllowWhenOverlapped = 64,
AllowWhenDisabled = 1 << 7, AllowWhenDisabled = 128,
RectOnly = AllowWhenBlockedByPopup | AllowWhenBlockedByActiveItem | AllowWhenOverlapped, RectOnly = 104,
RootAndChildWindows = RootWindow | ChildWindows, RootAndChildWindows = 3,
} }
} }

@ -26,20 +26,13 @@ namespace ImGuiNET
public byte FontAllowUserScaling; public byte FontAllowUserScaling;
public ImFont* FontDefault; public ImFont* FontDefault;
public Vector2 DisplayFramebufferScale; public Vector2 DisplayFramebufferScale;
public byte ConfigDockingNoSplit;
public byte ConfigDockingWithShift;
public byte ConfigDockingAlwaysTabBar;
public byte ConfigDockingTransparentPayload;
public byte ConfigViewportsNoAutoMerge;
public byte ConfigViewportsNoTaskBarIcon;
public byte ConfigViewportsNoDecoration;
public byte ConfigViewportsNoDefaultParent;
public byte MouseDrawCursor; public byte MouseDrawCursor;
public byte ConfigMacOSXBehaviors; public byte ConfigMacOSXBehaviors;
public byte ConfigInputTextCursorBlink; public byte ConfigInputTextCursorBlink;
public byte ConfigDragClickToInputText;
public byte ConfigWindowsResizeFromEdges; public byte ConfigWindowsResizeFromEdges;
public byte ConfigWindowsMoveFromTitleBarOnly; public byte ConfigWindowsMoveFromTitleBarOnly;
public float ConfigWindowsMemoryCompactTimer; public float ConfigMemoryCompactTimer;
public byte* BackendPlatformName; public byte* BackendPlatformName;
public byte* BackendRendererName; public byte* BackendRendererName;
public void* BackendPlatformUserData; public void* BackendPlatformUserData;
@ -48,12 +41,12 @@ namespace ImGuiNET
public IntPtr GetClipboardTextFn; public IntPtr GetClipboardTextFn;
public IntPtr SetClipboardTextFn; public IntPtr SetClipboardTextFn;
public void* ClipboardUserData; public void* ClipboardUserData;
public void* RenderDrawListsFnUnused; public IntPtr ImeSetInputScreenPosFn;
public void* ImeWindowHandle;
public Vector2 MousePos; public Vector2 MousePos;
public fixed byte MouseDown[5]; public fixed byte MouseDown[5];
public float MouseWheel; public float MouseWheel;
public float MouseWheelH; public float MouseWheelH;
public uint MouseHoveredViewport;
public byte KeyCtrl; public byte KeyCtrl;
public byte KeyShift; public byte KeyShift;
public byte KeyAlt; public byte KeyAlt;
@ -130,20 +123,13 @@ namespace ImGuiNET
public ref bool FontAllowUserScaling => ref Unsafe.AsRef<bool>(&NativePtr->FontAllowUserScaling); public ref bool FontAllowUserScaling => ref Unsafe.AsRef<bool>(&NativePtr->FontAllowUserScaling);
public ImFontPtr FontDefault => new ImFontPtr(NativePtr->FontDefault); public ImFontPtr FontDefault => new ImFontPtr(NativePtr->FontDefault);
public ref Vector2 DisplayFramebufferScale => ref Unsafe.AsRef<Vector2>(&NativePtr->DisplayFramebufferScale); public ref Vector2 DisplayFramebufferScale => ref Unsafe.AsRef<Vector2>(&NativePtr->DisplayFramebufferScale);
public ref bool ConfigDockingNoSplit => ref Unsafe.AsRef<bool>(&NativePtr->ConfigDockingNoSplit);
public ref bool ConfigDockingWithShift => ref Unsafe.AsRef<bool>(&NativePtr->ConfigDockingWithShift);
public ref bool ConfigDockingAlwaysTabBar => ref Unsafe.AsRef<bool>(&NativePtr->ConfigDockingAlwaysTabBar);
public ref bool ConfigDockingTransparentPayload => ref Unsafe.AsRef<bool>(&NativePtr->ConfigDockingTransparentPayload);
public ref bool ConfigViewportsNoAutoMerge => ref Unsafe.AsRef<bool>(&NativePtr->ConfigViewportsNoAutoMerge);
public ref bool ConfigViewportsNoTaskBarIcon => ref Unsafe.AsRef<bool>(&NativePtr->ConfigViewportsNoTaskBarIcon);
public ref bool ConfigViewportsNoDecoration => ref Unsafe.AsRef<bool>(&NativePtr->ConfigViewportsNoDecoration);
public ref bool ConfigViewportsNoDefaultParent => ref Unsafe.AsRef<bool>(&NativePtr->ConfigViewportsNoDefaultParent);
public ref bool MouseDrawCursor => ref Unsafe.AsRef<bool>(&NativePtr->MouseDrawCursor); public ref bool MouseDrawCursor => ref Unsafe.AsRef<bool>(&NativePtr->MouseDrawCursor);
public ref bool ConfigMacOSXBehaviors => ref Unsafe.AsRef<bool>(&NativePtr->ConfigMacOSXBehaviors); public ref bool ConfigMacOSXBehaviors => ref Unsafe.AsRef<bool>(&NativePtr->ConfigMacOSXBehaviors);
public ref bool ConfigInputTextCursorBlink => ref Unsafe.AsRef<bool>(&NativePtr->ConfigInputTextCursorBlink); public ref bool ConfigInputTextCursorBlink => ref Unsafe.AsRef<bool>(&NativePtr->ConfigInputTextCursorBlink);
public ref bool ConfigDragClickToInputText => ref Unsafe.AsRef<bool>(&NativePtr->ConfigDragClickToInputText);
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 ref float ConfigMemoryCompactTimer => ref Unsafe.AsRef<float>(&NativePtr->ConfigMemoryCompactTimer);
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; }
@ -152,12 +138,12 @@ namespace ImGuiNET
public ref IntPtr GetClipboardTextFn => ref Unsafe.AsRef<IntPtr>(&NativePtr->GetClipboardTextFn); public ref IntPtr GetClipboardTextFn => ref Unsafe.AsRef<IntPtr>(&NativePtr->GetClipboardTextFn);
public ref IntPtr SetClipboardTextFn => ref Unsafe.AsRef<IntPtr>(&NativePtr->SetClipboardTextFn); public ref IntPtr SetClipboardTextFn => ref Unsafe.AsRef<IntPtr>(&NativePtr->SetClipboardTextFn);
public IntPtr ClipboardUserData { get => (IntPtr)NativePtr->ClipboardUserData; set => NativePtr->ClipboardUserData = (void*)value; } public IntPtr ClipboardUserData { get => (IntPtr)NativePtr->ClipboardUserData; set => NativePtr->ClipboardUserData = (void*)value; }
public IntPtr RenderDrawListsFnUnused { get => (IntPtr)NativePtr->RenderDrawListsFnUnused; set => NativePtr->RenderDrawListsFnUnused = (void*)value; } public ref IntPtr ImeSetInputScreenPosFn => ref Unsafe.AsRef<IntPtr>(&NativePtr->ImeSetInputScreenPosFn);
public IntPtr ImeWindowHandle { get => (IntPtr)NativePtr->ImeWindowHandle; set => NativePtr->ImeWindowHandle = (void*)value; }
public ref Vector2 MousePos => ref Unsafe.AsRef<Vector2>(&NativePtr->MousePos); public ref Vector2 MousePos => ref Unsafe.AsRef<Vector2>(&NativePtr->MousePos);
public RangeAccessor<bool> MouseDown => new RangeAccessor<bool>(NativePtr->MouseDown, 5); public RangeAccessor<bool> MouseDown => new RangeAccessor<bool>(NativePtr->MouseDown, 5);
public ref float MouseWheel => ref Unsafe.AsRef<float>(&NativePtr->MouseWheel); public ref float MouseWheel => ref Unsafe.AsRef<float>(&NativePtr->MouseWheel);
public ref float MouseWheelH => ref Unsafe.AsRef<float>(&NativePtr->MouseWheelH); public ref float MouseWheelH => ref Unsafe.AsRef<float>(&NativePtr->MouseWheelH);
public ref uint MouseHoveredViewport => ref Unsafe.AsRef<uint>(&NativePtr->MouseHoveredViewport);
public ref bool KeyCtrl => ref Unsafe.AsRef<bool>(&NativePtr->KeyCtrl); public ref bool KeyCtrl => ref Unsafe.AsRef<bool>(&NativePtr->KeyCtrl);
public ref bool KeyShift => ref Unsafe.AsRef<bool>(&NativePtr->KeyShift); public ref bool KeyShift => ref Unsafe.AsRef<bool>(&NativePtr->KeyShift);
public ref bool KeyAlt => ref Unsafe.AsRef<bool>(&NativePtr->KeyAlt); public ref bool KeyAlt => ref Unsafe.AsRef<bool>(&NativePtr->KeyAlt);

@ -40,6 +40,10 @@ namespace ImGuiNET
public ref int CursorPos => ref Unsafe.AsRef<int>(&NativePtr->CursorPos); public ref int CursorPos => ref Unsafe.AsRef<int>(&NativePtr->CursorPos);
public ref int SelectionStart => ref Unsafe.AsRef<int>(&NativePtr->SelectionStart); public ref int SelectionStart => ref Unsafe.AsRef<int>(&NativePtr->SelectionStart);
public ref int SelectionEnd => ref Unsafe.AsRef<int>(&NativePtr->SelectionEnd); public ref int SelectionEnd => ref Unsafe.AsRef<int>(&NativePtr->SelectionEnd);
public void ClearSelection()
{
ImGuiNative.ImGuiInputTextCallbackData_ClearSelection((ImGuiInputTextCallbackData*)(NativePtr));
}
public void DeleteChars(int pos, int bytes_count) public void DeleteChars(int pos, int bytes_count)
{ {
ImGuiNative.ImGuiInputTextCallbackData_DeleteChars((ImGuiInputTextCallbackData*)(NativePtr), pos, bytes_count); ImGuiNative.ImGuiInputTextCallbackData_DeleteChars((ImGuiInputTextCallbackData*)(NativePtr), pos, bytes_count);
@ -80,5 +84,9 @@ namespace ImGuiNET
Util.Free(native_text); Util.Free(native_text);
} }
} }
public void SelectAll()
{
ImGuiNative.ImGuiInputTextCallbackData_SelectAll((ImGuiInputTextCallbackData*)(NativePtr));
}
} }
} }

@ -4,26 +4,27 @@ namespace ImGuiNET
public enum ImGuiInputTextFlags public enum ImGuiInputTextFlags
{ {
None = 0, None = 0,
CharsDecimal = 1 << 0, CharsDecimal = 1,
CharsHexadecimal = 1 << 1, CharsHexadecimal = 2,
CharsUppercase = 1 << 2, CharsUppercase = 4,
CharsNoBlank = 1 << 3, CharsNoBlank = 8,
AutoSelectAll = 1 << 4, AutoSelectAll = 16,
EnterReturnsTrue = 1 << 5, EnterReturnsTrue = 32,
CallbackCompletion = 1 << 6, CallbackCompletion = 64,
CallbackHistory = 1 << 7, CallbackHistory = 128,
CallbackAlways = 1 << 8, CallbackAlways = 256,
CallbackCharFilter = 1 << 9, CallbackCharFilter = 512,
AllowTabInput = 1 << 10, AllowTabInput = 1024,
CtrlEnterForNewLine = 1 << 11, CtrlEnterForNewLine = 2048,
NoHorizontalScroll = 1 << 12, NoHorizontalScroll = 4096,
AlwaysInsertMode = 1 << 13, AlwaysOverwrite = 8192,
ReadOnly = 1 << 14, ReadOnly = 16384,
Password = 1 << 15, Password = 32768,
NoUndoRedo = 1 << 16, NoUndoRedo = 65536,
CharsScientific = 1 << 17, CharsScientific = 131072,
CallbackResize = 1 << 18, CallbackResize = 262144,
Multiline = 1 << 20, CallbackEdit = 524288,
NoMarkEdited = 1 << 21, Multiline = 1048576,
NoMarkEdited = 2097152,
} }
} }

@ -4,9 +4,9 @@ namespace ImGuiNET
public enum ImGuiKeyModFlags public enum ImGuiKeyModFlags
{ {
None = 0, None = 0,
Ctrl = 1 << 0, Ctrl = 1,
Shift = 1 << 1, Shift = 2,
Alt = 1 << 2, Alt = 4,
Super = 1 << 3, Super = 8,
} }
} }

@ -11,6 +11,7 @@ namespace ImGuiNET
public int DisplayEnd; public int DisplayEnd;
public int ItemsCount; public int ItemsCount;
public int StepNo; public int StepNo;
public int ItemsFrozen;
public float ItemsHeight; public float ItemsHeight;
public float StartPosY; public float StartPosY;
} }
@ -26,6 +27,7 @@ namespace ImGuiNET
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 ItemsCount => ref Unsafe.AsRef<int>(&NativePtr->ItemsCount);
public ref int StepNo => ref Unsafe.AsRef<int>(&NativePtr->StepNo); public ref int StepNo => ref Unsafe.AsRef<int>(&NativePtr->StepNo);
public ref int ItemsFrozen => ref Unsafe.AsRef<int>(&NativePtr->ItemsFrozen);
public ref float ItemsHeight => ref Unsafe.AsRef<float>(&NativePtr->ItemsHeight); public ref float ItemsHeight => ref Unsafe.AsRef<float>(&NativePtr->ItemsHeight);
public ref float StartPosY => ref Unsafe.AsRef<float>(&NativePtr->StartPosY); public ref float StartPosY => ref Unsafe.AsRef<float>(&NativePtr->StartPosY);
public void Begin(int items_count) public void Begin(int items_count)

@ -29,6 +29,8 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igBeginGroup(); public static extern void igBeginGroup();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igBeginListBox(byte* label, Vector2 size);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igBeginMainMenuBar(); public static extern byte igBeginMainMenuBar();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igBeginMenu(byte* label, byte enabled); public static extern byte igBeginMenu(byte* label, byte enabled);
@ -49,6 +51,8 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igBeginTabItem(byte* label, byte* p_open, ImGuiTabItemFlags flags); public static extern byte igBeginTabItem(byte* label, byte* p_open, ImGuiTabItemFlags flags);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igBeginTable(byte* str_id, int column, ImGuiTableFlags flags, Vector2 outer_size, float inner_width);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igBeginTooltip(); public static extern void igBeginTooltip();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igBullet(); public static extern void igBullet();
@ -69,13 +73,15 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igCheckbox(byte* label, byte* v); public static extern byte igCheckbox(byte* label, byte* v);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igCheckboxFlags(byte* label, uint* flags, uint flags_value); public static extern byte igCheckboxFlagsIntPtr(byte* label, int* flags, int flags_value);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igCheckboxFlagsUintPtr(byte* label, uint* flags, uint flags_value);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igCloseCurrentPopup(); public static extern void igCloseCurrentPopup();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igCollapsingHeaderTreeNodeFlags(byte* label, ImGuiTreeNodeFlags flags); public static extern byte igCollapsingHeaderTreeNodeFlags(byte* label, ImGuiTreeNodeFlags flags);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igCollapsingHeaderBoolPtr(byte* label, byte* p_open, ImGuiTreeNodeFlags flags); public static extern byte igCollapsingHeaderBoolPtr(byte* label, byte* p_visible, ImGuiTreeNodeFlags flags);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igColorButton(byte* desc_id, Vector4 col, ImGuiColorEditFlags flags, Vector2 size); public static extern byte igColorButton(byte* desc_id, Vector4 col, ImGuiColorEditFlags flags, Vector2 size);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
@ -107,12 +113,6 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igDestroyContext(IntPtr ctx); public static extern void igDestroyContext(IntPtr ctx);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igDestroyPlatformWindows();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igDockSpace(uint id, Vector2 size, ImGuiDockNodeFlags flags, ImGuiWindowClass* window_class);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern uint igDockSpaceOverViewport(ImGuiViewport* viewport, ImGuiDockNodeFlags flags, ImGuiWindowClass* window_class);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igDragFloat(byte* label, float* v, float v_speed, float v_min, float v_max, byte* format, ImGuiSliderFlags flags); public static extern byte igDragFloat(byte* label, float* v, float v_speed, float v_min, float v_max, byte* format, ImGuiSliderFlags flags);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igDragFloat2(byte* label, Vector2* v, float v_speed, float v_min, float v_max, byte* format, ImGuiSliderFlags flags); public static extern byte igDragFloat2(byte* label, Vector2* v, float v_speed, float v_min, float v_max, byte* format, ImGuiSliderFlags flags);
@ -155,6 +155,8 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igEndGroup(); public static extern void igEndGroup();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igEndListBox();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igEndMainMenuBar(); public static extern void igEndMainMenuBar();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igEndMenu(); public static extern void igEndMenu();
@ -167,16 +169,14 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igEndTabItem(); public static extern void igEndTabItem();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igEndTooltip(); public static extern void igEndTable();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern ImGuiViewport* igFindViewportByID(uint id); public static extern void igEndTooltip();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern ImGuiViewport* igFindViewportByPlatformHandle(void* platform_handle); public static extern void igGetAllocatorFunctions(IntPtr* p_alloc_func, IntPtr* p_free_func, void** p_user_data);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern ImDrawList* igGetBackgroundDrawListNil(); public static extern ImDrawList* igGetBackgroundDrawListNil();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern ImDrawList* igGetBackgroundDrawListViewportPtr(ImGuiViewport* viewport);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte* igGetClipboardText(); public static extern byte* igGetClipboardText();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern uint igGetColorU32Col(ImGuiCol idx, float alpha_mul); public static extern uint igGetColorU32Col(ImGuiCol idx, float alpha_mul);
@ -223,8 +223,6 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern ImDrawList* igGetForegroundDrawListNil(); public static extern ImDrawList* igGetForegroundDrawListNil();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern ImDrawList* igGetForegroundDrawListViewportPtr(ImGuiViewport* viewport);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern int igGetFrameCount(); public static extern int igGetFrameCount();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern float igGetFrameHeight(); public static extern float igGetFrameHeight();
@ -259,8 +257,6 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igGetMousePosOnOpeningCurrentPopup(Vector2* pOut); public static extern void igGetMousePosOnOpeningCurrentPopup(Vector2* pOut);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern ImGuiPlatformIO* igGetPlatformIO();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern float igGetScrollMaxX(); public static extern float igGetScrollMaxX();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern float igGetScrollMaxY(); public static extern float igGetScrollMaxY();
@ -293,10 +289,6 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern float igGetWindowContentRegionWidth(); public static extern float igGetWindowContentRegionWidth();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern uint igGetWindowDockID();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern float igGetWindowDpiScale();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern ImDrawList* igGetWindowDrawList(); public static extern ImDrawList* igGetWindowDrawList();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern float igGetWindowHeight(); public static extern float igGetWindowHeight();
@ -305,8 +297,6 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igGetWindowSize(Vector2* pOut); public static extern void igGetWindowSize(Vector2* pOut);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern ImGuiViewport* igGetWindowViewport();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern float igGetWindowWidth(); public static extern float igGetWindowWidth();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igImage(IntPtr user_texture_id, Vector2 size, Vector2 uv0, Vector2 uv1, Vector4 tint_col, Vector4 border_col); public static extern void igImage(IntPtr user_texture_id, Vector2 size, Vector2 uv0, Vector2 uv1, Vector4 tint_col, Vector4 border_col);
@ -403,8 +393,6 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igIsWindowCollapsed(); public static extern byte igIsWindowCollapsed();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igIsWindowDocked();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igIsWindowFocused(ImGuiFocusedFlags flags); public static extern byte igIsWindowFocused(ImGuiFocusedFlags flags);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igIsWindowHovered(ImGuiHoveredFlags flags); public static extern byte igIsWindowHovered(ImGuiHoveredFlags flags);
@ -413,12 +401,6 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igListBoxStr_arr(byte* label, int* current_item, byte** items, int items_count, int height_in_items); public static extern byte igListBoxStr_arr(byte* label, int* current_item, byte** items, int items_count, int height_in_items);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igListBoxFooter();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igListBoxHeaderVec2(byte* label, Vector2 size);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igListBoxHeaderInt(byte* label, int items_count, int height_in_items);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igLoadIniSettingsFromDisk(byte* ini_filename); public static extern void igLoadIniSettingsFromDisk(byte* ini_filename);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igLoadIniSettingsFromMemory(byte* ini_data, uint ini_size); public static extern void igLoadIniSettingsFromMemory(byte* ini_data, uint ini_size);
@ -451,7 +433,7 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igOpenPopup(byte* str_id, ImGuiPopupFlags popup_flags); public static extern void igOpenPopup(byte* str_id, ImGuiPopupFlags popup_flags);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igOpenPopupContextItem(byte* str_id, ImGuiPopupFlags popup_flags); public static extern void igOpenPopupOnItemClick(byte* str_id, ImGuiPopupFlags popup_flags);
[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)]
@ -511,8 +493,6 @@ 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 igRenderPlatformWindowsDefault(void* platform_render_arg, void* renderer_render_arg);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igResetMouseDragDelta(ImGuiMouseButton 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);
@ -527,6 +507,8 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igSeparator(); public static extern void igSeparator();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igSetAllocatorFunctions(IntPtr alloc_func, IntPtr free_func, void* user_data);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igSetClipboardText(byte* text); public static extern void igSetClipboardText(byte* text);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igSetColorEditOptions(ImGuiColorEditFlags flags); public static extern void igSetColorEditOptions(ImGuiColorEditFlags flags);
@ -561,14 +543,10 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igSetNextWindowBgAlpha(float alpha); public static extern void igSetNextWindowBgAlpha(float alpha);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igSetNextWindowClass(ImGuiWindowClass* window_class);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igSetNextWindowCollapsed(byte collapsed, ImGuiCond cond); public static extern void igSetNextWindowCollapsed(byte collapsed, ImGuiCond cond);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igSetNextWindowContentSize(Vector2 size); public static extern void igSetNextWindowContentSize(Vector2 size);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igSetNextWindowDockID(uint dock_id, ImGuiCond cond);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igSetNextWindowFocus(); public static extern void igSetNextWindowFocus();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igSetNextWindowPos(Vector2 pos, ImGuiCond cond, Vector2 pivot); public static extern void igSetNextWindowPos(Vector2 pos, ImGuiCond cond, Vector2 pivot);
@ -577,8 +555,6 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igSetNextWindowSizeConstraints(Vector2 size_min, Vector2 size_max, ImGuiSizeCallback custom_callback, void* custom_callback_data); public static extern void igSetNextWindowSizeConstraints(Vector2 size_min, Vector2 size_max, ImGuiSizeCallback custom_callback, void* custom_callback_data);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igSetNextWindowViewport(uint viewport_id);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igSetScrollFromPosXFloat(float local_x, float center_x_ratio); public static extern void igSetScrollFromPosXFloat(float local_x, float center_x_ratio);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igSetScrollFromPosYFloat(float local_y, float center_y_ratio); public static extern void igSetScrollFromPosYFloat(float local_y, float center_y_ratio);
@ -661,6 +637,36 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igStyleColorsLight(ImGuiStyle* dst); public static extern void igStyleColorsLight(ImGuiStyle* dst);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igTabItemButton(byte* label, ImGuiTabItemFlags flags);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern int igTableGetColumnCount();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern ImGuiTableColumnFlags igTableGetColumnFlags(int column_n);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern int igTableGetColumnIndex();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte* igTableGetColumnNameInt(int column_n);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern int igTableGetRowIndex();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern ImGuiTableSortSpecs* igTableGetSortSpecs();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igTableHeader(byte* label);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igTableHeadersRow();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igTableNextColumn();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igTableNextRow(ImGuiTableRowFlags row_flags, float min_row_height);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igTableSetBgColor(ImGuiTableBgTarget target, uint color, int column_n);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte igTableSetColumnIndex(int column_n);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igTableSetupColumn(byte* label, ImGuiTableColumnFlags flags, float init_width_or_weight, uint user_id);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igTableSetupScrollFreeze(int cols, int rows);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igText(byte* fmt); public static extern void igText(byte* fmt);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igTextColored(Vector4 col, byte* fmt); public static extern void igTextColored(Vector4 col, byte* fmt);
@ -691,8 +697,6 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igUnindent(float indent_w); public static extern void igUnindent(float indent_w);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igUpdatePlatformWindows();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igValueBool(byte* prefix, byte b); public static extern void igValueBool(byte* prefix, byte b);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void igValueInt(byte* prefix, int v); public static extern void igValueInt(byte* prefix, int v);
@ -709,7 +713,7 @@ namespace ImGuiNET
[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)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImColor_HSV(ImColor* pOut, ImColor* self, float h, float s, float v, float a); public static extern void ImColor_HSV(ImColor* pOut, float h, float s, float v, float a);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern ImColor* ImColor_ImColorNil(); public static extern ImColor* ImColor_ImColorNil();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
@ -737,6 +741,8 @@ 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 int ImDrawList__CalcCircleAutoSegmentCount(ImDrawList* self, float radius);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList__ClearFreeMemory(ImDrawList* self); public static extern void ImDrawList__ClearFreeMemory(ImDrawList* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList__OnChangedClipRect(ImDrawList* self); public static extern void ImDrawList__OnChangedClipRect(ImDrawList* self);
@ -745,11 +751,17 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList__OnChangedVtxOffset(ImDrawList* self); public static extern void ImDrawList__OnChangedVtxOffset(ImDrawList* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList__PathArcToFastEx(ImDrawList* self, Vector2 center, float radius, int a_min_sample, int a_max_sample, int a_step);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList__PathArcToN(ImDrawList* self, Vector2 center, float radius, float a_min, float a_max, int num_segments);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList__PopUnusedDrawCmd(ImDrawList* self); public static extern void ImDrawList__PopUnusedDrawCmd(ImDrawList* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList__ResetForNewFrame(ImDrawList* self); public static extern void ImDrawList__ResetForNewFrame(ImDrawList* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddBezierCurve(ImDrawList* self, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, uint col, float thickness, int num_segments); public static extern void ImDrawList_AddBezierCubic(ImDrawList* self, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, uint col, float thickness, int num_segments);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddBezierQuadratic(ImDrawList* self, Vector2 p1, Vector2 p2, Vector2 p3, 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)]
@ -765,7 +777,7 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [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); 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_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); 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, ImDrawFlags flags);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddLine(ImDrawList* self, Vector2 p1, Vector2 p2, uint col, float thickness); 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)]
@ -773,15 +785,15 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddNgonFilled(ImDrawList* self, Vector2 center, float radius, uint col, int num_segments); 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, ImDrawFlags flags, float thickness);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddQuad(ImDrawList* self, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, 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 p1, Vector2 p2, Vector2 p3, Vector2 p4, 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 p_min, Vector2 p_max, 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, ImDrawFlags flags, float thickness);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_AddRectFilled(ImDrawList* self, Vector2 p_min, Vector2 p_max, 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, ImDrawFlags flags);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
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); 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)]
@ -813,7 +825,9 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_PathArcToFast(ImDrawList* self, Vector2 center, 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 p2, Vector2 p3, Vector2 p4, int num_segments); public static extern void ImDrawList_PathBezierCubicCurveTo(ImDrawList* self, Vector2 p2, Vector2 p3, Vector2 p4, int num_segments);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_PathBezierQuadraticCurveTo(ImDrawList* self, Vector2 p2, Vector2 p3, 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)]
@ -823,9 +837,9 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_PathLineToMergeDuplicate(ImDrawList* self, Vector2 pos); public static extern void ImDrawList_PathLineToMergeDuplicate(ImDrawList* self, Vector2 pos);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_PathRect(ImDrawList* self, Vector2 rect_min, Vector2 rect_max, float rounding, ImDrawCornerFlags rounding_corners); public static extern void ImDrawList_PathRect(ImDrawList* self, Vector2 rect_min, Vector2 rect_max, float rounding, ImDrawFlags flags);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_PathStroke(ImDrawList* self, uint col, byte closed, float thickness); public static extern void ImDrawList_PathStroke(ImDrawList* self, uint col, ImDrawFlags flags, float thickness);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImDrawList_PopClipRect(ImDrawList* self); public static extern void ImDrawList_PopClipRect(ImDrawList* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
@ -997,6 +1011,8 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImFontGlyphRangesBuilder_SetBit(ImFontGlyphRangesBuilder* self, uint n); public static extern void ImFontGlyphRangesBuilder_SetBit(ImFontGlyphRangesBuilder* self, uint n);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuiInputTextCallbackData_ClearSelection(ImGuiInputTextCallbackData* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuiInputTextCallbackData_DeleteChars(ImGuiInputTextCallbackData* self, int pos, int bytes_count); public static extern void ImGuiInputTextCallbackData_DeleteChars(ImGuiInputTextCallbackData* self, int pos, int bytes_count);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuiInputTextCallbackData_destroy(ImGuiInputTextCallbackData* self); public static extern void ImGuiInputTextCallbackData_destroy(ImGuiInputTextCallbackData* self);
@ -1007,6 +1023,8 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuiInputTextCallbackData_InsertChars(ImGuiInputTextCallbackData* self, int pos, byte* text, byte* text_end); public static extern void ImGuiInputTextCallbackData_InsertChars(ImGuiInputTextCallbackData* self, int pos, byte* text, byte* text_end);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuiInputTextCallbackData_SelectAll(ImGuiInputTextCallbackData* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuiIO_AddInputCharacter(ImGuiIO* self, uint c); public static extern void ImGuiIO_AddInputCharacter(ImGuiIO* self, uint c);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuiIO_AddInputCharactersUTF8(ImGuiIO* self, byte* str); public static extern void ImGuiIO_AddInputCharactersUTF8(ImGuiIO* self, byte* str);
@ -1025,7 +1043,7 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuiListClipper_End(ImGuiListClipper* self); public static extern void ImGuiListClipper_End(ImGuiListClipper* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern ImGuiListClipper* ImGuiListClipper_ImGuiListClipper(int items_count, float items_height); public static extern ImGuiListClipper* ImGuiListClipper_ImGuiListClipper();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte ImGuiListClipper_Step(ImGuiListClipper* self); public static extern byte ImGuiListClipper_Step(ImGuiListClipper* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
@ -1045,14 +1063,6 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern byte ImGuiPayload_IsPreview(ImGuiPayload* self); public static extern byte ImGuiPayload_IsPreview(ImGuiPayload* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuiPlatformIO_destroy(ImGuiPlatformIO* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern ImGuiPlatformIO* ImGuiPlatformIO_ImGuiPlatformIO();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuiPlatformMonitor_destroy(ImGuiPlatformMonitor* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern ImGuiPlatformMonitor* ImGuiPlatformMonitor_ImGuiPlatformMonitor();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuiStorage_BuildSortByKey(ImGuiStorage* self); public static extern void ImGuiStorage_BuildSortByKey(ImGuiStorage* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuiStorage_Clear(ImGuiStorage* self); public static extern void ImGuiStorage_Clear(ImGuiStorage* self);
@ -1097,6 +1107,14 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuiStyle_ScaleAllSizes(ImGuiStyle* self, float scale_factor); public static extern void ImGuiStyle_ScaleAllSizes(ImGuiStyle* self, float scale_factor);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuiTableColumnSortSpecs_destroy(ImGuiTableColumnSortSpecs* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern ImGuiTableColumnSortSpecs* ImGuiTableColumnSortSpecs_ImGuiTableColumnSortSpecs();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuiTableSortSpecs_destroy(ImGuiTableSortSpecs* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern ImGuiTableSortSpecs* ImGuiTableSortSpecs_ImGuiTableSortSpecs();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuiTextBuffer_append(ImGuiTextBuffer* self, byte* str, byte* str_end); public static extern void ImGuiTextBuffer_append(ImGuiTextBuffer* self, byte* str, byte* str_end);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuiTextBuffer_appendf(ImGuiTextBuffer* self, byte* fmt); public static extern void ImGuiTextBuffer_appendf(ImGuiTextBuffer* self, byte* fmt);
@ -1147,16 +1165,10 @@ namespace ImGuiNET
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuiViewport_GetCenter(Vector2* pOut, ImGuiViewport* self); public static extern void ImGuiViewport_GetCenter(Vector2* pOut, ImGuiViewport* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuiViewport_GetWorkPos(Vector2* pOut, ImGuiViewport* self); public static extern void ImGuiViewport_GetWorkCenter(Vector2* pOut, ImGuiViewport* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuiViewport_GetWorkSize(Vector2* pOut, ImGuiViewport* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern ImGuiViewport* ImGuiViewport_ImGuiViewport(); public static extern ImGuiViewport* ImGuiViewport_ImGuiViewport();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuiWindowClass_destroy(ImGuiWindowClass* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern ImGuiWindowClass* ImGuiWindowClass_ImGuiWindowClass();
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImVec2_destroy(Vector2* self); public static extern void ImVec2_destroy(Vector2* self);
[DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)]
public static extern Vector2* ImVec2_ImVec2Nil(); public static extern Vector2* ImVec2_ImVec2Nil();

@ -24,6 +24,6 @@ namespace ImGuiNET
KeyUp = 19, KeyUp = 19,
KeyDown = 20, KeyDown = 20,
COUNT = 21, COUNT = 21,
InternalStart = KeyMenu, InternalStart = 16,
} }
} }

@ -1,78 +0,0 @@
using System;
using System.Numerics;
using System.Runtime.CompilerServices;
using System.Text;
namespace ImGuiNET
{
public unsafe partial struct ImGuiPlatformIO
{
public IntPtr Platform_CreateWindow;
public IntPtr Platform_DestroyWindow;
public IntPtr Platform_ShowWindow;
public IntPtr Platform_SetWindowPos;
public IntPtr Platform_GetWindowPos;
public IntPtr Platform_SetWindowSize;
public IntPtr Platform_GetWindowSize;
public IntPtr Platform_SetWindowFocus;
public IntPtr Platform_GetWindowFocus;
public IntPtr Platform_GetWindowMinimized;
public IntPtr Platform_SetWindowTitle;
public IntPtr Platform_SetWindowAlpha;
public IntPtr Platform_UpdateWindow;
public IntPtr Platform_RenderWindow;
public IntPtr Platform_SwapBuffers;
public IntPtr Platform_GetWindowDpiScale;
public IntPtr Platform_OnChangedViewport;
public IntPtr Platform_SetImeInputPos;
public IntPtr Platform_CreateVkSurface;
public IntPtr Renderer_CreateWindow;
public IntPtr Renderer_DestroyWindow;
public IntPtr Renderer_SetWindowSize;
public IntPtr Renderer_RenderWindow;
public IntPtr Renderer_SwapBuffers;
public ImVector Monitors;
public ImGuiViewport* MainViewport;
public ImVector Viewports;
}
public unsafe partial struct ImGuiPlatformIOPtr
{
public ImGuiPlatformIO* NativePtr { get; }
public ImGuiPlatformIOPtr(ImGuiPlatformIO* nativePtr) => NativePtr = nativePtr;
public ImGuiPlatformIOPtr(IntPtr nativePtr) => NativePtr = (ImGuiPlatformIO*)nativePtr;
public static implicit operator ImGuiPlatformIOPtr(ImGuiPlatformIO* nativePtr) => new ImGuiPlatformIOPtr(nativePtr);
public static implicit operator ImGuiPlatformIO* (ImGuiPlatformIOPtr wrappedPtr) => wrappedPtr.NativePtr;
public static implicit operator ImGuiPlatformIOPtr(IntPtr nativePtr) => new ImGuiPlatformIOPtr(nativePtr);
public ref IntPtr Platform_CreateWindow => ref Unsafe.AsRef<IntPtr>(&NativePtr->Platform_CreateWindow);
public ref IntPtr Platform_DestroyWindow => ref Unsafe.AsRef<IntPtr>(&NativePtr->Platform_DestroyWindow);
public ref IntPtr Platform_ShowWindow => ref Unsafe.AsRef<IntPtr>(&NativePtr->Platform_ShowWindow);
public ref IntPtr Platform_SetWindowPos => ref Unsafe.AsRef<IntPtr>(&NativePtr->Platform_SetWindowPos);
public ref IntPtr Platform_GetWindowPos => ref Unsafe.AsRef<IntPtr>(&NativePtr->Platform_GetWindowPos);
public ref IntPtr Platform_SetWindowSize => ref Unsafe.AsRef<IntPtr>(&NativePtr->Platform_SetWindowSize);
public ref IntPtr Platform_GetWindowSize => ref Unsafe.AsRef<IntPtr>(&NativePtr->Platform_GetWindowSize);
public ref IntPtr Platform_SetWindowFocus => ref Unsafe.AsRef<IntPtr>(&NativePtr->Platform_SetWindowFocus);
public ref IntPtr Platform_GetWindowFocus => ref Unsafe.AsRef<IntPtr>(&NativePtr->Platform_GetWindowFocus);
public ref IntPtr Platform_GetWindowMinimized => ref Unsafe.AsRef<IntPtr>(&NativePtr->Platform_GetWindowMinimized);
public ref IntPtr Platform_SetWindowTitle => ref Unsafe.AsRef<IntPtr>(&NativePtr->Platform_SetWindowTitle);
public ref IntPtr Platform_SetWindowAlpha => ref Unsafe.AsRef<IntPtr>(&NativePtr->Platform_SetWindowAlpha);
public ref IntPtr Platform_UpdateWindow => ref Unsafe.AsRef<IntPtr>(&NativePtr->Platform_UpdateWindow);
public ref IntPtr Platform_RenderWindow => ref Unsafe.AsRef<IntPtr>(&NativePtr->Platform_RenderWindow);
public ref IntPtr Platform_SwapBuffers => ref Unsafe.AsRef<IntPtr>(&NativePtr->Platform_SwapBuffers);
public ref IntPtr Platform_GetWindowDpiScale => ref Unsafe.AsRef<IntPtr>(&NativePtr->Platform_GetWindowDpiScale);
public ref IntPtr Platform_OnChangedViewport => ref Unsafe.AsRef<IntPtr>(&NativePtr->Platform_OnChangedViewport);
public ref IntPtr Platform_SetImeInputPos => ref Unsafe.AsRef<IntPtr>(&NativePtr->Platform_SetImeInputPos);
public ref IntPtr Platform_CreateVkSurface => ref Unsafe.AsRef<IntPtr>(&NativePtr->Platform_CreateVkSurface);
public ref IntPtr Renderer_CreateWindow => ref Unsafe.AsRef<IntPtr>(&NativePtr->Renderer_CreateWindow);
public ref IntPtr Renderer_DestroyWindow => ref Unsafe.AsRef<IntPtr>(&NativePtr->Renderer_DestroyWindow);
public ref IntPtr Renderer_SetWindowSize => ref Unsafe.AsRef<IntPtr>(&NativePtr->Renderer_SetWindowSize);
public ref IntPtr Renderer_RenderWindow => ref Unsafe.AsRef<IntPtr>(&NativePtr->Renderer_RenderWindow);
public ref IntPtr Renderer_SwapBuffers => ref Unsafe.AsRef<IntPtr>(&NativePtr->Renderer_SwapBuffers);
public ImPtrVector<ImGuiPlatformMonitorPtr> Monitors => new ImPtrVector<ImGuiPlatformMonitorPtr>(NativePtr->Monitors, Unsafe.SizeOf<ImGuiPlatformMonitor>());
public ImGuiViewportPtr MainViewport => new ImGuiViewportPtr(NativePtr->MainViewport);
public ImVector<ImGuiViewportPtr> Viewports => new ImVector<ImGuiViewportPtr>(NativePtr->Viewports);
public void Destroy()
{
ImGuiNative.ImGuiPlatformIO_destroy((ImGuiPlatformIO*)(NativePtr));
}
}
}

@ -1,34 +0,0 @@
using System;
using System.Numerics;
using System.Runtime.CompilerServices;
using System.Text;
namespace ImGuiNET
{
public unsafe partial struct ImGuiPlatformMonitor
{
public Vector2 MainPos;
public Vector2 MainSize;
public Vector2 WorkPos;
public Vector2 WorkSize;
public float DpiScale;
}
public unsafe partial struct ImGuiPlatformMonitorPtr
{
public ImGuiPlatformMonitor* NativePtr { get; }
public ImGuiPlatformMonitorPtr(ImGuiPlatformMonitor* nativePtr) => NativePtr = nativePtr;
public ImGuiPlatformMonitorPtr(IntPtr nativePtr) => NativePtr = (ImGuiPlatformMonitor*)nativePtr;
public static implicit operator ImGuiPlatformMonitorPtr(ImGuiPlatformMonitor* nativePtr) => new ImGuiPlatformMonitorPtr(nativePtr);
public static implicit operator ImGuiPlatformMonitor* (ImGuiPlatformMonitorPtr wrappedPtr) => wrappedPtr.NativePtr;
public static implicit operator ImGuiPlatformMonitorPtr(IntPtr nativePtr) => new ImGuiPlatformMonitorPtr(nativePtr);
public ref Vector2 MainPos => ref Unsafe.AsRef<Vector2>(&NativePtr->MainPos);
public ref Vector2 MainSize => ref Unsafe.AsRef<Vector2>(&NativePtr->MainSize);
public ref Vector2 WorkPos => ref Unsafe.AsRef<Vector2>(&NativePtr->WorkPos);
public ref Vector2 WorkSize => ref Unsafe.AsRef<Vector2>(&NativePtr->WorkSize);
public ref float DpiScale => ref Unsafe.AsRef<float>(&NativePtr->DpiScale);
public void Destroy()
{
ImGuiNative.ImGuiPlatformMonitor_destroy((ImGuiPlatformMonitor*)(NativePtr));
}
}
}

@ -7,12 +7,12 @@ namespace ImGuiNET
MouseButtonLeft = 0, MouseButtonLeft = 0,
MouseButtonRight = 1, MouseButtonRight = 1,
MouseButtonMiddle = 2, MouseButtonMiddle = 2,
MouseButtonMask = 0x1F, MouseButtonMask = 31,
MouseButtonDefault = 1, MouseButtonDefault = 1,
NoOpenOverExistingPopup = 1 << 5, NoOpenOverExistingPopup = 32,
NoOpenOverItems = 1 << 6, NoOpenOverItems = 64,
AnyPopupId = 1 << 7, AnyPopupId = 128,
AnyPopupLevel = 1 << 8, AnyPopupLevel = 256,
AnyPopup = AnyPopupId | AnyPopupLevel, AnyPopup = 384,
} }
} }

@ -4,10 +4,10 @@ namespace ImGuiNET
public enum ImGuiSelectableFlags public enum ImGuiSelectableFlags
{ {
None = 0, None = 0,
DontClosePopups = 1 << 0, DontClosePopups = 1,
SpanAllColumns = 1 << 1, SpanAllColumns = 2,
AllowDoubleClick = 1 << 2, AllowDoubleClick = 4,
Disabled = 1 << 3, Disabled = 8,
AllowItemOverlap = 1 << 4, AllowItemOverlap = 16,
} }
} }

@ -4,10 +4,10 @@ namespace ImGuiNET
public enum ImGuiSliderFlags public enum ImGuiSliderFlags
{ {
None = 0, None = 0,
ClampOnInput = 1 << 4, AlwaysClamp = 16,
Logarithmic = 1 << 5, Logarithmic = 32,
NoRoundToFormat = 1 << 6, NoRoundToFormat = 64,
NoInput = 1 << 7, NoInput = 128,
InvalidMask = 0x7000000F, InvalidMask = 1879048207,
} }
} }

@ -0,0 +1,9 @@
namespace ImGuiNET
{
public enum ImGuiSortDirection
{
None = 0,
Ascending = 1,
Descending = 2,
}
}

@ -23,6 +23,7 @@ namespace ImGuiNET
public float FrameBorderSize; public float FrameBorderSize;
public Vector2 ItemSpacing; public Vector2 ItemSpacing;
public Vector2 ItemInnerSpacing; public Vector2 ItemInnerSpacing;
public Vector2 CellPadding;
public Vector2 TouchExtraPadding; public Vector2 TouchExtraPadding;
public float IndentSpacing; public float IndentSpacing;
public float ColumnsMinSpacing; public float ColumnsMinSpacing;
@ -33,7 +34,7 @@ namespace ImGuiNET
public float LogSliderDeadzone; public float LogSliderDeadzone;
public float TabRounding; public float TabRounding;
public float TabBorderSize; public float TabBorderSize;
public float TabMinWidthForUnselectedCloseButton; public float TabMinWidthForCloseButton;
public ImGuiDir ColorButtonPosition; public ImGuiDir ColorButtonPosition;
public Vector2 ButtonTextAlign; public Vector2 ButtonTextAlign;
public Vector2 SelectableTextAlign; public Vector2 SelectableTextAlign;
@ -44,7 +45,7 @@ namespace ImGuiNET
public byte AntiAliasedLinesUseTex; public byte AntiAliasedLinesUseTex;
public byte AntiAliasedFill; public byte AntiAliasedFill;
public float CurveTessellationTol; public float CurveTessellationTol;
public float CircleSegmentMaxError; public float CircleTessellationMaxError;
public Vector4 Colors_0; public Vector4 Colors_0;
public Vector4 Colors_1; public Vector4 Colors_1;
public Vector4 Colors_2; public Vector4 Colors_2;
@ -95,6 +96,9 @@ namespace ImGuiNET
public Vector4 Colors_47; public Vector4 Colors_47;
public Vector4 Colors_48; public Vector4 Colors_48;
public Vector4 Colors_49; public Vector4 Colors_49;
public Vector4 Colors_50;
public Vector4 Colors_51;
public Vector4 Colors_52;
} }
public unsafe partial struct ImGuiStylePtr public unsafe partial struct ImGuiStylePtr
{ {
@ -120,6 +124,7 @@ namespace ImGuiNET
public ref float FrameBorderSize => ref Unsafe.AsRef<float>(&NativePtr->FrameBorderSize); public ref float FrameBorderSize => ref Unsafe.AsRef<float>(&NativePtr->FrameBorderSize);
public ref Vector2 ItemSpacing => ref Unsafe.AsRef<Vector2>(&NativePtr->ItemSpacing); public ref Vector2 ItemSpacing => ref Unsafe.AsRef<Vector2>(&NativePtr->ItemSpacing);
public ref Vector2 ItemInnerSpacing => ref Unsafe.AsRef<Vector2>(&NativePtr->ItemInnerSpacing); public ref Vector2 ItemInnerSpacing => ref Unsafe.AsRef<Vector2>(&NativePtr->ItemInnerSpacing);
public ref Vector2 CellPadding => ref Unsafe.AsRef<Vector2>(&NativePtr->CellPadding);
public ref Vector2 TouchExtraPadding => ref Unsafe.AsRef<Vector2>(&NativePtr->TouchExtraPadding); public ref Vector2 TouchExtraPadding => ref Unsafe.AsRef<Vector2>(&NativePtr->TouchExtraPadding);
public ref float IndentSpacing => ref Unsafe.AsRef<float>(&NativePtr->IndentSpacing); public ref float IndentSpacing => ref Unsafe.AsRef<float>(&NativePtr->IndentSpacing);
public ref float ColumnsMinSpacing => ref Unsafe.AsRef<float>(&NativePtr->ColumnsMinSpacing); public ref float ColumnsMinSpacing => ref Unsafe.AsRef<float>(&NativePtr->ColumnsMinSpacing);
@ -130,7 +135,7 @@ namespace ImGuiNET
public ref float LogSliderDeadzone => ref Unsafe.AsRef<float>(&NativePtr->LogSliderDeadzone); public ref float LogSliderDeadzone => ref Unsafe.AsRef<float>(&NativePtr->LogSliderDeadzone);
public ref float TabRounding => ref Unsafe.AsRef<float>(&NativePtr->TabRounding); public ref float TabRounding => ref Unsafe.AsRef<float>(&NativePtr->TabRounding);
public ref float TabBorderSize => ref Unsafe.AsRef<float>(&NativePtr->TabBorderSize); public ref float TabBorderSize => ref Unsafe.AsRef<float>(&NativePtr->TabBorderSize);
public ref float TabMinWidthForUnselectedCloseButton => ref Unsafe.AsRef<float>(&NativePtr->TabMinWidthForUnselectedCloseButton); public ref float TabMinWidthForCloseButton => ref Unsafe.AsRef<float>(&NativePtr->TabMinWidthForCloseButton);
public ref ImGuiDir ColorButtonPosition => ref Unsafe.AsRef<ImGuiDir>(&NativePtr->ColorButtonPosition); public ref ImGuiDir ColorButtonPosition => ref Unsafe.AsRef<ImGuiDir>(&NativePtr->ColorButtonPosition);
public ref Vector2 ButtonTextAlign => ref Unsafe.AsRef<Vector2>(&NativePtr->ButtonTextAlign); public ref Vector2 ButtonTextAlign => ref Unsafe.AsRef<Vector2>(&NativePtr->ButtonTextAlign);
public ref Vector2 SelectableTextAlign => ref Unsafe.AsRef<Vector2>(&NativePtr->SelectableTextAlign); public ref Vector2 SelectableTextAlign => ref Unsafe.AsRef<Vector2>(&NativePtr->SelectableTextAlign);
@ -141,8 +146,8 @@ namespace ImGuiNET
public ref bool AntiAliasedLinesUseTex => ref Unsafe.AsRef<bool>(&NativePtr->AntiAliasedLinesUseTex); public ref bool AntiAliasedLinesUseTex => ref Unsafe.AsRef<bool>(&NativePtr->AntiAliasedLinesUseTex);
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 ref float CircleTessellationMaxError => ref Unsafe.AsRef<float>(&NativePtr->CircleTessellationMaxError);
public RangeAccessor<Vector4> Colors => new RangeAccessor<Vector4>(&NativePtr->Colors_0, 50); public RangeAccessor<Vector4> Colors => new RangeAccessor<Vector4>(&NativePtr->Colors_0, 53);
public void Destroy() public void Destroy()
{ {
ImGuiNative.ImGuiStyle_destroy((ImGuiStyle*)(NativePtr)); ImGuiNative.ImGuiStyle_destroy((ImGuiStyle*)(NativePtr));

@ -18,13 +18,14 @@ namespace ImGuiNET
ItemSpacing = 13, ItemSpacing = 13,
ItemInnerSpacing = 14, ItemInnerSpacing = 14,
IndentSpacing = 15, IndentSpacing = 15,
ScrollbarSize = 16, CellPadding = 16,
ScrollbarRounding = 17, ScrollbarSize = 17,
GrabMinSize = 18, ScrollbarRounding = 18,
GrabRounding = 19, GrabMinSize = 19,
TabRounding = 20, GrabRounding = 20,
ButtonTextAlign = 21, TabRounding = 21,
SelectableTextAlign = 22, ButtonTextAlign = 22,
COUNT = 23, SelectableTextAlign = 23,
COUNT = 24,
} }
} }

@ -4,15 +4,15 @@ namespace ImGuiNET
public enum ImGuiTabBarFlags public enum ImGuiTabBarFlags
{ {
None = 0, None = 0,
Reorderable = 1 << 0, Reorderable = 1,
AutoSelectNewTabs = 1 << 1, AutoSelectNewTabs = 2,
TabListPopupButton = 1 << 2, TabListPopupButton = 4,
NoCloseWithMiddleMouseButton = 1 << 3, NoCloseWithMiddleMouseButton = 8,
NoTabListScrollingButtons = 1 << 4, NoTabListScrollingButtons = 16,
NoTooltip = 1 << 5, NoTooltip = 32,
FittingPolicyResizeDown = 1 << 6, FittingPolicyResizeDown = 64,
FittingPolicyScroll = 1 << 7, FittingPolicyScroll = 128,
FittingPolicyMask = FittingPolicyResizeDown | FittingPolicyScroll, FittingPolicyMask = 192,
FittingPolicyDefault = FittingPolicyResizeDown, FittingPolicyDefault = 64,
} }
} }

@ -4,10 +4,13 @@ namespace ImGuiNET
public enum ImGuiTabItemFlags public enum ImGuiTabItemFlags
{ {
None = 0, None = 0,
UnsavedDocument = 1 << 0, UnsavedDocument = 1,
SetSelected = 1 << 1, SetSelected = 2,
NoCloseWithMiddleMouseButton = 1 << 2, NoCloseWithMiddleMouseButton = 4,
NoPushId = 1 << 3, NoPushId = 8,
NoTooltip = 1 << 4, NoTooltip = 16,
NoReorder = 32,
Leading = 64,
Trailing = 128,
} }
} }

@ -0,0 +1,10 @@
namespace ImGuiNET
{
public enum ImGuiTableBgTarget
{
None = 0,
RowBg0 = 1,
RowBg1 = 2,
CellBg = 3,
}
}

@ -0,0 +1,32 @@
namespace ImGuiNET
{
[System.Flags]
public enum ImGuiTableColumnFlags
{
None = 0,
DefaultHide = 1,
DefaultSort = 2,
WidthStretch = 4,
WidthFixed = 8,
NoResize = 16,
NoReorder = 32,
NoHide = 64,
NoClip = 128,
NoSort = 256,
NoSortAscending = 512,
NoSortDescending = 1024,
NoHeaderWidth = 2048,
PreferSortAscending = 4096,
PreferSortDescending = 8192,
IndentEnable = 16384,
IndentDisable = 32768,
IsEnabled = 1048576,
IsVisible = 2097152,
IsSorted = 4194304,
IsHovered = 8388608,
WidthMask = 12,
IndentMask = 49152,
StatusMask = 15728640,
NoDirectResize = 1073741824,
}
}

@ -0,0 +1,32 @@
using System;
using System.Numerics;
using System.Runtime.CompilerServices;
using System.Text;
namespace ImGuiNET
{
public unsafe partial struct ImGuiTableColumnSortSpecs
{
public uint ColumnUserID;
public short ColumnIndex;
public short SortOrder;
public ImGuiSortDirection SortDirection;
}
public unsafe partial struct ImGuiTableColumnSortSpecsPtr
{
public ImGuiTableColumnSortSpecs* NativePtr { get; }
public ImGuiTableColumnSortSpecsPtr(ImGuiTableColumnSortSpecs* nativePtr) => NativePtr = nativePtr;
public ImGuiTableColumnSortSpecsPtr(IntPtr nativePtr) => NativePtr = (ImGuiTableColumnSortSpecs*)nativePtr;
public static implicit operator ImGuiTableColumnSortSpecsPtr(ImGuiTableColumnSortSpecs* nativePtr) => new ImGuiTableColumnSortSpecsPtr(nativePtr);
public static implicit operator ImGuiTableColumnSortSpecs* (ImGuiTableColumnSortSpecsPtr wrappedPtr) => wrappedPtr.NativePtr;
public static implicit operator ImGuiTableColumnSortSpecsPtr(IntPtr nativePtr) => new ImGuiTableColumnSortSpecsPtr(nativePtr);
public ref uint ColumnUserID => ref Unsafe.AsRef<uint>(&NativePtr->ColumnUserID);
public ref short ColumnIndex => ref Unsafe.AsRef<short>(&NativePtr->ColumnIndex);
public ref short SortOrder => ref Unsafe.AsRef<short>(&NativePtr->SortOrder);
public ref ImGuiSortDirection SortDirection => ref Unsafe.AsRef<ImGuiSortDirection>(&NativePtr->SortDirection);
public void Destroy()
{
ImGuiNative.ImGuiTableColumnSortSpecs_destroy((ImGuiTableColumnSortSpecs*)(NativePtr));
}
}
}

@ -0,0 +1,43 @@
namespace ImGuiNET
{
[System.Flags]
public enum ImGuiTableFlags
{
None = 0,
Resizable = 1,
Reorderable = 2,
Hideable = 4,
Sortable = 8,
NoSavedSettings = 16,
ContextMenuInBody = 32,
RowBg = 64,
BordersInnerH = 128,
BordersOuterH = 256,
BordersInnerV = 512,
BordersOuterV = 1024,
BordersH = 384,
BordersV = 1536,
BordersInner = 640,
BordersOuter = 1280,
Borders = 1920,
NoBordersInBody = 2048,
NoBordersInBodyUntilResize = 4096,
SizingFixedFit = 8192,
SizingFixedSame = 16384,
SizingStretchProp = 24576,
SizingStretchSame = 32768,
NoHostExtendX = 65536,
NoHostExtendY = 131072,
NoKeepColumnsVisible = 262144,
PreciseWidths = 524288,
NoClip = 1048576,
PadOuterX = 2097152,
NoPadOuterX = 4194304,
NoPadInnerX = 8388608,
ScrollX = 16777216,
ScrollY = 33554432,
SortMulti = 67108864,
SortTristate = 134217728,
SizingMask = 57344,
}
}

@ -0,0 +1,9 @@
namespace ImGuiNET
{
[System.Flags]
public enum ImGuiTableRowFlags
{
None = 0,
Headers = 1,
}
}

@ -0,0 +1,30 @@
using System;
using System.Numerics;
using System.Runtime.CompilerServices;
using System.Text;
namespace ImGuiNET
{
public unsafe partial struct ImGuiTableSortSpecs
{
public ImGuiTableColumnSortSpecs* Specs;
public int SpecsCount;
public byte SpecsDirty;
}
public unsafe partial struct ImGuiTableSortSpecsPtr
{
public ImGuiTableSortSpecs* NativePtr { get; }
public ImGuiTableSortSpecsPtr(ImGuiTableSortSpecs* nativePtr) => NativePtr = nativePtr;
public ImGuiTableSortSpecsPtr(IntPtr nativePtr) => NativePtr = (ImGuiTableSortSpecs*)nativePtr;
public static implicit operator ImGuiTableSortSpecsPtr(ImGuiTableSortSpecs* nativePtr) => new ImGuiTableSortSpecsPtr(nativePtr);
public static implicit operator ImGuiTableSortSpecs* (ImGuiTableSortSpecsPtr wrappedPtr) => wrappedPtr.NativePtr;
public static implicit operator ImGuiTableSortSpecsPtr(IntPtr nativePtr) => new ImGuiTableSortSpecsPtr(nativePtr);
public ImGuiTableColumnSortSpecsPtr Specs => new ImGuiTableColumnSortSpecsPtr(NativePtr->Specs);
public ref int SpecsCount => ref Unsafe.AsRef<int>(&NativePtr->SpecsCount);
public ref bool SpecsDirty => ref Unsafe.AsRef<bool>(&NativePtr->SpecsDirty);
public void Destroy()
{
ImGuiNative.ImGuiTableSortSpecs_destroy((ImGuiTableSortSpecs*)(NativePtr));
}
}
}

@ -4,20 +4,20 @@ namespace ImGuiNET
public enum ImGuiTreeNodeFlags public enum ImGuiTreeNodeFlags
{ {
None = 0, None = 0,
Selected = 1 << 0, Selected = 1,
Framed = 1 << 1, Framed = 2,
AllowItemOverlap = 1 << 2, AllowItemOverlap = 4,
NoTreePushOnOpen = 1 << 3, NoTreePushOnOpen = 8,
NoAutoOpenOnLog = 1 << 4, NoAutoOpenOnLog = 16,
DefaultOpen = 1 << 5, DefaultOpen = 32,
OpenOnDoubleClick = 1 << 6, OpenOnDoubleClick = 64,
OpenOnArrow = 1 << 7, OpenOnArrow = 128,
Leaf = 1 << 8, Leaf = 256,
Bullet = 1 << 9, Bullet = 512,
FramePadding = 1 << 10, FramePadding = 1024,
SpanAvailWidth = 1 << 11, SpanAvailWidth = 2048,
SpanFullWidth = 1 << 12, SpanFullWidth = 4096,
NavLeftJumpsBackHere = 1 << 13, NavLeftJumpsBackHere = 8192,
CollapsingHeader = Framed | NoTreePushOnOpen | NoAutoOpenOnLog, CollapsingHeader = 26,
} }
} }

@ -7,22 +7,11 @@ namespace ImGuiNET
{ {
public unsafe partial struct ImGuiViewport public unsafe partial struct ImGuiViewport
{ {
public uint ID;
public ImGuiViewportFlags Flags; public ImGuiViewportFlags Flags;
public Vector2 Pos; public Vector2 Pos;
public Vector2 Size; public Vector2 Size;
public Vector2 WorkOffsetMin; public Vector2 WorkPos;
public Vector2 WorkOffsetMax; public Vector2 WorkSize;
public float DpiScale;
public ImDrawData* DrawData;
public uint ParentViewportId;
public void* RendererUserData;
public void* PlatformUserData;
public void* PlatformHandle;
public void* PlatformHandleRaw;
public byte PlatformRequestMove;
public byte PlatformRequestResize;
public byte PlatformRequestClose;
} }
public unsafe partial struct ImGuiViewportPtr public unsafe partial struct ImGuiViewportPtr
{ {
@ -32,22 +21,11 @@ namespace ImGuiNET
public static implicit operator ImGuiViewportPtr(ImGuiViewport* nativePtr) => new ImGuiViewportPtr(nativePtr); public static implicit operator ImGuiViewportPtr(ImGuiViewport* nativePtr) => new ImGuiViewportPtr(nativePtr);
public static implicit operator ImGuiViewport* (ImGuiViewportPtr wrappedPtr) => wrappedPtr.NativePtr; public static implicit operator ImGuiViewport* (ImGuiViewportPtr wrappedPtr) => wrappedPtr.NativePtr;
public static implicit operator ImGuiViewportPtr(IntPtr nativePtr) => new ImGuiViewportPtr(nativePtr); public static implicit operator ImGuiViewportPtr(IntPtr nativePtr) => new ImGuiViewportPtr(nativePtr);
public ref uint ID => ref Unsafe.AsRef<uint>(&NativePtr->ID);
public ref ImGuiViewportFlags Flags => ref Unsafe.AsRef<ImGuiViewportFlags>(&NativePtr->Flags); public ref ImGuiViewportFlags Flags => ref Unsafe.AsRef<ImGuiViewportFlags>(&NativePtr->Flags);
public ref Vector2 Pos => ref Unsafe.AsRef<Vector2>(&NativePtr->Pos); public ref Vector2 Pos => ref Unsafe.AsRef<Vector2>(&NativePtr->Pos);
public ref Vector2 Size => ref Unsafe.AsRef<Vector2>(&NativePtr->Size); public ref Vector2 Size => ref Unsafe.AsRef<Vector2>(&NativePtr->Size);
public ref Vector2 WorkOffsetMin => ref Unsafe.AsRef<Vector2>(&NativePtr->WorkOffsetMin); public ref Vector2 WorkPos => ref Unsafe.AsRef<Vector2>(&NativePtr->WorkPos);
public ref Vector2 WorkOffsetMax => ref Unsafe.AsRef<Vector2>(&NativePtr->WorkOffsetMax); public ref Vector2 WorkSize => ref Unsafe.AsRef<Vector2>(&NativePtr->WorkSize);
public ref float DpiScale => ref Unsafe.AsRef<float>(&NativePtr->DpiScale);
public ImDrawDataPtr DrawData => new ImDrawDataPtr(NativePtr->DrawData);
public ref uint ParentViewportId => ref Unsafe.AsRef<uint>(&NativePtr->ParentViewportId);
public IntPtr RendererUserData { get => (IntPtr)NativePtr->RendererUserData; set => NativePtr->RendererUserData = (void*)value; }
public IntPtr PlatformUserData { get => (IntPtr)NativePtr->PlatformUserData; set => NativePtr->PlatformUserData = (void*)value; }
public IntPtr PlatformHandle { get => (IntPtr)NativePtr->PlatformHandle; set => NativePtr->PlatformHandle = (void*)value; }
public IntPtr PlatformHandleRaw { get => (IntPtr)NativePtr->PlatformHandleRaw; set => NativePtr->PlatformHandleRaw = (void*)value; }
public ref bool PlatformRequestMove => ref Unsafe.AsRef<bool>(&NativePtr->PlatformRequestMove);
public ref bool PlatformRequestResize => ref Unsafe.AsRef<bool>(&NativePtr->PlatformRequestResize);
public ref bool PlatformRequestClose => ref Unsafe.AsRef<bool>(&NativePtr->PlatformRequestClose);
public void Destroy() public void Destroy()
{ {
ImGuiNative.ImGuiViewport_destroy((ImGuiViewport*)(NativePtr)); ImGuiNative.ImGuiViewport_destroy((ImGuiViewport*)(NativePtr));
@ -58,16 +36,10 @@ namespace ImGuiNET
ImGuiNative.ImGuiViewport_GetCenter(&__retval, (ImGuiViewport*)(NativePtr)); ImGuiNative.ImGuiViewport_GetCenter(&__retval, (ImGuiViewport*)(NativePtr));
return __retval; return __retval;
} }
public Vector2 GetWorkPos() public Vector2 GetWorkCenter()
{ {
Vector2 __retval; Vector2 __retval;
ImGuiNative.ImGuiViewport_GetWorkPos(&__retval, (ImGuiViewport*)(NativePtr)); ImGuiNative.ImGuiViewport_GetWorkCenter(&__retval, (ImGuiViewport*)(NativePtr));
return __retval;
}
public Vector2 GetWorkSize()
{
Vector2 __retval;
ImGuiNative.ImGuiViewport_GetWorkSize(&__retval, (ImGuiViewport*)(NativePtr));
return __retval; return __retval;
} }
} }

@ -4,15 +4,8 @@ namespace ImGuiNET
public enum ImGuiViewportFlags public enum ImGuiViewportFlags
{ {
None = 0, None = 0,
NoDecoration = 1 << 0, IsPlatformWindow = 1,
NoTaskBarIcon = 1 << 1, IsPlatformMonitor = 2,
NoFocusOnAppearing = 1 << 2, OwnedByApp = 4,
NoFocusOnClick = 1 << 3,
NoInputs = 1 << 4,
NoRendererClear = 1 << 5,
TopMost = 1 << 6,
Minimized = 1 << 7,
NoAutoMerge = 1 << 8,
CanHostOtherWindows = 1 << 9,
} }
} }

@ -1,40 +0,0 @@
using System;
using System.Numerics;
using System.Runtime.CompilerServices;
using System.Text;
namespace ImGuiNET
{
public unsafe partial struct ImGuiWindowClass
{
public uint ClassId;
public uint ParentViewportId;
public ImGuiViewportFlags ViewportFlagsOverrideSet;
public ImGuiViewportFlags ViewportFlagsOverrideClear;
public ImGuiDockNodeFlags DockNodeFlagsOverrideSet;
public ImGuiDockNodeFlags DockNodeFlagsOverrideClear;
public byte DockingAlwaysTabBar;
public byte DockingAllowUnclassed;
}
public unsafe partial struct ImGuiWindowClassPtr
{
public ImGuiWindowClass* NativePtr { get; }
public ImGuiWindowClassPtr(ImGuiWindowClass* nativePtr) => NativePtr = nativePtr;
public ImGuiWindowClassPtr(IntPtr nativePtr) => NativePtr = (ImGuiWindowClass*)nativePtr;
public static implicit operator ImGuiWindowClassPtr(ImGuiWindowClass* nativePtr) => new ImGuiWindowClassPtr(nativePtr);
public static implicit operator ImGuiWindowClass* (ImGuiWindowClassPtr wrappedPtr) => wrappedPtr.NativePtr;
public static implicit operator ImGuiWindowClassPtr(IntPtr nativePtr) => new ImGuiWindowClassPtr(nativePtr);
public ref uint ClassId => ref Unsafe.AsRef<uint>(&NativePtr->ClassId);
public ref uint ParentViewportId => ref Unsafe.AsRef<uint>(&NativePtr->ParentViewportId);
public ref ImGuiViewportFlags ViewportFlagsOverrideSet => ref Unsafe.AsRef<ImGuiViewportFlags>(&NativePtr->ViewportFlagsOverrideSet);
public ref ImGuiViewportFlags ViewportFlagsOverrideClear => ref Unsafe.AsRef<ImGuiViewportFlags>(&NativePtr->ViewportFlagsOverrideClear);
public ref ImGuiDockNodeFlags DockNodeFlagsOverrideSet => ref Unsafe.AsRef<ImGuiDockNodeFlags>(&NativePtr->DockNodeFlagsOverrideSet);
public ref ImGuiDockNodeFlags DockNodeFlagsOverrideClear => ref Unsafe.AsRef<ImGuiDockNodeFlags>(&NativePtr->DockNodeFlagsOverrideClear);
public ref bool DockingAlwaysTabBar => ref Unsafe.AsRef<bool>(&NativePtr->DockingAlwaysTabBar);
public ref bool DockingAllowUnclassed => ref Unsafe.AsRef<bool>(&NativePtr->DockingAllowUnclassed);
public void Destroy()
{
ImGuiNative.ImGuiWindowClass_destroy((ImGuiWindowClass*)(NativePtr));
}
}
}

@ -4,36 +4,34 @@ namespace ImGuiNET
public enum ImGuiWindowFlags public enum ImGuiWindowFlags
{ {
None = 0, None = 0,
NoTitleBar = 1 << 0, NoTitleBar = 1,
NoResize = 1 << 1, NoResize = 2,
NoMove = 1 << 2, NoMove = 4,
NoScrollbar = 1 << 3, NoScrollbar = 8,
NoScrollWithMouse = 1 << 4, NoScrollWithMouse = 16,
NoCollapse = 1 << 5, NoCollapse = 32,
AlwaysAutoResize = 1 << 6, AlwaysAutoResize = 64,
NoBackground = 1 << 7, NoBackground = 128,
NoSavedSettings = 1 << 8, NoSavedSettings = 256,
NoMouseInputs = 1 << 9, NoMouseInputs = 512,
MenuBar = 1 << 10, MenuBar = 1024,
HorizontalScrollbar = 1 << 11, HorizontalScrollbar = 2048,
NoFocusOnAppearing = 1 << 12, NoFocusOnAppearing = 4096,
NoBringToFrontOnFocus = 1 << 13, NoBringToFrontOnFocus = 8192,
AlwaysVerticalScrollbar = 1 << 14, AlwaysVerticalScrollbar = 16384,
AlwaysHorizontalScrollbar = 1<< 15, AlwaysHorizontalScrollbar = 32768,
AlwaysUseWindowPadding = 1 << 16, AlwaysUseWindowPadding = 65536,
NoNavInputs = 1 << 18, NoNavInputs = 262144,
NoNavFocus = 1 << 19, NoNavFocus = 524288,
UnsavedDocument = 1 << 20, UnsavedDocument = 1048576,
NoDocking = 1 << 21, NoNav = 786432,
NoNav = NoNavInputs | NoNavFocus, NoDecoration = 43,
NoDecoration = NoTitleBar | NoResize | NoScrollbar | NoCollapse, NoInputs = 786944,
NoInputs = NoMouseInputs | NoNavInputs | NoNavFocus, NavFlattened = 8388608,
NavFlattened = 1 << 23, ChildWindow = 16777216,
ChildWindow = 1 << 24, Tooltip = 33554432,
Tooltip = 1 << 25, Popup = 67108864,
Popup = 1 << 26, Modal = 134217728,
Modal = 1 << 27, ChildMenu = 268435456,
ChildMenu = 1 << 28,
DockNodeHost = 1 << 29,
} }
} }

@ -0,0 +1,48 @@
using System;
using System.Numerics;
using System.Runtime.CompilerServices;
using System.Text;
namespace ImGuiNET
{
public unsafe partial struct STB_TexteditState
{
public int cursor;
public int select_start;
public int select_end;
public byte insert_mode;
public int row_count_per_page;
public byte cursor_at_end_of_line;
public byte initialized;
public byte has_preferred_x;
public byte single_line;
public byte padding1;
public byte padding2;
public byte padding3;
public float preferred_x;
public StbUndoState undostate;
}
public unsafe partial struct STB_TexteditStatePtr
{
public STB_TexteditState* NativePtr { get; }
public STB_TexteditStatePtr(STB_TexteditState* nativePtr) => NativePtr = nativePtr;
public STB_TexteditStatePtr(IntPtr nativePtr) => NativePtr = (STB_TexteditState*)nativePtr;
public static implicit operator STB_TexteditStatePtr(STB_TexteditState* nativePtr) => new STB_TexteditStatePtr(nativePtr);
public static implicit operator STB_TexteditState* (STB_TexteditStatePtr wrappedPtr) => wrappedPtr.NativePtr;
public static implicit operator STB_TexteditStatePtr(IntPtr nativePtr) => new STB_TexteditStatePtr(nativePtr);
public ref int cursor => ref Unsafe.AsRef<int>(&NativePtr->cursor);
public ref int select_start => ref Unsafe.AsRef<int>(&NativePtr->select_start);
public ref int select_end => ref Unsafe.AsRef<int>(&NativePtr->select_end);
public ref byte insert_mode => ref Unsafe.AsRef<byte>(&NativePtr->insert_mode);
public ref int row_count_per_page => ref Unsafe.AsRef<int>(&NativePtr->row_count_per_page);
public ref byte cursor_at_end_of_line => ref Unsafe.AsRef<byte>(&NativePtr->cursor_at_end_of_line);
public ref byte initialized => ref Unsafe.AsRef<byte>(&NativePtr->initialized);
public ref byte has_preferred_x => ref Unsafe.AsRef<byte>(&NativePtr->has_preferred_x);
public ref byte single_line => ref Unsafe.AsRef<byte>(&NativePtr->single_line);
public ref byte padding1 => ref Unsafe.AsRef<byte>(&NativePtr->padding1);
public ref byte padding2 => ref Unsafe.AsRef<byte>(&NativePtr->padding2);
public ref byte padding3 => ref Unsafe.AsRef<byte>(&NativePtr->padding3);
public ref float preferred_x => ref Unsafe.AsRef<float>(&NativePtr->preferred_x);
public ref StbUndoState undostate => ref Unsafe.AsRef<StbUndoState>(&NativePtr->undostate);
}
}

@ -0,0 +1,32 @@
using System;
using System.Numerics;
using System.Runtime.CompilerServices;
using System.Text;
namespace ImGuiNET
{
public unsafe partial struct StbTexteditRow
{
public float x0;
public float x1;
public float baseline_y_delta;
public float ymin;
public float ymax;
public int num_chars;
}
public unsafe partial struct StbTexteditRowPtr
{
public StbTexteditRow* NativePtr { get; }
public StbTexteditRowPtr(StbTexteditRow* nativePtr) => NativePtr = nativePtr;
public StbTexteditRowPtr(IntPtr nativePtr) => NativePtr = (StbTexteditRow*)nativePtr;
public static implicit operator StbTexteditRowPtr(StbTexteditRow* nativePtr) => new StbTexteditRowPtr(nativePtr);
public static implicit operator StbTexteditRow* (StbTexteditRowPtr wrappedPtr) => wrappedPtr.NativePtr;
public static implicit operator StbTexteditRowPtr(IntPtr nativePtr) => new StbTexteditRowPtr(nativePtr);
public ref float x0 => ref Unsafe.AsRef<float>(&NativePtr->x0);
public ref float x1 => ref Unsafe.AsRef<float>(&NativePtr->x1);
public ref float baseline_y_delta => ref Unsafe.AsRef<float>(&NativePtr->baseline_y_delta);
public ref float ymin => ref Unsafe.AsRef<float>(&NativePtr->ymin);
public ref float ymax => ref Unsafe.AsRef<float>(&NativePtr->ymax);
public ref int num_chars => ref Unsafe.AsRef<int>(&NativePtr->num_chars);
}
}

@ -0,0 +1,28 @@
using System;
using System.Numerics;
using System.Runtime.CompilerServices;
using System.Text;
namespace ImGuiNET
{
public unsafe partial struct StbUndoRecord
{
public int where;
public int insert_length;
public int delete_length;
public int char_storage;
}
public unsafe partial struct StbUndoRecordPtr
{
public StbUndoRecord* NativePtr { get; }
public StbUndoRecordPtr(StbUndoRecord* nativePtr) => NativePtr = nativePtr;
public StbUndoRecordPtr(IntPtr nativePtr) => NativePtr = (StbUndoRecord*)nativePtr;
public static implicit operator StbUndoRecordPtr(StbUndoRecord* nativePtr) => new StbUndoRecordPtr(nativePtr);
public static implicit operator StbUndoRecord* (StbUndoRecordPtr wrappedPtr) => wrappedPtr.NativePtr;
public static implicit operator StbUndoRecordPtr(IntPtr nativePtr) => new StbUndoRecordPtr(nativePtr);
public ref int where => ref Unsafe.AsRef<int>(&NativePtr->where);
public ref int insert_length => ref Unsafe.AsRef<int>(&NativePtr->insert_length);
public ref int delete_length => ref Unsafe.AsRef<int>(&NativePtr->delete_length);
public ref int char_storage => ref Unsafe.AsRef<int>(&NativePtr->char_storage);
}
}

@ -0,0 +1,130 @@
using System;
using System.Numerics;
using System.Runtime.CompilerServices;
using System.Text;
namespace ImGuiNET
{
public unsafe partial struct StbUndoState
{
public StbUndoRecord undo_rec_0;
public StbUndoRecord undo_rec_1;
public StbUndoRecord undo_rec_2;
public StbUndoRecord undo_rec_3;
public StbUndoRecord undo_rec_4;
public StbUndoRecord undo_rec_5;
public StbUndoRecord undo_rec_6;
public StbUndoRecord undo_rec_7;
public StbUndoRecord undo_rec_8;
public StbUndoRecord undo_rec_9;
public StbUndoRecord undo_rec_10;
public StbUndoRecord undo_rec_11;
public StbUndoRecord undo_rec_12;
public StbUndoRecord undo_rec_13;
public StbUndoRecord undo_rec_14;
public StbUndoRecord undo_rec_15;
public StbUndoRecord undo_rec_16;
public StbUndoRecord undo_rec_17;
public StbUndoRecord undo_rec_18;
public StbUndoRecord undo_rec_19;
public StbUndoRecord undo_rec_20;
public StbUndoRecord undo_rec_21;
public StbUndoRecord undo_rec_22;
public StbUndoRecord undo_rec_23;
public StbUndoRecord undo_rec_24;
public StbUndoRecord undo_rec_25;
public StbUndoRecord undo_rec_26;
public StbUndoRecord undo_rec_27;
public StbUndoRecord undo_rec_28;
public StbUndoRecord undo_rec_29;
public StbUndoRecord undo_rec_30;
public StbUndoRecord undo_rec_31;
public StbUndoRecord undo_rec_32;
public StbUndoRecord undo_rec_33;
public StbUndoRecord undo_rec_34;
public StbUndoRecord undo_rec_35;
public StbUndoRecord undo_rec_36;
public StbUndoRecord undo_rec_37;
public StbUndoRecord undo_rec_38;
public StbUndoRecord undo_rec_39;
public StbUndoRecord undo_rec_40;
public StbUndoRecord undo_rec_41;
public StbUndoRecord undo_rec_42;
public StbUndoRecord undo_rec_43;
public StbUndoRecord undo_rec_44;
public StbUndoRecord undo_rec_45;
public StbUndoRecord undo_rec_46;
public StbUndoRecord undo_rec_47;
public StbUndoRecord undo_rec_48;
public StbUndoRecord undo_rec_49;
public StbUndoRecord undo_rec_50;
public StbUndoRecord undo_rec_51;
public StbUndoRecord undo_rec_52;
public StbUndoRecord undo_rec_53;
public StbUndoRecord undo_rec_54;
public StbUndoRecord undo_rec_55;
public StbUndoRecord undo_rec_56;
public StbUndoRecord undo_rec_57;
public StbUndoRecord undo_rec_58;
public StbUndoRecord undo_rec_59;
public StbUndoRecord undo_rec_60;
public StbUndoRecord undo_rec_61;
public StbUndoRecord undo_rec_62;
public StbUndoRecord undo_rec_63;
public StbUndoRecord undo_rec_64;
public StbUndoRecord undo_rec_65;
public StbUndoRecord undo_rec_66;
public StbUndoRecord undo_rec_67;
public StbUndoRecord undo_rec_68;
public StbUndoRecord undo_rec_69;
public StbUndoRecord undo_rec_70;
public StbUndoRecord undo_rec_71;
public StbUndoRecord undo_rec_72;
public StbUndoRecord undo_rec_73;
public StbUndoRecord undo_rec_74;
public StbUndoRecord undo_rec_75;
public StbUndoRecord undo_rec_76;
public StbUndoRecord undo_rec_77;
public StbUndoRecord undo_rec_78;
public StbUndoRecord undo_rec_79;
public StbUndoRecord undo_rec_80;
public StbUndoRecord undo_rec_81;
public StbUndoRecord undo_rec_82;
public StbUndoRecord undo_rec_83;
public StbUndoRecord undo_rec_84;
public StbUndoRecord undo_rec_85;
public StbUndoRecord undo_rec_86;
public StbUndoRecord undo_rec_87;
public StbUndoRecord undo_rec_88;
public StbUndoRecord undo_rec_89;
public StbUndoRecord undo_rec_90;
public StbUndoRecord undo_rec_91;
public StbUndoRecord undo_rec_92;
public StbUndoRecord undo_rec_93;
public StbUndoRecord undo_rec_94;
public StbUndoRecord undo_rec_95;
public StbUndoRecord undo_rec_96;
public StbUndoRecord undo_rec_97;
public StbUndoRecord undo_rec_98;
public fixed ushort undo_char[999];
public short undo_point;
public short redo_point;
public int undo_char_point;
public int redo_char_point;
}
public unsafe partial struct StbUndoStatePtr
{
public StbUndoState* NativePtr { get; }
public StbUndoStatePtr(StbUndoState* nativePtr) => NativePtr = nativePtr;
public StbUndoStatePtr(IntPtr nativePtr) => NativePtr = (StbUndoState*)nativePtr;
public static implicit operator StbUndoStatePtr(StbUndoState* nativePtr) => new StbUndoStatePtr(nativePtr);
public static implicit operator StbUndoState* (StbUndoStatePtr wrappedPtr) => wrappedPtr.NativePtr;
public static implicit operator StbUndoStatePtr(IntPtr nativePtr) => new StbUndoStatePtr(nativePtr);
public RangeAccessor<StbUndoRecord> undo_rec => new RangeAccessor<StbUndoRecord>(&NativePtr->undo_rec_0, 99);
public RangeAccessor<ushort> undo_char => new RangeAccessor<ushort>(NativePtr->undo_char, 999);
public ref short undo_point => ref Unsafe.AsRef<short>(&NativePtr->undo_point);
public ref short redo_point => ref Unsafe.AsRef<short>(&NativePtr->redo_point);
public ref int undo_char_point => ref Unsafe.AsRef<int>(&NativePtr->undo_char_point);
public ref int redo_char_point => ref Unsafe.AsRef<int>(&NativePtr->redo_char_point);
}
}

@ -8,6 +8,11 @@ namespace ImGuizmoNET
{ {
public static unsafe partial class ImGuizmo public static unsafe partial class ImGuizmo
{ {
public static void AllowAxisFlip(bool value)
{
byte native_value = value ? (byte)1 : (byte)0;
ImGuizmoNative.ImGuizmo_AllowAxisFlip(native_value);
}
public static void BeginFrame() public static void BeginFrame()
{ {
ImGuizmoNative.ImGuizmo_BeginFrame(); ImGuizmoNative.ImGuizmo_BeginFrame();
@ -210,10 +215,18 @@ namespace ImGuizmoNET
ImDrawList* native_drawlist = drawlist.NativePtr; ImDrawList* native_drawlist = drawlist.NativePtr;
ImGuizmoNative.ImGuizmo_SetDrawlist(native_drawlist); ImGuizmoNative.ImGuizmo_SetDrawlist(native_drawlist);
} }
public static void SetGizmoSizeClipSpace(float value)
{
ImGuizmoNative.ImGuizmo_SetGizmoSizeClipSpace(value);
}
public static void SetID(int id) public static void SetID(int id)
{ {
ImGuizmoNative.ImGuizmo_SetID(id); ImGuizmoNative.ImGuizmo_SetID(id);
} }
public static void SetImGuiContext(IntPtr ctx)
{
ImGuizmoNative.ImGuizmo_SetImGuiContext(ctx);
}
public static void SetOrthographic(bool isOrthographic) public static void SetOrthographic(bool isOrthographic)
{ {
byte native_isOrthographic = isOrthographic ? (byte)1 : (byte)0; byte native_isOrthographic = isOrthographic ? (byte)1 : (byte)0;

@ -7,6 +7,8 @@ namespace ImGuizmoNET
{ {
public static unsafe partial class ImGuizmoNative public static unsafe partial class ImGuizmoNative
{ {
[DllImport("cimguizmo", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuizmo_AllowAxisFlip(byte value);
[DllImport("cimguizmo", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimguizmo", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuizmo_BeginFrame(); public static extern void ImGuizmo_BeginFrame();
[DllImport("cimguizmo", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimguizmo", CallingConvention = CallingConvention.Cdecl)]
@ -30,8 +32,12 @@ namespace ImGuizmoNET
[DllImport("cimguizmo", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimguizmo", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuizmo_SetDrawlist(ImDrawList* drawlist); public static extern void ImGuizmo_SetDrawlist(ImDrawList* drawlist);
[DllImport("cimguizmo", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimguizmo", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuizmo_SetGizmoSizeClipSpace(float value);
[DllImport("cimguizmo", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuizmo_SetID(int id); public static extern void ImGuizmo_SetID(int id);
[DllImport("cimguizmo", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimguizmo", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuizmo_SetImGuiContext(IntPtr ctx);
[DllImport("cimguizmo", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuizmo_SetOrthographic(byte isOrthographic); public static extern void ImGuizmo_SetOrthographic(byte isOrthographic);
[DllImport("cimguizmo", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimguizmo", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImGuizmo_SetRect(float x, float y, float width, float height); public static extern void ImGuizmo_SetRect(float x, float y, float width, float height);

@ -2,9 +2,19 @@ namespace ImGuizmoNET
{ {
public enum OPERATION public enum OPERATION
{ {
TRANSLATE = 0, TRANSLATE_X = 1,
ROTATE = 1, TRANSLATE_Y = 2,
SCALE = 2, TRANSLATE_Z = 4,
BOUNDS = 3, ROTATE_X = 8,
ROTATE_Y = 16,
ROTATE_Z = 32,
ROTATE_SCREEN = 64,
SCALE_X = 128,
SCALE_Y = 256,
SCALE_Z = 512,
BOUNDS = 1024,
TRANSLATE = 7,
ROTATE = 120,
SCALE = 896,
} }
} }

@ -4,7 +4,7 @@ namespace ImNodesNET
public enum AttributeFlags public enum AttributeFlags
{ {
_None = 0, _None = 0,
_EnableLinkDetachWithDragClick = 1 << 0, _EnableLinkDetachWithDragClick = 1,
_EnableLinkCreationOnSnap = 1 << 1, _EnableLinkCreationOnSnap = 2,
} }
} }

@ -528,6 +528,10 @@ namespace ImNodesNET
return Util.StringFromPtr(ret); return Util.StringFromPtr(ret);
} }
} }
public static void SetImGuiContext(IntPtr ctx)
{
ImNodesNative.imnodes_SetImGuiContext(ctx);
}
public static void SetNodeDraggable(int node_id, bool draggable) public static void SetNodeDraggable(int node_id, bool draggable)
{ {
byte native_draggable = draggable ? (byte)1 : (byte)0; byte native_draggable = draggable ? (byte)1 : (byte)0;

@ -126,6 +126,8 @@ namespace ImNodesNET
[DllImport("cimnodes", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimnodes", CallingConvention = CallingConvention.Cdecl)]
public static extern byte* imnodes_SaveEditorStateToIniString(IntPtr editor, uint* data_size); public static extern byte* imnodes_SaveEditorStateToIniString(IntPtr editor, uint* data_size);
[DllImport("cimnodes", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimnodes", CallingConvention = CallingConvention.Cdecl)]
public static extern void imnodes_SetImGuiContext(IntPtr ctx);
[DllImport("cimnodes", CallingConvention = CallingConvention.Cdecl)]
public static extern void imnodes_SetNodeDraggable(int node_id, byte draggable); public static extern void imnodes_SetNodeDraggable(int node_id, byte draggable);
[DllImport("cimnodes", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimnodes", CallingConvention = CallingConvention.Cdecl)]
public static extern void imnodes_SetNodeEditorSpacePos(int node_id, Vector2 editor_space_pos); public static extern void imnodes_SetNodeEditorSpacePos(int node_id, Vector2 editor_space_pos);

@ -4,7 +4,7 @@ namespace ImNodesNET
public enum StyleFlags public enum StyleFlags
{ {
_None = 0, _None = 0,
_NodeOutline = 1 << 0, _NodeOutline = 1,
_GridLines = 1 << 2, _GridLines = 4,
} }
} }

File diff suppressed because it is too large Load Diff

@ -4,15 +4,16 @@ namespace ImPlotNET
public enum ImPlotAxisFlags public enum ImPlotAxisFlags
{ {
None = 0, None = 0,
NoGridLines = 1 << 0, NoLabel = 1,
NoTickMarks = 1 << 1, NoGridLines = 2,
NoTickLabels = 1 << 2, NoTickMarks = 4,
LogScale = 1 << 3, NoTickLabels = 8,
Time = 1 << 4, LogScale = 16,
Invert = 1 << 5, Time = 32,
LockMin = 1 << 6, Invert = 64,
LockMax = 1 << 7, LockMin = 128,
Lock = LockMin | LockMax, LockMax = 256,
NoDecorations = NoGridLines | NoTickMarks | NoTickLabels, Lock = 384,
NoDecorations = 15,
} }
} }

@ -4,17 +4,19 @@ namespace ImPlotNET
public enum ImPlotFlags public enum ImPlotFlags
{ {
None = 0, None = 0,
NoLegend = 1 << 0, NoTitle = 1,
NoMenus = 1 << 1, NoLegend = 2,
NoBoxSelect = 1 << 2, NoMenus = 4,
NoMousePos = 1 << 3, NoBoxSelect = 8,
NoHighlight = 1 << 4, NoMousePos = 16,
NoChild = 1 << 5, NoHighlight = 32,
YAxis2 = 1 << 6, NoChild = 64,
YAxis3 = 1 << 7, Equal = 128,
Query = 1 << 8, YAxis2 = 256,
Crosshairs = 1 << 9, YAxis3 = 512,
AntiAliased = 1 << 10, Query = 1024,
CanvasOnly = NoLegend | NoMenus | NoBoxSelect | NoMousePos, Crosshairs = 2048,
AntiAliased = 4096,
CanvasOnly = 31,
} }
} }

@ -1,49 +0,0 @@
using System;
using System.Numerics;
using System.Runtime.CompilerServices;
using System.Text;
using ImGuiNET;
namespace ImPlotNET
{
public unsafe partial struct ImPlotInputMap
{
public ImGuiMouseButton PanButton;
public ImGuiKeyModFlags PanMod;
public ImGuiMouseButton FitButton;
public ImGuiMouseButton ContextMenuButton;
public ImGuiMouseButton BoxSelectButton;
public ImGuiKeyModFlags BoxSelectMod;
public ImGuiMouseButton BoxSelectCancelButton;
public ImGuiMouseButton QueryButton;
public ImGuiKeyModFlags QueryMod;
public ImGuiKeyModFlags QueryToggleMod;
public ImGuiKeyModFlags HorizontalMod;
public ImGuiKeyModFlags VerticalMod;
}
public unsafe partial struct ImPlotInputMapPtr
{
public ImPlotInputMap* NativePtr { get; }
public ImPlotInputMapPtr(ImPlotInputMap* nativePtr) => NativePtr = nativePtr;
public ImPlotInputMapPtr(IntPtr nativePtr) => NativePtr = (ImPlotInputMap*)nativePtr;
public static implicit operator ImPlotInputMapPtr(ImPlotInputMap* nativePtr) => new ImPlotInputMapPtr(nativePtr);
public static implicit operator ImPlotInputMap* (ImPlotInputMapPtr wrappedPtr) => wrappedPtr.NativePtr;
public static implicit operator ImPlotInputMapPtr(IntPtr nativePtr) => new ImPlotInputMapPtr(nativePtr);
public ref ImGuiMouseButton PanButton => ref Unsafe.AsRef<ImGuiMouseButton>(&NativePtr->PanButton);
public ref ImGuiKeyModFlags PanMod => ref Unsafe.AsRef<ImGuiKeyModFlags>(&NativePtr->PanMod);
public ref ImGuiMouseButton FitButton => ref Unsafe.AsRef<ImGuiMouseButton>(&NativePtr->FitButton);
public ref ImGuiMouseButton ContextMenuButton => ref Unsafe.AsRef<ImGuiMouseButton>(&NativePtr->ContextMenuButton);
public ref ImGuiMouseButton BoxSelectButton => ref Unsafe.AsRef<ImGuiMouseButton>(&NativePtr->BoxSelectButton);
public ref ImGuiKeyModFlags BoxSelectMod => ref Unsafe.AsRef<ImGuiKeyModFlags>(&NativePtr->BoxSelectMod);
public ref ImGuiMouseButton BoxSelectCancelButton => ref Unsafe.AsRef<ImGuiMouseButton>(&NativePtr->BoxSelectCancelButton);
public ref ImGuiMouseButton QueryButton => ref Unsafe.AsRef<ImGuiMouseButton>(&NativePtr->QueryButton);
public ref ImGuiKeyModFlags QueryMod => ref Unsafe.AsRef<ImGuiKeyModFlags>(&NativePtr->QueryMod);
public ref ImGuiKeyModFlags QueryToggleMod => ref Unsafe.AsRef<ImGuiKeyModFlags>(&NativePtr->QueryToggleMod);
public ref ImGuiKeyModFlags HorizontalMod => ref Unsafe.AsRef<ImGuiKeyModFlags>(&NativePtr->HorizontalMod);
public ref ImGuiKeyModFlags VerticalMod => ref Unsafe.AsRef<ImGuiKeyModFlags>(&NativePtr->VerticalMod);
public void Destroy()
{
ImPlotNative.ImPlotInputMap_destroy((ImPlotInputMap*)(NativePtr));
}
}
}

@ -3,13 +3,13 @@ namespace ImPlotNET
public enum ImPlotLocation public enum ImPlotLocation
{ {
Center = 0, Center = 0,
North = 1 << 0, North = 1,
South = 1 << 1, South = 2,
West = 1 << 2, West = 4,
East = 1 << 3, East = 8,
NorthWest = North | West, NorthWest = 5,
NorthEast = North | East, NorthEast = 9,
SouthWest = South | West, SouthWest = 6,
SouthEast = South | East, SouthEast = 10,
} }
} }

@ -16,11 +16,25 @@ namespace ImPlotNET
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_AnnotateClampedVec4(double x, double y, Vector2 pix_offset, Vector4 color, byte* fmt); public static extern void ImPlot_AnnotateClampedVec4(double x, double y, Vector2 pix_offset, Vector4 color, byte* fmt);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern byte ImPlot_BeginLegendDragDropSource(byte* label_id, ImGuiDragDropFlags flags); public static extern byte ImPlot_BeginDragDropSource(ImGuiKeyModFlags key_mods, ImGuiDragDropFlags flags);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern byte ImPlot_BeginDragDropSourceItem(byte* label_id, ImGuiDragDropFlags flags);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern byte ImPlot_BeginDragDropSourceX(ImGuiKeyModFlags key_mods, ImGuiDragDropFlags flags);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern byte ImPlot_BeginDragDropSourceY(ImPlotYAxis axis, ImGuiKeyModFlags key_mods, ImGuiDragDropFlags flags);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern byte ImPlot_BeginDragDropTarget();
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern byte ImPlot_BeginDragDropTargetLegend();
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern byte ImPlot_BeginDragDropTargetX();
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern byte ImPlot_BeginDragDropTargetY(ImPlotYAxis axis);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern byte ImPlot_BeginLegendPopup(byte* label_id, ImGuiMouseButton mouse_button); public static extern byte ImPlot_BeginLegendPopup(byte* label_id, ImGuiMouseButton mouse_button);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern byte ImPlot_BeginPlot(byte* title_id, byte* x_label, byte* y_label, Vector2 size, ImPlotFlags flags, ImPlotAxisFlags x_flags, ImPlotAxisFlags y_flags, ImPlotAxisFlags y2_flags, ImPlotAxisFlags y3_flags); public static extern byte ImPlot_BeginPlot(byte* title_id, byte* x_label, byte* y_label, Vector2 size, ImPlotFlags flags, ImPlotAxisFlags x_flags, ImPlotAxisFlags y_flags, ImPlotAxisFlags y2_flags, ImPlotAxisFlags y3_flags, byte* y2_label, byte* y3_label);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern IntPtr ImPlot_CreateContext(); public static extern IntPtr ImPlot_CreateContext();
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
@ -32,7 +46,9 @@ namespace ImPlotNET
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern byte ImPlot_DragPoint(byte* id, double* x, double* y, byte show_label, Vector4 col, float radius); public static extern byte ImPlot_DragPoint(byte* id, double* x, double* y, byte show_label, Vector4 col, float radius);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_EndLegendDragDropSource(); public static extern void ImPlot_EndDragDropSource();
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_EndDragDropTarget();
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_EndLegendPopup(); public static extern void ImPlot_EndLegendPopup();
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
@ -48,8 +64,6 @@ namespace ImPlotNET
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern IntPtr ImPlot_GetCurrentContext(); public static extern IntPtr ImPlot_GetCurrentContext();
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern ImPlotInputMap* ImPlot_GetInputMap();
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_GetLastItemColor(Vector4* pOut); public static extern void ImPlot_GetLastItemColor(Vector4* pOut);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern byte* ImPlot_GetMarkerName(ImPlotMarker idx); public static extern byte* ImPlot_GetMarkerName(ImPlotMarker idx);
@ -82,7 +96,11 @@ namespace ImPlotNET
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern byte ImPlot_IsPlotYAxisHovered(ImPlotYAxis y_axis); public static extern byte ImPlot_IsPlotYAxisHovered(ImPlotYAxis y_axis);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_LerpColormap(Vector4* pOut, float t); public static extern void ImPlot_ItemIconVec4(Vector4 col);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_ItemIconU32(uint col);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_LerpColormapFloat(Vector4* pOut, float t);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_LinkNextPlotLimits(double* xmin, double* xmax, double* ymin, double* ymax, double* ymin2, double* ymax2, double* ymin3, double* ymax3); public static extern void ImPlot_LinkNextPlotLimits(double* xmin, double* xmax, double* ymin, double* ymax, double* ymin2, double* ymax2, double* ymin3, double* ymax3);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
@ -294,6 +312,26 @@ namespace ImPlotNET
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotHeatmapU64Ptr(byte* label_id, ulong* values, int rows, int cols, double scale_min, double scale_max, byte* label_fmt, ImPlotPoint bounds_min, ImPlotPoint bounds_max); public static extern void ImPlot_PlotHeatmapU64Ptr(byte* label_id, ulong* values, int rows, int cols, double scale_min, double scale_max, byte* label_fmt, ImPlotPoint bounds_min, ImPlotPoint bounds_max);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotHLinesFloatPtr(byte* label_id, float* ys, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotHLinesdoublePtr(byte* label_id, double* ys, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotHLinesS8Ptr(byte* label_id, sbyte* ys, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotHLinesU8Ptr(byte* label_id, byte* ys, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotHLinesS16Ptr(byte* label_id, short* ys, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotHLinesU16Ptr(byte* label_id, ushort* ys, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotHLinesS32Ptr(byte* label_id, int* ys, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotHLinesU32Ptr(byte* label_id, uint* ys, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotHLinesS64Ptr(byte* label_id, long* ys, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotHLinesU64Ptr(byte* label_id, ulong* ys, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotImage(byte* label_id, IntPtr user_texture_id, ImPlotPoint bounds_min, ImPlotPoint bounds_max, Vector2 uv0, Vector2 uv1, Vector4 tint_col); public static extern void ImPlot_PlotImage(byte* label_id, IntPtr user_texture_id, ImPlotPoint bounds_min, ImPlotPoint bounds_max, Vector2 uv0, Vector2 uv1, Vector4 tint_col);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotLineFloatPtrInt(byte* label_id, float* values, int count, double xscale, double x0, int offset, int stride); public static extern void ImPlot_PlotLineFloatPtrInt(byte* label_id, float* values, int count, double xscale, double x0, int offset, int stride);
@ -396,45 +434,45 @@ namespace ImPlotNET
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotScatterU64PtrU64Ptr(byte* label_id, ulong* xs, ulong* ys, int count, int offset, int stride); public static extern void ImPlot_PlotScatterU64PtrU64Ptr(byte* label_id, ulong* xs, ulong* ys, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotShadedFloatPtrIntdoubledoubleInt(byte* label_id, float* values, int count, double y_ref, double xscale, double x0, int offset, int stride); public static extern void ImPlot_PlotShadedFloatPtrInt(byte* label_id, float* values, int count, double y_ref, double xscale, double x0, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotShadeddoublePtrIntdoubledoubleInt(byte* label_id, double* values, int count, double y_ref, double xscale, double x0, int offset, int stride); public static extern void ImPlot_PlotShadeddoublePtrInt(byte* label_id, double* values, int count, double y_ref, double xscale, double x0, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotShadedS8PtrIntdoubledoubleInt(byte* label_id, sbyte* values, int count, double y_ref, double xscale, double x0, int offset, int stride); public static extern void ImPlot_PlotShadedS8PtrInt(byte* label_id, sbyte* values, int count, double y_ref, double xscale, double x0, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotShadedU8PtrIntdoubledoubleInt(byte* label_id, byte* values, int count, double y_ref, double xscale, double x0, int offset, int stride); public static extern void ImPlot_PlotShadedU8PtrInt(byte* label_id, byte* values, int count, double y_ref, double xscale, double x0, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotShadedS16PtrIntdoubledoubleInt(byte* label_id, short* values, int count, double y_ref, double xscale, double x0, int offset, int stride); public static extern void ImPlot_PlotShadedS16PtrInt(byte* label_id, short* values, int count, double y_ref, double xscale, double x0, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotShadedU16PtrIntdoubledoubleInt(byte* label_id, ushort* values, int count, double y_ref, double xscale, double x0, int offset, int stride); public static extern void ImPlot_PlotShadedU16PtrInt(byte* label_id, ushort* values, int count, double y_ref, double xscale, double x0, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotShadedS32PtrIntdoubledoubleInt(byte* label_id, int* values, int count, double y_ref, double xscale, double x0, int offset, int stride); public static extern void ImPlot_PlotShadedS32PtrInt(byte* label_id, int* values, int count, double y_ref, double xscale, double x0, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotShadedU32PtrIntdoubledoubleInt(byte* label_id, uint* values, int count, double y_ref, double xscale, double x0, int offset, int stride); public static extern void ImPlot_PlotShadedU32PtrInt(byte* label_id, uint* values, int count, double y_ref, double xscale, double x0, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotShadedS64PtrIntdoubledoubleInt(byte* label_id, long* values, int count, double y_ref, double xscale, double x0, int offset, int stride); public static extern void ImPlot_PlotShadedS64PtrInt(byte* label_id, long* values, int count, double y_ref, double xscale, double x0, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotShadedU64PtrIntdoubledoubleInt(byte* label_id, ulong* values, int count, double y_ref, double xscale, double x0, int offset, int stride); public static extern void ImPlot_PlotShadedU64PtrInt(byte* label_id, ulong* values, int count, double y_ref, double xscale, double x0, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotShadedFloatPtrFloatPtrIntInt(byte* label_id, float* xs, float* ys, int count, double y_ref, int offset, int stride); public static extern void ImPlot_PlotShadedFloatPtrFloatPtrInt(byte* label_id, float* xs, float* ys, int count, double y_ref, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotShadeddoublePtrdoublePtrIntInt(byte* label_id, double* xs, double* ys, int count, double y_ref, int offset, int stride); public static extern void ImPlot_PlotShadeddoublePtrdoublePtrInt(byte* label_id, double* xs, double* ys, int count, double y_ref, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotShadedS8PtrS8PtrIntInt(byte* label_id, sbyte* xs, sbyte* ys, int count, double y_ref, int offset, int stride); public static extern void ImPlot_PlotShadedS8PtrS8PtrInt(byte* label_id, sbyte* xs, sbyte* ys, int count, double y_ref, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotShadedU8PtrU8PtrIntInt(byte* label_id, byte* xs, byte* ys, int count, double y_ref, int offset, int stride); public static extern void ImPlot_PlotShadedU8PtrU8PtrInt(byte* label_id, byte* xs, byte* ys, int count, double y_ref, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotShadedS16PtrS16PtrIntInt(byte* label_id, short* xs, short* ys, int count, double y_ref, int offset, int stride); public static extern void ImPlot_PlotShadedS16PtrS16PtrInt(byte* label_id, short* xs, short* ys, int count, double y_ref, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotShadedU16PtrU16PtrIntInt(byte* label_id, ushort* xs, ushort* ys, int count, double y_ref, int offset, int stride); public static extern void ImPlot_PlotShadedU16PtrU16PtrInt(byte* label_id, ushort* xs, ushort* ys, int count, double y_ref, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotShadedS32PtrS32PtrIntInt(byte* label_id, int* xs, int* ys, int count, double y_ref, int offset, int stride); public static extern void ImPlot_PlotShadedS32PtrS32PtrInt(byte* label_id, int* xs, int* ys, int count, double y_ref, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotShadedU32PtrU32PtrIntInt(byte* label_id, uint* xs, uint* ys, int count, double y_ref, int offset, int stride); public static extern void ImPlot_PlotShadedU32PtrU32PtrInt(byte* label_id, uint* xs, uint* ys, int count, double y_ref, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotShadedS64PtrS64PtrIntInt(byte* label_id, long* xs, long* ys, int count, double y_ref, int offset, int stride); public static extern void ImPlot_PlotShadedS64PtrS64PtrInt(byte* label_id, long* xs, long* ys, int count, double y_ref, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotShadedU64PtrU64PtrIntInt(byte* label_id, ulong* xs, ulong* ys, int count, double y_ref, int offset, int stride); public static extern void ImPlot_PlotShadedU64PtrU64PtrInt(byte* label_id, ulong* xs, ulong* ys, int count, double y_ref, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotShadedFloatPtrFloatPtrFloatPtr(byte* label_id, float* xs, float* ys1, float* ys2, int count, int offset, int stride); public static extern void ImPlot_PlotShadedFloatPtrFloatPtrFloatPtr(byte* label_id, float* xs, float* ys1, float* ys2, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
@ -542,6 +580,26 @@ namespace ImPlotNET
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotToPixelsdouble(Vector2* pOut, double x, double y, ImPlotYAxis y_axis); public static extern void ImPlot_PlotToPixelsdouble(Vector2* pOut, double x, double y, ImPlotYAxis y_axis);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotVLinesFloatPtr(byte* label_id, float* xs, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotVLinesdoublePtr(byte* label_id, double* xs, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotVLinesS8Ptr(byte* label_id, sbyte* xs, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotVLinesU8Ptr(byte* label_id, byte* xs, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotVLinesS16Ptr(byte* label_id, short* xs, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotVLinesU16Ptr(byte* label_id, ushort* xs, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotVLinesS32Ptr(byte* label_id, int* xs, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotVLinesU32Ptr(byte* label_id, uint* xs, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotVLinesS64Ptr(byte* label_id, long* xs, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PlotVLinesU64Ptr(byte* label_id, ulong* xs, int count, int offset, int stride);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PopColormap(int count); public static extern void ImPlot_PopColormap(int count);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_PopPlotClipRect(); public static extern void ImPlot_PopPlotClipRect();
@ -602,7 +660,7 @@ namespace ImPlotNET
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_SetPlotYAxis(ImPlotYAxis y_axis); public static extern void ImPlot_SetPlotYAxis(ImPlotYAxis y_axis);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_ShowColormapScale(double scale_min, double scale_max, float height); public static extern void ImPlot_ShowColormapScale(double scale_min, double scale_max, Vector2 size);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern byte ImPlot_ShowColormapSelector(byte* label); public static extern byte ImPlot_ShowColormapSelector(byte* label);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
@ -624,10 +682,6 @@ namespace ImPlotNET
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlot_StyleColorsLight(ImPlotStyle* dst); public static extern void ImPlot_StyleColorsLight(ImPlotStyle* dst);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern void ImPlotInputMap_destroy(ImPlotInputMap* self);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern ImPlotInputMap* ImPlotInputMap_ImPlotInputMap();
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern byte ImPlotLimits_ContainsPlotPoInt(ImPlotLimits* self, ImPlotPoint p); public static extern byte ImPlotLimits_ContainsPlotPoInt(ImPlotLimits* self, ImPlotPoint p);
[DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)] [DllImport("cimplot", CallingConvention = CallingConvention.Cdecl)]
public static extern byte ImPlotLimits_Containsdouble(ImPlotLimits* self, double x, double y); public static extern byte ImPlotLimits_Containsdouble(ImPlotLimits* self, double x, double y);

@ -32,6 +32,7 @@ namespace ImPlotNET
public Vector2 LegendSpacing; public Vector2 LegendSpacing;
public Vector2 MousePosPadding; public Vector2 MousePosPadding;
public Vector2 AnnotationPadding; public Vector2 AnnotationPadding;
public Vector2 FitPadding;
public Vector2 PlotDefaultSize; public Vector2 PlotDefaultSize;
public Vector2 PlotMinSize; public Vector2 PlotMinSize;
public Vector4 Colors_0; public Vector4 Colors_0;
@ -95,6 +96,7 @@ namespace ImPlotNET
public ref Vector2 LegendSpacing => ref Unsafe.AsRef<Vector2>(&NativePtr->LegendSpacing); public ref Vector2 LegendSpacing => ref Unsafe.AsRef<Vector2>(&NativePtr->LegendSpacing);
public ref Vector2 MousePosPadding => ref Unsafe.AsRef<Vector2>(&NativePtr->MousePosPadding); public ref Vector2 MousePosPadding => ref Unsafe.AsRef<Vector2>(&NativePtr->MousePosPadding);
public ref Vector2 AnnotationPadding => ref Unsafe.AsRef<Vector2>(&NativePtr->AnnotationPadding); public ref Vector2 AnnotationPadding => ref Unsafe.AsRef<Vector2>(&NativePtr->AnnotationPadding);
public ref Vector2 FitPadding => ref Unsafe.AsRef<Vector2>(&NativePtr->FitPadding);
public ref Vector2 PlotDefaultSize => ref Unsafe.AsRef<Vector2>(&NativePtr->PlotDefaultSize); public ref Vector2 PlotDefaultSize => ref Unsafe.AsRef<Vector2>(&NativePtr->PlotDefaultSize);
public ref Vector2 PlotMinSize => ref Unsafe.AsRef<Vector2>(&NativePtr->PlotMinSize); public ref Vector2 PlotMinSize => ref Unsafe.AsRef<Vector2>(&NativePtr->PlotMinSize);
public RangeAccessor<Vector4> Colors => new RangeAccessor<Vector4>(&NativePtr->Colors_0, 24); public RangeAccessor<Vector4> Colors => new RangeAccessor<Vector4>(&NativePtr->Colors_0, 24);

@ -26,8 +26,9 @@ namespace ImPlotNET
LegendSpacing = 21, LegendSpacing = 21,
MousePosPadding = 22, MousePosPadding = 22,
AnnotationPadding = 23, AnnotationPadding = 23,
PlotDefaultSize = 24, FitPadding = 24,
PlotMinSize = 25, PlotDefaultSize = 25,
COUNT = 26, PlotMinSize = 26,
COUNT = 27,
} }
} }

Loading…
Cancel
Save