diff --git a/cimgui.h b/cimgui.h index 86bd05f..54da3f0 100644 --- a/cimgui.h +++ b/cimgui.h @@ -3269,6 +3269,8 @@ struct ImFontBuilderIO }; #define IMGUI_HAS_DOCK 1 +#define ImDrawCallback_ResetRenderState (ImDrawCallback)(-8) + #else struct GLFWwindow; struct SDL_Window; diff --git a/generator/generator.lua b/generator/generator.lua index b965d0e..6a1d766 100644 --- a/generator/generator.lua +++ b/generator/generator.lua @@ -250,6 +250,9 @@ local function cimgui_generation(parser) if gdefines.IMGUI_HAS_DOCK then cstructsstr = cstructsstr.."\n#define IMGUI_HAS_DOCK 1\n" end + if gdefines.ImDrawCallback_ResetRenderState then + cstructsstr = cstructsstr.."\n#define ImDrawCallback_ResetRenderState "..gdefines.ImDrawCallback_ResetRenderState.."\n" + end if gdefines.IMGUI_HAS_IMSTR then if not (NOCHAR or NOIMSTRV) then cstructsstr = cstructsstr.."\n#define IMGUI_HAS_IMSTR 1\n" @@ -276,8 +279,8 @@ end -------------------------------------------------------- --get imgui.h version and IMGUI_HAS_DOCK-------------------------- --defines for the cl compiler must be present in the print_defines.cpp file -gdefines = get_defines{"IMGUI_VERSION","IMGUI_VERSION_NUM","FLT_MAX","FLT_MIN","IMGUI_HAS_DOCK","IMGUI_HAS_IMSTR"} - +gdefines = get_defines{"IMGUI_VERSION","IMGUI_VERSION_NUM","FLT_MAX","FLT_MIN","IMGUI_HAS_DOCK","IMGUI_HAS_IMSTR","ImDrawCallback_ResetRenderState"} +--cpp2ffi.prtable(gdefines) if gdefines.IMGUI_HAS_DOCK then gdefines.IMGUI_HAS_DOCK = true end if gdefines.IMGUI_HAS_IMSTR then gdefines.IMGUI_HAS_IMSTR = true end diff --git a/generator/print_defines.cpp b/generator/print_defines.cpp index b47b42b..b49fd64 100644 --- a/generator/print_defines.cpp +++ b/generator/print_defines.cpp @@ -27,3 +27,7 @@ #ifdef FLT_MAX #pragma message(CIMGUI_DEFSTRING(FLT_MAX)) #endif + +#ifdef ImDrawCallback_ResetRenderState +#pragma message(CIMGUI_DEFSTRING(ImDrawCallback_ResetRenderState)) +#endif