Merge branch 'docking_inter'

This commit is contained in:
sonoro1234
2024-11-18 18:26:51 +01:00
23 changed files with 4508 additions and 3960 deletions

View File

@@ -1,12 +1,4 @@
#ifdef IMGUI_ENABLE_FREETYPE
#ifndef CIMGUI_FREETYPE
#error "IMGUI_FREETYPE should be defined for Freetype linking"
#endif
#else
#ifdef CIMGUI_FREETYPE
#error "IMGUI_FREETYPE should not be defined without freetype generated cimgui"
#endif
#endif
#include "./imgui/imgui.h"
#ifdef IMGUI_ENABLE_FREETYPE
#include "./imgui/misc/freetype/imgui_freetype.h"

View File

@@ -47,7 +47,7 @@ typedef union SDL_Event SDL_Event;
/////////////////////////hand written functions
//no LogTextV
CIMGUI_API void igLogText(CONST char *fmt, ...);
CIMGUI_API void igLogText(const char *fmt, ...);
//no appendfV
CIMGUI_API void ImGuiTextBuffer_appendf(struct ImGuiTextBuffer *buffer, const char *fmt, ...);
//for getting FLT_MAX in bindings

View File

@@ -432,20 +432,15 @@ local function parseItems(txt,linenumdict, itparent, dumpit)
loca = table.remove(loca,1)
end
if not loca then
print("not loca",string.format("%q , %q ",itemold,itemfirstline),#itemfirstline)
-- for k,v in pairs(linenumdict) do
-- if k:match(itemfirstline) then
-- print(string.format("%q",k),#k)
-- end
-- end
--error"no entry in linenumdict"
--take locat from parent
if itparent and itparent.locat then
loca = itparent.locat
print("parent loca",string.format("%q , %q ",itemold,itemfirstline),#itemfirstline,loca)
else
loca = 0
--error"no entry in linenumdict"
print("not loca",string.format("%q , %q ",itemold,itemfirstline),#itemfirstline,loca)
end
end
else
error"no linenumdict"
@@ -481,7 +476,7 @@ local function parseItems(txt,linenumdict, itparent, dumpit)
end
return itemarr,items
end
M.parseItems = parseItems
--M.parseItems = parseItems
local function name_overloadsAlgo(v)
local aa = {} -- args
@@ -673,14 +668,18 @@ local function CleanImU32(def)
for i=1,#bb do res = res + bb[i] end
return res
end
local function moveptr(line)
line = line:gsub("%s*%*","%*")
line = line:gsub("%*([%w_])","%* %1")
line = line:gsub("(%(%*)%s","%1")
return line
end
local function parseFunction(self,stname,itt,namespace,locat)
local lineorig,comment = split_comment(itt.item)
line = clean_spaces(lineorig)
--move *
line = line:gsub("%s*%*","%*")
line = line:gsub("%*([%w_])","%* %1")
line = line:gsub("(%(%*)%s","%1")
line = moveptr(line)
--print(line)
--clean implemetation
@@ -719,6 +718,21 @@ local function parseFunction(self,stname,itt,namespace,locat)
error"parseFunction not getting args"
end
--get manuals args and ret
local cname = self.getCname(stname,funcname, namespace) --cimguiname
local manpars = self.manuals[cname]
local ismanual
if manpars then
if type(manpars) == "boolean" then
print("warning: unable to get args and ret from "..cname)
print("did you forgot to use set_manuals? ")
else
ismanual = true
args, ret = manpars.args, manpars.ret
args = moveptr(args)
ret = moveptr(ret)
end
end
local argsp = args:sub(2,-2)..","
local argsTa = {}
@@ -734,6 +748,8 @@ local function parseFunction(self,stname,itt,namespace,locat)
argsTa[#argsTa+1] = tynam
end
end
--- templates in args
for i,ar in ipairs(argsTa) do
--TODO several diferent templates
@@ -747,7 +763,7 @@ local function parseFunction(self,stname,itt,namespace,locat)
end
argsTa[i] = te and code2 or ar --ar:gsub("<([%w_%*%s]+)>",te) --ImVector
end
--get typ, name and defaults
local functype_re = "^%s*[%w%s%*]+%(%*%s*[%w_]+%)%([^%(%)]*%)"
local functype_reex = "^(%s*[%w%s%*]+)%(%*%s*([%w_]+)%)(%([^%(%)]*%))"
@@ -807,6 +823,7 @@ local function parseFunction(self,stname,itt,namespace,locat)
end
end
local argsArr = argsTa2
--recreate argscsinpars, call_args and signature from argsArr
@@ -838,7 +855,7 @@ local function parseFunction(self,stname,itt,namespace,locat)
caar = "()"
signat = "()" .. (extraconst or "")
end
--if ismanual then print("manual",asp, caar, signat) end
------------------------------
if not ret and stname then --must be constructors
@@ -871,6 +888,9 @@ local function parseFunction(self,stname,itt,namespace,locat)
ar.default = nil
end
end
--if ismanual then M.prtable(argsArr) end
defT.templated = self.typenames[stname] and true
defT.namespace = namespace
defT.cimguiname = cimguiname
@@ -901,6 +921,7 @@ local function parseFunction(self,stname,itt,namespace,locat)
-- end
end
defsT[cimguiname][signat] = defT
end
local function itemsCount(items)
print"------------items"
@@ -913,8 +934,8 @@ end
local function AdjustArguments(FP)
for fun,defs in pairs(FP.defsT) do
--struct function but no constructors or static functions
if defs[1].stname~="" and defs[1].ret and not defs[1].is_static_function then
--struct function but no constructors or static functions or manuals
if defs[1].stname~="" and defs[1].ret and not defs[1].is_static_function and not defs[1].manual then
--print("adjusting",fun)
for i,def in ipairs(defs) do
local empty = def.args:match("^%(%)") --no args
@@ -1111,14 +1132,15 @@ local function ADDdestructors(FP)
error"names should be equal"
end
local def = {}
local isrealdestructor = keep_dest_locat[defT[1].stname] and true
def.stname = defT[1].stname
def.templated = defT[1].templated
def.location = keep_dest_locat[defT[1].stname]
def.location = keep_dest_locat[defT[1].stname] or defT[1].location
def.ret = "void"
def.ov_cimguiname = def.stname.."_destroy"
def.cimguiname = def.ov_cimguiname
def.destructor = true
def.realdestructor = def.location and true
def.realdestructor = isrealdestructor
def.args = "("..def.stname.."* self)"
def.call_args = "(self)"
def.signature = "("..def.stname.."*)"
@@ -1270,7 +1292,7 @@ function M.Parser()
self.typedefs_dict[key] = linet
elseif not line:match"typedef%s*struct" then --discard typedef struct
print("typedef not found")
print(key,value,line)
print(key,value,line,cdef[1],cdef[2])
end
end
end
@@ -1295,6 +1317,7 @@ function M.Parser()
it.name = it.item:match("class%s+(%S+)")
print("cleaning class",it.name)
it.item = it.item:gsub("private:.+};$","};")
--it.item = it.item:gsub("private:","")
it.item = it.item:gsub("public:","")
it.item = it.item:gsub("enum%s*class","enum")
end
@@ -1343,7 +1366,7 @@ function M.Parser()
return table.concat(txtclean)
end
function par:parseItems()
self:initTypedefsDict()
--self:initTypedefsDict()
self.linenumdict = {}
local cdefs2 = {}
@@ -1408,6 +1431,20 @@ function M.Parser()
function par:printItems()
printItems(items)
end
function par:set_manuals(manuals, modulen, erase)
erase = erase or {"CIMGUI_API"}
local moddata = read_data("./"..modulen.."_template.h")
for k,v in pairs(manuals) do
local ret = moddata:match("([^%(%):,\n;]+[%*%s])%s?~?"..k.."%b()")
for i,ww in ipairs(erase) do
ret = ret:gsub(ww,"")
end
local args = moddata:match(k.."%s*(%b())")
manuals[k] = {args = args, ret = ret}
--print(k,args,ret)
end
self.manuals = manuals
end
par.parseFunction = parseFunction
local uniques = {}
local function check_unique_typedefs(l,uniques)
@@ -1582,8 +1619,9 @@ function M.Parser()
if parnam~="" then parnam = parnam:sub(1,-3) end
return parnam
end
function par:header_text_insert(tab,txt,it)
table.insert(tab, txt)
end
function par:gen_structs_and_enums()
print"--------------gen_structs_and_enums"
--M.prtable(self.typenames)
@@ -1625,14 +1663,16 @@ function M.Parser()
end
end
--table.insert(outtabpre,it2)
table.insert(outtab,it2)
--table.insert(outtab,it2)
self:header_text_insert(outtab, it2, it)
-- add typedef after struct name
if it.re_name == "vardef_re" and it.item:match"^%s*struct" then
local stname = it.item:match("struct%s*(%S+)%s*;")
--table.insert(typedefs_table,"typedef struct "..stname.." "..stname..";\n")
local tst = "\ntypedef struct "..stname.." "..stname..";"
if check_unique_typedefs(tst,uniques) then
table.insert(outtabpre,tst)
--table.insert(outtabpre,tst)
self:header_text_insert(outtabpre ,tst, it)
end
self.typedefs_dict[stname]="struct "..stname
if it.parent then --must be struct name; inside namespace
@@ -1658,11 +1698,15 @@ function M.Parser()
end
end
enumbody = "{"..enumbody.."\n}"
table.insert(outtab,"\ntypedef enum ".. enumbody..enumname..";"..extraenums)
--table.insert(outtab,"\ntypedef enum ".. enumbody..enumname..";"..extraenums)
local it2 = "\ntypedef enum ".. enumbody..enumname..";"..extraenums
self:header_text_insert(outtab, it2, it)
else
local enumbody = it.item:match"(%b{})"
enumbody = clean_comments(enumbody)
table.insert(outtab,"\ntypedef enum ".. enumbody..enumname..";")
--table.insert(outtab,"\ntypedef enum ".. enumbody..enumname..";")
local it2 = "\ntypedef enum ".. enumbody..enumname..";"
self:header_text_insert(outtab, it2, it)
end
if it.parent then
if it.parent.re_name == "namespace_re" then
@@ -1674,7 +1718,8 @@ function M.Parser()
end
else --unamed enum just repeat declaration
local cl_item = clean_comments(it.item)
table.insert(outtab,cl_item)
--table.insert(outtab,cl_item)
self:header_text_insert(outtab, cl_item, it)
print("unnamed enum",cl_item)
end
elseif it.re_name == "struct_re" or it.re_name == "typedef_st_re" or it.re_name == "class_re" then
@@ -1686,12 +1731,14 @@ function M.Parser()
--table.insert(typedefs_table,"typedef struct "..structname.." "..structname..";\n")
local tst = "\ntypedef struct "..structname.." "..structname..";"
if check_unique_typedefs(tst,uniques) then
table.insert(outtab,tst)
--table.insert(outtab,tst)
self:header_text_insert(outtab, tst, it)
end
self.typedefs_dict[structname]="struct "..structname
--dont insert child structs as they are inserted before parent struct
if not (it.parent and it.parent.re_name == "struct_re") then
table.insert(outtab,predec .. cleanst)
--table.insert(outtab,predec .. cleanst)
self:header_text_insert(outtab, predec .. cleanst, it)
end
end
if it.parent then --and (it.parent.re_name == "struct_re" or it.parent.re_name == "typedef_st_re" then
@@ -1864,7 +1911,7 @@ function M.Parser()
function par:gen_structs_and_enums_table()
print"--------------gen_structs_and_enums_table"
local outtab = {enums={},structs={},locations={},enumtypes={},struct_comments={},enum_comments={}}
self.typedefs_table = {}
--self.typedefs_table = {}
local enumsordered = {}
unnamed_enum_counter = 0
self.templated_structs = {}
@@ -1887,7 +1934,31 @@ function M.Parser()
if it.re_name == "typedef_re" and not it.parent then
local typedefdef,typedefname = it.item:match"typedef(.+)%s([^%s;]+);$"
typedefname = strip(typedefname)
self.typedefs_table[typedefname] = strip(typedefdef)
--self.typedefs_table[typedefname] = strip(typedefdef)
self.typedefs_dict[typedefname] = strip(typedefdef)
elseif it.re_name == "functypedef_re" then
-- "^\n*%s*(typedef[%w%s%*_]+%([^*]*%*?%s*[%w_]+%s*%)%s*%b()%s*;)"
local key = it.item:match("%(%*([%w_]+)%)%([^%(%)]*%)")
if key then
local linet = it.item
linet = linet:gsub("[\n%s]+typedef ","")
linet = linet:gsub("%(%*("..key..")%)","(*)")
self.typedefs_dict[key] = linet
--print("functypedef_re",1,linet)--,clean_functypedef(line))
else
--try function typedef
key = it.item:match("%(([%w_]+)%)%([^%(%)]*%)")
if key then
local linet = it.item
linet = linet:gsub("typedef ","")
linet = linet:gsub("%(("..key..")%)","()")
self.typedefs_dict[key] = linet
print("functypedef_re",2, it.item)
else
print("func typedef not found")
print(it.item)
end
end
end
elseif it.re_name == "enum_re" then
enums_for_table(it, outtab, enumsordered)
@@ -2358,7 +2429,8 @@ local function location(file,locpathT,defines,COMPILER,keepemptylines)
end
M.location = location
---------------------- C writing functions
local function ImGui_f_implementation(outtab,def)
local function ImGui_f_implementation(def)
local outtab = {}
local ptret = def.retref and "&" or ""
table.insert(outtab,"CIMGUI_API".." "..def.ret.." "..def.ov_cimguiname..def.args.."\n")
table.insert(outtab,"{\n")
@@ -2385,8 +2457,10 @@ local function ImGui_f_implementation(outtab,def)
table.insert(outtab," return "..ptret..namespace..def.funcname..def.call_args..";\n")
end
table.insert(outtab,"}\n")
return table.concat(outtab, "")
end
local function struct_f_implementation(outtab,def)
local function struct_f_implementation(def)
local outtab = {}
local empty = def.args:match("^%(%)") --no args
local ptret = def.retref and "&" or ""
@@ -2415,6 +2489,7 @@ local function struct_f_implementation(outtab,def)
table.insert(outtab," return "..ptret.."self->"..def.funcname..def.call_args..";\n")
end
table.insert(outtab,"}\n")
return table.concat(outtab, "")
end
local function func_implementation(FP)
@@ -2432,31 +2507,38 @@ local function func_implementation(FP)
local manual = FP.get_manuals(def)
if not custom and not manual and not def.templated and not FP.get_skipped(def) then
if def.constructor then
local tab = {}
assert(def.stname ~= "","constructor without struct")
local empty = def.args:match("^%(%)") --no args
table.insert(outtab,"CIMGUI_API "..def.stname.."* "..def.ov_cimguiname..(empty and "(void)" or def.args).."\n")
table.insert(outtab,"{\n")
table.insert(outtab," return IM_NEW("..def.stname..")"..def.call_args..";\n")
table.insert(outtab,"}\n")
table.insert(tab,"CIMGUI_API "..def.stname.."* "..def.ov_cimguiname..(empty and "(void)" or def.args).."\n")
table.insert(tab,"{\n")
table.insert(tab," return IM_NEW("..def.stname..")"..def.call_args..";\n")
table.insert(tab,"}\n")
if FP.CONSTRUCTORS_GENERATION then
table.insert(outtab,"CIMGUI_API void "..def.ov_cimguiname.."_Construct("..def.stname.."* self"..(empty and "" or ","..def.args:sub(2,-2))..")\n")
table.insert(outtab,"{\n")
table.insert(outtab," IM_PLACEMENT_NEW(self)"..def.stname..def.call_args..";\n")
table.insert(outtab,"}\n")
table.insert(tab,"CIMGUI_API void "..def.ov_cimguiname.."_Construct("..def.stname.."* self"..(empty and "" or ","..def.args:sub(2,-2))..")\n")
table.insert(tab,"{\n")
table.insert(tab," IM_PLACEMENT_NEW(self)"..def.stname..def.call_args..";\n")
table.insert(tab,"}\n")
end
table.insert(outtab, table.concat(tab, ""))
elseif def.destructor then
local tab = {}
local args = "("..def.stname.."* self)"
local fname = def.stname.."_destroy"
table.insert(outtab,"CIMGUI_API void "..fname..args.."\n")
table.insert(outtab,"{\n")
table.insert(outtab," IM_DELETE(self);\n")
table.insert(outtab,"}\n")
table.insert(tab,"CIMGUI_API void "..fname..args.."\n")
table.insert(tab,"{\n")
table.insert(tab," IM_DELETE(self);\n")
table.insert(tab,"}\n")
table.insert(outtab, table.concat(tab, ""))
elseif def.stname == "" or def.is_static_function then
ImGui_f_implementation(outtab,def)
table.insert(outtab, ImGui_f_implementation(def))
else -- stname
struct_f_implementation(outtab,def)
table.insert(outtab, struct_f_implementation(def))
end
end
if FP.custom_function_post then
FP:custom_function_post(outtab, def)
end
until true
end
return table.concat(outtab)
@@ -2479,7 +2561,9 @@ local function func_header_generate_structs(FP)
local outtab = {}
table_do_sorted(FP.embeded_structs,function(k,v) table.insert(outtab,"typedef "..v.." "..k..";\n") end)
table_do_sorted(FP.embeded_structs,function(k,v)
table.insert(outtab,"typedef "..v.." "..k..";\n")
end)
table_do_sorted(FP.embeded_enums,function(k,v) table.insert(outtab,"typedef "..v.." "..k..";\n") end)
@@ -2516,7 +2600,7 @@ local function func_header_generate_funcs(FP)
assert(def.stname ~= "","constructor without struct")
table.insert(outtab,"CIMGUI_API "..def.stname.."* "..def.ov_cimguiname ..(empty and "(void)" or def.args)..";"..addcoment.."\n")
if FP.CONSTRUCTORS_GENERATION then
table.insert(outtab,"CIMGUI_API void "..def.ov_cimguiname.."_Construct("..def.stname.."* self"..(empty and "" or ","..def.args:sub(2,-2))..");\n")
outtab[#outtab] = outtab[#outtab].."\nCIMGUI_API void "..def.ov_cimguiname.."_Construct("..def.stname.."* self"..(empty and "" or ","..def.args:sub(2,-2))..");\n"
end
elseif def.destructor then
table.insert(outtab,"CIMGUI_API void "..def.ov_cimguiname..def.args..";"..addcoment.."\n")
@@ -2529,9 +2613,13 @@ local function func_header_generate_funcs(FP)
end
end
end
if FP.custom_function_post then
FP:custom_function_post(outtab, def)
end
else --not cimguiname
table.insert(outtab,t.comment:gsub("%%","%%%%").."\n")-- %% substitution for gsub
end
end
return outtab

View File

@@ -15,11 +15,12 @@ set PATH=%PATH%;C:\anima;C:\mingws\i686-7.2.0-release-posix-dwarf-rt_v5-rev1\min
:: set PATH=%PATH%;C:\luaGL\sources\luajit-master\luajit-master\bin\mingw32;C:\mingw32\bin;
::process files
:: arg[1] compiler name gcc, clang or cl
:: arg[2] options as words in one string: internal for imgui_internal generation, freetype for freetype generation, comments for comments generation, nochar to skip char* function version, noimstrv to skip imstrv
:: arg[2] options as words in one string: internal for imgui_internal generation, comments for comments generation, nochar to skip char* function version, noimstrv to skip imstrv
:: "constructors" adds the _Construct version of constructors
:: examples: "" "internal" "internal freetype comments"
:: arg[3..n] name of implementations to generate and/or CFLAGS (e.g. -DIMGUI_USER_CONFIG or -DIMGUI_USE_WCHAR32)
luajit ./generator.lua gcc "internal noimstrv" glfw opengl3 opengl2 sdl2 sdl3 %*
:: examples: "" "internal" "internal comments"
:: arg[3..n] name of implementations to generate and/or CFLAGS (e.g. -DIMGUI_USER_CONFIG)
::-DIMGUI_USE_WCHAR32 should not be used (is discarded)
luajit ./generator.lua gcc "internal noimstrv" glfw opengl3 opengl2 sdl2 sdl3 -DIMGUI_USE_WCHAR32 %*
::leave console open
cmd /k

View File

@@ -7,7 +7,7 @@ assert(bit,"Must use LuaJIT")
local script_args = {...}
local COMPILER = script_args[1]
local INTERNAL_GENERATION = script_args[2]:match("internal") and true or false
local FREETYPE_GENERATION = script_args[2]:match("freetype") and true or false
local FREETYPE_GENERATION = true --script_args[2]:match("freetype") and true or false
local COMMENTS_GENERATION = script_args[2]:match("comments") and true or false
local CONSTRUCTORS_GENERATION = script_args[2]:match("constructors") and true or false
local NOCHAR = script_args[2]:match("nochar") and true or false
@@ -19,6 +19,9 @@ local CPRE,CTEST
local implementations = {}
for i=3,#script_args do
if script_args[i]:match(COMPILER == "cl" and "^/" or "^%-") then
if script_args[i]:match("IMGUI_USE_WCHAR32") then
script_args[i] = "" --dont use this define
end
local key, value = script_args[i]:match("^(.+)=(.+)$")
if key and value then
CFLAGS = CFLAGS .. " " .. key .. "=\"" .. value:gsub("\"", "\\\"") .. "\"";
@@ -31,11 +34,11 @@ for i=3,#script_args do
end
if FREETYPE_GENERATION then
CFLAGS = CFLAGS .. " -DIMGUI_ENABLE_FREETYPE "
CFLAGS = CFLAGS .. " -DIMGUI_ENABLE_FREETYPE -DIMGUI_ENABLE_STB_TRUETYPE" --both builders
end
if COMPILER == "gcc" or COMPILER == "clang" or COMPILER == "zig cc" then
CPRE = COMPILER..[[ -E -DIMGUI_DISABLE_OBSOLETE_FUNCTIONS -DIMGUI_API="" -DIMGUI_IMPL_API="" ]] .. CFLAGS
CPRE = COMPILER..[[ -E -DIMGUI_DISABLE_OBSOLETE_FUNCTIONS -DIMGUI_API="" -DIMGUI_IMPL_API="" ]] .. CFLAGS
CTEST = COMPILER.." --version"
elseif COMPILER == "cl" then
CPRE = COMPILER..[[ /E /DIMGUI_DISABLE_OBSOLETE_FUNCTIONS /DIMGUI_DEBUG_PARANOID /DIMGUI_API="" /DIMGUI_IMPL_API="" ]] .. CFLAGS
@@ -214,6 +217,25 @@ local function DefsByStruct(FP)
FP.defsBystruct = structs
end
local function colapse_defines(str, define)
local num = 1
while num > 0 do
str,num = str:gsub("(#ifdef "..define..".+)".."(#endif\n+#ifdef "..define.."\n)", "%1")
end
return str
end
local wchardefine =
[[#ifdef IMGUI_USE_WCHAR32
typedef ImWchar32 ImWchar;
#else
typedef ImWchar16 ImWchar;
#endif
#ifdef IMGUI_USE_WCHAR32
#define IM_UNICODE_CODEPOINT_MAX 0x10FFFF
#else
#define IM_UNICODE_CODEPOINT_MAX 0xFFFF
#endif
]]
--generate cimgui.cpp cimgui.h
local function cimgui_generation(parser)
@@ -261,18 +283,27 @@ local function cimgui_generation(parser)
end
end
cstructsstr = colapse_defines(cstructsstr, "IMGUI_ENABLE_FREETYPE")
hstrfile = hstrfile:gsub([[#include "imgui_structs%.h"]],cstructsstr)
local cfuncsstr = func_header_generate(parser)
cfuncsstr = colapse_defines(cfuncsstr, "IMGUI_ENABLE_FREETYPE")
hstrfile = hstrfile:gsub([[#include "auto_funcs%.h"]],cfuncsstr)
--patch hstrfile for ImWchar
local num
hstrfile, num = hstrfile:gsub("typedef ImWchar16 ImWchar;", wchardefine)
assert(num == 1)
hstrfile, num = hstrfile:gsub("Used4kPagesMap%[%(0xFFFF", "Used4kPagesMap[(IM_UNICODE_CODEPOINT_MAX")
assert(num == 1)
save_data("./output/cimgui.h",cimgui_header,hstrfile)
--merge it in cimgui_template.cpp to cimgui.cpp
local cimplem = func_implementation(parser)
cimplem = colapse_defines(cimplem, "IMGUI_ENABLE_FREETYPE")
local hstrfile = read_data"./cimgui_template.cpp"
hstrfile = hstrfile:gsub([[#include "auto_funcs%.cpp"]],cimplem)
local ftdef = FREETYPE_GENERATION and "#define IMGUI_ENABLE_FREETYPE\n" or ""
local ftdef = "" --FREETYPE_GENERATION and "#define IMGUI_ENABLE_FREETYPE\n" or ""
save_data("./output/cimgui.cpp",cimgui_header, ftdef, hstrfile)
end
@@ -307,6 +338,20 @@ print("NOIMSTRV",NOIMSTRV)
print("IMGUI_HAS_DOCK",gdefines.IMGUI_HAS_DOCK)
print("IMGUI_VERSION",gdefines.IMGUI_VERSION)
local function custom_function_post(self, outtab, def)
assert(def.location)
if def.location:match("imgui_freetype") then
outtab[#outtab] = "#ifdef IMGUI_ENABLE_FREETYPE\n"..outtab[#outtab].."\n#endif\n"
end
end
local function header_text_insert(self, outtab, txt, it)
assert(it.locat)
if it.locat:match("imgui_freetype") then
table.insert(outtab, "\n#ifdef IMGUI_ENABLE_FREETYPE"..txt.."\n#endif")
else
table.insert(outtab, txt)
end
end
--funtion for parsing imgui headers
local function parseImGuiHeader(header,names)
@@ -318,7 +363,8 @@ local function parseImGuiHeader(header,names)
return pre..funcname
end
parser.cname_overloads = cimgui_overloads
parser.manuals = cimgui_manuals
--parser.manuals = cimgui_manuals
parser:set_manuals(cimgui_manuals, "cimgui")
parser.skipped = cimgui_skipped
parser.UDTs = {"ImVec2","ImVec4","ImColor","ImRect"}
--parser.gen_template_typedef = gen_template_typedef --use auto
@@ -326,6 +372,8 @@ local function parseImGuiHeader(header,names)
parser.CONSTRUCTORS_GENERATION = CONSTRUCTORS_GENERATION
parser.NOCHAR = NOCHAR
parser.NOIMSTRV = NOIMSTRV
parser.custom_function_post = custom_function_post
parser.header_text_insert = header_text_insert
local defines = parser:take_lines(CPRE..header,names,COMPILER)
return parser

View File

@@ -13,10 +13,11 @@
#process files
# arg[1] compiler name gcc, clang, or cl
# arg[2] options as words in one string: internal for imgui_internal generation, freetype for freetype generation, comments for comments generation, nochar to skip char* function version, noimstrv to skip imstrv
# arg[2] options as words in one string: internal for imgui_internal generation, comments for comments generation, nochar to skip char* function version, noimstrv to skip imstrv
# "constructors" adds the _Construct version of constructors
# examples: "" "internal" "internal freetype" "comments internal"
# arg[3..n] name of implementations to generate and/or CLFLAGS (e.g. -DIMGUI_USER_CONFIG or -DIMGUI_USE_WCHAR32)
# examples: "" "internal" "comments internal"
# arg[3..n] name of implementations to generate and/or CLFLAGS (e.g. -DIMGUI_USER_CONFIG)
# -DIMGUI_USE_WCHAR32 should not be used as it is generated for both ImWchar
#
# parse command line arguments
@@ -24,7 +25,7 @@
POSITIONAL_ARGS=()
TARGETS="internal noimstrv"
CFLAGS="glfw opengl3 opengl2 sdl2"
CFLAGS="glfw opengl3 opengl2 sdl2 sdl3"
help() {
cat <<EOF

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ ImColor_ImColor 5
5 nil ImColor_ImColor_U32 (ImU32)
ImDrawList_AddText 2
1 void ImDrawList_AddText_Vec2 (const ImVec2,ImU32,const char*,const char*)
2 void ImDrawList_AddText_FontPtr (const ImFont*,float,const ImVec2,ImU32,const char*,const char*,float,const ImVec4*)
2 void ImDrawList_AddText_FontPtr (ImFont*,float,const ImVec2,ImU32,const char*,const char*,float,const ImVec4*)
ImGuiPtrOrIndex_ImGuiPtrOrIndex 2
1 nil ImGuiPtrOrIndex_ImGuiPtrOrIndex_Ptr (void*)
2 nil ImGuiPtrOrIndex_ImGuiPtrOrIndex_Int (int)

View File

@@ -1276,6 +1276,58 @@
"value": "ImGuiFocusedFlags_RootWindow | ImGuiFocusedFlags_ChildWindows"
}
],
"ImGuiFreeTypeBuilderFlags": [
{
"calc_value": 1,
"name": "ImGuiFreeTypeBuilderFlags_NoHinting",
"value": "1 << 0"
},
{
"calc_value": 2,
"name": "ImGuiFreeTypeBuilderFlags_NoAutoHint",
"value": "1 << 1"
},
{
"calc_value": 4,
"name": "ImGuiFreeTypeBuilderFlags_ForceAutoHint",
"value": "1 << 2"
},
{
"calc_value": 8,
"name": "ImGuiFreeTypeBuilderFlags_LightHinting",
"value": "1 << 3"
},
{
"calc_value": 16,
"name": "ImGuiFreeTypeBuilderFlags_MonoHinting",
"value": "1 << 4"
},
{
"calc_value": 32,
"name": "ImGuiFreeTypeBuilderFlags_Bold",
"value": "1 << 5"
},
{
"calc_value": 64,
"name": "ImGuiFreeTypeBuilderFlags_Oblique",
"value": "1 << 6"
},
{
"calc_value": 128,
"name": "ImGuiFreeTypeBuilderFlags_Monochrome",
"value": "1 << 7"
},
{
"calc_value": 256,
"name": "ImGuiFreeTypeBuilderFlags_LoadColor",
"value": "1 << 8"
},
{
"calc_value": 512,
"name": "ImGuiFreeTypeBuilderFlags_Bitmap",
"value": "1 << 9"
}
],
"ImGuiHoveredFlagsPrivate_": [
{
"calc_value": 245760,
@@ -1944,6 +1996,11 @@
"name": "ImGuiKey_None",
"value": "0"
},
{
"calc_value": 512,
"name": "ImGuiKey_NamedKey_BEGIN",
"value": "512"
},
{
"calc_value": 512,
"name": "ImGuiKey_Tab",
@@ -2716,7 +2773,7 @@
},
{
"calc_value": 666,
"name": "ImGuiKey_COUNT",
"name": "ImGuiKey_NamedKey_END",
"value": "666"
},
{
@@ -2749,30 +2806,10 @@
"name": "ImGuiMod_Mask_",
"value": "0xF000"
},
{
"calc_value": 512,
"name": "ImGuiKey_NamedKey_BEGIN",
"value": "512"
},
{
"calc_value": 666,
"name": "ImGuiKey_NamedKey_END",
"value": "ImGuiKey_COUNT"
},
{
"calc_value": 154,
"name": "ImGuiKey_NamedKey_COUNT",
"value": "ImGuiKey_NamedKey_END - ImGuiKey_NamedKey_BEGIN"
},
{
"calc_value": 154,
"name": "ImGuiKey_KeysData_SIZE",
"value": "ImGuiKey_NamedKey_COUNT"
},
{
"calc_value": 512,
"name": "ImGuiKey_KeysData_OFFSET",
"value": "ImGuiKey_NamedKey_BEGIN"
}
],
"ImGuiLayoutType_": [
@@ -2844,31 +2881,36 @@
"value": "10"
}
],
"ImGuiLogType": [
"ImGuiLogFlags_": [
{
"calc_value": 0,
"name": "ImGuiLogType_None",
"name": "ImGuiLogFlags_None",
"value": "0"
},
{
"calc_value": 1,
"name": "ImGuiLogType_TTY",
"value": "1"
"name": "ImGuiLogFlags_OutputTTY",
"value": "1 << 0"
},
{
"calc_value": 2,
"name": "ImGuiLogType_File",
"value": "2"
},
{
"calc_value": 3,
"name": "ImGuiLogType_Buffer",
"value": "3"
"name": "ImGuiLogFlags_OutputFile",
"value": "1 << 1"
},
{
"calc_value": 4,
"name": "ImGuiLogType_Clipboard",
"value": "4"
"name": "ImGuiLogFlags_OutputBuffer",
"value": "1 << 2"
},
{
"calc_value": 8,
"name": "ImGuiLogFlags_OutputClipboard",
"value": "1 << 3"
},
{
"calc_value": 15,
"name": "ImGuiLogFlags_OutputMask_",
"value": "ImGuiLogFlags_OutputTTY | ImGuiLogFlags_OutputFile | ImGuiLogFlags_OutputBuffer | ImGuiLogFlags_OutputClipboard"
}
],
"ImGuiMouseButton_": [
@@ -4676,191 +4718,192 @@
"ImGuiSortDirection": "ImU8"
},
"locations": {
"ImBitVector": "imgui_internal:590",
"ImColor": "imgui:2765",
"ImDrawChannel": "imgui:3005",
"ImDrawCmd": "imgui:2962",
"ImDrawCmdHeader": "imgui:2997",
"ImDrawData": "imgui:3221",
"ImDrawDataBuilder": "imgui_internal:779",
"ImDrawFlags_": "imgui:3031",
"ImDrawList": "imgui:3069",
"ImDrawListFlags_": "imgui:3051",
"ImDrawListSharedData": "imgui_internal:755",
"ImDrawListSplitter": "imgui:3014",
"ImDrawVert": "imgui:2982",
"ImFont": "imgui:3444",
"ImFontAtlas": "imgui:3340",
"ImFontAtlasCustomRect": "imgui:3302",
"ImFontAtlasFlags_": "imgui:3315",
"ImFontBuilderIO": "imgui_internal:3514",
"ImFontConfig": "imgui:3245",
"ImFontGlyph": "imgui:3275",
"ImFontGlyphRangesBuilder": "imgui:3287",
"ImGuiActivateFlags_": "imgui_internal:1524",
"ImGuiAxis": "imgui_internal:1002",
"ImGuiBackendFlags_": "imgui:1617",
"ImGuiBoxSelectState": "imgui_internal:1713",
"ImGuiButtonFlagsPrivate_": "imgui_internal:895",
"ImGuiButtonFlags_": "imgui:1743",
"ImBitVector": "imgui_internal:599",
"ImColor": "imgui:2741",
"ImDrawChannel": "imgui:2981",
"ImDrawCmd": "imgui:2938",
"ImDrawCmdHeader": "imgui:2973",
"ImDrawData": "imgui:3197",
"ImDrawDataBuilder": "imgui_internal:788",
"ImDrawFlags_": "imgui:3007",
"ImDrawList": "imgui:3045",
"ImDrawListFlags_": "imgui:3027",
"ImDrawListSharedData": "imgui_internal:764",
"ImDrawListSplitter": "imgui:2990",
"ImDrawVert": "imgui:2958",
"ImFont": "imgui:3421",
"ImFontAtlas": "imgui:3317",
"ImFontAtlasCustomRect": "imgui:3278",
"ImFontAtlasFlags_": "imgui:3292",
"ImFontBuilderIO": "imgui_internal:3528",
"ImFontConfig": "imgui:3221",
"ImFontGlyph": "imgui:3251",
"ImFontGlyphRangesBuilder": "imgui:3263",
"ImGuiActivateFlags_": "imgui_internal:1536",
"ImGuiAxis": "imgui_internal:1014",
"ImGuiBackendFlags_": "imgui:1594",
"ImGuiBoxSelectState": "imgui_internal:1725",
"ImGuiButtonFlagsPrivate_": "imgui_internal:904",
"ImGuiButtonFlags_": "imgui:1720",
"ImGuiChildFlags_": "imgui:1113",
"ImGuiCol_": "imgui:1627",
"ImGuiColorEditFlags_": "imgui:1754",
"ImGuiColorMod": "imgui_internal:1016",
"ImGuiComboFlagsPrivate_": "imgui_internal:920",
"ImGuiCol_": "imgui:1604",
"ImGuiColorEditFlags_": "imgui:1731",
"ImGuiColorMod": "imgui_internal:1028",
"ImGuiComboFlagsPrivate_": "imgui_internal:929",
"ImGuiComboFlags_": "imgui:1256",
"ImGuiComboPreviewData": "imgui_internal:1033",
"ImGuiCond_": "imgui:1855",
"ImGuiConfigFlags_": "imgui:1597",
"ImGuiContext": "imgui_internal:2011",
"ImGuiContextHook": "imgui_internal:1996",
"ImGuiContextHookType": "imgui_internal:1994",
"ImGuiDataTypeInfo": "imgui_internal:805",
"ImGuiDataTypePrivate_": "imgui_internal:814",
"ImGuiDataTypeStorage": "imgui_internal:799",
"ImGuiComboPreviewData": "imgui_internal:1045",
"ImGuiCond_": "imgui:1832",
"ImGuiConfigFlags_": "imgui:1574",
"ImGuiContext": "imgui_internal:2023",
"ImGuiContextHook": "imgui_internal:2008",
"ImGuiContextHookType": "imgui_internal:2006",
"ImGuiDataTypeInfo": "imgui_internal:814",
"ImGuiDataTypePrivate_": "imgui_internal:823",
"ImGuiDataTypeStorage": "imgui_internal:808",
"ImGuiDataType_": "imgui:1383",
"ImGuiDataVarInfo": "imgui_internal:791",
"ImGuiDebugAllocEntry": "imgui_internal:1931",
"ImGuiDebugAllocInfo": "imgui_internal:1938",
"ImGuiDebugLogFlags_": "imgui_internal:1910",
"ImGuiDataVarInfo": "imgui_internal:800",
"ImGuiDebugAllocEntry": "imgui_internal:1943",
"ImGuiDebugAllocInfo": "imgui_internal:1950",
"ImGuiDebugLogFlags_": "imgui_internal:1922",
"ImGuiDir": "imgui:1400",
"ImGuiDragDropFlags_": "imgui:1355",
"ImGuiErrorRecoveryState": "imgui_internal:1258",
"ImGuiFocusRequestFlags_": "imgui_internal:965",
"ImGuiFocusScopeData": "imgui_internal:1610",
"ImGuiErrorRecoveryState": "imgui_internal:1270",
"ImGuiFocusRequestFlags_": "imgui_internal:974",
"ImGuiFocusScopeData": "imgui_internal:1622",
"ImGuiFocusedFlags_": "imgui:1303",
"ImGuiGroupData": "imgui_internal:1046",
"ImGuiHoveredFlagsPrivate_": "imgui_internal:878",
"ImGuiFreeTypeBuilderFlags": "imgui_freetype:26",
"ImGuiGroupData": "imgui_internal:1058",
"ImGuiHoveredFlagsPrivate_": "imgui_internal:887",
"ImGuiHoveredFlags_": "imgui:1317",
"ImGuiIDStackTool": "imgui_internal:1977",
"ImGuiIO": "imgui:2227",
"ImGuiInputEvent": "imgui_internal:1385",
"ImGuiInputEventAppFocused": "imgui_internal:1383",
"ImGuiInputEventKey": "imgui_internal:1381",
"ImGuiInputEventMouseButton": "imgui_internal:1380",
"ImGuiInputEventMousePos": "imgui_internal:1378",
"ImGuiInputEventMouseWheel": "imgui_internal:1379",
"ImGuiInputEventText": "imgui_internal:1382",
"ImGuiInputEventType": "imgui_internal:1355",
"ImGuiInputFlagsPrivate_": "imgui_internal:1451",
"ImGuiInputFlags_": "imgui:1562",
"ImGuiInputSource": "imgui_internal:1367",
"ImGuiInputTextCallbackData": "imgui:2466",
"ImGuiInputTextDeactivatedState": "imgui_internal:1082",
"ImGuiInputTextFlagsPrivate_": "imgui_internal:886",
"ImGuiIDStackTool": "imgui_internal:1989",
"ImGuiIO": "imgui:2204",
"ImGuiInputEvent": "imgui_internal:1397",
"ImGuiInputEventAppFocused": "imgui_internal:1395",
"ImGuiInputEventKey": "imgui_internal:1393",
"ImGuiInputEventMouseButton": "imgui_internal:1392",
"ImGuiInputEventMousePos": "imgui_internal:1390",
"ImGuiInputEventMouseWheel": "imgui_internal:1391",
"ImGuiInputEventText": "imgui_internal:1394",
"ImGuiInputEventType": "imgui_internal:1367",
"ImGuiInputFlagsPrivate_": "imgui_internal:1463",
"ImGuiInputFlags_": "imgui:1551",
"ImGuiInputSource": "imgui_internal:1379",
"ImGuiInputTextCallbackData": "imgui:2442",
"ImGuiInputTextDeactivatedState": "imgui_internal:1094",
"ImGuiInputTextFlagsPrivate_": "imgui_internal:895",
"ImGuiInputTextFlags_": "imgui:1147",
"ImGuiInputTextState": "imgui_internal:1104",
"ImGuiItemFlagsPrivate_": "imgui_internal:828",
"ImGuiInputTextState": "imgui_internal:1116",
"ImGuiItemFlagsPrivate_": "imgui_internal:837",
"ImGuiItemFlags_": "imgui:1134",
"ImGuiItemStatusFlags_": "imgui_internal:852",
"ImGuiKey": "imgui:1429",
"ImGuiKeyData": "imgui:2219",
"ImGuiKeyOwnerData": "imgui_internal:1438",
"ImGuiKeyRoutingData": "imgui_internal:1412",
"ImGuiKeyRoutingTable": "imgui_internal:1426",
"ImGuiLastItemData": "imgui_internal:1230",
"ImGuiLayoutType_": "imgui_internal:986",
"ImGuiListClipper": "imgui:2673",
"ImGuiListClipperData": "imgui_internal:1508",
"ImGuiListClipperRange": "imgui_internal:1495",
"ImGuiLocEntry": "imgui_internal:1884",
"ImGuiLocKey": "imgui_internal:1869",
"ImGuiLogType": "imgui_internal:992",
"ImGuiMenuColumns": "imgui_internal:1064",
"ImGuiMetricsConfig": "imgui_internal:1948",
"ImGuiMouseButton_": "imgui:1815",
"ImGuiMouseCursor_": "imgui:1825",
"ImGuiMouseSource": "imgui:1844",
"ImGuiMultiSelectFlags_": "imgui:2823",
"ImGuiMultiSelectIO": "imgui:2850",
"ImGuiMultiSelectState": "imgui_internal:1770",
"ImGuiMultiSelectTempData": "imgui_internal:1745",
"ImGuiNavItemData": "imgui_internal:1593",
"ImGuiNavLayer": "imgui_internal:1585",
"ImGuiNavMoveFlags_": "imgui_internal:1563",
"ImGuiNavRenderCursorFlags_": "imgui_internal:1549",
"ImGuiNextItemData": "imgui_internal:1210",
"ImGuiNextItemDataFlags_": "imgui_internal:1200",
"ImGuiNextWindowData": "imgui_internal:1176",
"ImGuiNextWindowDataFlags_": "imgui_internal:1160",
"ImGuiOldColumnData": "imgui_internal:1678",
"ImGuiOldColumnFlags_": "imgui_internal:1658",
"ImGuiOldColumns": "imgui_internal:1688",
"ImGuiOnceUponAFrame": "imgui:2544",
"ImGuiPayload": "imgui:2509",
"ImGuiPlatformIO": "imgui:3542",
"ImGuiPlatformImeData": "imgui:3580",
"ImGuiPlotType": "imgui_internal:1009",
"ImGuiPopupData": "imgui_internal:1312",
"ImGuiItemStatusFlags_": "imgui_internal:861",
"ImGuiKey": "imgui:1424",
"ImGuiKeyData": "imgui:2196",
"ImGuiKeyOwnerData": "imgui_internal:1450",
"ImGuiKeyRoutingData": "imgui_internal:1424",
"ImGuiKeyRoutingTable": "imgui_internal:1438",
"ImGuiLastItemData": "imgui_internal:1242",
"ImGuiLayoutType_": "imgui_internal:995",
"ImGuiListClipper": "imgui:2649",
"ImGuiListClipperData": "imgui_internal:1520",
"ImGuiListClipperRange": "imgui_internal:1507",
"ImGuiLocEntry": "imgui_internal:1896",
"ImGuiLocKey": "imgui_internal:1881",
"ImGuiLogFlags_": "imgui_internal:1002",
"ImGuiMenuColumns": "imgui_internal:1076",
"ImGuiMetricsConfig": "imgui_internal:1960",
"ImGuiMouseButton_": "imgui:1792",
"ImGuiMouseCursor_": "imgui:1802",
"ImGuiMouseSource": "imgui:1821",
"ImGuiMultiSelectFlags_": "imgui:2799",
"ImGuiMultiSelectIO": "imgui:2826",
"ImGuiMultiSelectState": "imgui_internal:1782",
"ImGuiMultiSelectTempData": "imgui_internal:1757",
"ImGuiNavItemData": "imgui_internal:1605",
"ImGuiNavLayer": "imgui_internal:1597",
"ImGuiNavMoveFlags_": "imgui_internal:1575",
"ImGuiNavRenderCursorFlags_": "imgui_internal:1561",
"ImGuiNextItemData": "imgui_internal:1222",
"ImGuiNextItemDataFlags_": "imgui_internal:1212",
"ImGuiNextWindowData": "imgui_internal:1188",
"ImGuiNextWindowDataFlags_": "imgui_internal:1172",
"ImGuiOldColumnData": "imgui_internal:1690",
"ImGuiOldColumnFlags_": "imgui_internal:1670",
"ImGuiOldColumns": "imgui_internal:1700",
"ImGuiOnceUponAFrame": "imgui:2520",
"ImGuiPayload": "imgui:2485",
"ImGuiPlatformIO": "imgui:3519",
"ImGuiPlatformImeData": "imgui:3557",
"ImGuiPlotType": "imgui_internal:1021",
"ImGuiPopupData": "imgui_internal:1324",
"ImGuiPopupFlags_": "imgui:1221",
"ImGuiPopupPositionPolicy": "imgui_internal:1304",
"ImGuiPtrOrIndex": "imgui_internal:1291",
"ImGuiScrollFlags_": "imgui_internal:1535",
"ImGuiSelectableFlagsPrivate_": "imgui_internal:933",
"ImGuiPopupPositionPolicy": "imgui_internal:1316",
"ImGuiPtrOrIndex": "imgui_internal:1303",
"ImGuiScrollFlags_": "imgui_internal:1547",
"ImGuiSelectableFlagsPrivate_": "imgui_internal:942",
"ImGuiSelectableFlags_": "imgui:1239",
"ImGuiSelectionBasicStorage": "imgui:2896",
"ImGuiSelectionExternalStorage": "imgui:2919",
"ImGuiSelectionRequest": "imgui:2870",
"ImGuiSelectionRequestType": "imgui:2862",
"ImGuiSeparatorFlags_": "imgui_internal:954",
"ImGuiSettingsHandler": "imgui_internal:1849",
"ImGuiShrinkWidthItem": "imgui_internal:1284",
"ImGuiSizeCallbackData": "imgui:2500",
"ImGuiSliderFlagsPrivate_": "imgui_internal:926",
"ImGuiSliderFlags_": "imgui:1800",
"ImGuiSelectionBasicStorage": "imgui:2872",
"ImGuiSelectionExternalStorage": "imgui:2895",
"ImGuiSelectionRequest": "imgui:2846",
"ImGuiSelectionRequestType": "imgui:2838",
"ImGuiSeparatorFlags_": "imgui_internal:963",
"ImGuiSettingsHandler": "imgui_internal:1861",
"ImGuiShrinkWidthItem": "imgui_internal:1296",
"ImGuiSizeCallbackData": "imgui:2476",
"ImGuiSliderFlagsPrivate_": "imgui_internal:935",
"ImGuiSliderFlags_": "imgui:1777",
"ImGuiSortDirection": "imgui:1411",
"ImGuiStackLevelInfo": "imgui_internal:1965",
"ImGuiStorage": "imgui:2616",
"ImGuiStoragePair": "imgui:2599",
"ImGuiStyle": "imgui:2142",
"ImGuiStyleMod": "imgui_internal:1023",
"ImGuiStyleVar_": "imgui:1703",
"ImGuiTabBar": "imgui_internal:2596",
"ImGuiTabBarFlagsPrivate_": "imgui_internal:2561",
"ImGuiStackLevelInfo": "imgui_internal:1977",
"ImGuiStorage": "imgui:2592",
"ImGuiStoragePair": "imgui:2575",
"ImGuiStyle": "imgui:2119",
"ImGuiStyleMod": "imgui_internal:1035",
"ImGuiStyleVar_": "imgui:1680",
"ImGuiTabBar": "imgui_internal:2609",
"ImGuiTabBarFlagsPrivate_": "imgui_internal:2574",
"ImGuiTabBarFlags_": "imgui:1271",
"ImGuiTabItem": "imgui_internal:2577",
"ImGuiTabItemFlagsPrivate_": "imgui_internal:2569",
"ImGuiTabItem": "imgui_internal:2590",
"ImGuiTabItemFlagsPrivate_": "imgui_internal:2582",
"ImGuiTabItemFlags_": "imgui:1288",
"ImGuiTable": "imgui_internal:2743",
"ImGuiTableBgTarget_": "imgui:1996",
"ImGuiTableCellData": "imgui_internal:2711",
"ImGuiTableColumn": "imgui_internal:2651",
"ImGuiTableColumnFlags_": "imgui:1943",
"ImGuiTableColumnSettings": "imgui_internal:2890",
"ImGuiTableColumnSortSpecs": "imgui:2018",
"ImGuiTableFlags_": "imgui:1890",
"ImGuiTableHeaderData": "imgui_internal:2720",
"ImGuiTableInstanceData": "imgui_internal:2730",
"ImGuiTableRowFlags_": "imgui:1981",
"ImGuiTableSettings": "imgui_internal:2914",
"ImGuiTableSortSpecs": "imgui:2008",
"ImGuiTableTempData": "imgui_internal:2867",
"ImGuiTextBuffer": "imgui:2579",
"ImGuiTextFilter": "imgui:2552",
"ImGuiTextFlags_": "imgui_internal:972",
"ImGuiTextIndex": "imgui_internal:710",
"ImGuiTextRange": "imgui:2562",
"ImGuiTooltipFlags_": "imgui_internal:978",
"ImGuiTreeNodeFlagsPrivate_": "imgui_internal:947",
"ImGuiTable": "imgui_internal:2756",
"ImGuiTableBgTarget_": "imgui:1973",
"ImGuiTableCellData": "imgui_internal:2724",
"ImGuiTableColumn": "imgui_internal:2664",
"ImGuiTableColumnFlags_": "imgui:1920",
"ImGuiTableColumnSettings": "imgui_internal:2903",
"ImGuiTableColumnSortSpecs": "imgui:1995",
"ImGuiTableFlags_": "imgui:1867",
"ImGuiTableHeaderData": "imgui_internal:2733",
"ImGuiTableInstanceData": "imgui_internal:2743",
"ImGuiTableRowFlags_": "imgui:1958",
"ImGuiTableSettings": "imgui_internal:2927",
"ImGuiTableSortSpecs": "imgui:1985",
"ImGuiTableTempData": "imgui_internal:2880",
"ImGuiTextBuffer": "imgui:2555",
"ImGuiTextFilter": "imgui:2528",
"ImGuiTextFlags_": "imgui_internal:981",
"ImGuiTextIndex": "imgui_internal:719",
"ImGuiTextRange": "imgui:2538",
"ImGuiTooltipFlags_": "imgui_internal:987",
"ImGuiTreeNodeFlagsPrivate_": "imgui_internal:956",
"ImGuiTreeNodeFlags_": "imgui:1186",
"ImGuiTreeNodeStackData": "imgui_internal:1249",
"ImGuiTypingSelectFlags_": "imgui_internal:1621",
"ImGuiTypingSelectRequest": "imgui_internal:1629",
"ImGuiTypingSelectState": "imgui_internal:1640",
"ImGuiViewport": "imgui:3517",
"ImGuiViewportFlags_": "imgui:3502",
"ImGuiViewportP": "imgui_internal:1798",
"ImGuiWindow": "imgui_internal:2432",
"ImGuiTreeNodeStackData": "imgui_internal:1261",
"ImGuiTypingSelectFlags_": "imgui_internal:1633",
"ImGuiTypingSelectRequest": "imgui_internal:1641",
"ImGuiTypingSelectState": "imgui_internal:1652",
"ImGuiViewport": "imgui:3494",
"ImGuiViewportFlags_": "imgui:3479",
"ImGuiViewportP": "imgui_internal:1810",
"ImGuiWindow": "imgui_internal:2445",
"ImGuiWindowFlags_": "imgui:1064",
"ImGuiWindowRefreshFlags_": "imgui_internal:1151",
"ImGuiWindowSettings": "imgui_internal:1835",
"ImGuiWindowStackData": "imgui_internal:1276",
"ImGuiWindowTempData": "imgui_internal:2382",
"ImRect": "imgui_internal:512",
"ImVec1": "imgui_internal:494",
"ImVec2": "imgui:290",
"ImVec2ih": "imgui_internal:502",
"ImVec4": "imgui:303"
"ImGuiWindowRefreshFlags_": "imgui_internal:1163",
"ImGuiWindowSettings": "imgui_internal:1847",
"ImGuiWindowStackData": "imgui_internal:1288",
"ImGuiWindowTempData": "imgui_internal:2395",
"ImRect": "imgui_internal:521",
"ImVec1": "imgui_internal:503",
"ImVec2": "imgui:291",
"ImVec2ih": "imgui_internal:511",
"ImVec4": "imgui:304"
},
"structs": {
"ImBitVector": [
@@ -5349,9 +5392,15 @@
"type": "unsigned short"
},
{
"bitfield": "31",
"name": "GlyphID",
"type": "unsigned int"
},
{
"bitfield": "1",
"name": "GlyphColored",
"type": "unsigned int"
},
{
"name": "GlyphAdvanceX",
"type": "float"
@@ -6662,8 +6711,12 @@
"type": "bool"
},
{
"name": "LogType",
"type": "ImGuiLogType"
"name": "LogFlags",
"type": "ImGuiLogFlags"
},
{
"name": "LogWindow",
"type": "ImGuiWindow*"
},
{
"name": "LogFile",
@@ -7189,6 +7242,10 @@
"name": "ConfigWindowsMoveFromTitleBarOnly",
"type": "bool"
},
{
"name": "ConfigWindowsCopyContentsWithCtrlC",
"type": "bool"
},
{
"name": "ConfigScrollbarScrollByPage",
"type": "bool"
@@ -7375,7 +7432,7 @@
"type": "ImGuiKeyChord"
},
{
"name": "KeysData[ImGuiKey_KeysData_SIZE]",
"name": "KeysData[ImGuiKey_NamedKey_COUNT]",
"size": 154,
"type": "ImGuiKeyData"
},
@@ -7467,14 +7524,6 @@
"name": "AppAcceptingEvents",
"type": "bool"
},
{
"name": "BackendUsingLegacyKeyArrays",
"type": "ImS8"
},
{
"name": "BackendUsingLegacyNavInputArray",
"type": "bool"
},
{
"name": "InputQueueSurrogate",
"type": "ImWchar16"
@@ -7654,7 +7703,7 @@
"type": "ImGuiID"
},
{
"name": "CurLenA",
"name": "TextLen",
"type": "int"
},
{
@@ -7663,7 +7712,7 @@
"type": "ImVector_char"
},
{
"name": "InitialTextA",
"name": "TextToRevertTo",
"template_type": "char",
"type": "ImVector_char"
},
@@ -7673,7 +7722,7 @@
"type": "ImVector_char"
},
{
"name": "BufCapacityA",
"name": "BufCapacity",
"type": "int"
},
{

File diff suppressed because it is too large Load Diff

View File

@@ -1,9 +1,9 @@
{
"ImBitArrayForNamedKeys": "ImBitArray<ImGuiKey_NamedKey_COUNT,-ImGuiKey_NamedKey_BEGIN>",
"ImBitArrayForNamedKeys": "ImBitArray<ImGuiKey_NamedKey_COUNT, -ImGuiKey_NamedKey_BEGIN>",
"ImBitArrayPtr": "ImU32*",
"ImBitVector": "struct ImBitVector",
"ImColor": "struct ImColor",
"ImDrawCallback": "void(*)(const ImDrawList* parent_list,const ImDrawCmd* cmd);",
"ImDrawCallback": "void (*)(const ImDrawList* parent_list, const ImDrawCmd* cmd);",
"ImDrawChannel": "struct ImDrawChannel",
"ImDrawCmd": "struct ImDrawCmd",
"ImDrawCmdHeader": "struct ImDrawCmdHeader",
@@ -39,7 +39,7 @@
"ImGuiConfigFlags": "int",
"ImGuiContext": "struct ImGuiContext",
"ImGuiContextHook": "struct ImGuiContextHook",
"ImGuiContextHookCallback": "void(*)(ImGuiContext* ctx,ImGuiContextHook* hook);",
"ImGuiContextHookCallback": "void (*)(ImGuiContext* ctx, ImGuiContextHook* hook);",
"ImGuiDataType": "int",
"ImGuiDataTypeInfo": "struct ImGuiDataTypeInfo",
"ImGuiDataTypeStorage": "struct ImGuiDataTypeStorage",
@@ -48,7 +48,7 @@
"ImGuiDebugAllocInfo": "struct ImGuiDebugAllocInfo",
"ImGuiDebugLogFlags": "int",
"ImGuiDragDropFlags": "int",
"ImGuiErrorCallback": "void(*)(ImGuiContext* ctx,void* user_data,const char* msg);",
"ImGuiErrorCallback": "void (*)(ImGuiContext* ctx, void* user_data, const char* msg);",
"ImGuiErrorRecoveryState": "struct ImGuiErrorRecoveryState",
"ImGuiFocusRequestFlags": "int",
"ImGuiFocusScopeData": "struct ImGuiFocusScopeData",
@@ -66,7 +66,7 @@
"ImGuiInputEventMouseWheel": "struct ImGuiInputEventMouseWheel",
"ImGuiInputEventText": "struct ImGuiInputEventText",
"ImGuiInputFlags": "int",
"ImGuiInputTextCallback": "int(*)(ImGuiInputTextCallbackData* data);",
"ImGuiInputTextCallback": "int (*)(ImGuiInputTextCallbackData* data);",
"ImGuiInputTextCallbackData": "struct ImGuiInputTextCallbackData",
"ImGuiInputTextDeactivateData": "struct ImGuiInputTextDeactivateData",
"ImGuiInputTextDeactivatedState": "struct ImGuiInputTextDeactivatedState",
@@ -86,8 +86,9 @@
"ImGuiListClipperData": "struct ImGuiListClipperData",
"ImGuiListClipperRange": "struct ImGuiListClipperRange",
"ImGuiLocEntry": "struct ImGuiLocEntry",
"ImGuiMemAllocFunc": "void*(*)(size_t sz,void* user_data);",
"ImGuiMemFreeFunc": "void(*)(void* ptr,void* user_data);",
"ImGuiLogFlags": "int",
"ImGuiMemAllocFunc": "void* (*)(size_t sz, void* user_data);",
"ImGuiMemFreeFunc": "void (*)(void* ptr, void* user_data);",
"ImGuiMenuColumns": "struct ImGuiMenuColumns",
"ImGuiMetricsConfig": "struct ImGuiMetricsConfig",
"ImGuiMouseButton": "int",
@@ -122,7 +123,7 @@
"ImGuiSeparatorFlags": "int",
"ImGuiSettingsHandler": "struct ImGuiSettingsHandler",
"ImGuiShrinkWidthItem": "struct ImGuiShrinkWidthItem",
"ImGuiSizeCallback": "void(*)(ImGuiSizeCallbackData* data);",
"ImGuiSizeCallback": "void (*)(ImGuiSizeCallbackData* data);",
"ImGuiSizeCallbackData": "struct ImGuiSizeCallbackData",
"ImGuiSliderFlags": "int",
"ImGuiStackLevelInfo": "struct ImGuiStackLevelInfo",
@@ -191,8 +192,5 @@
"ImWchar": "ImWchar16",
"ImWchar16": "unsigned short",
"ImWchar32": "unsigned int",
"STB_TexteditState": "struct STB_TexteditState",
"const_iterator": "const value_type*",
"iterator": "value_type*",
"value_type": "T"
"STB_TexteditState": "struct STB_TexteditState"
}

View File

@@ -1,9 +1,9 @@
local defs = {}
defs["ImBitArrayForNamedKeys"] = "ImBitArray<ImGuiKey_NamedKey_COUNT,-ImGuiKey_NamedKey_BEGIN>"
defs["ImBitArrayForNamedKeys"] = "ImBitArray<ImGuiKey_NamedKey_COUNT, -ImGuiKey_NamedKey_BEGIN>"
defs["ImBitArrayPtr"] = "ImU32*"
defs["ImBitVector"] = "struct ImBitVector"
defs["ImColor"] = "struct ImColor"
defs["ImDrawCallback"] = "void(*)(const ImDrawList* parent_list,const ImDrawCmd* cmd);"
defs["ImDrawCallback"] = "void (*)(const ImDrawList* parent_list, const ImDrawCmd* cmd);"
defs["ImDrawChannel"] = "struct ImDrawChannel"
defs["ImDrawCmd"] = "struct ImDrawCmd"
defs["ImDrawCmdHeader"] = "struct ImDrawCmdHeader"
@@ -39,7 +39,7 @@ defs["ImGuiCond"] = "int"
defs["ImGuiConfigFlags"] = "int"
defs["ImGuiContext"] = "struct ImGuiContext"
defs["ImGuiContextHook"] = "struct ImGuiContextHook"
defs["ImGuiContextHookCallback"] = "void(*)(ImGuiContext* ctx,ImGuiContextHook* hook);"
defs["ImGuiContextHookCallback"] = "void (*)(ImGuiContext* ctx, ImGuiContextHook* hook);"
defs["ImGuiDataType"] = "int"
defs["ImGuiDataTypeInfo"] = "struct ImGuiDataTypeInfo"
defs["ImGuiDataTypeStorage"] = "struct ImGuiDataTypeStorage"
@@ -48,7 +48,7 @@ defs["ImGuiDebugAllocEntry"] = "struct ImGuiDebugAllocEntry"
defs["ImGuiDebugAllocInfo"] = "struct ImGuiDebugAllocInfo"
defs["ImGuiDebugLogFlags"] = "int"
defs["ImGuiDragDropFlags"] = "int"
defs["ImGuiErrorCallback"] = "void(*)(ImGuiContext* ctx,void* user_data,const char* msg);"
defs["ImGuiErrorCallback"] = "void (*)(ImGuiContext* ctx, void* user_data, const char* msg);"
defs["ImGuiErrorRecoveryState"] = "struct ImGuiErrorRecoveryState"
defs["ImGuiFocusRequestFlags"] = "int"
defs["ImGuiFocusScopeData"] = "struct ImGuiFocusScopeData"
@@ -66,7 +66,7 @@ defs["ImGuiInputEventMousePos"] = "struct ImGuiInputEventMousePos"
defs["ImGuiInputEventMouseWheel"] = "struct ImGuiInputEventMouseWheel"
defs["ImGuiInputEventText"] = "struct ImGuiInputEventText"
defs["ImGuiInputFlags"] = "int"
defs["ImGuiInputTextCallback"] = "int(*)(ImGuiInputTextCallbackData* data);"
defs["ImGuiInputTextCallback"] = "int (*)(ImGuiInputTextCallbackData* data);"
defs["ImGuiInputTextCallbackData"] = "struct ImGuiInputTextCallbackData"
defs["ImGuiInputTextDeactivateData"] = "struct ImGuiInputTextDeactivateData"
defs["ImGuiInputTextDeactivatedState"] = "struct ImGuiInputTextDeactivatedState"
@@ -86,8 +86,9 @@ defs["ImGuiListClipper"] = "struct ImGuiListClipper"
defs["ImGuiListClipperData"] = "struct ImGuiListClipperData"
defs["ImGuiListClipperRange"] = "struct ImGuiListClipperRange"
defs["ImGuiLocEntry"] = "struct ImGuiLocEntry"
defs["ImGuiMemAllocFunc"] = "void*(*)(size_t sz,void* user_data);"
defs["ImGuiMemFreeFunc"] = "void(*)(void* ptr,void* user_data);"
defs["ImGuiLogFlags"] = "int"
defs["ImGuiMemAllocFunc"] = "void* (*)(size_t sz, void* user_data);"
defs["ImGuiMemFreeFunc"] = "void (*)(void* ptr, void* user_data);"
defs["ImGuiMenuColumns"] = "struct ImGuiMenuColumns"
defs["ImGuiMetricsConfig"] = "struct ImGuiMetricsConfig"
defs["ImGuiMouseButton"] = "int"
@@ -122,7 +123,7 @@ defs["ImGuiSelectionUserData"] = "ImS64"
defs["ImGuiSeparatorFlags"] = "int"
defs["ImGuiSettingsHandler"] = "struct ImGuiSettingsHandler"
defs["ImGuiShrinkWidthItem"] = "struct ImGuiShrinkWidthItem"
defs["ImGuiSizeCallback"] = "void(*)(ImGuiSizeCallbackData* data);"
defs["ImGuiSizeCallback"] = "void (*)(ImGuiSizeCallbackData* data);"
defs["ImGuiSizeCallbackData"] = "struct ImGuiSizeCallbackData"
defs["ImGuiSliderFlags"] = "int"
defs["ImGuiStackLevelInfo"] = "struct ImGuiStackLevelInfo"
@@ -192,8 +193,5 @@ defs["ImWchar"] = "ImWchar16"
defs["ImWchar16"] = "unsigned short"
defs["ImWchar32"] = "unsigned int"
defs["STB_TexteditState"] = "struct STB_TexteditState"
defs["const_iterator"] = "const value_type*"
defs["iterator"] = "value_type*"
defs["value_type"] = "T"
return defs