diff --git a/cimgui.cpp b/cimgui.cpp index 30a8ed9..15791ad 100644 --- a/cimgui.cpp +++ b/cimgui.cpp @@ -4307,6 +4307,11 @@ CIMGUI_API float igGET_FLT_MAX() return FLT_MAX; } +CIMGUI_API float igGET_FLT_MIN() +{ + return FLT_MIN; +} + CIMGUI_API ImVector_ImWchar* ImVector_ImWchar_create() { diff --git a/cimgui.h b/cimgui.h index d6de4f6..bf1eb72 100644 --- a/cimgui.h +++ b/cimgui.h @@ -3307,6 +3307,8 @@ CIMGUI_API void igLogText(CONST char *fmt, ...); CIMGUI_API void ImGuiTextBuffer_appendf(struct ImGuiTextBuffer *buffer, const char *fmt, ...); //for getting FLT_MAX in bindings CIMGUI_API float igGET_FLT_MAX(); +//for getting FLT_MIN in bindings +CIMGUI_API float igGET_FLT_MIN(); CIMGUI_API ImVector_ImWchar* ImVector_ImWchar_create(); diff --git a/generator/cimgui_template.cpp b/generator/cimgui_template.cpp index c6b2ffa..ef981e0 100644 --- a/generator/cimgui_template.cpp +++ b/generator/cimgui_template.cpp @@ -35,6 +35,11 @@ CIMGUI_API float igGET_FLT_MAX() return FLT_MAX; } +CIMGUI_API float igGET_FLT_MIN() +{ + return FLT_MIN; +} + CIMGUI_API ImVector_ImWchar* ImVector_ImWchar_create() { diff --git a/generator/cimgui_template.h b/generator/cimgui_template.h index 6d5e879..73c483a 100644 --- a/generator/cimgui_template.h +++ b/generator/cimgui_template.h @@ -55,6 +55,8 @@ CIMGUI_API void igLogText(CONST char *fmt, ...); CIMGUI_API void ImGuiTextBuffer_appendf(struct ImGuiTextBuffer *buffer, const char *fmt, ...); //for getting FLT_MAX in bindings CIMGUI_API float igGET_FLT_MAX(); +//for getting FLT_MIN in bindings +CIMGUI_API float igGET_FLT_MIN(); CIMGUI_API ImVector_ImWchar* ImVector_ImWchar_create(); diff --git a/generator/generator.lua b/generator/generator.lua index 7863010..670a419 100644 --- a/generator/generator.lua +++ b/generator/generator.lua @@ -168,13 +168,16 @@ local function get_defines(t) end return ret end - --subtitution of FLT_MAX value for FLT_MAX + --subtitution of FLT_MAX value for FLT_MAX or FLT_MIN local function set_defines(fdefs) + local FLT_MINpat = gdefines.FLT_MIN:gsub("([%.%-])","%%%1") for k,defT in pairs(fdefs) do for i,def in ipairs(defT) do for name,default in pairs(def.defaults) do if default == gdefines.FLT_MAX then def.defaults[name] = "FLT_MAX" + elseif default:match(FLT_MINpat) then + def.defaults[name] = default:gsub(FLT_MINpat,"FLT_MIN") end end end @@ -330,7 +333,7 @@ end -------------------------------------------------------- --get imgui.h version and IMGUI_HAS_DOCK-------------------------- --get some defines wont work for cl ---------------- -gdefines = get_defines{"IMGUI_VERSION","FLT_MAX","IMGUI_HAS_DOCK"} +gdefines = get_defines{"IMGUI_VERSION","FLT_MAX","FLT_MIN","IMGUI_HAS_DOCK"} --this will work for cl local pipe,err = io.open("../imgui/imgui.h","r") if not pipe then diff --git a/generator/output/definitions.json b/generator/output/definitions.json index 9be504f..acf914e 100644 --- a/generator/output/definitions.json +++ b/generator/output/definitions.json @@ -23163,7 +23163,7 @@ "cimguiname": "igProgressBar", "defaults": { "overlay": "NULL", - "size_arg": "ImVec2(-1.17549435082228750796873653722224568e-38F,0)" + "size_arg": "ImVec2(-FLT_MIN,0)" }, "funcname": "ProgressBar", "location": "imgui:469", diff --git a/generator/output/definitions.lua b/generator/output/definitions.lua index 0841661..15475ae 100644 --- a/generator/output/definitions.lua +++ b/generator/output/definitions.lua @@ -19615,7 +19615,7 @@ defs["igProgressBar"][1]["call_args"] = "(fraction,size_arg,overlay)" defs["igProgressBar"][1]["cimguiname"] = "igProgressBar" defs["igProgressBar"][1]["defaults"] = {} defs["igProgressBar"][1]["defaults"]["overlay"] = "NULL" -defs["igProgressBar"][1]["defaults"]["size_arg"] = "ImVec2(-1.17549435082228750796873653722224568e-38F,0)" +defs["igProgressBar"][1]["defaults"]["size_arg"] = "ImVec2(-FLT_MIN,0)" defs["igProgressBar"][1]["funcname"] = "ProgressBar" defs["igProgressBar"][1]["location"] = "imgui:469" defs["igProgressBar"][1]["namespace"] = "ImGui"