mirror of
https://github.com/cimgui/cimgui.git
synced 2025-10-09 03:11:40 +01:00
take care of return in vararg functions
This commit is contained in:
@@ -826,15 +826,17 @@ CIMGUI_API bool igTreeNodeStrStr(const char* str_id,const char* fmt,...)
|
|||||||
{
|
{
|
||||||
va_list args;
|
va_list args;
|
||||||
va_start(args, fmt);
|
va_start(args, fmt);
|
||||||
ImGui::TreeNodeV(str_id,fmt,args);
|
bool ret = ImGui::TreeNodeV(str_id,fmt,args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
CIMGUI_API bool igTreeNodePtr(const void* ptr_id,const char* fmt,...)
|
CIMGUI_API bool igTreeNodePtr(const void* ptr_id,const char* fmt,...)
|
||||||
{
|
{
|
||||||
va_list args;
|
va_list args;
|
||||||
va_start(args, fmt);
|
va_start(args, fmt);
|
||||||
ImGui::TreeNodeV(ptr_id,fmt,args);
|
bool ret = ImGui::TreeNodeV(ptr_id,fmt,args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
CIMGUI_API bool igTreeNodeVStr(const char* str_id,const char* fmt,va_list args)
|
CIMGUI_API bool igTreeNodeVStr(const char* str_id,const char* fmt,va_list args)
|
||||||
{
|
{
|
||||||
@@ -852,15 +854,17 @@ CIMGUI_API bool igTreeNodeExStrStr(const char* str_id,ImGuiTreeNodeFlags flags,c
|
|||||||
{
|
{
|
||||||
va_list args;
|
va_list args;
|
||||||
va_start(args, fmt);
|
va_start(args, fmt);
|
||||||
ImGui::TreeNodeExV(str_id,flags,fmt,args);
|
bool ret = ImGui::TreeNodeExV(str_id,flags,fmt,args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
CIMGUI_API bool igTreeNodeExPtr(const void* ptr_id,ImGuiTreeNodeFlags flags,const char* fmt,...)
|
CIMGUI_API bool igTreeNodeExPtr(const void* ptr_id,ImGuiTreeNodeFlags flags,const char* fmt,...)
|
||||||
{
|
{
|
||||||
va_list args;
|
va_list args;
|
||||||
va_start(args, fmt);
|
va_start(args, fmt);
|
||||||
ImGui::TreeNodeExV(ptr_id,flags,fmt,args);
|
bool ret = ImGui::TreeNodeExV(ptr_id,flags,fmt,args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
CIMGUI_API bool igTreeNodeExVStr(const char* str_id,ImGuiTreeNodeFlags flags,const char* fmt,va_list args)
|
CIMGUI_API bool igTreeNodeExVStr(const char* str_id,ImGuiTreeNodeFlags flags,const char* fmt,va_list args)
|
||||||
{
|
{
|
||||||
|
@@ -826,15 +826,17 @@ CIMGUI_API bool igTreeNodeStrStr(const char* str_id,const char* fmt,...)
|
|||||||
{
|
{
|
||||||
va_list args;
|
va_list args;
|
||||||
va_start(args, fmt);
|
va_start(args, fmt);
|
||||||
ImGui::TreeNodeV(str_id,fmt,args);
|
bool ret = ImGui::TreeNodeV(str_id,fmt,args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
CIMGUI_API bool igTreeNodePtr(const void* ptr_id,const char* fmt,...)
|
CIMGUI_API bool igTreeNodePtr(const void* ptr_id,const char* fmt,...)
|
||||||
{
|
{
|
||||||
va_list args;
|
va_list args;
|
||||||
va_start(args, fmt);
|
va_start(args, fmt);
|
||||||
ImGui::TreeNodeV(ptr_id,fmt,args);
|
bool ret = ImGui::TreeNodeV(ptr_id,fmt,args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
CIMGUI_API bool igTreeNodeVStr(const char* str_id,const char* fmt,va_list args)
|
CIMGUI_API bool igTreeNodeVStr(const char* str_id,const char* fmt,va_list args)
|
||||||
{
|
{
|
||||||
@@ -852,15 +854,17 @@ CIMGUI_API bool igTreeNodeExStrStr(const char* str_id,ImGuiTreeNodeFlags flags,c
|
|||||||
{
|
{
|
||||||
va_list args;
|
va_list args;
|
||||||
va_start(args, fmt);
|
va_start(args, fmt);
|
||||||
ImGui::TreeNodeExV(str_id,flags,fmt,args);
|
bool ret = ImGui::TreeNodeExV(str_id,flags,fmt,args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
CIMGUI_API bool igTreeNodeExPtr(const void* ptr_id,ImGuiTreeNodeFlags flags,const char* fmt,...)
|
CIMGUI_API bool igTreeNodeExPtr(const void* ptr_id,ImGuiTreeNodeFlags flags,const char* fmt,...)
|
||||||
{
|
{
|
||||||
va_list args;
|
va_list args;
|
||||||
va_start(args, fmt);
|
va_start(args, fmt);
|
||||||
ImGui::TreeNodeExV(ptr_id,flags,fmt,args);
|
bool ret = ImGui::TreeNodeExV(ptr_id,flags,fmt,args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
CIMGUI_API bool igTreeNodeExVStr(const char* str_id,ImGuiTreeNodeFlags flags,const char* fmt,va_list args)
|
CIMGUI_API bool igTreeNodeExVStr(const char* str_id,ImGuiTreeNodeFlags flags,const char* fmt,va_list args)
|
||||||
{
|
{
|
||||||
|
@@ -826,15 +826,17 @@ CIMGUI_API bool igTreeNodeStrStr(const char* str_id,const char* fmt,...)
|
|||||||
{
|
{
|
||||||
va_list args;
|
va_list args;
|
||||||
va_start(args, fmt);
|
va_start(args, fmt);
|
||||||
ImGui::TreeNodeV(str_id,fmt,args);
|
bool ret = ImGui::TreeNodeV(str_id,fmt,args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
CIMGUI_API bool igTreeNodePtr(const void* ptr_id,const char* fmt,...)
|
CIMGUI_API bool igTreeNodePtr(const void* ptr_id,const char* fmt,...)
|
||||||
{
|
{
|
||||||
va_list args;
|
va_list args;
|
||||||
va_start(args, fmt);
|
va_start(args, fmt);
|
||||||
ImGui::TreeNodeV(ptr_id,fmt,args);
|
bool ret = ImGui::TreeNodeV(ptr_id,fmt,args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
CIMGUI_API bool igTreeNodeVStr(const char* str_id,const char* fmt,va_list args)
|
CIMGUI_API bool igTreeNodeVStr(const char* str_id,const char* fmt,va_list args)
|
||||||
{
|
{
|
||||||
@@ -852,15 +854,17 @@ CIMGUI_API bool igTreeNodeExStrStr(const char* str_id,ImGuiTreeNodeFlags flags,c
|
|||||||
{
|
{
|
||||||
va_list args;
|
va_list args;
|
||||||
va_start(args, fmt);
|
va_start(args, fmt);
|
||||||
ImGui::TreeNodeExV(str_id,flags,fmt,args);
|
bool ret = ImGui::TreeNodeExV(str_id,flags,fmt,args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
CIMGUI_API bool igTreeNodeExPtr(const void* ptr_id,ImGuiTreeNodeFlags flags,const char* fmt,...)
|
CIMGUI_API bool igTreeNodeExPtr(const void* ptr_id,ImGuiTreeNodeFlags flags,const char* fmt,...)
|
||||||
{
|
{
|
||||||
va_list args;
|
va_list args;
|
||||||
va_start(args, fmt);
|
va_start(args, fmt);
|
||||||
ImGui::TreeNodeExV(ptr_id,flags,fmt,args);
|
bool ret = ImGui::TreeNodeExV(ptr_id,flags,fmt,args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
CIMGUI_API bool igTreeNodeExVStr(const char* str_id,ImGuiTreeNodeFlags flags,const char* fmt,va_list args)
|
CIMGUI_API bool igTreeNodeExVStr(const char* str_id,ImGuiTreeNodeFlags flags,const char* fmt,va_list args)
|
||||||
{
|
{
|
||||||
|
@@ -971,8 +971,15 @@ local function func_implementation(FP)
|
|||||||
table.insert(outtab,"{\n")
|
table.insert(outtab,"{\n")
|
||||||
table.insert(outtab," va_list args;\n")
|
table.insert(outtab," va_list args;\n")
|
||||||
table.insert(outtab," va_start(args, fmt);\n")
|
table.insert(outtab," va_start(args, fmt);\n")
|
||||||
|
if def.ret~="void" then
|
||||||
|
table.insert(outtab," "..def.ret.." ret = ImGui::"..def.funcname.."V"..call_args..";\n")
|
||||||
|
else
|
||||||
table.insert(outtab," ImGui::"..def.funcname.."V"..call_args..";\n")
|
table.insert(outtab," ImGui::"..def.funcname.."V"..call_args..";\n")
|
||||||
|
end
|
||||||
table.insert(outtab," va_end(args);\n")
|
table.insert(outtab," va_end(args);\n")
|
||||||
|
if def.ret~="void" then
|
||||||
|
table.insert(outtab," return ret;\n")
|
||||||
|
end
|
||||||
--cppfile:write(" return ImGui::",def.funcname,def.call_args,";\n")
|
--cppfile:write(" return ImGui::",def.funcname,def.call_args,";\n")
|
||||||
table.insert(outtab,"}\n")
|
table.insert(outtab,"}\n")
|
||||||
else
|
else
|
||||||
@@ -992,8 +999,15 @@ local function func_implementation(FP)
|
|||||||
table.insert(outtab,"{\n")
|
table.insert(outtab,"{\n")
|
||||||
table.insert(outtab," va_list args;\n")
|
table.insert(outtab," va_list args;\n")
|
||||||
table.insert(outtab," va_start(args, fmt);\n")
|
table.insert(outtab," va_start(args, fmt);\n")
|
||||||
|
if def.ret~="void" then
|
||||||
|
table.insert(outtab," "..def.ret.." ret = self->"..def.funcname.."V"..call_args..";\n")
|
||||||
|
else
|
||||||
table.insert(outtab," self->"..def.funcname.."V"..call_args..";\n")
|
table.insert(outtab," self->"..def.funcname.."V"..call_args..";\n")
|
||||||
|
end
|
||||||
table.insert(outtab," va_end(args);\n")
|
table.insert(outtab," va_end(args);\n")
|
||||||
|
if def.ret~="void" then
|
||||||
|
table.insert(outtab," return ret;\n")
|
||||||
|
end
|
||||||
--cppfile:write(" return self->",def.funcname,def.call_args,";\n")
|
--cppfile:write(" return self->",def.funcname,def.call_args,";\n")
|
||||||
table.insert(outtab,"}\n")
|
table.insert(outtab,"}\n")
|
||||||
else
|
else
|
||||||
|
Reference in New Issue
Block a user