Merge branch 'docking_inter' 1.92.9dock

This commit is contained in:
sonoro1234
2026-08-10 12:34:00 +02:00
16 changed files with 3024 additions and 1479 deletions

View File

@@ -11,7 +11,7 @@ History:
Initially cimgui was developed by Stephan Dilly as hand-written code but lately turned into an auto-generated version by sonoro1234 in order to keep up with imgui more easily (letting the user select the desired branch and commit)
Notes:
* currently this wrapper is based on version [1.92.9 of Dear ImGui with internal api]
* currently this wrapper is based on version [1.92.9b of Dear ImGui with internal api]
* only functions, structs and enums from imgui.h (an optionally imgui_internal.h) are wrapped.
* if you are interested in imgui backends you should look [LuaJIT-ImGui](https://github.com/sonoro1234/LuaJIT-ImGui) project.
* All naming is algorithmic except for those names that were coded in cimgui_overloads table (https://github.com/cimgui/cimgui/blob/master/generator/generator.lua#L60). In the official version this table is empty.
@@ -108,6 +108,7 @@ Notes:
* [LuaJIT-ImGui](https://github.com/sonoro1234/LuaJIT-ImGui)
* [cimgui-go](https://github.com/AllenDang/cimgui-go)
* [Hexa.NET.ImGui](https://github.com/HexaEngine/Hexa.NET.ImGui)
* [EvergineTeam/ImGui](https://github.com/EvergineTeam/ImGui.Net)
* [dear-imgui-rs](https://github.com/Latias94/dear-imgui-rs)
* [CImGui.jl](https://github.com/Gnimuc/CImGui.jl)
* [ImGui.NET](https://github.com/mellinoe/ImGui.NET)

View File

@@ -1,5 +1,5 @@
//This file is automatically generated by generator.lua from https://github.com/cimgui/cimgui
//based on imgui.h file version "1.92.9" 19290 from Dear ImGui https://github.com/ocornut/imgui
//based on imgui.h file version "1.92.9b" 19291 from Dear ImGui https://github.com/ocornut/imgui
//with imgui_internal.h api
//with imgui_freetype.h api
@@ -650,7 +650,7 @@ CIMGUI_API void igText(const char* fmt,...)
#ifdef CIMGUI_VARGS0
CIMGUI_API void igText0(const char* fmt)
{
return igText(fmt);
igText(fmt);
}
#endif
CIMGUI_API void igTextV(const char* fmt,va_list args)
@@ -667,7 +667,7 @@ CIMGUI_API void igTextColored(const ImVec4_c col,const char* fmt,...)
#ifdef CIMGUI_VARGS0
CIMGUI_API void igTextColored0(const ImVec4_c col,const char* fmt)
{
return igTextColored(col,fmt);
igTextColored(col,fmt);
}
#endif
CIMGUI_API void igTextColoredV(const ImVec4_c col,const char* fmt,va_list args)
@@ -684,7 +684,7 @@ CIMGUI_API void igTextDisabled(const char* fmt,...)
#ifdef CIMGUI_VARGS0
CIMGUI_API void igTextDisabled0(const char* fmt)
{
return igTextDisabled(fmt);
igTextDisabled(fmt);
}
#endif
CIMGUI_API void igTextDisabledV(const char* fmt,va_list args)
@@ -701,7 +701,7 @@ CIMGUI_API void igTextWrapped(const char* fmt,...)
#ifdef CIMGUI_VARGS0
CIMGUI_API void igTextWrapped0(const char* fmt)
{
return igTextWrapped(fmt);
igTextWrapped(fmt);
}
#endif
CIMGUI_API void igTextWrappedV(const char* fmt,va_list args)
@@ -718,7 +718,7 @@ CIMGUI_API void igLabelText(const char* label,const char* fmt,...)
#ifdef CIMGUI_VARGS0
CIMGUI_API void igLabelText0(const char* label,const char* fmt)
{
return igLabelText(label,fmt);
igLabelText(label,fmt);
}
#endif
CIMGUI_API void igLabelTextV(const char* label,const char* fmt,va_list args)
@@ -735,7 +735,7 @@ CIMGUI_API void igBulletText(const char* fmt,...)
#ifdef CIMGUI_VARGS0
CIMGUI_API void igBulletText0(const char* fmt)
{
return igBulletText(fmt);
igBulletText(fmt);
}
#endif
CIMGUI_API void igBulletTextV(const char* fmt,va_list args)
@@ -1248,7 +1248,7 @@ CIMGUI_API void igSetTooltip(const char* fmt,...)
#ifdef CIMGUI_VARGS0
CIMGUI_API void igSetTooltip0(const char* fmt)
{
return igSetTooltip(fmt);
igSetTooltip(fmt);
}
#endif
CIMGUI_API void igSetTooltipV(const char* fmt,va_list args)
@@ -1269,7 +1269,7 @@ CIMGUI_API void igSetItemTooltip(const char* fmt,...)
#ifdef CIMGUI_VARGS0
CIMGUI_API void igSetItemTooltip0(const char* fmt)
{
return igSetItemTooltip(fmt);
igSetItemTooltip(fmt);
}
#endif
CIMGUI_API void igSetItemTooltipV(const char* fmt,va_list args)
@@ -1482,7 +1482,7 @@ CIMGUI_API void igLogText(const char* fmt,...)
#ifdef CIMGUI_VARGS0
CIMGUI_API void igLogText0(const char* fmt)
{
return igLogText(fmt);
igLogText(fmt);
}
#endif
CIMGUI_API void igLogTextV(const char* fmt,va_list args)
@@ -1847,7 +1847,7 @@ CIMGUI_API void igDebugLog(const char* fmt,...)
#ifdef CIMGUI_VARGS0
CIMGUI_API void igDebugLog0(const char* fmt)
{
return igDebugLog(fmt);
igDebugLog(fmt);
}
#endif
CIMGUI_API void igDebugLogV(const char* fmt,va_list args)
@@ -3114,7 +3114,7 @@ CIMGUI_API void igImFormatStringToTempBuffer(const char** out_buf,const char** o
#ifdef CIMGUI_VARGS0
CIMGUI_API void igImFormatStringToTempBuffer0(const char** out_buf,const char** out_buf_end,const char* fmt)
{
return igImFormatStringToTempBuffer(out_buf,out_buf_end,fmt);
igImFormatStringToTempBuffer(out_buf,out_buf_end,fmt);
}
#endif
CIMGUI_API void igImFormatStringToTempBufferV(const char** out_buf,const char** out_buf_end,const char* fmt,va_list args)
@@ -5603,7 +5603,7 @@ CIMGUI_API void igTextAligned(float align_x,float size_x,const char* fmt,...)
#ifdef CIMGUI_VARGS0
CIMGUI_API void igTextAligned0(float align_x,float size_x,const char* fmt)
{
return igTextAligned(align_x,size_x,fmt);
igTextAligned(align_x,size_x,fmt);
}
#endif
CIMGUI_API void igTextAlignedV(float align_x,float size_x,const char* fmt,va_list args)
@@ -6283,6 +6283,12 @@ CIMGUI_API void ImGuiTextBuffer_appendf(ImGuiTextBuffer *self, const char *fmt,
self->appendfv(fmt, args);
va_end(args);
}
#ifdef CIMGUI_VARGS0
CIMGUI_API void ImGuiTextBuffer_appendf0(ImGuiTextBuffer *self, const char *fmt)
{
ImGuiTextBuffer_appendf(self,fmt);
}
#endif
CIMGUI_API float igGET_FLT_MAX()
{

View File

@@ -1,5 +1,5 @@
//This file is automatically generated by generator.lua from https://github.com/cimgui/cimgui
//based on imgui.h file version "1.92.9" 19290 from Dear ImGui https://github.com/ocornut/imgui
//based on imgui.h file version "1.92.9b" 19291 from Dear ImGui https://github.com/ocornut/imgui
//with imgui_internal.h api
//with imgui_freetype.h api
#ifndef CIMGUI_INCLUDED
@@ -46,6 +46,12 @@ typedef unsigned __int64 ImU64;
#ifdef CIMGUI_DEFINE_ENUMS_AND_STRUCTS
typedef struct ImColor_c ImColor;
typedef struct ImRect_c ImRect;
typedef struct ImTextureRef_c ImTextureRef;
typedef struct ImVec2_c ImVec2;
typedef struct ImVec2i_c ImVec2i;
typedef struct ImVec4_c ImVec4;
typedef struct ImDrawChannel ImDrawChannel;
typedef struct ImDrawCmd ImDrawCmd;
@@ -3618,6 +3624,45 @@ struct ImFontAtlasBuilder
ImFontAtlasRectId PackIdMouseCursors;
ImFontAtlasRectId PackIdLinesTexData;
};
typedef struct StbUndoRecord StbUndoRecord;
struct StbUndoRecord
{
int where;
int insert_length;
int delete_length;
int char_storage;
};
typedef struct StbUndoState StbUndoState;
struct StbUndoState
{
StbUndoRecord undo_rec [99];
char undo_char[999];
short undo_point, redo_point;
int undo_char_point, redo_char_point;
};
struct STB_TexteditState
{
int cursor;
int select_start;
int select_end;
unsigned char insert_mode;
int row_count_per_page;
unsigned char cursor_at_end_of_line;
unsigned char initialized;
unsigned char has_preferred_x;
unsigned char single_line;
unsigned char padding1, padding2, padding3;
float preferred_x;
StbUndoState undostate;
};
typedef struct StbTexteditRow StbTexteditRow;
struct StbTexteditRow
{
float x0,x1;
float baseline_y_delta;
float ymin,ymax;
int num_chars;
};
#ifdef IMGUI_ENABLE_FREETYPE
struct ImFontAtlas;
struct ImFontLoader;
@@ -5317,6 +5362,9 @@ CIMGUI_API bool ImGuiFreeType_DebugEditFontLoaderFlags(ImGuiFreeTypeLoaderFlags*
/////////////////////////hand written functions
//no appendfV
CIMGUI_API void ImGuiTextBuffer_appendf(ImGuiTextBuffer *self, const char *fmt, ...);
#ifdef CIMGUI_VARGS0
CIMGUI_API void ImGuiTextBuffer_appendf0(ImGuiTextBuffer *self, const char *fmt);
#endif
//for getting FLT_MAX in bindings
CIMGUI_API float igGET_FLT_MAX(void);
//for getting FLT_MIN in bindings

View File

@@ -17,6 +17,12 @@ CIMGUI_API void ImGuiTextBuffer_appendf(ImGuiTextBuffer *self, const char *fmt,
self->appendfv(fmt, args);
va_end(args);
}
#ifdef CIMGUI_VARGS0
CIMGUI_API void ImGuiTextBuffer_appendf0(ImGuiTextBuffer *self, const char *fmt)
{
ImGuiTextBuffer_appendf(self,fmt);
}
#endif
CIMGUI_API float igGET_FLT_MAX()
{

View File

@@ -56,6 +56,9 @@ PLACE_STRUCTS_C
/////////////////////////hand written functions
//no appendfV
CIMGUI_API void ImGuiTextBuffer_appendf(ImGuiTextBuffer *self, const char *fmt, ...);
#ifdef CIMGUI_VARGS0
CIMGUI_API void ImGuiTextBuffer_appendf0(ImGuiTextBuffer *self, const char *fmt);
#endif
//for getting FLT_MAX in bindings
CIMGUI_API float igGET_FLT_MAX(void);
//for getting FLT_MIN in bindings

View File

@@ -852,7 +852,7 @@ local function parseFunction(self,stname,itt,namespace,locat)
local noname_counter = 0
for i,ar in ipairs(argsTa) do
local ttype,template,te,code2 = check_template(ar) --ar:match("([^%s,%(%)]+)%s*<(.-)>")
if template then
if template and not self.skip_template[ttype] then
if self.typenames[stname] ~= template then --rule out template typename
self.templates[ttype] = self.templates[ttype] or {}
self.templates[ttype][template] = te
@@ -998,7 +998,8 @@ local function parseFunction(self,stname,itt,namespace,locat)
end
end
--if ismanual then M.prtable(argsArr) end
-- print(cimguiname)
-- if ismanual then M.prtable("===================================\n",argsArr) end
defT.templated = self.typenames[stname] and true
defT.namespace = namespace
@@ -1212,6 +1213,11 @@ local function get_nonPOD(FP)
end
end
end
if FP.forced_nonPOD then
for k,v in pairs(FP.forced_nonPOD) do
nonPOD[k] = true
end
end
FP.structs_and_enums_table.nonPOD = nonPOD
if next(nonPOD) then
M.prtable("nonPOD",nonPOD)
@@ -1289,12 +1295,27 @@ local function gen_field_conversion(tab, struct,structs, FP, to,prefix)
for i,field in ipairs(struct) do
local ftype = field.type:gsub("*","")
if FP.nP_used[field.type] then
gen_field_conversion(tab, structs[field.type],structs,FP, to,prefix..field.name..".")
if not field.size then
gen_field_conversion(tab, structs[field.type],structs,FP, to,prefix..field.name..".")
else
local fname = field.name:match("(.+)%[[^%[%]]+%]")
for j = 0,field.size-1 do
gen_field_conversion(tab, structs[field.type],structs,FP, to,prefix..fname.."["..tostring(j).."].")
end
end
elseif FP.nP_used[ftype] then
assert(not field.size, "size not worked in Convert")
local ftypec = field.type:gsub(ftype,not to and (ftype.."_c") or ftype)
insert(tab, " dest."..prefix..field.name.." = reinterpret_cast<"..ftypec..">(src."..prefix..field.name..");")
else
insert(tab," dest."..prefix..field.name.." = src."..prefix..field.name..";")
if not field.size then
insert(tab," dest."..prefix..field.name.." = src."..prefix..field.name..";")
else
local fname = field.name:match("(.+)%[%d+%]")
for j = 0,field.size-1 do
insert(tab," dest."..prefix..fname.."["..tostring(j).."] = src."..prefix..fname.."["..tostring(j).."];")
end
end
end
end
end
@@ -1313,6 +1334,7 @@ local function genConversions(FP)
local convers = {}
--for k,v in pairs(FP.nP_used) do
M.table_do_sorted(FP.nP_used, function(k,v)
if not FP.skip_convert_gen[k] then
--print("genConversions",k)
insert(convers,"static inline "..k.." ConvertToCPP_"..k.."(const "..k.."_c& src)")
insert(convers,"{")
@@ -1328,6 +1350,7 @@ local function genConversions(FP)
gen_field_conversion(convers,struct,structs,FP, false)
insert(convers," return dest;")
insert(convers,"}")
end --skip_convert_gen
end)
--print(table.concat(convers,"\n"))
return table.concat(convers,"\n")
@@ -1531,11 +1554,13 @@ local function ADDnonUDT(FP)
end
--args
local caar,asp
local argsTN = {}
if #def.argsT > 0 then
caar = "("
asp = "("
for i,v in ipairs(def.argsT) do
local name = v.name
argsTN[i] = deepcopy(v)
if v.ret then --function pointer
local f_ = v.has_cdecl and "(__cdecl*" or "(*"
asp = asp .. v.ret .. f_ .. v.name .. ")" .. v.signature .. ","
@@ -1545,23 +1570,29 @@ local function ADDnonUDT(FP)
local typ2 = typ:gsub("*","")
--nonPOD arg -> convert
if FP.nP_args[v.type] then
local typ3 = v.type:gsub(typ,typ.."_c")
caar = caar .. "ConvertToCPP_"..typ.."("..name.."),"
asp = asp .. v.type:gsub(typ,typ.."_c").." "..v.name..","
asp = asp .. typ3 .." "..v.name..","
--argsTN[i].type = typ3
--nonPOD* arg -> reinterpret_cast
elseif FP.nP_args[typ2] then
local typ3 = v.type:gsub(typ2,typ2.."_c")
caar = caar .. "reinterpret_cast<"..v.type..">("..name.."),"
asp = asp .. typ3 .." "..v.name..","
--argsTN[i].type = typ3
elseif v.type:match("std::string_view") then
argsTN[i].type = "const char*"
caar = caar ..name..","
asp = asp .. "const char* "..v.name..","
elseif v.type:match("std::string") then
argsTN[i].type = "const char*"
caar = caar .. "std::string("..name.."),"
asp = asp .. "const char* "..v.name..","
elseif v.type:match"std::function" then
local ca2,asp2,skip2 = get_std_function(v,def)
caar = caar .. ca2..","
asp = asp .. asp2..","
argsTN[i].type = asp2
if skip2 then skip = true end
--skip = true
elseif v.type:match("std::") then
@@ -1575,11 +1606,13 @@ local function ADDnonUDT(FP)
local callname = "*"..name
caar = caar .. callname .. ","
asp = asp .. newt.." "..name .. ","
argsTN[i].type = newt
else
local newt = v.type --v.type:gsub(typ2.."%s*%*",typ2.."_opq")
local callname = v.reftoptr and "*"..name or name
caar = caar .. callname .. ","
asp = asp .. newt.." "..name .. ","
argsTN[i].type = newt
end
else
local siz = v.type:match("(%[%d*%])") or ""
@@ -1587,6 +1620,7 @@ local function ADDnonUDT(FP)
asp = asp .. typ .. (v.name~="..." and " "..v.name or "") .. siz .. ","
local callname = v.reftoptr and "*"..name or name
caar = caar .. callname .. ","
argsTN[i].type = typ .. siz
end
end
end
@@ -1604,6 +1638,7 @@ local function ADDnonUDT(FP)
def.call_args_old = def.call_args
def.call_args = caar
def.args = asp
def.argsT = argsTN
end
end
end
@@ -1799,8 +1834,58 @@ local function json_prepare(defs)
return defs
end
local function paramListWithoutDots(params)
i, j = string.find(params, "%.%.%.")
while i > 1 do
i = i - 1
c = string.sub(params,i,i)
if c == "," then
return string.sub(params, 1, i-1) .. params:sub(j+1)
elseif c == "(" then
return string.sub(params, 1, i) .. params:sub(j+1)
end
end
error("paramListWithoutDots failed")
return "()"
end
local function save_output(self)
--add VARGS0
local defsVARG = {}
for k,defs in pairs(self.defsT) do
for i, def in ipairs(defs) do
if def.isvararg then
--print("vararg",k,#def)
local def1 = deepcopy(def)
def1.isvararg = nil
def1.isVARG0 = true
def1.argsT[#def1.argsT] = nil
def1.args = paramListWithoutDots(def1.args)
def1.call_args_old = paramListWithoutDots(def1.call_args_old)
def1.call_args = paramListWithoutDots(def1.call_args)
def1.signature = paramListWithoutDots(def1.signature)
def1.cimguiname = def1.cimguiname.."0"
def1.ov_cimguiname = def1.ov_cimguiname.."0"
defsVARG[k.."0"] = defsVARG[k.."0"] or {}
table.insert(defsVARG[k.."0"], def1)
end
end
end
for k,def in pairs(defsVARG) do
self.defsT[k] = def
end
--add manual not present in module
for k,v in pairs(self.manuals) do
if not self.defsT[k] then
--print("add manual",k)
self.defsT[k] = {v}
else
--print("skipped manual",k)
end
end
----------------------
save_data("./output/overloads.txt",self.overloadstxt)
save_data("./output/definitions.lua",M.serializeTableF(self.defsT))
save_data("./output/structs_and_enums.lua",M.serializeTableF(self.structs_and_enums_table))
@@ -1841,6 +1926,9 @@ function M.Parser()
par.UDTs = {}
par.opaque_structs = {}
par.forced_opaque = {}
par.forced_nonPOD = {}
par.skip_template = {}
par.skip_convert_gen = {}
par.save_output = save_output
par.genConversors = genConversions
@@ -2306,6 +2394,236 @@ function M.Parser()
function par:printItems()
printItems(items)
end
-- for manuals not present in original module
-- copied from parseFuncion
local function split_args(self, funcname, stname, args, ret)
print("split args",funcname, stname, args, ret)
args = clean_spaces(args)
args = moveptr(args)
ret = clean_spaces(ret)
ret = moveptr(ret)
if stname==true then stname="" end
local constructor = ret:match(stname) and true or nil
local argsp = args:sub(2,-2)..","
local argsTa = {}
for tynam in argsp:gmatch("([^,]+),") do
if tynam:match("%)") and not tynam:match("%b()") then
error"split_args"
--patenthesis not closed are merged in previous (happens in some defaults)
argsTa[#argsTa] = argsTa[#argsTa]..","..tynam
while argsTa[#argsTa]:match("%)") and not argsTa[#argsTa]:match("%b()") do
argsTa[#argsTa-1] = argsTa[#argsTa-1] .. "," .. argsTa[#argsTa]
argsTa[#argsTa] = nil
end
else
argsTa[#argsTa+1] = tynam
end
end
----------------------------
--get typ, name and defaults
local functype_re = "^%s*[%w%s%*]+%(%*%s*[%w_]+%)%([^%(%)]*%)"
local functype_reex = "^(%s*[%w%s%*]+)%(%*%s*([%w_]+)%)(%([^%(%)]*%))"
local argsTa2 = {}
local noname_counter = 0
for i,ar in ipairs(argsTa) do
local ttype,template,te,code2 = check_template(ar) --ar:match("([^%s,%(%)]+)%s*<(.-)>")
if template then
error"manuals should not have templates"
if self.typenames[stname] ~= template then --rule out template typename
self.templates[ttype] = self.templates[ttype] or {}
self.templates[ttype][template] = te
end
end
argsTa[i] = te and code2 or ar
local template_orig = te and ar or nil
ar = argsTa[i]
--avoid var name without space type&name -> type& name
-- also do type &name -> type& name
--ar = ar:gsub("(%S)&(%S)","%1& %2")
ar = ar:gsub("(%S)%s*&(%S)","%1& %2")
local typ,name,retf,sigf,reftoptr,defa,ar1
local has_cdecl = ar:match"__cdecl"
if has_cdecl then ar = ar:gsub("__cdecl","") end
if ar:match(functype_re) then
local t1,namef,t2 = ar:match(functype_reex)
local f_ = has_cdecl and "(__cdecl*)" or "(*)"
typ, name = t1..f_..t2, namef
retf = t1
sigf = t2
else
reftoptr = nil
if ar:match("&") then
ar1,defa = ar:match"([^=]+)=([^=]+)"
ar1 = ar1 or ar
local typ11,name11 = ar1:match("(.+)%s([^%s]+)")
typ11 = typ11:gsub("const ","")
typ11 = typ11:gsub("&","")
if ar:match("const") and not self.opaque_structs[typ11] then
--if ar:match"Palette" then print("--w---w--w",ar,typ11,name11) end
--print("--w---w--w",ar,cname)
ar = ar:gsub("&","")
else
ar = ar:gsub("&","*")
reftoptr = true
end
end
if ar:match("%.%.%.") then
typ, name = "...", "..."
else
ar1,defa = ar:match"([^=]+)=([^=]+)"
ar1 = ar1 or ar
typ,name = ar1:match("(.+)%s([^%s]+)")
end
if not typ or not name or name:match"%*" or M.c_types[name] or self.typedefs_dict[name] then
print("argument without name",funcname,typ,name,ar)
ar1,defa = ar:match"([^=]+)=([^=]+)"
ar1 = ar1 or ar
typ = ar1
noname_counter = noname_counter + 1
name = "noname"..noname_counter
end
--float name[2] to float[2] name
local siz = name:match("(%[%d*%])")
if siz then
typ = typ..siz
name = name:gsub("(%[%d*%])","")
end
end
if typ:match"::" then
local const,typsimp,ptr = typ:match("(const )([^%*&]+)([%*&]*)")
print("= = = = 0 = =typ",typ,const,typsimp,ptr)
if self.opaque_structs_inv and self.opaque_structs_inv[typsimp] then
print("(((())))))=======self.opaque",const,typsimp,ptr);
typ = (const or "")..self.opaque_structs_inv[typsimp]..(ptr or "")
end
end
argsTa2[i] = {type=typ,name=name,default=defa,reftoptr=reftoptr,ret=retf,signature=sigf,has_cdecl=has_cdecl,template_orig=template_orig}
if ar:match("&") and not ar:match("const") then
--only post error if not manual
local cname = self.getCname(stname,funcname, namespace) --cimguiname
if not self.manuals[cname] then
print("reference to no const arg in",funcname,argscsinpars,ar)
end
end
end
local argsArr = argsTa2
--recreate argscsinpars, call_args and signature from argsArr
local asp, caar,signat
if #argsArr > 0 then
asp = "("
caar = "("
signat = "("
for i,v in ipairs(argsArr) do
if v.ret then --function pointer
local f_ = v.has_cdecl and "(__cdecl*" or "(*"
asp = asp .. v.ret .. f_ .. v.name .. ")" .. v.signature .. ","
caar = caar .. v.name .. ","
signat = signat .. v.ret .. f_..")" .. clean_names_from_signature(self,v.signature) .. ","
else
local siz = v.type:match("(%[%d*%])") or ""
local typ = v.type:gsub("(%[%d*%])","")
asp = asp .. typ .. (v.name~="..." and " "..v.name or "") .. siz .. ","
local callname = v.reftoptr and "*"..v.name or v.name
caar = caar .. callname .. ","
signat = signat .. typ .. siz .. ","
end
end
asp = asp:sub(1,-2)..")"
caar = caar:sub(1,-2)..")"
signat = signat:sub(1,-2)..")" .. (extraconst or "")
else
asp = "()"
caar = "()"
signat = "()" .. (extraconst or "")
end
--if ismanual then print("manual",asp, caar, signat) end
----------------------------
--[[
if not ret and stname then --must be constructors
if not (stname == funcname or "~"..stname==funcname) then --break end
print("false constructor:",line);
print("b2:",ret,stname,funcname,args)
return --are function defs
end
end
--]]
local cimguiname = funcname --self.getCname(stname,funcname, namespace)
-- table.insert(self.funcdefs,{stname=stname,funcname=funcname,args=args,signature=signat,cimguiname=cimguiname,call_args=caar,ret =ret})
local funcdef = {stname=stname,funcname=funcname,args=args,signature=signat,cimguiname=cimguiname,call_args=caar,ret =ret}
-- local defsT = self.defsT
-- defsT[cimguiname] = defsT[cimguiname] or {}
-- table.insert(defsT[cimguiname],{})
-- local defT = defsT[cimguiname][#defsT[cimguiname]]
local defT = {constructor = constructor}
defT.defaults = {}
for i,ar in ipairs(argsArr) do
if ar.default then
--clean defaults
--do only if not a c string
local is_cstring = ar.default:sub(1,1)=='"' and ar.default:sub(-1,-1) =='"'
if not is_cstring then
ar.default = ar.default:gsub("%(%(void%s*%*%)0%)","NULL")
if ar.default:match"%(ImU32%)" and not ar.default:match"sizeof" then
ar.default = tostring(CleanImU32(ar.default))
end
end
defT.defaults[ar.name] = ar.default
ar.default = nil
end
end
-- print(cimguiname)
-- if ismanual then M.prtable("===================================\n",argsArr) end
defT.templated = self.typenames[stname] and true
defT.namespace = namespace
defT.cimguiname = cimguiname
defT.ov_cimguiname = cimguiname
defT.stname = stname
defT.is_static_function = is_static_function
defT.funcname = funcname
defT.argsoriginal = args
defT.args= asp
defT.signature = signat --signature
defT.call_args = caar --call_args
defT.isvararg = signat:match("%.%.%.%)$")
defT.location = locat
--local comentario = (itt.prevcomments or "")..(itt.comments or "")..(comment or "")
--if comentario=="" then comentario=nil end
--defT.comment = comentario
defT.argsT = argsArr
if self.get_manuals(defT) then
defT.manual = true
end
if self.get_skipped(defT) then
defT.skipped = true
end
---[[
if ret then
--defT.stdret = line:match("^\n*%s*std::")
--if ret:match"string" then print("parsefunction",defT.cimguiname, ret, line) end
defT.ret = clean_spaces(ret:gsub("&","*"))
--name_conversion
local rr = defT.ret:gsub("*","")
rr = rr:gsub("const ","")
if self.name_conversion and self.name_conversion[rr] then
defT.ret = defT.ret:gsub(rr,self.name_conversion[rr])
end
defT.retref = ret:match("&")
-- if defT.ret=="ImVec2" or defT.ret=="ImVec4" or defT.ret=="ImColor" then
-- defT.ret = defT.ret.."_Simple"
-- end
end
--]]
--defsT[cimguiname][signat] = defT
--M.prtable(defT)
defT.call_args_old = defT.call_args
return defT --, funcdef
end
function par:set_manuals(manuals, modulen, erase)
erase = erase or {"CIMGUI_API"}
local moddata = read_data("./"..modulen.."_template.h")
@@ -2315,10 +2633,12 @@ function M.Parser()
ret = ret:gsub(ww,"")
end
local args = moddata:match(k.."%s*(%b())")
manuals[k] = {args = args, ret = ret}
manuals[k] = split_args(self,k,v,args,ret)
--manuals[k] = {args = args, ret = ret, argsT = split_args(self,args), manual = true, stname = ""}
--print(k,args,ret)
end
self.manuals = manuals
M.prtable("manuals",manuals)
end
par.parseFunction = parseFunction
local uniques = {}
@@ -2423,9 +2743,11 @@ function M.Parser()
--print("not doheader",ttype,template,te, self.typenames[ttype])
--M.prtable(self.typenames)
if self.typenames[ttype] and self.typenames[ttype] ~= template and self.typenames[ttype].."*" ~= template then --rule out T (template typename)
if not self.skip_template[ttype] then
self.templates[ttype] = self.templates[ttype] or {}
self.templates[ttype][template] = te
it2=code2
end
end
if doheader and self.templates[ttype] then
local templatetypedef = self:gentemplatetypedef(ttype, template,self.templates[ttype][template])
@@ -2434,7 +2756,7 @@ function M.Parser()
end
--clean using
if it.re_name == "vardef_re" and it.item:match("using%s+([^=%s]+)%s*=%s*([^;]+);") then
print("===using",it.item)
print("===using clean",it.item)
local typedef, assign = it2:match("using%s+([^=%s]+)%s*=%s*([^;]+);")
print(typedef,assign)
assign = assign:gsub("%w+::","")
@@ -2657,7 +2979,7 @@ function M.Parser()
end
if it2:match("using") then
local typedef, assign = it2:match("using%s+([^=%s]+)%s*=%s*([^;]+);")
print("====using",string.format("%q %q",typedef, assign))
print("====using as typedef",string.format("%q %q",typedef, assign))
if assign and assign:match"%(%s*%*%s*%)" then --function typedef
it2 = "\ntypedef "..assign:gsub("%(%s*%*%s*%)","(*"..typedef..")")..";"
end
@@ -2716,9 +3038,19 @@ function M.Parser()
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" or it.parent.re_name == "class_re")) then
--table.insert(outtab,predec .. cleanst)
if not self.forced_nonPOD[structname] then
--dont insert child structs as they are inserted before parent struct
if not (it.parent and (it.parent.re_name == "struct_re" or it.parent.re_name == "class_re")) then
--table.insert(outtab,predec .. cleanst)
self:header_text_insert(outtab, predec .. cleanst, it)
end
else
local tab = self.forced_nonPOD[structname]
local cleanst = "\nstruct "..structname.."\n{\n"
for i,v in ipairs(tab) do
cleanst = cleanst.." "..v.type.." "..v.name..";\n"
end
cleanst = cleanst .. "};"
self:header_text_insert(outtab, predec .. cleanst, it)
end
end
@@ -2769,6 +3101,13 @@ function M.Parser()
--table.insert(outtab,"\n/////outtab end\n")
local outtabprest, outtabst = table.concat(outtabpre,""),table.concat(outtab,"")
outtabprest = M.header_subs_nonPOD(self,outtabprest)
local txt2 = ""
M.table_do_sorted(self.nP_used, function(k,v)
if v~="inherited" then
txt2 = txt2.."typedef struct "..k.."_c "..k..";\n"
end
end)
outtabprest = txt2..outtabprest
outtabst = M.header_subs_nonPOD(self,outtabst)
self.structs_and_enums = {outtabprest, outtabst or ""}
@@ -2959,14 +3298,18 @@ function M.Parser()
--if not void stname or templated
if not structname then print("NO NAME",cleanst,it.item) end
if structname and not self.typenames[structname] then
outtab.structs[structname] = {}
outtab.struct_comments[structname] = {sameline=it.comments,above=it.prevcomments}
outtab.struct_comments[structname] = next(outtab.struct_comments[structname]) and outtab.struct_comments[structname] or nil
outtab.locations[structname] = it.locat
if strtab then
for j=3,#strtab-1 do
self:parse_struct_line(strtab[j],outtab.structs[structname],comstab[j])
end
if self.forced_nonPOD[structname] then
outtab.structs[structname] = self.forced_nonPOD[structname]
else
outtab.structs[structname] = {}
outtab.struct_comments[structname] = {sameline=it.comments,above=it.prevcomments}
outtab.struct_comments[structname] = next(outtab.struct_comments[structname]) and outtab.struct_comments[structname] or nil
outtab.locations[structname] = it.locat
if strtab then
for j=3,#strtab-1 do
self:parse_struct_line(strtab[j],outtab.structs[structname],comstab[j])
end
end
end
-- if structname == "Change" then
-- print(it.item)
@@ -3305,7 +3648,7 @@ function M.Parser()
M.prtable("typenames",self.typenames)
local outpre,outpost = self.structs_and_enums[1], self.structs_and_enums[2]
local tdt = self:generate_templates()
M.prtable("generate_templates",tdt)
--M.prtable("generate_templates",tdt)
local cstructsstr = outpre..tdt..outpost
hstrfile = hstrfile:gsub([[#include "imgui_structs%.h"]],cstructsstr)
@@ -3594,21 +3937,7 @@ local function location(file,locpathT,defines,COMPILER,keepemptylines)
end
M.location = location
---------------------- C writing functions
local function paramListWithoutDots(params)
i, j = string.find(params, "%.%.%.")
while i > 1 do
i = i - 1
c = string.sub(params,i,i)
if c == "," then
return string.sub(params, 1, i-1) .. params:sub(j+1)
elseif c == "(" then
return string.sub(params, 1, i) .. params:sub(j+1)
end
end
error("paramListWithoutDots failed")
return "()"
end
local function ImGui_f_implementation(def)
local outtab = {}
local ptret = def.retref and "&" or ""
@@ -3634,7 +3963,9 @@ local function ImGui_f_implementation(def)
table.insert(outtab, "#ifdef CIMGUI_VARGS0\n")
table.insert(outtab, "CIMGUI_API".." "..def.ret.." "..def.ov_cimguiname.."0"..paramListWithoutDots(def.args).."\n")
table.insert(outtab, "{\n")
table.insert(outtab, " return "..def.ov_cimguiname..paramListWithoutDots(def.call_args_old)..";\n")
local returnword = "return "
if def.ret=="void" then returnword = "" end
table.insert(outtab, " "..returnword..def.ov_cimguiname..paramListWithoutDots(def.call_args_old)..";\n")
table.insert(outtab, "}\n")
table.insert(outtab, "#endif\n")
elseif def.nonUDT then
@@ -3649,6 +3980,7 @@ local function ImGui_f_implementation(def)
insert(outtab," return str.c_str();\n")
elseif def.nonUDT == "opaque" then
insert(outtab," static auto opq = "..ptret..namespace..def.funcname..def.call_args..";\n")
insert(outtab," opq = "..ptret..namespace..def.funcname..def.call_args..";\n")
insert(outtab," return &opq;\n")
end
table.insert(outtab,"}\n")
@@ -3681,6 +4013,16 @@ local function struct_f_implementation(def)
if def.ret~="void" then
table.insert(outtab," return ret;\n")
end
table.insert(outtab,"}\n")
-- For variadic functions we add a function implementation with zero argumets, for compatibility with languages such as C#.
table.insert(outtab, "#ifdef CIMGUI_VARGS0\n")
table.insert(outtab, "CIMGUI_API".." "..def.ret.." "..def.ov_cimguiname.."0"..paramListWithoutDots(def.args).."\n")
table.insert(outtab, "{\n")
local returnword = "return "
if def.ret=="void" then returnword = "" end
table.insert(outtab, " "..returnword..def.ov_cimguiname.."(self,"..paramListWithoutDots(def.call_args_old):sub(2,-1)..";\n")
table.insert(outtab, "}\n")
table.insert(outtab, "#endif\n")
elseif def.nonUDT then
if def.nonUDT == 1 then
--table.insert(outtab," *pOut = self->"..def.funcname..def.call_args..";\n")
@@ -3694,12 +4036,15 @@ local function struct_f_implementation(def)
insert(outtab," return str.c_str();\n")
elseif def.nonUDT == "opaque" then
insert(outtab," static auto opq = "..ptret.."self->"..def.funcname..def.call_args..";\n")
insert(outtab," opq = "..ptret.."self->"..def.funcname..def.call_args..";\n")
insert(outtab," return &opq;\n")
end
table.insert(outtab,"}\n")
else --standard struct
table.insert(outtab," return "..ptret.."self->"..def.funcname..def.call_args..";\n")
table.insert(outtab,"}\n")
end
table.insert(outtab,"}\n")
return table.concat(outtab, "")
end
local function func_implementation(FP)
@@ -3812,7 +4157,6 @@ local function func_header_generate_funcs(FP)
local outtab = {}
for _,t in ipairs(FP.funcdefs) do
if t.cimguiname then
local cimf = FP.defsT[t.cimguiname]
local def = cimf[t.signature]
@@ -3824,7 +4168,6 @@ local function func_header_generate_funcs(FP)
local manual = FP.get_manuals(def)
if not custom and not manual and not def.templated and not FP.get_skipped(def) --and not (FP.opaque_structs[def.stname] and not def.is_static_function)
then
local addcoment = "" --def.comment or ""
local empty = def.args:match("^%(%)") --no args
if def.constructor then
@@ -3848,6 +4191,12 @@ local function func_header_generate_funcs(FP)
end
else
table.insert(outtab,"CIMGUI_API "..ret.." "..def.ov_cimguiname..def.args..";"..addcoment.."\n")
if def.isvararg then
-- For variadic functions we add a function implementation with zero argumets, for compatibility with languages such as C#.
table.insert(outtab, "#ifdef CIMGUI_VARGS0\n")
table.insert(outtab, "CIMGUI_API".." "..ret.." "..def.ov_cimguiname.."0"..paramListWithoutDots(def.args)..";\n")
table.insert(outtab, "#endif\n")
end
end
end
end

View File

@@ -407,19 +407,20 @@ end
--generation
print("------------------generation with "..COMPILER.."------------------------")
local parser1
local headers = [[#include "]]..IMGUI_PATH..[[/imgui.h"
local headers = [[#include "]]..IMGUI_PATH..[[/imgui.h"
]]
local headersT = {[[imgui]]}
if INTERNAL_GENERATION then
headers = headers .. [[#include "]]..IMGUI_PATH..[[/imgui_internal.h"
]]
]]
headers = headers .. [[#include "]]..IMGUI_PATH..[[/imstb_textedit.h"
]]
headersT[#headersT + 1] = [[imgui_internal]]
headersT[#headersT + 1] = [[imstb_textedit]]
end
if FREETYPE_GENERATION then
headers = headers .. [[
#include "]]..IMGUI_PATH..[[/misc/freetype/imgui_freetype.h"
]]
headers = headers .. [[#include "]]..IMGUI_PATH..[[/misc/freetype/imgui_freetype.h"
]]
headersT[#headersT + 1] = [[imgui_freetype]]
end
save_data("headers.h",headers)

View File

@@ -20,11 +20,12 @@
"IMGUI_TABLE_MAX_COLUMNS": "512",
"IMGUI_TEST_ENGINE_ITEM_ADD(_ID,_BB,_ITEM_DATA)": "((void)0)",
"IMGUI_TEST_ENGINE_ITEM_INFO(_ID,_LABEL,_FLAGS)": "((void)g)",
"IMGUI_VERSION": "\"1.92.9\"",
"IMGUI_VERSION_NUM": "19290",
"IMGUI_VERSION": "\"1.92.9b\"",
"IMGUI_VERSION_NUM": "19291",
"IMGUI_WINDOW_HARD_MIN_SIZE": "4.0f",
"IMSTB_TEXTEDIT_CHARTYPE": "char",
"IMSTB_TEXTEDIT_GETWIDTH_NEWLINE": "(-1.0f)",
"IMSTB_TEXTEDIT_POSITIONTYPE": "int",
"IMSTB_TEXTEDIT_STRING": "ImGuiInputTextState",
"IMSTB_TEXTEDIT_UNDOCHARCOUNT": "999",
"IMSTB_TEXTEDIT_UNDOSTATECOUNT": "99",

View File

@@ -20,11 +20,12 @@ local t={
IMGUI_TABLE_MAX_COLUMNS="512",
["IMGUI_TEST_ENGINE_ITEM_ADD(_ID,_BB,_ITEM_DATA)"]="((void)0)",
["IMGUI_TEST_ENGINE_ITEM_INFO(_ID,_LABEL,_FLAGS)"]="((void)g)",
IMGUI_VERSION="\"1.92.9\"",
IMGUI_VERSION_NUM="19290",
IMGUI_VERSION="\"1.92.9b\"",
IMGUI_VERSION_NUM="19291",
IMGUI_WINDOW_HARD_MIN_SIZE="4.0f",
IMSTB_TEXTEDIT_CHARTYPE="char",
IMSTB_TEXTEDIT_GETWIDTH_NEWLINE="(-1.0f)",
IMSTB_TEXTEDIT_POSITIONTYPE="int",
IMSTB_TEXTEDIT_STRING="ImGuiInputTextState",
IMSTB_TEXTEDIT_UNDOCHARCOUNT="999",
IMSTB_TEXTEDIT_UNDOSTATECOUNT="99",

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -5149,22 +5149,22 @@
"ImDrawVert": "imgui:3233",
"ImFont": "imgui:3930",
"ImFontAtlas": "imgui:3728",
"ImFontAtlasBuilder": "imgui_internal:3987",
"ImFontAtlasBuilder": "imgui_internal:3988",
"ImFontAtlasFlags_": "imgui:3701",
"ImFontAtlasPostProcessData": "imgui_internal:3960",
"ImFontAtlasPostProcessData": "imgui_internal:3961",
"ImFontAtlasRect": "imgui:3691",
"ImFontAtlasRectEntry": "imgui_internal:3952",
"ImFontAtlasRectEntry": "imgui_internal:3953",
"ImFontBaked": "imgui:3881",
"ImFontConfig": "imgui:3610",
"ImFontFlags_": "imgui:3916",
"ImFontGlyph": "imgui:3653",
"ImFontGlyphRangesBuilder": "imgui:3669",
"ImFontLoader": "imgui_internal:3901",
"ImFontLoader": "imgui_internal:3902",
"ImFontStackData": "imgui_internal:925",
"ImGuiActivateFlags_": "imgui_internal:1718",
"ImGuiActivateFlags_": "imgui_internal:1719",
"ImGuiAxis": "imgui_internal:1174",
"ImGuiBackendFlags_": "imgui:1745",
"ImGuiBoxSelectState": "imgui_internal:1910",
"ImGuiBoxSelectState": "imgui_internal:1911",
"ImGuiButtonFlagsPrivate_": "imgui_internal:1062",
"ImGuiButtonFlags_": "imgui:1888",
"ImGuiChildFlags_": "imgui:1220",
@@ -5176,41 +5176,41 @@
"ImGuiComboPreviewData": "imgui_internal:1188",
"ImGuiCond_": "imgui:2021",
"ImGuiConfigFlags_": "imgui:1726",
"ImGuiContext": "imgui_internal:2249",
"ImGuiContextHook": "imgui_internal:2232",
"ImGuiContextHookType": "imgui_internal:2230",
"ImGuiContext": "imgui_internal:2250",
"ImGuiContextHook": "imgui_internal:2233",
"ImGuiContextHookType": "imgui_internal:2231",
"ImGuiDataTypeInfo": "imgui_internal:971",
"ImGuiDataTypePrivate_": "imgui_internal:980",
"ImGuiDataTypeStorage": "imgui_internal:965",
"ImGuiDataType_": "imgui:1531",
"ImGuiDeactivatedItemData": "imgui_internal:1486",
"ImGuiDebugAllocEntry": "imgui_internal:2153",
"ImGuiDebugAllocInfo": "imgui_internal:2160",
"ImGuiDebugItemPathQuery": "imgui_internal:2201",
"ImGuiDebugLogFlags_": "imgui_internal:2129",
"ImGuiDeactivatedItemData": "imgui_internal:1487",
"ImGuiDebugAllocEntry": "imgui_internal:2154",
"ImGuiDebugAllocInfo": "imgui_internal:2161",
"ImGuiDebugItemPathQuery": "imgui_internal:2202",
"ImGuiDebugLogFlags_": "imgui_internal:2130",
"ImGuiDir": "imgui:1549",
"ImGuiDragDropFlags_": "imgui:1502",
"ImGuiErrorRecoveryState": "imgui_internal:1441",
"ImGuiErrorRecoveryState": "imgui_internal:1442",
"ImGuiFocusRequestFlags_": "imgui_internal:1134",
"ImGuiFocusScopeData": "imgui_internal:1807",
"ImGuiFocusScopeData": "imgui_internal:1808",
"ImGuiFocusedFlags_": "imgui:1450",
"ImGuiFreeTypeLoaderFlags_": "imgui_freetype:29",
"ImGuiGroupData": "imgui_internal:1201",
"ImGuiHoveredFlagsPrivate_": "imgui_internal:1045",
"ImGuiHoveredFlags_": "imgui:1464",
"ImGuiIDStackTool": "imgui_internal:2215",
"ImGuiIDStackTool": "imgui_internal:2216",
"ImGuiIO": "imgui:2429",
"ImGuiInputEvent": "imgui_internal:1579",
"ImGuiInputEventAppFocused": "imgui_internal:1577",
"ImGuiInputEventKey": "imgui_internal:1575",
"ImGuiInputEventMouseButton": "imgui_internal:1574",
"ImGuiInputEventMousePos": "imgui_internal:1572",
"ImGuiInputEventMouseWheel": "imgui_internal:1573",
"ImGuiInputEventText": "imgui_internal:1576",
"ImGuiInputEventType": "imgui_internal:1549",
"ImGuiInputFlagsPrivate_": "imgui_internal:1645",
"ImGuiInputEvent": "imgui_internal:1580",
"ImGuiInputEventAppFocused": "imgui_internal:1578",
"ImGuiInputEventKey": "imgui_internal:1576",
"ImGuiInputEventMouseButton": "imgui_internal:1575",
"ImGuiInputEventMousePos": "imgui_internal:1573",
"ImGuiInputEventMouseWheel": "imgui_internal:1574",
"ImGuiInputEventText": "imgui_internal:1577",
"ImGuiInputEventType": "imgui_internal:1550",
"ImGuiInputFlagsPrivate_": "imgui_internal:1646",
"ImGuiInputFlags_": "imgui:1702",
"ImGuiInputSource": "imgui_internal:1561",
"ImGuiInputSource": "imgui_internal:1562",
"ImGuiInputTextCallbackData": "imgui:2676",
"ImGuiInputTextDeactivatedState": "imgui_internal:1239",
"ImGuiInputTextFlagsPrivate_": "imgui_internal:1053",
@@ -5221,49 +5221,49 @@
"ImGuiItemStatusFlags_": "imgui_internal:1017",
"ImGuiKey": "imgui:1573",
"ImGuiKeyData": "imgui:2421",
"ImGuiKeyOwnerData": "imgui_internal:1632",
"ImGuiKeyRoutingData": "imgui_internal:1606",
"ImGuiKeyRoutingTable": "imgui_internal:1620",
"ImGuiLastItemData": "imgui_internal:1410",
"ImGuiKeyOwnerData": "imgui_internal:1633",
"ImGuiKeyRoutingData": "imgui_internal:1607",
"ImGuiKeyRoutingTable": "imgui_internal:1621",
"ImGuiLastItemData": "imgui_internal:1411",
"ImGuiLayoutType_": "imgui_internal:1155",
"ImGuiListClipper": "imgui:2894",
"ImGuiListClipperData": "imgui_internal:1702",
"ImGuiListClipperData": "imgui_internal:1703",
"ImGuiListClipperFlags_": "imgui:2868",
"ImGuiListClipperRange": "imgui_internal:1689",
"ImGuiLocEntry": "imgui_internal:2100",
"ImGuiLocKey": "imgui_internal:2082",
"ImGuiListClipperRange": "imgui_internal:1690",
"ImGuiLocEntry": "imgui_internal:2101",
"ImGuiLocKey": "imgui_internal:2083",
"ImGuiLogFlags_": "imgui_internal:1162",
"ImGuiMenuColumns": "imgui_internal:1220",
"ImGuiMetricsConfig": "imgui_internal:2170",
"ImGuiMetricsConfig": "imgui_internal:2171",
"ImGuiMouseButton_": "imgui:1979",
"ImGuiMouseCursor_": "imgui:1989",
"ImGuiMouseSource": "imgui:2010",
"ImGuiMultiSelectFlags_": "imgui:3063",
"ImGuiMultiSelectIO": "imgui:3099",
"ImGuiMultiSelectState": "imgui_internal:1970",
"ImGuiMultiSelectTempData": "imgui_internal:1943",
"ImGuiNavItemData": "imgui_internal:1790",
"ImGuiNavLayer": "imgui_internal:1782",
"ImGuiNavMoveFlags_": "imgui_internal:1760",
"ImGuiNavRenderCursorFlags_": "imgui_internal:1745",
"ImGuiNextItemData": "imgui_internal:1388",
"ImGuiNextItemDataFlags_": "imgui_internal:1377",
"ImGuiNextWindowData": "imgui_internal:1350",
"ImGuiNextWindowDataFlags_": "imgui_internal:1333",
"ImGuiOldColumnData": "imgui_internal:1875",
"ImGuiOldColumnFlags_": "imgui_internal:1855",
"ImGuiOldColumns": "imgui_internal:1885",
"ImGuiMultiSelectState": "imgui_internal:1971",
"ImGuiMultiSelectTempData": "imgui_internal:1944",
"ImGuiNavItemData": "imgui_internal:1791",
"ImGuiNavLayer": "imgui_internal:1783",
"ImGuiNavMoveFlags_": "imgui_internal:1761",
"ImGuiNavRenderCursorFlags_": "imgui_internal:1746",
"ImGuiNextItemData": "imgui_internal:1389",
"ImGuiNextItemDataFlags_": "imgui_internal:1378",
"ImGuiNextWindowData": "imgui_internal:1351",
"ImGuiNextWindowDataFlags_": "imgui_internal:1334",
"ImGuiOldColumnData": "imgui_internal:1876",
"ImGuiOldColumnFlags_": "imgui_internal:1856",
"ImGuiOldColumns": "imgui_internal:1886",
"ImGuiOnceUponAFrame": "imgui:2757",
"ImGuiPackedDate": "imgui_internal:841",
"ImGuiPayload": "imgui:2722",
"ImGuiPlatformIO": "imgui:4043",
"ImGuiPlatformImeData": "imgui:4110",
"ImGuiPlotType": "imgui_internal:1181",
"ImGuiPopupData": "imgui_internal:1506",
"ImGuiPopupData": "imgui_internal:1507",
"ImGuiPopupFlags_": "imgui:1359",
"ImGuiPopupPositionPolicy": "imgui_internal:1498",
"ImGuiPtrOrIndex": "imgui_internal:1475",
"ImGuiScrollFlags_": "imgui_internal:1731",
"ImGuiPopupPositionPolicy": "imgui_internal:1499",
"ImGuiPtrOrIndex": "imgui_internal:1476",
"ImGuiScrollFlags_": "imgui_internal:1732",
"ImGuiSelectableFlagsPrivate_": "imgui_internal:1101",
"ImGuiSelectableFlags_": "imgui:1378",
"ImGuiSelectionBasicStorage": "imgui:3145",
@@ -5271,41 +5271,41 @@
"ImGuiSelectionRequest": "imgui:3119",
"ImGuiSelectionRequestType": "imgui:3111",
"ImGuiSeparatorFlags_": "imgui_internal:1123",
"ImGuiSettingsCleanupArgs": "imgui_internal:2050",
"ImGuiSettingsHandler": "imgui_internal:2061",
"ImGuiShrinkWidthItem": "imgui_internal:1468",
"ImGuiSettingsCleanupArgs": "imgui_internal:2051",
"ImGuiSettingsHandler": "imgui_internal:2062",
"ImGuiShrinkWidthItem": "imgui_internal:1469",
"ImGuiSizeCallbackData": "imgui:2713",
"ImGuiSliderFlagsPrivate_": "imgui_internal:1094",
"ImGuiSliderFlags_": "imgui:1960",
"ImGuiSortDirection": "imgui:1560",
"ImGuiStackLevelInfo": "imgui_internal:2190",
"ImGuiStackLevelInfo": "imgui_internal:2191",
"ImGuiStorage": "imgui:2830",
"ImGuiStoragePair": "imgui:2813",
"ImGuiStyle": "imgui:2308",
"ImGuiStyleMod": "imgui_internal:952",
"ImGuiStyleVarInfo": "imgui_internal:936",
"ImGuiStyleVar_": "imgui:1837",
"ImGuiTabBar": "imgui_internal:2886",
"ImGuiTabBarFlagsPrivate_": "imgui_internal:2849",
"ImGuiTabBar": "imgui_internal:2887",
"ImGuiTabBarFlagsPrivate_": "imgui_internal:2850",
"ImGuiTabBarFlags_": "imgui:1411",
"ImGuiTabItem": "imgui_internal:2867",
"ImGuiTabItemFlagsPrivate_": "imgui_internal:2857",
"ImGuiTabItem": "imgui_internal:2868",
"ImGuiTabItemFlagsPrivate_": "imgui_internal:2858",
"ImGuiTabItemFlags_": "imgui:1435",
"ImGuiTable": "imgui_internal:3055",
"ImGuiTable": "imgui_internal:3056",
"ImGuiTableBgTarget_": "imgui:2162",
"ImGuiTableCellData": "imgui_internal:3023",
"ImGuiTableColumn": "imgui_internal:2940",
"ImGuiTableCellData": "imgui_internal:3024",
"ImGuiTableColumn": "imgui_internal:2941",
"ImGuiTableColumnFlags_": "imgui:2109",
"ImGuiTableColumnSettings": "imgui_internal:3213",
"ImGuiTableColumnSettings": "imgui_internal:3214",
"ImGuiTableColumnSortSpecs": "imgui:2184",
"ImGuiTableFlags_": "imgui:2056",
"ImGuiTableHeaderData": "imgui_internal:3032",
"ImGuiTableInstanceData": "imgui_internal:3042",
"ImGuiTableReconcileColumnData": "imgui_internal:3006",
"ImGuiTableHeaderData": "imgui_internal:3033",
"ImGuiTableInstanceData": "imgui_internal:3043",
"ImGuiTableReconcileColumnData": "imgui_internal:3007",
"ImGuiTableRowFlags_": "imgui:2147",
"ImGuiTableSettings": "imgui_internal:3239",
"ImGuiTableSettings": "imgui_internal:3240",
"ImGuiTableSortSpecs": "imgui:2174",
"ImGuiTableTempData": "imgui_internal:3184",
"ImGuiTableTempData": "imgui_internal:3185",
"ImGuiTextBuffer": "imgui:2792",
"ImGuiTextFilter": "imgui:2765",
"ImGuiTextFlags_": "imgui_internal:1141",
@@ -5314,20 +5314,20 @@
"ImGuiTooltipFlags_": "imgui_internal:1147",
"ImGuiTreeNodeFlagsPrivate_": "imgui_internal:1114",
"ImGuiTreeNodeFlags_": "imgui:1320",
"ImGuiTreeNodeStackData": "imgui_internal:1429",
"ImGuiTypingSelectFlags_": "imgui_internal:1818",
"ImGuiTypingSelectRequest": "imgui_internal:1826",
"ImGuiTypingSelectState": "imgui_internal:1837",
"ImGuiTreeNodeStackData": "imgui_internal:1430",
"ImGuiTypingSelectFlags_": "imgui_internal:1819",
"ImGuiTypingSelectRequest": "imgui_internal:1827",
"ImGuiTypingSelectState": "imgui_internal:1838",
"ImGuiViewport": "imgui:4017",
"ImGuiViewportFlags_": "imgui:4002",
"ImGuiViewportP": "imgui_internal:1998",
"ImGuiWindow": "imgui_internal:2714",
"ImGuiWindowBgClickFlags_": "imgui_internal:1327",
"ImGuiViewportP": "imgui_internal:1999",
"ImGuiWindow": "imgui_internal:2715",
"ImGuiWindowBgClickFlags_": "imgui_internal:1328",
"ImGuiWindowFlags_": "imgui:1171",
"ImGuiWindowRefreshFlags_": "imgui_internal:1318",
"ImGuiWindowSettings": "imgui_internal:2035",
"ImGuiWindowStackData": "imgui_internal:1459",
"ImGuiWindowTempData": "imgui_internal:2660",
"ImGuiWindowRefreshFlags_": "imgui_internal:1319",
"ImGuiWindowSettings": "imgui_internal:2036",
"ImGuiWindowStackData": "imgui_internal:1460",
"ImGuiWindowTempData": "imgui_internal:2661",
"ImRect": "imgui_internal:591",
"ImTextureData": "imgui:3564",
"ImTextureFormat": "imgui:3532",
@@ -5340,7 +5340,11 @@
"ImVec2ih": "imgui_internal:581",
"ImVec4": "imgui:308",
"ImWcharClass": "imgui_internal:452",
"stbrp_context_opaque": "imgui_internal:3984"
"STB_TexteditState": "imstb_textedit:342",
"StbTexteditRow": "imstb_textedit:389",
"StbUndoRecord": "imstb_textedit:324",
"StbUndoState": "imstb_textedit:333",
"stbrp_context_opaque": "imgui_internal:3985"
},
"nonPOD": {
"ImBitArray": true,
@@ -12381,6 +12385,136 @@
"type": "float"
}
],
"STB_TexteditState": [
{
"name": "cursor",
"type": "int"
},
{
"name": "select_start",
"type": "int"
},
{
"name": "select_end",
"type": "int"
},
{
"name": "insert_mode",
"type": "unsigned char"
},
{
"name": "row_count_per_page",
"type": "int"
},
{
"name": "cursor_at_end_of_line",
"type": "unsigned char"
},
{
"name": "initialized",
"type": "unsigned char"
},
{
"name": "has_preferred_x",
"type": "unsigned char"
},
{
"name": "single_line",
"type": "unsigned char"
},
{
"name": "padding1",
"type": "unsigned char"
},
{
"name": "padding2",
"type": "unsigned char"
},
{
"name": "padding3",
"type": "unsigned char"
},
{
"name": "preferred_x",
"type": "float"
},
{
"name": "undostate",
"type": "StbUndoState"
}
],
"StbTexteditRow": [
{
"name": "x0",
"type": "float"
},
{
"name": "x1",
"type": "float"
},
{
"name": "baseline_y_delta",
"type": "float"
},
{
"name": "ymin",
"type": "float"
},
{
"name": "ymax",
"type": "float"
},
{
"name": "num_chars",
"type": "int"
}
],
"StbUndoRecord": [
{
"name": "where",
"type": "int"
},
{
"name": "insert_length",
"type": "int"
},
{
"name": "delete_length",
"type": "int"
},
{
"name": "char_storage",
"type": "int"
}
],
"StbUndoState": [
{
"name": "undo_rec[99]",
"size": 99,
"type": "StbUndoRecord"
},
{
"name": "undo_char[999]",
"size": 999,
"type": "char"
},
{
"name": "undo_point",
"type": "short"
},
{
"name": "redo_point",
"type": "short"
},
{
"name": "undo_char_point",
"type": "int"
},
{
"name": "redo_char_point",
"type": "int"
}
],
"stbrp_context_opaque": [
{
"name": "data[80]",

View File

@@ -4072,22 +4072,22 @@ local t={
ImDrawVert="imgui:3233",
ImFont="imgui:3930",
ImFontAtlas="imgui:3728",
ImFontAtlasBuilder="imgui_internal:3987",
ImFontAtlasBuilder="imgui_internal:3988",
ImFontAtlasFlags_="imgui:3701",
ImFontAtlasPostProcessData="imgui_internal:3960",
ImFontAtlasPostProcessData="imgui_internal:3961",
ImFontAtlasRect="imgui:3691",
ImFontAtlasRectEntry="imgui_internal:3952",
ImFontAtlasRectEntry="imgui_internal:3953",
ImFontBaked="imgui:3881",
ImFontConfig="imgui:3610",
ImFontFlags_="imgui:3916",
ImFontGlyph="imgui:3653",
ImFontGlyphRangesBuilder="imgui:3669",
ImFontLoader="imgui_internal:3901",
ImFontLoader="imgui_internal:3902",
ImFontStackData="imgui_internal:925",
ImGuiActivateFlags_="imgui_internal:1718",
ImGuiActivateFlags_="imgui_internal:1719",
ImGuiAxis="imgui_internal:1174",
ImGuiBackendFlags_="imgui:1745",
ImGuiBoxSelectState="imgui_internal:1910",
ImGuiBoxSelectState="imgui_internal:1911",
ImGuiButtonFlagsPrivate_="imgui_internal:1062",
ImGuiButtonFlags_="imgui:1888",
ImGuiChildFlags_="imgui:1220",
@@ -4099,41 +4099,41 @@ local t={
ImGuiComboPreviewData="imgui_internal:1188",
ImGuiCond_="imgui:2021",
ImGuiConfigFlags_="imgui:1726",
ImGuiContext="imgui_internal:2249",
ImGuiContextHook="imgui_internal:2232",
ImGuiContextHookType="imgui_internal:2230",
ImGuiContext="imgui_internal:2250",
ImGuiContextHook="imgui_internal:2233",
ImGuiContextHookType="imgui_internal:2231",
ImGuiDataTypeInfo="imgui_internal:971",
ImGuiDataTypePrivate_="imgui_internal:980",
ImGuiDataTypeStorage="imgui_internal:965",
ImGuiDataType_="imgui:1531",
ImGuiDeactivatedItemData="imgui_internal:1486",
ImGuiDebugAllocEntry="imgui_internal:2153",
ImGuiDebugAllocInfo="imgui_internal:2160",
ImGuiDebugItemPathQuery="imgui_internal:2201",
ImGuiDebugLogFlags_="imgui_internal:2129",
ImGuiDeactivatedItemData="imgui_internal:1487",
ImGuiDebugAllocEntry="imgui_internal:2154",
ImGuiDebugAllocInfo="imgui_internal:2161",
ImGuiDebugItemPathQuery="imgui_internal:2202",
ImGuiDebugLogFlags_="imgui_internal:2130",
ImGuiDir="imgui:1549",
ImGuiDragDropFlags_="imgui:1502",
ImGuiErrorRecoveryState="imgui_internal:1441",
ImGuiErrorRecoveryState="imgui_internal:1442",
ImGuiFocusRequestFlags_="imgui_internal:1134",
ImGuiFocusScopeData="imgui_internal:1807",
ImGuiFocusScopeData="imgui_internal:1808",
ImGuiFocusedFlags_="imgui:1450",
ImGuiFreeTypeLoaderFlags_="imgui_freetype:29",
ImGuiGroupData="imgui_internal:1201",
ImGuiHoveredFlagsPrivate_="imgui_internal:1045",
ImGuiHoveredFlags_="imgui:1464",
ImGuiIDStackTool="imgui_internal:2215",
ImGuiIDStackTool="imgui_internal:2216",
ImGuiIO="imgui:2429",
ImGuiInputEvent="imgui_internal:1579",
ImGuiInputEventAppFocused="imgui_internal:1577",
ImGuiInputEventKey="imgui_internal:1575",
ImGuiInputEventMouseButton="imgui_internal:1574",
ImGuiInputEventMousePos="imgui_internal:1572",
ImGuiInputEventMouseWheel="imgui_internal:1573",
ImGuiInputEventText="imgui_internal:1576",
ImGuiInputEventType="imgui_internal:1549",
ImGuiInputFlagsPrivate_="imgui_internal:1645",
ImGuiInputEvent="imgui_internal:1580",
ImGuiInputEventAppFocused="imgui_internal:1578",
ImGuiInputEventKey="imgui_internal:1576",
ImGuiInputEventMouseButton="imgui_internal:1575",
ImGuiInputEventMousePos="imgui_internal:1573",
ImGuiInputEventMouseWheel="imgui_internal:1574",
ImGuiInputEventText="imgui_internal:1577",
ImGuiInputEventType="imgui_internal:1550",
ImGuiInputFlagsPrivate_="imgui_internal:1646",
ImGuiInputFlags_="imgui:1702",
ImGuiInputSource="imgui_internal:1561",
ImGuiInputSource="imgui_internal:1562",
ImGuiInputTextCallbackData="imgui:2676",
ImGuiInputTextDeactivatedState="imgui_internal:1239",
ImGuiInputTextFlagsPrivate_="imgui_internal:1053",
@@ -4144,49 +4144,49 @@ local t={
ImGuiItemStatusFlags_="imgui_internal:1017",
ImGuiKey="imgui:1573",
ImGuiKeyData="imgui:2421",
ImGuiKeyOwnerData="imgui_internal:1632",
ImGuiKeyRoutingData="imgui_internal:1606",
ImGuiKeyRoutingTable="imgui_internal:1620",
ImGuiLastItemData="imgui_internal:1410",
ImGuiKeyOwnerData="imgui_internal:1633",
ImGuiKeyRoutingData="imgui_internal:1607",
ImGuiKeyRoutingTable="imgui_internal:1621",
ImGuiLastItemData="imgui_internal:1411",
ImGuiLayoutType_="imgui_internal:1155",
ImGuiListClipper="imgui:2894",
ImGuiListClipperData="imgui_internal:1702",
ImGuiListClipperData="imgui_internal:1703",
ImGuiListClipperFlags_="imgui:2868",
ImGuiListClipperRange="imgui_internal:1689",
ImGuiLocEntry="imgui_internal:2100",
ImGuiLocKey="imgui_internal:2082",
ImGuiListClipperRange="imgui_internal:1690",
ImGuiLocEntry="imgui_internal:2101",
ImGuiLocKey="imgui_internal:2083",
ImGuiLogFlags_="imgui_internal:1162",
ImGuiMenuColumns="imgui_internal:1220",
ImGuiMetricsConfig="imgui_internal:2170",
ImGuiMetricsConfig="imgui_internal:2171",
ImGuiMouseButton_="imgui:1979",
ImGuiMouseCursor_="imgui:1989",
ImGuiMouseSource="imgui:2010",
ImGuiMultiSelectFlags_="imgui:3063",
ImGuiMultiSelectIO="imgui:3099",
ImGuiMultiSelectState="imgui_internal:1970",
ImGuiMultiSelectTempData="imgui_internal:1943",
ImGuiNavItemData="imgui_internal:1790",
ImGuiNavLayer="imgui_internal:1782",
ImGuiNavMoveFlags_="imgui_internal:1760",
ImGuiNavRenderCursorFlags_="imgui_internal:1745",
ImGuiNextItemData="imgui_internal:1388",
ImGuiNextItemDataFlags_="imgui_internal:1377",
ImGuiNextWindowData="imgui_internal:1350",
ImGuiNextWindowDataFlags_="imgui_internal:1333",
ImGuiOldColumnData="imgui_internal:1875",
ImGuiOldColumnFlags_="imgui_internal:1855",
ImGuiOldColumns="imgui_internal:1885",
ImGuiMultiSelectState="imgui_internal:1971",
ImGuiMultiSelectTempData="imgui_internal:1944",
ImGuiNavItemData="imgui_internal:1791",
ImGuiNavLayer="imgui_internal:1783",
ImGuiNavMoveFlags_="imgui_internal:1761",
ImGuiNavRenderCursorFlags_="imgui_internal:1746",
ImGuiNextItemData="imgui_internal:1389",
ImGuiNextItemDataFlags_="imgui_internal:1378",
ImGuiNextWindowData="imgui_internal:1351",
ImGuiNextWindowDataFlags_="imgui_internal:1334",
ImGuiOldColumnData="imgui_internal:1876",
ImGuiOldColumnFlags_="imgui_internal:1856",
ImGuiOldColumns="imgui_internal:1886",
ImGuiOnceUponAFrame="imgui:2757",
ImGuiPackedDate="imgui_internal:841",
ImGuiPayload="imgui:2722",
ImGuiPlatformIO="imgui:4043",
ImGuiPlatformImeData="imgui:4110",
ImGuiPlotType="imgui_internal:1181",
ImGuiPopupData="imgui_internal:1506",
ImGuiPopupData="imgui_internal:1507",
ImGuiPopupFlags_="imgui:1359",
ImGuiPopupPositionPolicy="imgui_internal:1498",
ImGuiPtrOrIndex="imgui_internal:1475",
ImGuiScrollFlags_="imgui_internal:1731",
ImGuiPopupPositionPolicy="imgui_internal:1499",
ImGuiPtrOrIndex="imgui_internal:1476",
ImGuiScrollFlags_="imgui_internal:1732",
ImGuiSelectableFlagsPrivate_="imgui_internal:1101",
ImGuiSelectableFlags_="imgui:1378",
ImGuiSelectionBasicStorage="imgui:3145",
@@ -4194,41 +4194,41 @@ local t={
ImGuiSelectionRequest="imgui:3119",
ImGuiSelectionRequestType="imgui:3111",
ImGuiSeparatorFlags_="imgui_internal:1123",
ImGuiSettingsCleanupArgs="imgui_internal:2050",
ImGuiSettingsHandler="imgui_internal:2061",
ImGuiShrinkWidthItem="imgui_internal:1468",
ImGuiSettingsCleanupArgs="imgui_internal:2051",
ImGuiSettingsHandler="imgui_internal:2062",
ImGuiShrinkWidthItem="imgui_internal:1469",
ImGuiSizeCallbackData="imgui:2713",
ImGuiSliderFlagsPrivate_="imgui_internal:1094",
ImGuiSliderFlags_="imgui:1960",
ImGuiSortDirection="imgui:1560",
ImGuiStackLevelInfo="imgui_internal:2190",
ImGuiStackLevelInfo="imgui_internal:2191",
ImGuiStorage="imgui:2830",
ImGuiStoragePair="imgui:2813",
ImGuiStyle="imgui:2308",
ImGuiStyleMod="imgui_internal:952",
ImGuiStyleVarInfo="imgui_internal:936",
ImGuiStyleVar_="imgui:1837",
ImGuiTabBar="imgui_internal:2886",
ImGuiTabBarFlagsPrivate_="imgui_internal:2849",
ImGuiTabBar="imgui_internal:2887",
ImGuiTabBarFlagsPrivate_="imgui_internal:2850",
ImGuiTabBarFlags_="imgui:1411",
ImGuiTabItem="imgui_internal:2867",
ImGuiTabItemFlagsPrivate_="imgui_internal:2857",
ImGuiTabItem="imgui_internal:2868",
ImGuiTabItemFlagsPrivate_="imgui_internal:2858",
ImGuiTabItemFlags_="imgui:1435",
ImGuiTable="imgui_internal:3055",
ImGuiTable="imgui_internal:3056",
ImGuiTableBgTarget_="imgui:2162",
ImGuiTableCellData="imgui_internal:3023",
ImGuiTableColumn="imgui_internal:2940",
ImGuiTableCellData="imgui_internal:3024",
ImGuiTableColumn="imgui_internal:2941",
ImGuiTableColumnFlags_="imgui:2109",
ImGuiTableColumnSettings="imgui_internal:3213",
ImGuiTableColumnSettings="imgui_internal:3214",
ImGuiTableColumnSortSpecs="imgui:2184",
ImGuiTableFlags_="imgui:2056",
ImGuiTableHeaderData="imgui_internal:3032",
ImGuiTableInstanceData="imgui_internal:3042",
ImGuiTableReconcileColumnData="imgui_internal:3006",
ImGuiTableHeaderData="imgui_internal:3033",
ImGuiTableInstanceData="imgui_internal:3043",
ImGuiTableReconcileColumnData="imgui_internal:3007",
ImGuiTableRowFlags_="imgui:2147",
ImGuiTableSettings="imgui_internal:3239",
ImGuiTableSettings="imgui_internal:3240",
ImGuiTableSortSpecs="imgui:2174",
ImGuiTableTempData="imgui_internal:3184",
ImGuiTableTempData="imgui_internal:3185",
ImGuiTextBuffer="imgui:2792",
ImGuiTextFilter="imgui:2765",
ImGuiTextFlags_="imgui_internal:1141",
@@ -4237,20 +4237,20 @@ local t={
ImGuiTooltipFlags_="imgui_internal:1147",
ImGuiTreeNodeFlagsPrivate_="imgui_internal:1114",
ImGuiTreeNodeFlags_="imgui:1320",
ImGuiTreeNodeStackData="imgui_internal:1429",
ImGuiTypingSelectFlags_="imgui_internal:1818",
ImGuiTypingSelectRequest="imgui_internal:1826",
ImGuiTypingSelectState="imgui_internal:1837",
ImGuiTreeNodeStackData="imgui_internal:1430",
ImGuiTypingSelectFlags_="imgui_internal:1819",
ImGuiTypingSelectRequest="imgui_internal:1827",
ImGuiTypingSelectState="imgui_internal:1838",
ImGuiViewport="imgui:4017",
ImGuiViewportFlags_="imgui:4002",
ImGuiViewportP="imgui_internal:1998",
ImGuiWindow="imgui_internal:2714",
ImGuiWindowBgClickFlags_="imgui_internal:1327",
ImGuiViewportP="imgui_internal:1999",
ImGuiWindow="imgui_internal:2715",
ImGuiWindowBgClickFlags_="imgui_internal:1328",
ImGuiWindowFlags_="imgui:1171",
ImGuiWindowRefreshFlags_="imgui_internal:1318",
ImGuiWindowSettings="imgui_internal:2035",
ImGuiWindowStackData="imgui_internal:1459",
ImGuiWindowTempData="imgui_internal:2660",
ImGuiWindowRefreshFlags_="imgui_internal:1319",
ImGuiWindowSettings="imgui_internal:2036",
ImGuiWindowStackData="imgui_internal:1460",
ImGuiWindowTempData="imgui_internal:2661",
ImRect="imgui_internal:591",
ImTextureData="imgui:3564",
ImTextureFormat="imgui:3532",
@@ -4263,7 +4263,11 @@ local t={
ImVec2ih="imgui_internal:581",
ImVec4="imgui:308",
ImWcharClass="imgui_internal:452",
stbrp_context_opaque="imgui_internal:3984"},
STB_TexteditState="imstb_textedit:342",
StbTexteditRow="imstb_textedit:389",
StbUndoRecord="imstb_textedit:324",
StbUndoState="imstb_textedit:333",
stbrp_context_opaque="imgui_internal:3985"},
nonPOD={
ImBitArray=true,
ImColor=true,
@@ -9551,6 +9555,102 @@ local t={
[4]={
name="w",
type="float"}},
STB_TexteditState={
[1]={
name="cursor",
type="int"},
[2]={
name="select_start",
type="int"},
[3]={
name="select_end",
type="int"},
[4]={
name="insert_mode",
type="unsigned char"},
[5]={
name="row_count_per_page",
type="int"},
[6]={
name="cursor_at_end_of_line",
type="unsigned char"},
[7]={
name="initialized",
type="unsigned char"},
[8]={
name="has_preferred_x",
type="unsigned char"},
[9]={
name="single_line",
type="unsigned char"},
[10]={
name="padding1",
type="unsigned char"},
[11]={
name="padding2",
type="unsigned char"},
[12]={
name="padding3",
type="unsigned char"},
[13]={
name="preferred_x",
type="float"},
[14]={
name="undostate",
type="StbUndoState"}},
StbTexteditRow={
[1]={
name="x0",
type="float"},
[2]={
name="x1",
type="float"},
[3]={
name="baseline_y_delta",
type="float"},
[4]={
name="ymin",
type="float"},
[5]={
name="ymax",
type="float"},
[6]={
name="num_chars",
type="int"}},
StbUndoRecord={
[1]={
name="where",
type="int"},
[2]={
name="insert_length",
type="int"},
[3]={
name="delete_length",
type="int"},
[4]={
name="char_storage",
type="int"}},
StbUndoState={
[1]={
name="undo_rec[99]",
size=99,
type="StbUndoRecord"},
[2]={
name="undo_char[999]",
size=999,
type="char"},
[3]={
name="undo_point",
type="short"},
[4]={
name="redo_point",
type="short"},
[5]={
name="undo_char_point",
type="int"},
[6]={
name="redo_char_point",
type="int"}},
stbrp_context_opaque={
[1]={
name="data[80]",

View File

@@ -214,6 +214,9 @@
"ImWchar16": "unsigned short",
"ImWchar32": "unsigned int",
"STB_TexteditState": "struct STB_TexteditState",
"StbTexteditRow": "struct StbTexteditRow",
"StbUndoRecord": "struct StbUndoRecord",
"StbUndoState": "struct StbUndoState",
"stbrp_context_opaque": "struct stbrp_context_opaque",
"stbrp_node": "struct stbrp_node",
"stbrp_node_im": "stbrp_node"

View File

@@ -214,6 +214,9 @@ local t={
ImWchar16="unsigned short",
ImWchar32="unsigned int",
STB_TexteditState="struct STB_TexteditState",
StbTexteditRow="struct StbTexteditRow",
StbUndoRecord="struct StbUndoRecord",
StbUndoState="struct StbUndoState",
stbrp_context_opaque="struct stbrp_context_opaque",
stbrp_node="struct stbrp_node",
stbrp_node_im="stbrp_node"}

2
imgui

Submodule imgui updated: a9e7a8c880...f1cc2ae15e