Merge branch 'docking_inter' 1.92.9dock

This commit is contained in:
sonoro1234
2026-07-28 10:46:05 +02:00
17 changed files with 5854 additions and 4365 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.8 of Dear ImGui with internal api]
* currently this wrapper is based on version [1.92.9 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.
@@ -106,10 +106,14 @@ Notes:
# example bindings based on cimgui
* [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)
* [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)
* [Zig-ImGui](https://github.com/SpexGuy/Zig-ImGui)
* [nimgl/imgui](https://github.com/nimgl/imgui)
* [kotlin-imgui](https://github.com/Dominaezzz/kotlin-imgui)
* [CImGui.jl](https://github.com/Gnimuc/CImGui.jl)
* [odin-imgui](https://github.com/ThisDrunkDane/odin-imgui)
* [DerelictImgui](https://github.com/Extrawurst/DerelictImgui)
* [BindBC-CimGui](https://github.com/MrcSnm/bindbc-cimgui)

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.8" 19280 from Dear ImGui https://github.com/ocornut/imgui
//based on imgui.h file version "1.92.9" 19290 from Dear ImGui https://github.com/ocornut/imgui
//with imgui_internal.h api
//with imgui_freetype.h api
@@ -1010,10 +1010,6 @@ CIMGUI_API bool igColorButton(const char* desc_id,const ImVec4_c col,ImGuiColorE
{
return ImGui::ColorButton(desc_id,ConvertToCPP_ImVec4(col),flags,ConvertToCPP_ImVec2(size));
}
CIMGUI_API void igSetColorEditOptions(ImGuiColorEditFlags flags)
{
return ImGui::SetColorEditOptions(flags);
}
CIMGUI_API bool igTreeNode_Str(const char* label)
{
return ImGui::TreeNode(label);
@@ -1292,15 +1288,15 @@ CIMGUI_API void igEndPopup()
{
return ImGui::EndPopup();
}
CIMGUI_API void igOpenPopup_Str(const char* str_id,ImGuiPopupFlags popup_flags)
CIMGUI_API bool igOpenPopup_Str(const char* str_id,ImGuiPopupFlags popup_flags)
{
return ImGui::OpenPopup(str_id,popup_flags);
}
CIMGUI_API void igOpenPopup_ID(ImGuiID id,ImGuiPopupFlags popup_flags)
CIMGUI_API bool igOpenPopup_ID(ImGuiID id,ImGuiPopupFlags popup_flags)
{
return ImGui::OpenPopup(id,popup_flags);
}
CIMGUI_API void igOpenPopupOnItemClick(const char* str_id,ImGuiPopupFlags popup_flags)
CIMGUI_API bool igOpenPopupOnItemClick(const char* str_id,ImGuiPopupFlags popup_flags)
{
return ImGui::OpenPopupOnItemClick(str_id,popup_flags);
}
@@ -1344,9 +1340,9 @@ CIMGUI_API bool igTableSetColumnIndex(int column_n)
{
return ImGui::TableSetColumnIndex(column_n);
}
CIMGUI_API void igTableSetupColumn(const char* label,ImGuiTableColumnFlags flags,float init_width_or_weight,ImGuiID user_id)
CIMGUI_API void igTableSetupColumn(const char* label,ImGuiTableColumnFlags flags,float init_width_or_weight,ImGuiID user_data)
{
return ImGui::TableSetupColumn(label,flags,init_width_or_weight,user_id);
return ImGui::TableSetupColumn(label,flags,init_width_or_weight,user_data);
}
CIMGUI_API void igTableSetupScrollFreeze(int cols,int rows)
{
@@ -1625,6 +1621,10 @@ CIMGUI_API ImGuiItemFlags igGetItemFlags()
{
return ImGui::GetItemFlags();
}
CIMGUI_API int igGetItemClickedCountWithSingleClickDelay(ImGuiMouseButton mouse_button,float delay)
{
return ImGui::GetItemClickedCountWithSingleClickDelay(mouse_button,delay);
}
CIMGUI_API ImGuiViewport* igGetMainViewport()
{
return ImGui::GetMainViewport();
@@ -2822,14 +2822,6 @@ CIMGUI_API void ImFontAtlas_RemoveFont(ImFontAtlas* self,ImFont* font)
{
return self->RemoveFont(font);
}
CIMGUI_API void ImFontAtlas_Clear(ImFontAtlas* self)
{
return self->Clear();
}
CIMGUI_API void ImFontAtlas_ClearFonts(ImFontAtlas* self)
{
return self->ClearFonts();
}
CIMGUI_API void ImFontAtlas_CompactCache(ImFontAtlas* self)
{
return self->CompactCache();
@@ -2838,6 +2830,14 @@ CIMGUI_API void ImFontAtlas_SetFontLoader(ImFontAtlas* self,const ImFontLoader*
{
return self->SetFontLoader(font_loader);
}
CIMGUI_API void ImFontAtlas_Clear(ImFontAtlas* self)
{
return self->Clear();
}
CIMGUI_API void ImFontAtlas_ClearFonts(ImFontAtlas* self)
{
return self->ClearFonts();
}
CIMGUI_API void ImFontAtlas_ClearInputData(ImFontAtlas* self)
{
return self->ClearInputData();
@@ -3345,6 +3345,10 @@ CIMGUI_API float igImRound64(float f)
{
return ImRound64(f);
}
CIMGUI_API float igImCeilFast(float f)
{
return ImCeilFast(f);
}
CIMGUI_API int igImModPositive(int a,int b)
{
return ImModPositive(a,b);
@@ -3649,6 +3653,30 @@ CIMGUI_API void ImGuiTextIndex_append(ImGuiTextIndex* self,const char* base,int
{
return self->append(base,old_size,new_size);
}
CIMGUI_API ImGuiPackedDate* ImGuiPackedDate_ImGuiPackedDate_Nil(void)
{
return IM_NEW(ImGuiPackedDate)();
}
CIMGUI_API void ImGuiPackedDate_destroy(ImGuiPackedDate* self)
{
IM_DELETE(self);
}
CIMGUI_API ImGuiPackedDate* ImGuiPackedDate_ImGuiPackedDate_Int(int yyyymmdd)
{
return IM_NEW(ImGuiPackedDate)(yyyymmdd);
}
CIMGUI_API bool ImGuiPackedDate_IsValid(ImGuiPackedDate* self)
{
return self->IsValid();
}
CIMGUI_API int ImGuiPackedDate_Unpack(ImGuiPackedDate* self)
{
return self->Unpack();
}
CIMGUI_API void ImGuiPackedDate_SubtractMonths(ImGuiPackedDate* self,int m)
{
return self->SubtractMonths(m);
}
CIMGUI_API ImGuiStoragePair* igImLowerBound(ImGuiStoragePair* in_begin,ImGuiStoragePair* in_end,ImGuiID key)
{
return ImLowerBound(in_begin,in_end,key);
@@ -4209,6 +4237,286 @@ CIMGUI_API ImGuiTableColumnSettings* ImGuiTableSettings_GetColumnSettings(ImGuiT
{
return self->GetColumnSettings();
}
CIMGUI_API void igTableOpenContextMenu(int column_n)
{
return ImGui::TableOpenContextMenu(column_n);
}
CIMGUI_API void igTableSetColumnWidth(int column_n,float width)
{
return ImGui::TableSetColumnWidth(column_n,width);
}
CIMGUI_API void igTableSetColumnSortDirection(int column_n,ImGuiSortDirection sort_direction,bool append_to_sort_specs)
{
return ImGui::TableSetColumnSortDirection(column_n,sort_direction,append_to_sort_specs);
}
CIMGUI_API int igTableGetHoveredRow()
{
return ImGui::TableGetHoveredRow();
}
CIMGUI_API float igTableGetHeaderRowHeight()
{
return ImGui::TableGetHeaderRowHeight();
}
CIMGUI_API float igTableGetHeaderAngledMaxLabelWidth()
{
return ImGui::TableGetHeaderAngledMaxLabelWidth();
}
CIMGUI_API void igTablePushBackgroundChannel()
{
return ImGui::TablePushBackgroundChannel();
}
CIMGUI_API void igTablePopBackgroundChannel()
{
return ImGui::TablePopBackgroundChannel();
}
CIMGUI_API void igTablePushColumnChannel(int column_n)
{
return ImGui::TablePushColumnChannel(column_n);
}
CIMGUI_API void igTablePopColumnChannel()
{
return ImGui::TablePopColumnChannel();
}
CIMGUI_API void igTableAngledHeadersRowEx(ImGuiID row_id,float angle,float max_label_width,const ImGuiTableHeaderData* data,int data_count)
{
return ImGui::TableAngledHeadersRowEx(row_id,angle,max_label_width,data,data_count);
}
CIMGUI_API ImGuiTable* igGetCurrentTable()
{
return ImGui::GetCurrentTable();
}
CIMGUI_API ImGuiTable* igTableFindByID(ImGuiID id)
{
return ImGui::TableFindByID(id);
}
CIMGUI_API bool igBeginTableEx(const char* name,ImGuiID id,int columns_count,ImGuiTableFlags flags,const ImVec2_c outer_size,float inner_width)
{
return ImGui::BeginTableEx(name,id,columns_count,flags,ConvertToCPP_ImVec2(outer_size),inner_width);
}
CIMGUI_API void igTableBeginInitMemory(ImGuiTable* table,int columns_count)
{
return ImGui::TableBeginInitMemory(table,columns_count);
}
CIMGUI_API void igTableApplyQueuedRequests(ImGuiTable* table)
{
return ImGui::TableApplyQueuedRequests(table);
}
CIMGUI_API void igTableSetupDrawChannels(ImGuiTable* table)
{
return ImGui::TableSetupDrawChannels(table);
}
CIMGUI_API void igTableReconcileColumns(ImGuiTable* table)
{
return ImGui::TableReconcileColumns(table);
}
CIMGUI_API void igTableUpdateLayout(ImGuiTable* table)
{
return ImGui::TableUpdateLayout(table);
}
CIMGUI_API void igTableUpdateBorders(ImGuiTable* table)
{
return ImGui::TableUpdateBorders(table);
}
CIMGUI_API void igTableUpdateColumnsWeightFromWidth(ImGuiTable* table)
{
return ImGui::TableUpdateColumnsWeightFromWidth(table);
}
CIMGUI_API void igTableApplyExternalUnclipRect(ImGuiTable* table,ImRect* rect)
{
return ImGui::TableApplyExternalUnclipRect(table,*rect);
}
CIMGUI_API void igTableDrawBorders(ImGuiTable* table)
{
return ImGui::TableDrawBorders(table);
}
CIMGUI_API void igTableDrawDefaultContextMenu(ImGuiTable* table,ImGuiTableFlags flags_for_section_to_display)
{
return ImGui::TableDrawDefaultContextMenu(table,flags_for_section_to_display);
}
CIMGUI_API bool igTableBeginContextMenuPopup(ImGuiTable* table)
{
return ImGui::TableBeginContextMenuPopup(table);
}
CIMGUI_API void igTableMergeDrawChannels(ImGuiTable* table)
{
return ImGui::TableMergeDrawChannels(table);
}
CIMGUI_API ImGuiTableInstanceData* igTableGetInstanceData(ImGuiTable* table,int instance_no)
{
return ImGui::TableGetInstanceData(table,instance_no);
}
CIMGUI_API ImGuiID igTableGetInstanceID(ImGuiTable* table,int instance_no)
{
return ImGui::TableGetInstanceID(table,instance_no);
}
CIMGUI_API void igTableFixDisplayOrder(ImGuiTable* table)
{
return ImGui::TableFixDisplayOrder(table);
}
CIMGUI_API void igTableSortSpecsSanitize(ImGuiTable* table)
{
return ImGui::TableSortSpecsSanitize(table);
}
CIMGUI_API void igTableSortSpecsBuild(ImGuiTable* table)
{
return ImGui::TableSortSpecsBuild(table);
}
CIMGUI_API void igTableInitColumnDefaults(ImGuiTable* table,ImGuiTableColumn* column,ImGuiTableColumnFlags init_mask)
{
return ImGui::TableInitColumnDefaults(table,column,init_mask);
}
CIMGUI_API ImGuiSortDirection igTableGetColumnNextSortDirection(ImGuiTableColumn* column)
{
return ImGui::TableGetColumnNextSortDirection(column);
}
CIMGUI_API void igTableFixColumnSortDirection(ImGuiTable* table,ImGuiTableColumn* column)
{
return ImGui::TableFixColumnSortDirection(table,column);
}
CIMGUI_API float igTableGetColumnWidthAuto(ImGuiTable* table,ImGuiTableColumn* column)
{
return ImGui::TableGetColumnWidthAuto(table,column);
}
CIMGUI_API void igTableBeginRow(ImGuiTable* table)
{
return ImGui::TableBeginRow(table);
}
CIMGUI_API void igTableEndRow(ImGuiTable* table)
{
return ImGui::TableEndRow(table);
}
CIMGUI_API void igTableBeginCell(ImGuiTable* table,int column_n)
{
return ImGui::TableBeginCell(table,column_n);
}
CIMGUI_API void igTableEndCell(ImGuiTable* table)
{
return ImGui::TableEndCell(table);
}
CIMGUI_API ImRect_c igTableGetCellBgRect(const ImGuiTable* table,int column_n)
{
return ConvertFromCPP_ImRect(ImGui::TableGetCellBgRect(table,column_n));
}
CIMGUI_API const char* igTableGetColumnName_TablePtr(const ImGuiTable* table,int column_n)
{
return ImGui::TableGetColumnName(table,column_n);
}
CIMGUI_API ImGuiID igTableGetColumnResizeID(ImGuiTable* table,int column_n,int instance_no)
{
return ImGui::TableGetColumnResizeID(table,column_n,instance_no);
}
CIMGUI_API float igTableCalcMaxColumnWidth(const ImGuiTable* table,int column_n)
{
return ImGui::TableCalcMaxColumnWidth(table,column_n);
}
CIMGUI_API void igTableSetColumnWidthAutoSingle(ImGuiTable* table,int column_n)
{
return ImGui::TableSetColumnWidthAutoSingle(table,column_n);
}
CIMGUI_API void igTableSetColumnWidthAutoAll(ImGuiTable* table)
{
return ImGui::TableSetColumnWidthAutoAll(table);
}
CIMGUI_API void igTableSetColumnDisplayOrder(ImGuiTable* table,int column_n,int dst_order)
{
return ImGui::TableSetColumnDisplayOrder(table,column_n,dst_order);
}
CIMGUI_API void igTableQueueSetColumnDisplayOrder(ImGuiTable* table,int column_n,int dst_order)
{
return ImGui::TableQueueSetColumnDisplayOrder(table,column_n,dst_order);
}
CIMGUI_API void igTableRemove(ImGuiTable* table)
{
return ImGui::TableRemove(table);
}
CIMGUI_API void igTableGcCompactTransientBuffers_TablePtr(ImGuiTable* table)
{
return ImGui::TableGcCompactTransientBuffers(table);
}
CIMGUI_API void igTableGcCompactTransientBuffers_TableTempDataPtr(ImGuiTableTempData* table)
{
return ImGui::TableGcCompactTransientBuffers(table);
}
CIMGUI_API void igTableGcCompactSettings()
{
return ImGui::TableGcCompactSettings();
}
CIMGUI_API void igTableLoadSettings(ImGuiTable* table)
{
return ImGui::TableLoadSettings(table);
}
CIMGUI_API void igTableLoadSettingsForColumns(ImGuiTable* table)
{
return ImGui::TableLoadSettingsForColumns(table);
}
CIMGUI_API void igTableLoadSettingsForColumn(ImGuiTableColumn* column,ImGuiTableColumnSettings* column_settings,ImGuiTableFlags load_flags)
{
return ImGui::TableLoadSettingsForColumn(column,column_settings,load_flags);
}
CIMGUI_API void igTableSaveSettings(ImGuiTable* table)
{
return ImGui::TableSaveSettings(table);
}
CIMGUI_API void igTableResetSettings(ImGuiTable* table)
{
return ImGui::TableResetSettings(table);
}
CIMGUI_API ImGuiTableSettings* igTableGetBoundSettings(ImGuiTable* table)
{
return ImGui::TableGetBoundSettings(table);
}
CIMGUI_API void igTableSettingsAddSettingsHandler()
{
return ImGui::TableSettingsAddSettingsHandler();
}
CIMGUI_API ImGuiTableSettings* igTableSettingsCreate(ImGuiID id,int columns_count)
{
return ImGui::TableSettingsCreate(id,columns_count);
}
CIMGUI_API ImGuiTableSettings* igTableSettingsFindByID(ImGuiID id)
{
return ImGui::TableSettingsFindByID(id);
}
CIMGUI_API void igSetWindowClipRectBeforeSetChannel(ImGuiWindow* window,const ImRect_c clip_rect)
{
return ImGui::SetWindowClipRectBeforeSetChannel(window,ConvertToCPP_ImRect(clip_rect));
}
CIMGUI_API void igBeginColumns(const char* str_id,int count,ImGuiOldColumnFlags flags)
{
return ImGui::BeginColumns(str_id,count,flags);
}
CIMGUI_API void igEndColumns()
{
return ImGui::EndColumns();
}
CIMGUI_API void igPushColumnClipRect(int column_index)
{
return ImGui::PushColumnClipRect(column_index);
}
CIMGUI_API void igPushColumnsBackground()
{
return ImGui::PushColumnsBackground();
}
CIMGUI_API void igPopColumnsBackground()
{
return ImGui::PopColumnsBackground();
}
CIMGUI_API ImGuiID igGetColumnsID(const char* str_id,int count)
{
return ImGui::GetColumnsID(str_id,count);
}
CIMGUI_API ImGuiOldColumns* igFindOrCreateColumns(ImGuiWindow* window,ImGuiID id)
{
return ImGui::FindOrCreateColumns(window,id);
}
CIMGUI_API float igGetColumnOffsetFromNorm(const ImGuiOldColumns* columns,float offset_norm)
{
return ImGui::GetColumnOffsetFromNorm(columns,offset_norm);
}
CIMGUI_API float igGetColumnNormFromOffset(const ImGuiOldColumns* columns,float offset)
{
return ImGui::GetColumnNormFromOffset(columns,offset);
}
CIMGUI_API ImGuiIO* igGetIO_ContextPtr(ImGuiContext* ctx)
{
return &ImGui::GetIO(ctx);
@@ -4485,6 +4793,10 @@ CIMGUI_API void igClearIniSettings()
{
return ImGui::ClearIniSettings();
}
CIMGUI_API void igCleanupIniSettings(ImGuiSettingsCleanupArgs* args)
{
return ImGui::CleanupIniSettings(args);
}
CIMGUI_API void igAddSettingsHandler(const ImGuiSettingsHandler* handler)
{
return ImGui::AddSettingsHandler(handler);
@@ -4697,7 +5009,7 @@ CIMGUI_API bool igBeginPopupMenuEx(ImGuiID id,const char* label,ImGuiWindowFlags
{
return ImGui::BeginPopupMenuEx(id,label,extra_window_flags);
}
CIMGUI_API void igOpenPopupEx(ImGuiID id,ImGuiPopupFlags popup_flags)
CIMGUI_API bool igOpenPopupEx(ImGuiID id,ImGuiPopupFlags popup_flags)
{
return ImGui::OpenPopupEx(id,popup_flags);
}
@@ -5093,9 +5405,9 @@ CIMGUI_API void igMultiSelectItemHeader(ImGuiID id,bool* p_selected,ImGuiButtonF
{
return ImGui::MultiSelectItemHeader(id,p_selected,p_button_flags);
}
CIMGUI_API void igMultiSelectItemFooter(ImGuiID id,bool* p_selected,bool* p_pressed)
CIMGUI_API void igMultiSelectItemFooter(ImGuiID id,bool* p_selected,bool* p_pressed,ImGuiMultiSelectFlags extra_flags)
{
return ImGui::MultiSelectItemFooter(id,p_selected,p_pressed);
return ImGui::MultiSelectItemFooter(id,p_selected,p_pressed,extra_flags);
}
CIMGUI_API void igMultiSelectAddSetAll(ImGuiMultiSelectTempData* ms,bool selected)
{
@@ -5113,270 +5425,6 @@ CIMGUI_API ImGuiMultiSelectState* igGetMultiSelectState(ImGuiID id)
{
return ImGui::GetMultiSelectState(id);
}
CIMGUI_API void igSetWindowClipRectBeforeSetChannel(ImGuiWindow* window,const ImRect_c clip_rect)
{
return ImGui::SetWindowClipRectBeforeSetChannel(window,ConvertToCPP_ImRect(clip_rect));
}
CIMGUI_API void igBeginColumns(const char* str_id,int count,ImGuiOldColumnFlags flags)
{
return ImGui::BeginColumns(str_id,count,flags);
}
CIMGUI_API void igEndColumns()
{
return ImGui::EndColumns();
}
CIMGUI_API void igPushColumnClipRect(int column_index)
{
return ImGui::PushColumnClipRect(column_index);
}
CIMGUI_API void igPushColumnsBackground()
{
return ImGui::PushColumnsBackground();
}
CIMGUI_API void igPopColumnsBackground()
{
return ImGui::PopColumnsBackground();
}
CIMGUI_API ImGuiID igGetColumnsID(const char* str_id,int count)
{
return ImGui::GetColumnsID(str_id,count);
}
CIMGUI_API ImGuiOldColumns* igFindOrCreateColumns(ImGuiWindow* window,ImGuiID id)
{
return ImGui::FindOrCreateColumns(window,id);
}
CIMGUI_API float igGetColumnOffsetFromNorm(const ImGuiOldColumns* columns,float offset_norm)
{
return ImGui::GetColumnOffsetFromNorm(columns,offset_norm);
}
CIMGUI_API float igGetColumnNormFromOffset(const ImGuiOldColumns* columns,float offset)
{
return ImGui::GetColumnNormFromOffset(columns,offset);
}
CIMGUI_API void igTableOpenContextMenu(int column_n)
{
return ImGui::TableOpenContextMenu(column_n);
}
CIMGUI_API void igTableSetColumnWidth(int column_n,float width)
{
return ImGui::TableSetColumnWidth(column_n,width);
}
CIMGUI_API void igTableSetColumnSortDirection(int column_n,ImGuiSortDirection sort_direction,bool append_to_sort_specs)
{
return ImGui::TableSetColumnSortDirection(column_n,sort_direction,append_to_sort_specs);
}
CIMGUI_API int igTableGetHoveredRow()
{
return ImGui::TableGetHoveredRow();
}
CIMGUI_API float igTableGetHeaderRowHeight()
{
return ImGui::TableGetHeaderRowHeight();
}
CIMGUI_API float igTableGetHeaderAngledMaxLabelWidth()
{
return ImGui::TableGetHeaderAngledMaxLabelWidth();
}
CIMGUI_API void igTablePushBackgroundChannel()
{
return ImGui::TablePushBackgroundChannel();
}
CIMGUI_API void igTablePopBackgroundChannel()
{
return ImGui::TablePopBackgroundChannel();
}
CIMGUI_API void igTablePushColumnChannel(int column_n)
{
return ImGui::TablePushColumnChannel(column_n);
}
CIMGUI_API void igTablePopColumnChannel()
{
return ImGui::TablePopColumnChannel();
}
CIMGUI_API void igTableAngledHeadersRowEx(ImGuiID row_id,float angle,float max_label_width,const ImGuiTableHeaderData* data,int data_count)
{
return ImGui::TableAngledHeadersRowEx(row_id,angle,max_label_width,data,data_count);
}
CIMGUI_API ImGuiTable* igGetCurrentTable()
{
return ImGui::GetCurrentTable();
}
CIMGUI_API ImGuiTable* igTableFindByID(ImGuiID id)
{
return ImGui::TableFindByID(id);
}
CIMGUI_API bool igBeginTableEx(const char* name,ImGuiID id,int columns_count,ImGuiTableFlags flags,const ImVec2_c outer_size,float inner_width)
{
return ImGui::BeginTableEx(name,id,columns_count,flags,ConvertToCPP_ImVec2(outer_size),inner_width);
}
CIMGUI_API void igTableBeginInitMemory(ImGuiTable* table,int columns_count)
{
return ImGui::TableBeginInitMemory(table,columns_count);
}
CIMGUI_API void igTableBeginApplyRequests(ImGuiTable* table)
{
return ImGui::TableBeginApplyRequests(table);
}
CIMGUI_API void igTableSetupDrawChannels(ImGuiTable* table)
{
return ImGui::TableSetupDrawChannels(table);
}
CIMGUI_API void igTableUpdateLayout(ImGuiTable* table)
{
return ImGui::TableUpdateLayout(table);
}
CIMGUI_API void igTableUpdateBorders(ImGuiTable* table)
{
return ImGui::TableUpdateBorders(table);
}
CIMGUI_API void igTableUpdateColumnsWeightFromWidth(ImGuiTable* table)
{
return ImGui::TableUpdateColumnsWeightFromWidth(table);
}
CIMGUI_API void igTableApplyExternalUnclipRect(ImGuiTable* table,ImRect* rect)
{
return ImGui::TableApplyExternalUnclipRect(table,*rect);
}
CIMGUI_API void igTableDrawBorders(ImGuiTable* table)
{
return ImGui::TableDrawBorders(table);
}
CIMGUI_API void igTableDrawDefaultContextMenu(ImGuiTable* table,ImGuiTableFlags flags_for_section_to_display)
{
return ImGui::TableDrawDefaultContextMenu(table,flags_for_section_to_display);
}
CIMGUI_API bool igTableBeginContextMenuPopup(ImGuiTable* table)
{
return ImGui::TableBeginContextMenuPopup(table);
}
CIMGUI_API void igTableMergeDrawChannels(ImGuiTable* table)
{
return ImGui::TableMergeDrawChannels(table);
}
CIMGUI_API ImGuiTableInstanceData* igTableGetInstanceData(ImGuiTable* table,int instance_no)
{
return ImGui::TableGetInstanceData(table,instance_no);
}
CIMGUI_API ImGuiID igTableGetInstanceID(ImGuiTable* table,int instance_no)
{
return ImGui::TableGetInstanceID(table,instance_no);
}
CIMGUI_API void igTableFixDisplayOrder(ImGuiTable* table)
{
return ImGui::TableFixDisplayOrder(table);
}
CIMGUI_API void igTableSortSpecsSanitize(ImGuiTable* table)
{
return ImGui::TableSortSpecsSanitize(table);
}
CIMGUI_API void igTableSortSpecsBuild(ImGuiTable* table)
{
return ImGui::TableSortSpecsBuild(table);
}
CIMGUI_API ImGuiSortDirection igTableGetColumnNextSortDirection(ImGuiTableColumn* column)
{
return ImGui::TableGetColumnNextSortDirection(column);
}
CIMGUI_API void igTableFixColumnSortDirection(ImGuiTable* table,ImGuiTableColumn* column)
{
return ImGui::TableFixColumnSortDirection(table,column);
}
CIMGUI_API float igTableGetColumnWidthAuto(ImGuiTable* table,ImGuiTableColumn* column)
{
return ImGui::TableGetColumnWidthAuto(table,column);
}
CIMGUI_API void igTableBeginRow(ImGuiTable* table)
{
return ImGui::TableBeginRow(table);
}
CIMGUI_API void igTableEndRow(ImGuiTable* table)
{
return ImGui::TableEndRow(table);
}
CIMGUI_API void igTableBeginCell(ImGuiTable* table,int column_n)
{
return ImGui::TableBeginCell(table,column_n);
}
CIMGUI_API void igTableEndCell(ImGuiTable* table)
{
return ImGui::TableEndCell(table);
}
CIMGUI_API ImRect_c igTableGetCellBgRect(const ImGuiTable* table,int column_n)
{
return ConvertFromCPP_ImRect(ImGui::TableGetCellBgRect(table,column_n));
}
CIMGUI_API const char* igTableGetColumnName_TablePtr(const ImGuiTable* table,int column_n)
{
return ImGui::TableGetColumnName(table,column_n);
}
CIMGUI_API ImGuiID igTableGetColumnResizeID(ImGuiTable* table,int column_n,int instance_no)
{
return ImGui::TableGetColumnResizeID(table,column_n,instance_no);
}
CIMGUI_API float igTableCalcMaxColumnWidth(const ImGuiTable* table,int column_n)
{
return ImGui::TableCalcMaxColumnWidth(table,column_n);
}
CIMGUI_API void igTableSetColumnWidthAutoSingle(ImGuiTable* table,int column_n)
{
return ImGui::TableSetColumnWidthAutoSingle(table,column_n);
}
CIMGUI_API void igTableSetColumnWidthAutoAll(ImGuiTable* table)
{
return ImGui::TableSetColumnWidthAutoAll(table);
}
CIMGUI_API void igTableSetColumnDisplayOrder(ImGuiTable* table,int column_n,int dst_order)
{
return ImGui::TableSetColumnDisplayOrder(table,column_n,dst_order);
}
CIMGUI_API void igTableQueueSetColumnDisplayOrder(ImGuiTable* table,int column_n,int dst_order)
{
return ImGui::TableQueueSetColumnDisplayOrder(table,column_n,dst_order);
}
CIMGUI_API void igTableRemove(ImGuiTable* table)
{
return ImGui::TableRemove(table);
}
CIMGUI_API void igTableGcCompactTransientBuffers_TablePtr(ImGuiTable* table)
{
return ImGui::TableGcCompactTransientBuffers(table);
}
CIMGUI_API void igTableGcCompactTransientBuffers_TableTempDataPtr(ImGuiTableTempData* table)
{
return ImGui::TableGcCompactTransientBuffers(table);
}
CIMGUI_API void igTableGcCompactSettings()
{
return ImGui::TableGcCompactSettings();
}
CIMGUI_API void igTableLoadSettings(ImGuiTable* table)
{
return ImGui::TableLoadSettings(table);
}
CIMGUI_API void igTableSaveSettings(ImGuiTable* table)
{
return ImGui::TableSaveSettings(table);
}
CIMGUI_API void igTableResetSettings(ImGuiTable* table)
{
return ImGui::TableResetSettings(table);
}
CIMGUI_API ImGuiTableSettings* igTableGetBoundSettings(ImGuiTable* table)
{
return ImGui::TableGetBoundSettings(table);
}
CIMGUI_API void igTableSettingsAddSettingsHandler()
{
return ImGui::TableSettingsAddSettingsHandler();
}
CIMGUI_API ImGuiTableSettings* igTableSettingsCreate(ImGuiID id,int columns_count)
{
return ImGui::TableSettingsCreate(id,columns_count);
}
CIMGUI_API ImGuiTableSettings* igTableSettingsFindByID(ImGuiID id)
{
return ImGui::TableSettingsFindByID(id);
}
CIMGUI_API ImGuiTabBar* igGetCurrentTabBar()
{
return ImGui::GetCurrentTabBar();
@@ -5501,9 +5549,9 @@ CIMGUI_API void igRenderColorRectWithAlphaCheckerboard(ImDrawList* draw_list,ImV
{
return ImGui::RenderColorRectWithAlphaCheckerboard(draw_list,ConvertToCPP_ImVec2(p_min),ConvertToCPP_ImVec2(p_max),fill_col,grid_step,ConvertToCPP_ImVec2(grid_off),rounding,flags);
}
CIMGUI_API void igRenderNavCursor(const ImRect_c bb,ImGuiID id,ImGuiNavRenderCursorFlags flags)
CIMGUI_API void igRenderNavCursor(const ImRect_c bb,ImGuiID id,ImGuiNavRenderCursorFlags flags,float rounding)
{
return ImGui::RenderNavCursor(ConvertToCPP_ImRect(bb),id,flags);
return ImGui::RenderNavCursor(ConvertToCPP_ImRect(bb),id,flags,rounding);
}
CIMGUI_API const char* igFindRenderedTextEnd(const char* text,const char* text_end)
{
@@ -5902,9 +5950,9 @@ CIMGUI_API void igDebugNodeTable(ImGuiTable* table)
{
return ImGui::DebugNodeTable(table);
}
CIMGUI_API void igDebugNodeTableSettings(ImGuiTableSettings* settings)
CIMGUI_API void igDebugNodeTableSettings(ImGuiTableSettings* settings,ImGuiTable* table)
{
return ImGui::DebugNodeTableSettings(settings);
return ImGui::DebugNodeTableSettings(settings,table);
}
CIMGUI_API void igDebugNodeInputTextState(ImGuiInputTextState* state)
{
@@ -6178,6 +6226,10 @@ CIMGUI_API void igImFontAtlasTextureBlockQueueUpload(ImFontAtlas* atlas,ImTextur
{
return ImFontAtlasTextureBlockQueueUpload(atlas,tex,x,y,w,h);
}
CIMGUI_API bool igImTextureDataUpdateNewFrame(ImTextureData* tex)
{
return ImTextureDataUpdateNewFrame(tex);
}
CIMGUI_API void igImTextureDataQueueUpload(ImTextureData* tex,int x,int y,int w,int h)
{
return ImTextureDataQueueUpload(tex,x,y,w,h);

311
cimgui.h
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.8" 19280 from Dear ImGui https://github.com/ocornut/imgui
//based on imgui.h file version "1.92.9" 19290 from Dear ImGui https://github.com/ocornut/imgui
//with imgui_internal.h api
//with imgui_freetype.h api
#ifndef CIMGUI_INCLUDED
@@ -91,6 +91,7 @@ typedef struct ImGuiViewport ImGuiViewport;
typedef struct ImBitVector ImBitVector;
typedef struct ImRect_c ImRect_c;
typedef struct ImGuiTextIndex ImGuiTextIndex;
typedef struct ImGuiPackedDate ImGuiPackedDate;
typedef struct ImDrawDataBuilder ImDrawDataBuilder;
typedef struct ImFontAtlasPostProcessData ImFontAtlasPostProcessData;
typedef struct ImFontAtlasRectEntry ImFontAtlasRectEntry;
@@ -310,6 +311,9 @@ typedef enum {
ImGuiItemFlags_AutoClosePopups = 1 << 4,
ImGuiItemFlags_AllowDuplicateId = 1 << 5,
ImGuiItemFlags_Disabled = 1 << 6,
ImGuiItemFlags_LiveEditOnInputText = 1 << 7,
ImGuiItemFlags_LiveEditOnInputScalar = 1 << 8,
ImGuiItemFlags_LiveEditOnInput = ImGuiItemFlags_LiveEditOnInputText | ImGuiItemFlags_LiveEditOnInputScalar,
}ImGuiItemFlags_;
typedef enum {
ImGuiInputTextFlags_None = 0,
@@ -799,6 +803,8 @@ typedef enum {
ImGuiStyleVar_TableAngledHeadersTextAlign,
ImGuiStyleVar_TreeLinesSize,
ImGuiStyleVar_TreeLinesRounding,
ImGuiStyleVar_MenuItemRounding,
ImGuiStyleVar_SelectableRounding,
ImGuiStyleVar_DragDropTargetRounding,
ImGuiStyleVar_ButtonTextAlign,
ImGuiStyleVar_SelectableTextAlign,
@@ -842,8 +848,9 @@ typedef enum {
ImGuiColorEditFlags_Float = 1 << 24,
ImGuiColorEditFlags_PickerHueBar = 1 << 25,
ImGuiColorEditFlags_PickerHueWheel = 1 << 26,
ImGuiColorEditFlags_InputRGB = 1 << 27,
ImGuiColorEditFlags_InputHSV = 1 << 28,
ImGuiColorEditFlags_PickerNoRotate = 1 << 27,
ImGuiColorEditFlags_InputRGB = 1 << 28,
ImGuiColorEditFlags_InputHSV = 1 << 29,
ImGuiColorEditFlags_DefaultOptions_ = ImGuiColorEditFlags_Uint8 | ImGuiColorEditFlags_DisplayRGB | ImGuiColorEditFlags_InputRGB | ImGuiColorEditFlags_PickerHueBar,
ImGuiColorEditFlags_AlphaMask_ = ImGuiColorEditFlags_NoAlpha | ImGuiColorEditFlags_AlphaOpaque | ImGuiColorEditFlags_AlphaNoBg | ImGuiColorEditFlags_AlphaPreviewHalf,
ImGuiColorEditFlags_DisplayMask_ = ImGuiColorEditFlags_DisplayRGB | ImGuiColorEditFlags_DisplayHSV | ImGuiColorEditFlags_DisplayHex,
@@ -1038,6 +1045,8 @@ struct ImGuiStyle
ImGuiTreeNodeFlags TreeLinesFlags;
float TreeLinesSize;
float TreeLinesRounding;
float MenuItemRounding;
float SelectableRounding;
float DragDropTargetRounding;
float DragDropTargetBorderSize;
float DragDropTargetPadding;
@@ -1045,6 +1054,7 @@ struct ImGuiStyle
ImGuiDir ColorButtonPosition;
ImVec2_c ButtonTextAlign;
ImVec2_c SelectableTextAlign;
float InputTextCursorSize;
float SeparatorSize;
float SeparatorTextBorderSize;
ImVec2_c SeparatorTextAlign;
@@ -1096,19 +1106,24 @@ struct ImGuiIO
bool ConfigNavEscapeClearFocusWindow;
bool ConfigNavCursorVisibleAuto;
bool ConfigNavCursorVisibleAlways;
bool MouseDrawCursor;
bool ConfigMacOSXBehaviors;
bool ConfigInputTrickleEventQueue;
bool ConfigInputTextCursorBlink;
bool ConfigInputTextEnterKeepActive;
ImGuiColorEditFlags ConfigColorEditFlags;
bool ConfigDragClickToInputText;
bool ConfigWindowsResizeFromEdges;
bool ConfigWindowsMoveFromTitleBarOnly;
bool ConfigWindowsCopyContentsWithCtrlC;
bool ConfigScrollbarScrollByPage;
bool ConfigIniSettingsSaveLastUsedDate;
int ConfigIniSettingsAutoDiscardMonths;
bool ConfigDebugIniSettings;
bool MouseDrawCursor;
float ConfigMemoryCompactTimer;
float MouseDoubleClickTime;
float MouseDoubleClickMaxDist;
float MouseSingleClickDelay;
float MouseDragThreshold;
float KeyRepeatDelay;
float KeyRepeatRate;
@@ -1122,7 +1137,6 @@ struct ImGuiIO
bool ConfigDebugBeginReturnValueOnce;
bool ConfigDebugBeginReturnValueLoop;
bool ConfigDebugIgnoreFocusLoss;
bool ConfigDebugIniSettings;
const char* BackendPlatformName;
const char* BackendRendererName;
void* BackendPlatformUserData;
@@ -1291,6 +1305,7 @@ typedef enum {
ImGuiMultiSelectFlags_NavWrapX = 1 << 16,
ImGuiMultiSelectFlags_NoSelectOnRightClick = 1 << 17,
ImGuiMultiSelectFlags_SelectOnMask_ = ImGuiMultiSelectFlags_SelectOnAuto | ImGuiMultiSelectFlags_SelectOnClickAlways | ImGuiMultiSelectFlags_SelectOnClickRelease,
ImGuiMultiSelectFlags_CheckboxMode_ = 1 << 20,
}ImGuiMultiSelectFlags_;
typedef struct ImVector_ImGuiSelectionRequest {int Size;int Capacity;ImGuiSelectionRequest* Data;} ImVector_ImGuiSelectionRequest;
@@ -1381,15 +1396,15 @@ typedef enum {
ImDrawFlags_RoundCornersBottomLeft = 1 << 6,
ImDrawFlags_RoundCornersBottomRight = 1 << 7,
ImDrawFlags_RoundCornersNone = 1 << 8,
ImDrawFlags_Closed = 1 << 9,
ImDrawFlags_RoundCornersAll = ImDrawFlags_RoundCornersTopLeft | ImDrawFlags_RoundCornersTopRight | ImDrawFlags_RoundCornersBottomLeft | ImDrawFlags_RoundCornersBottomRight,
ImDrawFlags_RoundCornersDefault_ = ImDrawFlags_RoundCornersAll,
ImDrawFlags_RoundCornersTop = ImDrawFlags_RoundCornersTopLeft | ImDrawFlags_RoundCornersTopRight,
ImDrawFlags_RoundCornersBottom = ImDrawFlags_RoundCornersBottomLeft | ImDrawFlags_RoundCornersBottomRight,
ImDrawFlags_RoundCornersLeft = ImDrawFlags_RoundCornersBottomLeft | ImDrawFlags_RoundCornersTopLeft,
ImDrawFlags_RoundCornersRight = ImDrawFlags_RoundCornersBottomRight | ImDrawFlags_RoundCornersTopRight,
ImDrawFlags_RoundCornersAll = ImDrawFlags_RoundCornersTopLeft | ImDrawFlags_RoundCornersTopRight | ImDrawFlags_RoundCornersBottomLeft | ImDrawFlags_RoundCornersBottomRight,
ImDrawFlags_RoundCornersDefault_ = ImDrawFlags_RoundCornersAll,
ImDrawFlags_RoundCornersMask_ = ImDrawFlags_RoundCornersAll | ImDrawFlags_RoundCornersNone,
ImDrawFlags_InvalidMask_ = (ImDrawFlags)0x8000000F,
ImDrawFlags_Closed = 1 << 9,
ImDrawFlags_InvalidMask_ = ~0x7FFFFFF0,
}ImDrawFlags_;
typedef enum {
ImDrawListFlags_None = 0,
@@ -1397,6 +1412,7 @@ typedef enum {
ImDrawListFlags_AntiAliasedLinesUseTex = 1 << 1,
ImDrawListFlags_AntiAliasedFill = 1 << 2,
ImDrawListFlags_AllowVtxOffset = 1 << 3,
ImDrawListFlags_TextNoPixelSnap = 1 << 4,
}ImDrawListFlags_;
typedef struct ImVector_ImDrawVert {int Size;int Capacity;ImDrawVert* Data;} ImVector_ImDrawVert;
@@ -1434,7 +1450,7 @@ typedef struct ImVector_ImTextureDataPtr {int Size;int Capacity;ImTextureData**
struct ImDrawData
{
bool Valid;
int CmdListsCount;
int FrameCount;
int TotalIdxCount;
int TotalVtxCount;
ImVector_ImDrawListPtr CmdLists;
@@ -1467,6 +1483,7 @@ struct ImTextureData
int UniqueID;
ImTextureStatus Status;
void* BackendUserData;
void* QueueUserData;
ImTextureID TexID;
ImTextureFormat Format;
int Width;
@@ -1655,6 +1672,7 @@ struct ImGuiPlatformIO
void (*Platform_SetImeDataFn)(ImGuiContext* ctx, ImGuiViewport* viewport, ImGuiPlatformImeData* data);
void* Platform_ImeUserData;
ImWchar Platform_LocaleDecimalPoint;
int Platform_SessionDate;
int Renderer_TextureMaxWidth;
int Renderer_TextureMaxHeight;
void* Renderer_RenderState;
@@ -1674,6 +1692,7 @@ struct ImGuiPlatformImeData
struct ImBitVector;
struct ImRect_c;
struct ImGuiTextIndex;
struct ImGuiPackedDate;
struct ImDrawDataBuilder;
struct ImDrawListSharedData;
struct ImFontAtlasBuilder;
@@ -1783,6 +1802,12 @@ struct ImGuiTextIndex
ImVector_int Offsets;
int EndOffset;
};
struct ImGuiPackedDate
{
ImU16 Year : 7;
ImU16 Month : 4;
ImU16 Day : 5;
};
struct ImDrawListSharedData
{
ImVec2_c TexUvWhitePixel;
@@ -1792,7 +1817,7 @@ struct ImDrawListSharedData
float FontSize;
float FontScale;
float CurveTessellationTol;
float CircleSegmentMaxError;
float CircleTessellationMaxError;
float InitialFringeScale;
ImDrawListFlags InitialFlags;
ImVec4_c ClipRectFullscreen;
@@ -1858,7 +1883,7 @@ typedef enum {
ImGuiItemFlags_Inputable = 1 << 20,
ImGuiItemFlags_HasSelectionUserData = 1 << 21,
ImGuiItemFlags_IsMultiSelect = 1 << 22,
ImGuiItemFlags_Default_ = ImGuiItemFlags_AutoClosePopups,
ImGuiItemFlags_Default_ = ImGuiItemFlags_AutoClosePopups | ImGuiItemFlags_LiveEditOnInputText,
}ImGuiItemFlagsPrivate_;
typedef enum {
ImGuiItemStatusFlags_None = 0,
@@ -1988,7 +2013,7 @@ struct ImGuiGroupData
ImVec2_c BackupCurrLineSize;
float BackupCurrLineTextBaseOffset;
ImGuiID BackupActiveIdIsAlive;
bool BackupActiveIdHasBeenEditedThisFrame;
bool BackupAnyIdHasBeenEditedThisFrame;
bool BackupDeactivatedIdIsAlive;
bool BackupHoveredIdIsAlive;
bool BackupIsSameLine;
@@ -2009,6 +2034,7 @@ typedef struct ImGuiInputTextDeactivatedState ImGuiInputTextDeactivatedState;
struct ImGuiInputTextDeactivatedState
{
ImGuiID ID;
int ElapseFrame;
ImVector_char TextA;
}; struct STB_TexteditState;
typedef STB_TexteditState ImStbTexteditState;
@@ -2095,7 +2121,7 @@ typedef enum {
struct ImGuiNextItemData
{
ImGuiNextItemDataFlags HasFlags;
ImGuiItemFlags ItemFlags;
ImGuiItemFlags ItemFlagsSet;
ImGuiID FocusScopeId;
ImGuiSelectionUserData SelectionUserData;
float Width;
@@ -2347,7 +2373,6 @@ typedef enum {
ImGuiNavRenderCursorFlags_None = 0,
ImGuiNavRenderCursorFlags_Compact = 1 << 1,
ImGuiNavRenderCursorFlags_AlwaysDraw = 1 << 2,
ImGuiNavRenderCursorFlags_NoRounding = 1 << 3,
}ImGuiNavRenderCursorFlags_;
typedef enum {
ImGuiNavMoveFlags_None = 0,
@@ -2486,6 +2511,7 @@ struct ImGuiMultiSelectTempData
bool NavIdPassedBy;
bool RangeSrcPassedBy;
bool RangeDstPassedBy;
bool IsSoleOrUnknownSelectionSize;
};
struct ImGuiMultiSelectState
{
@@ -2516,10 +2542,22 @@ struct ImGuiWindowSettings
ImGuiID ID;
ImVec2ih Pos;
ImVec2ih Size;
bool Collapsed;
bool IsChild;
bool WantApply;
bool WantDelete;
ImGuiPackedDate LastUsedDate;
bool Collapsed : 1;
bool IsChild : 1;
bool WantApply : 1;
bool WantDelete : 1;
};
typedef struct ImGuiSettingsCleanupArgs ImGuiSettingsCleanupArgs;
struct ImGuiSettingsCleanupArgs
{
ImGuiID TypeHashFilter;
int DiscardOlderThanMonths;
bool DiscardWhenMissingDate;
bool DiscardAll;
bool SetCurrentSessionDateToAll;
bool SetCurrentSessionDateWhenMissingDate;
int _DiscardOlderThanDate;
};
struct ImGuiSettingsHandler
{
@@ -2538,13 +2576,15 @@ ImGuiLocKey_VersionStr=0,
ImGuiLocKey_TableSizeOne=1,
ImGuiLocKey_TableSizeAllFit=2,
ImGuiLocKey_TableSizeAllDefault=3,
ImGuiLocKey_TableResetOrder=4,
ImGuiLocKey_WindowingMainMenuBar=5,
ImGuiLocKey_WindowingPopup=6,
ImGuiLocKey_WindowingUntitled=7,
ImGuiLocKey_OpenLink_s=8,
ImGuiLocKey_CopyLink=9,
ImGuiLocKey_COUNT=10,
ImGuiLocKey_TableReset=4,
ImGuiLocKey_TableResetOrder=5,
ImGuiLocKey_TableResetVisibility=6,
ImGuiLocKey_WindowingMainMenuBar=7,
ImGuiLocKey_WindowingPopup=8,
ImGuiLocKey_WindowingUntitled=9,
ImGuiLocKey_OpenLink_s=10,
ImGuiLocKey_CopyLink=11,
ImGuiLocKey_COUNT=12,
}ImGuiLocKey;
struct ImGuiLocEntry
{
@@ -2566,7 +2606,8 @@ typedef enum {
ImGuiDebugLogFlags_EventInputRouting = 1 << 9,
ImGuiDebugLogFlags_EventDocking = 1 << 10,
ImGuiDebugLogFlags_EventViewport = 1 << 11,
ImGuiDebugLogFlags_EventMask_ = ImGuiDebugLogFlags_EventError | ImGuiDebugLogFlags_EventActiveId | ImGuiDebugLogFlags_EventFocus | ImGuiDebugLogFlags_EventPopup | ImGuiDebugLogFlags_EventNav | ImGuiDebugLogFlags_EventClipper | ImGuiDebugLogFlags_EventSelection | ImGuiDebugLogFlags_EventIO | ImGuiDebugLogFlags_EventFont | ImGuiDebugLogFlags_EventInputRouting | ImGuiDebugLogFlags_EventDocking | ImGuiDebugLogFlags_EventViewport,
ImGuiDebugLogFlags_EventTable = 1 << 12,
ImGuiDebugLogFlags_EventMask_ = ImGuiDebugLogFlags_EventError | ImGuiDebugLogFlags_EventActiveId | ImGuiDebugLogFlags_EventFocus | ImGuiDebugLogFlags_EventPopup | ImGuiDebugLogFlags_EventNav | ImGuiDebugLogFlags_EventClipper | ImGuiDebugLogFlags_EventSelection | ImGuiDebugLogFlags_EventTable | ImGuiDebugLogFlags_EventIO | ImGuiDebugLogFlags_EventFont | ImGuiDebugLogFlags_EventInputRouting | ImGuiDebugLogFlags_EventDocking | ImGuiDebugLogFlags_EventViewport,
ImGuiDebugLogFlags_OutputToTTY = 1 << 20,
ImGuiDebugLogFlags_OutputToDebugger = 1 << 21,
ImGuiDebugLogFlags_OutputToTestEngine = 1 << 22,
@@ -2601,6 +2642,8 @@ struct ImGuiMetricsConfig
int ShowTablesRectsType;
int HighlightMonitorIdx;
ImGuiID HighlightViewportID;
int SettingsDiscardMonths;
bool SettingsHighlightOldEntries;
bool ShowFontPreview;
};
typedef struct ImGuiStackLevelInfo ImGuiStackLevelInfo;
@@ -2764,10 +2807,13 @@ struct ImGuiContext
bool HoveredIdAllowOverlap;
bool HoveredIdIsDisabled;
bool ItemUnclipByLog;
bool AnyIdHasBeenEditedThisFrame;
ImGuiID ActiveId;
ImGuiID ActiveIdIsAlive;
float ActiveIdTimer;
bool ActiveIdIsJustActivated;
bool ActiveIdWasSelected;
bool ActiveIdWasSoleSelected;
bool ActiveIdAllowOverlap;
bool ActiveIdNoClearOnFocusLoss;
bool ActiveIdHasBeenPressedBefore;
@@ -2784,6 +2830,8 @@ struct ImGuiContext
ImGuiDataTypeStorage ActiveIdValueOnActivation;
ImGuiID LastActiveId;
float LastActiveIdTimer;
bool LastActiveIdWasSelected;
bool LastActiveIdWasSoleSelected;
double LastKeyModsChangeTime;
double LastKeyModsChangeFromNoneTime;
double LastKeyboardKeyPressTime;
@@ -2935,7 +2983,6 @@ struct ImGuiContext
ImGuiDataTypeStorage DataTypeZeroValue;
int BeginMenuDepth;
int BeginComboDepth;
ImGuiColorEditFlags ColorEditOptions;
ImGuiID ColorEditCurrentID;
ImGuiID ColorEditSavedID;
float ColorEditSavedHue;
@@ -2963,6 +3010,7 @@ struct ImGuiContext
ImGuiPlatformImeData PlatformImeData;
ImGuiPlatformImeData PlatformImeDataPrev;
ImVector_ImTextureDataPtr UserTextures;
ImGuiPackedDate SessionDate;
bool SettingsLoaded;
float SettingsDirtyTimer;
ImGuiTextBuffer SettingsIniData;
@@ -3251,7 +3299,8 @@ struct ImGuiTableColumn
float StretchWeight;
float InitStretchWeightOrWidth;
ImRect_c ClipRect;
ImGuiID UserID;
ImGuiID ID;
ImGuiID UserData;
float WorkMinX;
float WorkMaxX;
float ItemWidth;
@@ -3275,15 +3324,31 @@ struct ImGuiTableColumn
bool IsVisibleY;
bool IsRequestOutput;
bool IsSkipItems;
bool IsPreserveWidthAuto;
bool IsPreserveWidthAuto : 1;
bool IsJustCreated : 1;
bool IsLoadedSettings : 1;
bool IsNeedReconcileSrc : 1;
bool IsNeedReconcileDst : 1;
ImS8 NavLayerCurrent;
ImU8 AutoFitQueue;
ImU8 CannotSkipItemsQueue;
ImU8 AutoFitQueue : 4;
ImU8 CannotSkipItemsQueue : 4;
ImU8 SortDirection : 2;
ImU8 SortDirectionsAvailCount : 2;
ImU8 SortDirectionsAvailMask : 4;
ImU8 SortDirectionsAvailList;
};
typedef struct ImGuiTableReconcileColumnData ImGuiTableReconcileColumnData;
struct ImGuiTableReconcileColumnData
{
ImGuiID ID;
ImS16 NameOffset;
ImGuiTableColumnFlags Flags;
float InitWidthOrWeight;
ImGuiID UserData;
ImGuiTableColumnIdx ColumnNewIdx;
ImGuiTableColumnIdx ColumnOldIdx;
ImGuiTableColumn ColumnOldData;
};
typedef struct ImGuiTableCellData ImGuiTableCellData;
struct ImGuiTableCellData
{
@@ -3415,6 +3480,7 @@ struct ImGuiTable
bool IsLayoutLocked;
bool IsInsideRow;
bool IsInitializing;
bool IsReconcileMode;
bool IsSortSpecsDirty;
bool IsUsingHeaders;
bool IsContextPopupOpen;
@@ -3422,8 +3488,10 @@ struct ImGuiTable
bool IsSettingsRequestLoad;
bool IsSettingsDirty;
bool IsDefaultDisplayOrder;
bool IsDefaultVisibility;
bool IsResetAllRequest;
bool IsResetDisplayOrderRequest;
bool IsResetVisibilityRequest;
bool IsUnfrozenRows;
bool IsDefaultSizingPolicy;
bool IsActiveIdAliveBeforeTable;
@@ -3435,6 +3503,8 @@ struct ImGuiTable
};
typedef struct ImVector_ImGuiTableHeaderData {int Size;int Capacity;ImGuiTableHeaderData* Data;} ImVector_ImGuiTableHeaderData;
typedef struct ImVector_ImGuiTableReconcileColumnData {int Size;int Capacity;ImGuiTableReconcileColumnData* Data;} ImVector_ImGuiTableReconcileColumnData;
struct ImGuiTableTempData
{
ImGuiID WindowID;
@@ -3442,6 +3512,9 @@ struct ImGuiTableTempData
float LastTimeActive;
float AngledHeadersExtraWidth;
ImVector_ImGuiTableHeaderData AngledHeadersRequests;
ImVector_ImGuiTableReconcileColumnData ReconcileColumnsRequests;
void* OldColumnsRawData;
ImSpan_ImGuiTableColumn OldColumnsData;
ImVec2_c UserOuterSize;
ImDrawListSplitter DrawSplitter;
ImRect_c HostBackupWorkRect;
@@ -3457,13 +3530,14 @@ typedef struct ImGuiTableColumnSettings ImGuiTableColumnSettings;
struct ImGuiTableColumnSettings
{
float WidthOrWeight;
ImGuiID UserID;
ImGuiID ID;
ImGuiTableColumnIdx Index;
ImGuiTableColumnIdx DisplayOrder;
ImGuiTableColumnIdx SortOrder;
ImU8 SortDirection : 2;
ImS8 IsEnabled : 2;
ImU8 IsStretch : 1;
bool IsLoaded : 1;
};
struct ImGuiTableSettings
{
@@ -3472,7 +3546,8 @@ struct ImGuiTableSettings
float RefScale;
ImGuiTableColumnIdx ColumnsCount;
ImGuiTableColumnIdx ColumnsCountMax;
bool WantApply;
ImGuiPackedDate LastUsedDate;
bool WantApply : 1;
};
struct ImFontLoader
{
@@ -3661,6 +3736,7 @@ typedef ImVector<ImGuiTabItem> ImVector_ImGuiTabItem;
typedef ImVector<ImGuiTableColumnSortSpecs> ImVector_ImGuiTableColumnSortSpecs;
typedef ImVector<ImGuiTableHeaderData> ImVector_ImGuiTableHeaderData;
typedef ImVector<ImGuiTableInstanceData> ImVector_ImGuiTableInstanceData;
typedef ImVector<ImGuiTableReconcileColumnData> ImVector_ImGuiTableReconcileColumnData;
typedef ImVector<ImGuiTableTempData> ImVector_ImGuiTableTempData;
typedef ImVector<ImGuiTextRange> ImVector_ImGuiTextRange;
typedef ImVector<ImGuiTreeNodeStackData> ImVector_ImGuiTreeNodeStackData;
@@ -3913,7 +3989,6 @@ CIMGUI_API bool igColorEdit4(const char* label,float col[4],ImGuiColorEditFlags
CIMGUI_API bool igColorPicker3(const char* label,float col[3],ImGuiColorEditFlags flags);
CIMGUI_API bool igColorPicker4(const char* label,float col[4],ImGuiColorEditFlags flags,const float* ref_col);
CIMGUI_API bool igColorButton(const char* desc_id,const ImVec4_c col,ImGuiColorEditFlags flags,const ImVec2_c size);
CIMGUI_API void igSetColorEditOptions(ImGuiColorEditFlags flags);
CIMGUI_API bool igTreeNode_Str(const char* label);
CIMGUI_API bool igTreeNode_StrStr(const char* str_id,const char* fmt,...);
#ifdef CIMGUI_VARGS0
@@ -3987,9 +4062,9 @@ CIMGUI_API void igSetItemTooltipV(const char* fmt,va_list args);
CIMGUI_API bool igBeginPopup(const char* str_id,ImGuiWindowFlags flags);
CIMGUI_API bool igBeginPopupModal(const char* name,bool* p_open,ImGuiWindowFlags flags);
CIMGUI_API void igEndPopup(void);
CIMGUI_API void igOpenPopup_Str(const char* str_id,ImGuiPopupFlags popup_flags);
CIMGUI_API void igOpenPopup_ID(ImGuiID id,ImGuiPopupFlags popup_flags);
CIMGUI_API void igOpenPopupOnItemClick(const char* str_id,ImGuiPopupFlags popup_flags);
CIMGUI_API bool igOpenPopup_Str(const char* str_id,ImGuiPopupFlags popup_flags);
CIMGUI_API bool igOpenPopup_ID(ImGuiID id,ImGuiPopupFlags popup_flags);
CIMGUI_API bool igOpenPopupOnItemClick(const char* str_id,ImGuiPopupFlags popup_flags);
CIMGUI_API void igCloseCurrentPopup(void);
CIMGUI_API bool igBeginPopupContextItem(const char* str_id,ImGuiPopupFlags popup_flags);
CIMGUI_API bool igBeginPopupContextWindow(const char* str_id,ImGuiPopupFlags popup_flags);
@@ -4000,7 +4075,7 @@ CIMGUI_API void igEndTable(void);
CIMGUI_API void igTableNextRow(ImGuiTableRowFlags row_flags,float min_row_height);
CIMGUI_API bool igTableNextColumn(void);
CIMGUI_API bool igTableSetColumnIndex(int column_n);
CIMGUI_API void igTableSetupColumn(const char* label,ImGuiTableColumnFlags flags,float init_width_or_weight,ImGuiID user_id);
CIMGUI_API void igTableSetupColumn(const char* label,ImGuiTableColumnFlags flags,float init_width_or_weight,ImGuiID user_data);
CIMGUI_API void igTableSetupScrollFreeze(int cols,int rows);
CIMGUI_API void igTableHeader(const char* label);
CIMGUI_API void igTableHeadersRow(void);
@@ -4071,6 +4146,7 @@ CIMGUI_API ImVec2_c igGetItemRectMin(void);
CIMGUI_API ImVec2_c igGetItemRectMax(void);
CIMGUI_API ImVec2_c igGetItemRectSize(void);
CIMGUI_API ImGuiItemFlags igGetItemFlags(void);
CIMGUI_API int igGetItemClickedCountWithSingleClickDelay(ImGuiMouseButton mouse_button,float delay);
CIMGUI_API ImGuiViewport* igGetMainViewport(void);
CIMGUI_API ImDrawList* igGetBackgroundDrawList_Nil(void);
CIMGUI_API ImDrawList* igGetForegroundDrawList_Nil(void);
@@ -4371,10 +4447,10 @@ CIMGUI_API ImFont* ImFontAtlas_AddFontFromMemoryTTF(ImFontAtlas* self,void* font
CIMGUI_API ImFont* ImFontAtlas_AddFontFromMemoryCompressedTTF(ImFontAtlas* self,const void* compressed_font_data,int compressed_font_data_size,float size_pixels,const ImFontConfig* font_cfg,const ImWchar* glyph_ranges);
CIMGUI_API ImFont* ImFontAtlas_AddFontFromMemoryCompressedBase85TTF(ImFontAtlas* self,const char* compressed_font_data_base85,float size_pixels,const ImFontConfig* font_cfg,const ImWchar* glyph_ranges);
CIMGUI_API void ImFontAtlas_RemoveFont(ImFontAtlas* self,ImFont* font);
CIMGUI_API void ImFontAtlas_Clear(ImFontAtlas* self);
CIMGUI_API void ImFontAtlas_ClearFonts(ImFontAtlas* self);
CIMGUI_API void ImFontAtlas_CompactCache(ImFontAtlas* self);
CIMGUI_API void ImFontAtlas_SetFontLoader(ImFontAtlas* self,const ImFontLoader* font_loader);
CIMGUI_API void ImFontAtlas_Clear(ImFontAtlas* self);
CIMGUI_API void ImFontAtlas_ClearFonts(ImFontAtlas* self);
CIMGUI_API void ImFontAtlas_ClearInputData(ImFontAtlas* self);
CIMGUI_API void ImFontAtlas_ClearTexData(ImFontAtlas* self);
CIMGUI_API const ImWchar* ImFontAtlas_GetGlyphRangesDefault(ImFontAtlas* self);
@@ -4503,6 +4579,7 @@ CIMGUI_API float igImFloor_Float(float f);
CIMGUI_API ImVec2_c igImFloor_Vec2(const ImVec2_c v);
CIMGUI_API float igImTrunc64(float f);
CIMGUI_API float igImRound64(float f);
CIMGUI_API float igImCeilFast(float f);
CIMGUI_API int igImModPositive(int a,int b);
CIMGUI_API float igImDot(const ImVec2_c a,const ImVec2_c b);
CIMGUI_API ImVec2_c igImRotate(const ImVec2_c v,float cos_a,float sin_a);
@@ -4579,6 +4656,12 @@ CIMGUI_API int ImGuiTextIndex_size(ImGuiTextIndex* self);
CIMGUI_API const char* ImGuiTextIndex_get_line_begin(ImGuiTextIndex* self,const char* base,int n);
CIMGUI_API const char* ImGuiTextIndex_get_line_end(ImGuiTextIndex* self,const char* base,int n);
CIMGUI_API void ImGuiTextIndex_append(ImGuiTextIndex* self,const char* base,int old_size,int new_size);
CIMGUI_API ImGuiPackedDate* ImGuiPackedDate_ImGuiPackedDate_Nil(void);
CIMGUI_API void ImGuiPackedDate_destroy(ImGuiPackedDate* self);
CIMGUI_API ImGuiPackedDate* ImGuiPackedDate_ImGuiPackedDate_Int(int yyyymmdd);
CIMGUI_API bool ImGuiPackedDate_IsValid(ImGuiPackedDate* self);
CIMGUI_API int ImGuiPackedDate_Unpack(ImGuiPackedDate* self);
CIMGUI_API void ImGuiPackedDate_SubtractMonths(ImGuiPackedDate* self,int m);
CIMGUI_API ImGuiStoragePair* igImLowerBound(ImGuiStoragePair* in_begin,ImGuiStoragePair* in_end,ImGuiID key);
CIMGUI_API ImDrawListSharedData* ImDrawListSharedData_ImDrawListSharedData(void);
CIMGUI_API void ImDrawListSharedData_destroy(ImDrawListSharedData* self);
@@ -4719,6 +4802,76 @@ CIMGUI_API void ImGuiTableColumnSettings_destroy(ImGuiTableColumnSettings* self)
CIMGUI_API ImGuiTableSettings* ImGuiTableSettings_ImGuiTableSettings(void);
CIMGUI_API void ImGuiTableSettings_destroy(ImGuiTableSettings* self);
CIMGUI_API ImGuiTableColumnSettings* ImGuiTableSettings_GetColumnSettings(ImGuiTableSettings* self);
CIMGUI_API void igTableOpenContextMenu(int column_n);
CIMGUI_API void igTableSetColumnWidth(int column_n,float width);
CIMGUI_API void igTableSetColumnSortDirection(int column_n,ImGuiSortDirection sort_direction,bool append_to_sort_specs);
CIMGUI_API int igTableGetHoveredRow(void);
CIMGUI_API float igTableGetHeaderRowHeight(void);
CIMGUI_API float igTableGetHeaderAngledMaxLabelWidth(void);
CIMGUI_API void igTablePushBackgroundChannel(void);
CIMGUI_API void igTablePopBackgroundChannel(void);
CIMGUI_API void igTablePushColumnChannel(int column_n);
CIMGUI_API void igTablePopColumnChannel(void);
CIMGUI_API void igTableAngledHeadersRowEx(ImGuiID row_id,float angle,float max_label_width,const ImGuiTableHeaderData* data,int data_count);
CIMGUI_API ImGuiTable* igGetCurrentTable(void);
CIMGUI_API ImGuiTable* igTableFindByID(ImGuiID id);
CIMGUI_API bool igBeginTableEx(const char* name,ImGuiID id,int columns_count,ImGuiTableFlags flags,const ImVec2_c outer_size,float inner_width);
CIMGUI_API void igTableBeginInitMemory(ImGuiTable* table,int columns_count);
CIMGUI_API void igTableApplyQueuedRequests(ImGuiTable* table);
CIMGUI_API void igTableSetupDrawChannels(ImGuiTable* table);
CIMGUI_API void igTableReconcileColumns(ImGuiTable* table);
CIMGUI_API void igTableUpdateLayout(ImGuiTable* table);
CIMGUI_API void igTableUpdateBorders(ImGuiTable* table);
CIMGUI_API void igTableUpdateColumnsWeightFromWidth(ImGuiTable* table);
CIMGUI_API void igTableApplyExternalUnclipRect(ImGuiTable* table,ImRect* rect);
CIMGUI_API void igTableDrawBorders(ImGuiTable* table);
CIMGUI_API void igTableDrawDefaultContextMenu(ImGuiTable* table,ImGuiTableFlags flags_for_section_to_display);
CIMGUI_API bool igTableBeginContextMenuPopup(ImGuiTable* table);
CIMGUI_API void igTableMergeDrawChannels(ImGuiTable* table);
CIMGUI_API ImGuiTableInstanceData* igTableGetInstanceData(ImGuiTable* table,int instance_no);
CIMGUI_API ImGuiID igTableGetInstanceID(ImGuiTable* table,int instance_no);
CIMGUI_API void igTableFixDisplayOrder(ImGuiTable* table);
CIMGUI_API void igTableSortSpecsSanitize(ImGuiTable* table);
CIMGUI_API void igTableSortSpecsBuild(ImGuiTable* table);
CIMGUI_API void igTableInitColumnDefaults(ImGuiTable* table,ImGuiTableColumn* column,ImGuiTableColumnFlags init_mask);
CIMGUI_API ImGuiSortDirection igTableGetColumnNextSortDirection(ImGuiTableColumn* column);
CIMGUI_API void igTableFixColumnSortDirection(ImGuiTable* table,ImGuiTableColumn* column);
CIMGUI_API float igTableGetColumnWidthAuto(ImGuiTable* table,ImGuiTableColumn* column);
CIMGUI_API void igTableBeginRow(ImGuiTable* table);
CIMGUI_API void igTableEndRow(ImGuiTable* table);
CIMGUI_API void igTableBeginCell(ImGuiTable* table,int column_n);
CIMGUI_API void igTableEndCell(ImGuiTable* table);
CIMGUI_API ImRect_c igTableGetCellBgRect(const ImGuiTable* table,int column_n);
CIMGUI_API const char* igTableGetColumnName_TablePtr(const ImGuiTable* table,int column_n);
CIMGUI_API ImGuiID igTableGetColumnResizeID(ImGuiTable* table,int column_n,int instance_no);
CIMGUI_API float igTableCalcMaxColumnWidth(const ImGuiTable* table,int column_n);
CIMGUI_API void igTableSetColumnWidthAutoSingle(ImGuiTable* table,int column_n);
CIMGUI_API void igTableSetColumnWidthAutoAll(ImGuiTable* table);
CIMGUI_API void igTableSetColumnDisplayOrder(ImGuiTable* table,int column_n,int dst_order);
CIMGUI_API void igTableQueueSetColumnDisplayOrder(ImGuiTable* table,int column_n,int dst_order);
CIMGUI_API void igTableRemove(ImGuiTable* table);
CIMGUI_API void igTableGcCompactTransientBuffers_TablePtr(ImGuiTable* table);
CIMGUI_API void igTableGcCompactTransientBuffers_TableTempDataPtr(ImGuiTableTempData* table);
CIMGUI_API void igTableGcCompactSettings(void);
CIMGUI_API void igTableLoadSettings(ImGuiTable* table);
CIMGUI_API void igTableLoadSettingsForColumns(ImGuiTable* table);
CIMGUI_API void igTableLoadSettingsForColumn(ImGuiTableColumn* column,ImGuiTableColumnSettings* column_settings,ImGuiTableFlags load_flags);
CIMGUI_API void igTableSaveSettings(ImGuiTable* table);
CIMGUI_API void igTableResetSettings(ImGuiTable* table);
CIMGUI_API ImGuiTableSettings* igTableGetBoundSettings(ImGuiTable* table);
CIMGUI_API void igTableSettingsAddSettingsHandler(void);
CIMGUI_API ImGuiTableSettings* igTableSettingsCreate(ImGuiID id,int columns_count);
CIMGUI_API ImGuiTableSettings* igTableSettingsFindByID(ImGuiID id);
CIMGUI_API void igSetWindowClipRectBeforeSetChannel(ImGuiWindow* window,const ImRect_c clip_rect);
CIMGUI_API void igBeginColumns(const char* str_id,int count,ImGuiOldColumnFlags flags);
CIMGUI_API void igEndColumns(void);
CIMGUI_API void igPushColumnClipRect(int column_index);
CIMGUI_API void igPushColumnsBackground(void);
CIMGUI_API void igPopColumnsBackground(void);
CIMGUI_API ImGuiID igGetColumnsID(const char* str_id,int count);
CIMGUI_API ImGuiOldColumns* igFindOrCreateColumns(ImGuiWindow* window,ImGuiID id);
CIMGUI_API float igGetColumnOffsetFromNorm(const ImGuiOldColumns* columns,float offset_norm);
CIMGUI_API float igGetColumnNormFromOffset(const ImGuiOldColumns* columns,float offset);
CIMGUI_API ImGuiIO* igGetIO_ContextPtr(ImGuiContext* ctx);
CIMGUI_API ImGuiPlatformIO* igGetPlatformIO_ContextPtr(ImGuiContext* ctx);
CIMGUI_API float igGetScale(void);
@@ -4788,6 +4941,7 @@ CIMGUI_API void igSetWindowViewport(ImGuiWindow* window,ImGuiViewportP* viewport
CIMGUI_API void igMarkIniSettingsDirty_Nil(void);
CIMGUI_API void igMarkIniSettingsDirty_WindowPtr(ImGuiWindow* window);
CIMGUI_API void igClearIniSettings(void);
CIMGUI_API void igCleanupIniSettings(ImGuiSettingsCleanupArgs* args);
CIMGUI_API void igAddSettingsHandler(const ImGuiSettingsHandler* handler);
CIMGUI_API void igRemoveSettingsHandler(const char* type_name);
CIMGUI_API ImGuiSettingsHandler* igFindSettingsHandler(const char* type_name);
@@ -4841,7 +4995,7 @@ CIMGUI_API bool igBeginChildEx(const char* name,ImGuiID id,const ImVec2_c size_a
CIMGUI_API ImGuiWindow* igFindFrontMostVisibleChildWindow(ImGuiWindow* window);
CIMGUI_API bool igBeginPopupEx(ImGuiID id,ImGuiWindowFlags extra_window_flags);
CIMGUI_API bool igBeginPopupMenuEx(ImGuiID id,const char* label,ImGuiWindowFlags extra_window_flags);
CIMGUI_API void igOpenPopupEx(ImGuiID id,ImGuiPopupFlags popup_flags);
CIMGUI_API bool igOpenPopupEx(ImGuiID id,ImGuiPopupFlags popup_flags);
CIMGUI_API void igClosePopupToLevel(int remaining,bool restore_focus_to_window_under_popup);
CIMGUI_API void igClosePopupsOverWindow(ImGuiWindow* ref_window,bool restore_focus_to_window_under_popup);
CIMGUI_API void igClosePopupsExceptModals(void);
@@ -4940,77 +5094,11 @@ CIMGUI_API int igTypingSelectFindBestLeadingMatch(ImGuiTypingSelectRequest* req,
CIMGUI_API bool igBeginBoxSelect(const ImRect_c scope_rect,ImGuiWindow* window,ImGuiID box_select_id,ImGuiMultiSelectFlags ms_flags);
CIMGUI_API void igEndBoxSelect(const ImRect_c scope_rect,ImGuiMultiSelectFlags ms_flags);
CIMGUI_API void igMultiSelectItemHeader(ImGuiID id,bool* p_selected,ImGuiButtonFlags* p_button_flags);
CIMGUI_API void igMultiSelectItemFooter(ImGuiID id,bool* p_selected,bool* p_pressed);
CIMGUI_API void igMultiSelectItemFooter(ImGuiID id,bool* p_selected,bool* p_pressed,ImGuiMultiSelectFlags extra_flags);
CIMGUI_API void igMultiSelectAddSetAll(ImGuiMultiSelectTempData* ms,bool selected);
CIMGUI_API void igMultiSelectAddSetRange(ImGuiMultiSelectTempData* ms,bool selected,int range_dir,ImGuiSelectionUserData first_item,ImGuiSelectionUserData last_item);
CIMGUI_API ImGuiBoxSelectState* igGetBoxSelectState(ImGuiID id);
CIMGUI_API ImGuiMultiSelectState* igGetMultiSelectState(ImGuiID id);
CIMGUI_API void igSetWindowClipRectBeforeSetChannel(ImGuiWindow* window,const ImRect_c clip_rect);
CIMGUI_API void igBeginColumns(const char* str_id,int count,ImGuiOldColumnFlags flags);
CIMGUI_API void igEndColumns(void);
CIMGUI_API void igPushColumnClipRect(int column_index);
CIMGUI_API void igPushColumnsBackground(void);
CIMGUI_API void igPopColumnsBackground(void);
CIMGUI_API ImGuiID igGetColumnsID(const char* str_id,int count);
CIMGUI_API ImGuiOldColumns* igFindOrCreateColumns(ImGuiWindow* window,ImGuiID id);
CIMGUI_API float igGetColumnOffsetFromNorm(const ImGuiOldColumns* columns,float offset_norm);
CIMGUI_API float igGetColumnNormFromOffset(const ImGuiOldColumns* columns,float offset);
CIMGUI_API void igTableOpenContextMenu(int column_n);
CIMGUI_API void igTableSetColumnWidth(int column_n,float width);
CIMGUI_API void igTableSetColumnSortDirection(int column_n,ImGuiSortDirection sort_direction,bool append_to_sort_specs);
CIMGUI_API int igTableGetHoveredRow(void);
CIMGUI_API float igTableGetHeaderRowHeight(void);
CIMGUI_API float igTableGetHeaderAngledMaxLabelWidth(void);
CIMGUI_API void igTablePushBackgroundChannel(void);
CIMGUI_API void igTablePopBackgroundChannel(void);
CIMGUI_API void igTablePushColumnChannel(int column_n);
CIMGUI_API void igTablePopColumnChannel(void);
CIMGUI_API void igTableAngledHeadersRowEx(ImGuiID row_id,float angle,float max_label_width,const ImGuiTableHeaderData* data,int data_count);
CIMGUI_API ImGuiTable* igGetCurrentTable(void);
CIMGUI_API ImGuiTable* igTableFindByID(ImGuiID id);
CIMGUI_API bool igBeginTableEx(const char* name,ImGuiID id,int columns_count,ImGuiTableFlags flags,const ImVec2_c outer_size,float inner_width);
CIMGUI_API void igTableBeginInitMemory(ImGuiTable* table,int columns_count);
CIMGUI_API void igTableBeginApplyRequests(ImGuiTable* table);
CIMGUI_API void igTableSetupDrawChannels(ImGuiTable* table);
CIMGUI_API void igTableUpdateLayout(ImGuiTable* table);
CIMGUI_API void igTableUpdateBorders(ImGuiTable* table);
CIMGUI_API void igTableUpdateColumnsWeightFromWidth(ImGuiTable* table);
CIMGUI_API void igTableApplyExternalUnclipRect(ImGuiTable* table,ImRect* rect);
CIMGUI_API void igTableDrawBorders(ImGuiTable* table);
CIMGUI_API void igTableDrawDefaultContextMenu(ImGuiTable* table,ImGuiTableFlags flags_for_section_to_display);
CIMGUI_API bool igTableBeginContextMenuPopup(ImGuiTable* table);
CIMGUI_API void igTableMergeDrawChannels(ImGuiTable* table);
CIMGUI_API ImGuiTableInstanceData* igTableGetInstanceData(ImGuiTable* table,int instance_no);
CIMGUI_API ImGuiID igTableGetInstanceID(ImGuiTable* table,int instance_no);
CIMGUI_API void igTableFixDisplayOrder(ImGuiTable* table);
CIMGUI_API void igTableSortSpecsSanitize(ImGuiTable* table);
CIMGUI_API void igTableSortSpecsBuild(ImGuiTable* table);
CIMGUI_API ImGuiSortDirection igTableGetColumnNextSortDirection(ImGuiTableColumn* column);
CIMGUI_API void igTableFixColumnSortDirection(ImGuiTable* table,ImGuiTableColumn* column);
CIMGUI_API float igTableGetColumnWidthAuto(ImGuiTable* table,ImGuiTableColumn* column);
CIMGUI_API void igTableBeginRow(ImGuiTable* table);
CIMGUI_API void igTableEndRow(ImGuiTable* table);
CIMGUI_API void igTableBeginCell(ImGuiTable* table,int column_n);
CIMGUI_API void igTableEndCell(ImGuiTable* table);
CIMGUI_API ImRect_c igTableGetCellBgRect(const ImGuiTable* table,int column_n);
CIMGUI_API const char* igTableGetColumnName_TablePtr(const ImGuiTable* table,int column_n);
CIMGUI_API ImGuiID igTableGetColumnResizeID(ImGuiTable* table,int column_n,int instance_no);
CIMGUI_API float igTableCalcMaxColumnWidth(const ImGuiTable* table,int column_n);
CIMGUI_API void igTableSetColumnWidthAutoSingle(ImGuiTable* table,int column_n);
CIMGUI_API void igTableSetColumnWidthAutoAll(ImGuiTable* table);
CIMGUI_API void igTableSetColumnDisplayOrder(ImGuiTable* table,int column_n,int dst_order);
CIMGUI_API void igTableQueueSetColumnDisplayOrder(ImGuiTable* table,int column_n,int dst_order);
CIMGUI_API void igTableRemove(ImGuiTable* table);
CIMGUI_API void igTableGcCompactTransientBuffers_TablePtr(ImGuiTable* table);
CIMGUI_API void igTableGcCompactTransientBuffers_TableTempDataPtr(ImGuiTableTempData* table);
CIMGUI_API void igTableGcCompactSettings(void);
CIMGUI_API void igTableLoadSettings(ImGuiTable* table);
CIMGUI_API void igTableSaveSettings(ImGuiTable* table);
CIMGUI_API void igTableResetSettings(ImGuiTable* table);
CIMGUI_API ImGuiTableSettings* igTableGetBoundSettings(ImGuiTable* table);
CIMGUI_API void igTableSettingsAddSettingsHandler(void);
CIMGUI_API ImGuiTableSettings* igTableSettingsCreate(ImGuiID id,int columns_count);
CIMGUI_API ImGuiTableSettings* igTableSettingsFindByID(ImGuiID id);
CIMGUI_API ImGuiTabBar* igGetCurrentTabBar(void);
CIMGUI_API ImGuiTabBar* igTabBarFindByID(ImGuiID id);
CIMGUI_API void igTabBarRemove(ImGuiTabBar* tab_bar);
@@ -5042,7 +5130,7 @@ CIMGUI_API void igRenderFrame(ImVec2_c p_min,ImVec2_c p_max,ImU32 fill_col,bool
CIMGUI_API void igRenderFrameBorder(ImVec2_c p_min,ImVec2_c p_max,float rounding);
CIMGUI_API void igRenderColorComponentMarker(const ImRect_c bb,ImU32 col,float rounding);
CIMGUI_API void igRenderColorRectWithAlphaCheckerboard(ImDrawList* draw_list,ImVec2_c p_min,ImVec2_c p_max,ImU32 fill_col,float grid_step,ImVec2_c grid_off,float rounding,ImDrawFlags flags);
CIMGUI_API void igRenderNavCursor(const ImRect_c bb,ImGuiID id,ImGuiNavRenderCursorFlags flags);
CIMGUI_API void igRenderNavCursor(const ImRect_c bb,ImGuiID id,ImGuiNavRenderCursorFlags flags,float rounding);
CIMGUI_API const char* igFindRenderedTextEnd(const char* text,const char* text_end);
CIMGUI_API void igRenderMouseCursor(ImVec2_c pos,float scale,ImGuiMouseCursor mouse_cursor,ImU32 col_fill,ImU32 col_border,ImU32 col_shadow);
CIMGUI_API void igRenderArrow(ImDrawList* draw_list,ImVec2_c pos,ImU32 col,ImGuiDir dir,float scale);
@@ -5143,7 +5231,7 @@ CIMGUI_API void igDebugNodeTexture(ImTextureData* tex,int int_id,const ImFontAtl
CIMGUI_API void igDebugNodeStorage(ImGuiStorage* storage,const char* label);
CIMGUI_API void igDebugNodeTabBar(ImGuiTabBar* tab_bar,const char* label);
CIMGUI_API void igDebugNodeTable(ImGuiTable* table);
CIMGUI_API void igDebugNodeTableSettings(ImGuiTableSettings* settings);
CIMGUI_API void igDebugNodeTableSettings(ImGuiTableSettings* settings,ImGuiTable* table);
CIMGUI_API void igDebugNodeInputTextState(ImGuiInputTextState* state);
CIMGUI_API void igDebugNodeTypingSelectState(ImGuiTypingSelectState* state);
CIMGUI_API void igDebugNodeMultiSelectState(ImGuiMultiSelectState* state);
@@ -5212,6 +5300,7 @@ CIMGUI_API void igImFontAtlasTextureBlockPostProcessMultiply(ImFontAtlasPostProc
CIMGUI_API void igImFontAtlasTextureBlockFill(ImTextureData* dst_tex,int dst_x,int dst_y,int w,int h,ImU32 col);
CIMGUI_API void igImFontAtlasTextureBlockCopy(ImTextureData* src_tex,int src_x,int src_y,ImTextureData* dst_tex,int dst_x,int dst_y,int w,int h);
CIMGUI_API void igImFontAtlasTextureBlockQueueUpload(ImFontAtlas* atlas,ImTextureData* tex,int x,int y,int w,int h);
CIMGUI_API bool igImTextureDataUpdateNewFrame(ImTextureData* tex);
CIMGUI_API void igImTextureDataQueueUpload(ImTextureData* tex,int x,int y,int w,int h);
CIMGUI_API int igImTextureDataGetFormatBytesPerPixel(ImTextureFormat format);
CIMGUI_API const char* igImTextureDataGetStatusName(ImTextureStatus status);

View File

@@ -30,8 +30,20 @@ CIMGUI_API void ImGui_ImplGlfw_WindowFocusCallback(GLFWwindow* window,int focuse
#endif
#ifdef CIMGUI_USE_OPENGL3
#ifdef CIMGUI_DEFINE_ENUMS_AND_STRUCTS
typedef struct ImGui_ImplOpenGL3_RenderState ImGui_ImplOpenGL3_RenderState;
struct ImGui_ImplOpenGL3_RenderState
{
bool UseBindSampler;
bool UseTexParameterFilter;
unsigned int CurrentSampler;
unsigned int CurrentTexParameterFilter;
};
#endif //CIMGUI_DEFINE_ENUMS_AND_STRUCTS
CIMGUI_API bool ImGui_ImplOpenGL3_CreateDeviceObjects(void);
CIMGUI_API void ImGui_ImplOpenGL3_DestroyDeviceObjects(void);
CIMGUI_API ImGui_ImplOpenGL3_RenderState* ImGui_ImplOpenGL3_GetRenderState(void);
CIMGUI_API bool ImGui_ImplOpenGL3_Init(const char* glsl_version);
CIMGUI_API void ImGui_ImplOpenGL3_NewFrame(void);
CIMGUI_API void ImGui_ImplOpenGL3_RenderDrawData(ImDrawData* draw_data);

View File

@@ -379,7 +379,7 @@ local function getRE()
-- but we don want operator== to appear as a var and as we should skip this kind of function solution is:
operator_re = "^([^;{}]+operator[^;{}]+%b()[\n%s%w%(%)_]*;)",
struct_re = "^([^;{}]-struct[^;{}]-%b{}[%s%w_%(%)]*;)",
class_re = "^([^;{}]-class[^;{}]-%b{}[%s%w_%(%)]*;)",
class_re = "^([^;{}]-class[^;{}]-%b{}[%s%w_%(%)]*;)",
--class_re = "^([^;{}]-class[^;{}]-%b{}%s*;)",
enum_re = "^([^;{}]-enum[^;{}]-%b{}[%s%w_%(%)]*;)",
union_re = "^([^;{}]-union[^;{}]-%b{}[%s%w_%(%)]*;)",
@@ -776,8 +776,16 @@ local function parseFunction(self,stname,itt,namespace,locat)
return
end
local ret = line:match("([^%(%):,]+[%*%s])%s?~?[_%w]+%b()")
local rettt = line:match("(.+[%*%s])%s?~?[_%w]+%b()")
--if rettt and rettt:match"::" then print("rettt",rettt,ret);error"debug" end
--if ret~=rettt then print("++++++++ret~=rettt",ret,rettt) end
if rettt and rettt:match"^const" and not ret:match"^const" then
ret = "const "..ret
print("++++++++++++add const",ret)
end
--local ret = line:match("(.+[%*%s])%s?~?[_%w]+%b()")
--local funcname, args = line:match("(~?[_%w]+)%s*(%b())")
local funcname, args, extraconst = line:match("(~?[_%w]+)%s*(%b())(.*)")
@@ -905,6 +913,15 @@ local function parseFunction(self,stname,itt,namespace,locat)
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
@@ -1384,7 +1401,9 @@ local function header_subs_nonPOD(FP,txt)
return txt
end
M.header_subs_nonPOD = header_subs_nonPOD
local function get_std_function(ar)
local function get_std_function(ar,def)
print("get_std_function",ar.template_orig)
print(" from",def.ov_cimguiname)
local skip = false
local ty=ar.template_orig:gsub(ar.name,"")
ty = ty:match("std::function(%b<>)")
@@ -1402,12 +1421,14 @@ local function get_std_function(ar)
local argsT2 = {}
local noname_counter = 0
for i,v in ipairs(argsT) do
local typ, name = v:match("(.+)%s+(%w+)")
print(" arg",i,v)
local typ, name = v:match("^(.+)%s+(%w*)$")
if not name then
typ = v
noname_counter = noname_counter + 1
name = "noname" .. noname_counter
end
print(" ",typ,name)
argsT2[i] = {type=typ,name=name}
end
--get conversions
@@ -1423,6 +1444,13 @@ local function get_std_function(ar)
elseif v.type:match("std::") then
skip = true
else
print(" get_std_function found type",v.type)
if v.type:match"&$" then
typ = v.type:gsub("&","*")
conv = "&"..v.name
end
-- require"anima.utils"
-- prtable(ar)
end
argsT3[i] = {type=typ or v.type,conv=conv,name=v.name}
end
@@ -1461,10 +1489,12 @@ local function get_std_function(ar)
return caar,asp,skip
end
local function ADDnonUDT(FP)
print"===================ADDnonUDT==================================="
local nonPOD = get_nonPOD(FP)
get_nonPODused(FP)
for k,defs in pairs(FP.defsT) do
for i, def in ipairs(defs) do
--print(" ADDnonUDT",def.ov_cimguiname,def.ret)
local skip = nil
--ret
local rets = (def.ret or ""):gsub("const ","")
@@ -1488,6 +1518,7 @@ local function ADDnonUDT(FP)
--assert(def.ret:match"%*","return opaque struct without pointer")
--M.prtable(def)
--error"return opaque struct without pointer"
print("opaque in return================")
def.nonUDT = "opaque"
def.ret = def.ret.."*" --def.ret:gsub(rets,rets.."_opq")
else
@@ -1495,6 +1526,7 @@ local function ADDnonUDT(FP)
end
--return std:: -> skip function
elseif def.stdret then -- not std::string
print("skip",def.stdret,"on return")
skip = true
end
--args
@@ -1527,7 +1559,7 @@ local function ADDnonUDT(FP)
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)
local ca2,asp2,skip2 = get_std_function(v,def)
caar = caar .. ca2..","
asp = asp .. asp2..","
if skip2 then skip = true end
@@ -1565,6 +1597,7 @@ local function ADDnonUDT(FP)
asp = "()"
end
if skip then
print("-------ADDnonUDT skips",def.ov_cimguiname)
def.skipped = skip
FP.skipped[def.ov_cimguiname] = true
else
@@ -1574,6 +1607,10 @@ local function ADDnonUDT(FP)
end
end
end
if next(FP.skipped) then
print(" =======skipped functions=====")
M.prtable(FP.skipped)
end
end
local function ADDnonUDT_OLD(FP)
local nonPOD = get_nonPOD(FP)
@@ -1642,6 +1679,9 @@ local function ADDnonUDT_OLD(FP)
end
local function ADDdestructors(FP)
print"======================================================="
print"==============ADDdestructors========================="
print"======================================================="
local defsT = FP.defsT
local newcdefs = {}
@@ -2056,7 +2096,7 @@ function M.Parser()
--clean class and get name
if it.re_name == "class_re" then
it.name = it.item:match("class%s+(%S+)")
print("cleaning class",it.name)
print("cleaning class",it.name,"-------------------------------------")
--it.item = it.item:gsub("private:.+};$","};")
--it.item = it.item:gsub("private:","")
it.item = it.item:gsub("public:","")
@@ -2119,22 +2159,22 @@ function M.Parser()
if derived then
local derived2 = derived:gsub("%b<>","")
derived2 = derived2:gsub("%w+::","")
print("--derived check",stname, derived, derived2)
M.prtable(self.opaque_structs)
print(" --derived check",stname, derived, derived2)
--M.prtable(self.opaque_structs)
if self.opaque_structs[derived2] then
print("--make opaque opaque derived",it.name,derived,derived2)
print(" --make opaque opaque derived",it.name,derived,derived2)
it.opaque_struct = get_parents_name(it)..it.name
self.opaque_structs[it.name] = it.opaque_struct
end
end
if derived and derived:match"std::" then
print("--make opaque std::derived",it.name,derived)
print(" --make opaque std::derived",it.name,derived)
--it.opaque_struct = (itparent and itparent.name .."::" or "")..it.name
it.opaque_struct = get_parents_name(it)..it.name
self.opaque_structs[it.name] = it.opaque_struct
end
if self.forced_opaque[it.name] then
print("--make forced opaque opaque derived",it.name)
print(" --make forced opaque opaque derived",it.name)
it.opaque_struct = get_parents_name(it)..it.name
self.opaque_structs[it.name] = it.opaque_struct
end
@@ -2143,12 +2183,12 @@ function M.Parser()
-- print("=====using",child.item)
-- end
if (child.re_name == "vardef_re") and child.item:match"std::" then
print("--make opaque",it.name,child.item)
print(" --make opaque with child std::",it.name,child.item)
--M.prtable(itparent)
--it.opaque_struct = (itparent and itparent.name .."::" or "")..it.name
it.opaque_struct = get_parents_name(it)..it.name
print("===parents1",get_parents_name(it),"===parents2",(itparent and itparent.name .."::" or ""))
print("===",it.opaque_struct)
print(" ===parents1",get_parents_name(it),"===parents2",(itparent and itparent.name .."::" or ""))
print(" ===",it.opaque_struct)
--cant do that as function is recursive
--self.opaque_structs[it.name] = get_parents_name(it)..it.name--(itparent and itparent.name .."::" or "")..it.name
self.opaque_structs[it.name] = it.opaque_struct
@@ -2176,6 +2216,9 @@ function M.Parser()
return table.concat(txtclean)
end
function par:parseItems()
print"================================================================"
print"===================parseItems==================================="
print"================================================================"
--self:initTypedefsDict()
self.linenumdict = {}
@@ -2198,9 +2241,13 @@ function M.Parser()
local txt = table.concat(cdefs2,"\n")
--string substitution
if self.str_subst then
print("========== str_subst")
local nn
for k,v in pairs(self.str_subst) do
txt = txt:gsub(k,v)
txt,nn = txt:gsub(k,v)
print(k,"done times:",nn)
end
print("========== str_subst end")
end
--clean = default in constructor (implot3d)
txt = txt:gsub("=%s*default","")
@@ -2247,7 +2294,13 @@ function M.Parser()
end
end
end)
if next(self.opaque_structs) then M.prtable("opaque_structs:",self.opaque_structs) end
if next(self.opaque_structs) then
M.prtable("opaque_structs:",self.opaque_structs)
self.opaque_structs_inv = {}
for k,v in pairs(self.opaque_structs) do
self.opaque_structs_inv[v]=k
end
end
end
function par:printItems()
@@ -2545,7 +2598,9 @@ function M.Parser()
end
end
function par:gen_structs_and_enums()
print"======================================================="
print"--------------gen_structs_and_enums"
print"======================================================="
--M.prtable(self.typenames)
local outtab = {}
local outtabpre = {}
@@ -2834,7 +2889,9 @@ function M.Parser()
end
par.enums_for_table = enums_for_table
function par:gen_structs_and_enums_table()
print"--------------gen_structs_and_enums_table"
print"================================================================"
print"===================gen_structs_and_enums_table==================================="
print"================================================================"
local outtab = {enums={},structs={},locations={},enumtypes={},struct_comments={},enum_comments={},opaque_structs={}}
--self.typedefs_table = {}
local enumsordered = {}
@@ -3010,6 +3067,9 @@ function M.Parser()
end
function par:compute_overloads()
print"================================================================"
print"===================compute_overloads==================================="
print"================================================================"
-- if self.IMGUI_HAS_TEXTURES then
-- print"----------replacing ImTextureID with ImTextureUserID"
-- REPLACE_TEXTUREID(self)
@@ -3236,6 +3296,9 @@ function M.Parser()
end
--generate cimgui.cpp cimgui.h
function par:cimgui_generation( cimgui_header)
print"=========================================================="
print"===============cimgui_generation==========================="
print"=========================================================="
local name = self.modulename
local hstrfile = read_data("./"..name.."_template.h")
M.prtable("templates",self.templates)
@@ -3258,7 +3321,16 @@ function M.Parser()
hstrfile = hstrfile:gsub([[#include "auto_funcs%.cpp"]],cimplem)
save_data("./output/"..name..".cpp",cimgui_header,hstrfile)
------------------------test header----------
local COMPILER, CPRE = self.COMPILER
COMPILER = COMPILER=="g++" and "gcc" or COMPILER
if COMPILER=="gcc" then
local include_cmd = COMPILER=="cl" and [[ /I ]] or [[ -I ]]
local extra_includes = include_cmd.." ../../cimgui "
local CPRE = COMPILER..[[ -std=c99 -DCIMGUI_DEFINE_ENUMS_AND_STRUCTS -DIMGUI_ENABLE_FREETYPE ]] ..extra_includes.. "./output/"..name..".h"
print(CPRE)
get_cdefs(CPRE,"name")
end
end
return par
end
@@ -3572,7 +3644,8 @@ local function ImGui_f_implementation(def)
elseif def.nonUDT == 2 then
insert(outtab," return reinterpret_cast<"..def.ret..">("..ptret..namespace..def.funcname..def.call_args..");\n")
elseif def.nonUDT == "string" then
insert(outtab," static std::string str = "..ptret..namespace..def.funcname..def.call_args..";\n")
insert(outtab," static std::string str;\n")
insert(outtab," str.assign("..ptret.."self->"..def.funcname..def.call_args..");\n")
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")
@@ -3616,7 +3689,8 @@ local function struct_f_implementation(def)
elseif def.nonUDT == 2 then
insert(outtab," return reinterpret_cast<"..def.ret..">("..ptret.."self->"..def.funcname..def.call_args..");\n")
elseif def.nonUDT == "string" then
insert(outtab," static std::string str = "..ptret.."self->"..def.funcname..def.call_args..";\n")
insert(outtab," static std::string str;\n")
insert(outtab," str.assign("..ptret.."self->"..def.funcname..def.call_args..");\n")
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")
@@ -3642,8 +3716,7 @@ local function func_implementation(FP)
custom = FP.custom_implementation(outtab, def, FP)
end
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)
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
if def.constructor then
local tab = {}
@@ -3701,7 +3774,7 @@ M.table_do_sorted = table_do_sorted
local function func_header_generate_structs(FP)
local outtab = {}--"\n/////func_header_generate_structs\n"}
M.prtable("embeded_structs",FP.embeded_structs)
table_do_sorted(FP.embeded_structs,function(k,v)
if not FP.typenames[k] then
print("embeded",k,v)
@@ -3720,7 +3793,7 @@ local function func_header_generate_structs(FP)
end)
end
end)
--M.prtable(FP.typenames)
--M.prtable("typenames",FP.typenames)
table_do_sorted(FP.opaque_structs,function(k,v)
if not FP.typenames[k] then
table.insert(outtab,"typedef "..v.." "..k..";\n")
@@ -3749,8 +3822,8 @@ local function func_header_generate_funcs(FP)
custom = FP.custom_header(outtab, def)
end
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
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

View File

@@ -11,6 +11,7 @@
"IMGUI_DEBUG_LOG_NAV(...)": "do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventNav) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0)",
"IMGUI_DEBUG_LOG_POPUP(...)": "do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventPopup) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0)",
"IMGUI_DEBUG_LOG_SELECTION(...)": "do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventSelection) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0)",
"IMGUI_DEBUG_LOG_TABLE(...)": "do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventTable) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0)",
"IMGUI_DEBUG_PRINTF(_FMT,...)": "printf(_FMT, __VA_ARGS__)",
"IMGUI_FONT_SIZE_MAX": "(512.0f)",
"IMGUI_FONT_SIZE_THRESHOLD_FOR_LOADADVANCEXONLYMODE": "(128.0f)",
@@ -19,8 +20,8 @@
"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.8\"",
"IMGUI_VERSION_NUM": "19280",
"IMGUI_VERSION": "\"1.92.9\"",
"IMGUI_VERSION_NUM": "19290",
"IMGUI_WINDOW_HARD_MIN_SIZE": "4.0f",
"IMSTB_TEXTEDIT_CHARTYPE": "char",
"IMSTB_TEXTEDIT_GETWIDTH_NEWLINE": "(-1.0f)",

View File

@@ -11,6 +11,7 @@ local t={
["IMGUI_DEBUG_LOG_NAV(...)"]="do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventNav) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0)",
["IMGUI_DEBUG_LOG_POPUP(...)"]="do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventPopup) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0)",
["IMGUI_DEBUG_LOG_SELECTION(...)"]="do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventSelection) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0)",
["IMGUI_DEBUG_LOG_TABLE(...)"]="do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventTable) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0)",
["IMGUI_DEBUG_PRINTF(_FMT,...)"]="printf(_FMT, __VA_ARGS__)",
IMGUI_FONT_SIZE_MAX="(512.0f)",
IMGUI_FONT_SIZE_THRESHOLD_FOR_LOADADVANCEXONLYMODE="(128.0f)",
@@ -19,8 +20,8 @@ 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.8\"",
IMGUI_VERSION_NUM="19280",
IMGUI_VERSION="\"1.92.9\"",
IMGUI_VERSION_NUM="19290",
IMGUI_WINDOW_HARD_MIN_SIZE="4.0f",
IMSTB_TEXTEDIT_CHARTYPE="char",
IMSTB_TEXTEDIT_GETWIDTH_NEWLINE="(-1.0f)",

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -642,6 +642,23 @@
"stname": ""
}
],
"ImGui_ImplOpenGL3_GetRenderState": [
{
"args": "()",
"argsT": [],
"argsoriginal": "()",
"call_args": "()",
"call_args_old": "()",
"cimguiname": "ImGui_ImplOpenGL3_GetRenderState",
"defaults": {},
"funcname": "ImGui_ImplOpenGL3_GetRenderState",
"location": "imgui_impl_opengl3:79",
"ov_cimguiname": "ImGui_ImplOpenGL3_GetRenderState",
"ret": "ImGui_ImplOpenGL3_RenderState*",
"signature": "()",
"stname": ""
}
],
"ImGui_ImplOpenGL3_Init": [
{
"args": "(const char* glsl_version)",
@@ -1363,7 +1380,7 @@
"cimguiname": "ImGui_ImplVulkanH_CreateOrResizeWindow",
"defaults": {},
"funcname": "ImGui_ImplVulkanH_CreateOrResizeWindow",
"location": "imgui_impl_vulkan:203",
"location": "imgui_impl_vulkan:204",
"ov_cimguiname": "ImGui_ImplVulkanH_CreateOrResizeWindow",
"ret": "void",
"signature": "(VkInstance,VkPhysicalDevice,VkDevice,ImGui_ImplVulkanH_Window*,uint32_t,const VkAllocationCallbacks*,int,int,uint32_t,VkImageUsageFlags)",
@@ -1397,7 +1414,7 @@
"cimguiname": "ImGui_ImplVulkanH_DestroyWindow",
"defaults": {},
"funcname": "ImGui_ImplVulkanH_DestroyWindow",
"location": "imgui_impl_vulkan:204",
"location": "imgui_impl_vulkan:205",
"ov_cimguiname": "ImGui_ImplVulkanH_DestroyWindow",
"ret": "void",
"signature": "(VkInstance,VkDevice,ImGui_ImplVulkanH_Window*,const VkAllocationCallbacks*)",
@@ -1419,7 +1436,7 @@
"cimguiname": "ImGui_ImplVulkanH_GetMinImageCountFromPresentMode",
"defaults": {},
"funcname": "ImGui_ImplVulkanH_GetMinImageCountFromPresentMode",
"location": "imgui_impl_vulkan:209",
"location": "imgui_impl_vulkan:210",
"ov_cimguiname": "ImGui_ImplVulkanH_GetMinImageCountFromPresentMode",
"ret": "int",
"signature": "(VkPresentModeKHR)",
@@ -1441,7 +1458,7 @@
"cimguiname": "ImGui_ImplVulkanH_SelectPhysicalDevice",
"defaults": {},
"funcname": "ImGui_ImplVulkanH_SelectPhysicalDevice",
"location": "imgui_impl_vulkan:207",
"location": "imgui_impl_vulkan:208",
"ov_cimguiname": "ImGui_ImplVulkanH_SelectPhysicalDevice",
"ret": "VkPhysicalDevice",
"signature": "(VkInstance)",
@@ -1475,7 +1492,7 @@
"cimguiname": "ImGui_ImplVulkanH_SelectPresentMode",
"defaults": {},
"funcname": "ImGui_ImplVulkanH_SelectPresentMode",
"location": "imgui_impl_vulkan:206",
"location": "imgui_impl_vulkan:207",
"ov_cimguiname": "ImGui_ImplVulkanH_SelectPresentMode",
"ret": "VkPresentModeKHR",
"signature": "(VkPhysicalDevice,VkSurfaceKHR,const VkPresentModeKHR*,int)",
@@ -1497,7 +1514,7 @@
"cimguiname": "ImGui_ImplVulkanH_SelectQueueFamilyIndex",
"defaults": {},
"funcname": "ImGui_ImplVulkanH_SelectQueueFamilyIndex",
"location": "imgui_impl_vulkan:208",
"location": "imgui_impl_vulkan:209",
"ov_cimguiname": "ImGui_ImplVulkanH_SelectQueueFamilyIndex",
"ret": "uint32_t",
"signature": "(VkPhysicalDevice)",
@@ -1535,7 +1552,7 @@
"cimguiname": "ImGui_ImplVulkanH_SelectSurfaceFormat",
"defaults": {},
"funcname": "ImGui_ImplVulkanH_SelectSurfaceFormat",
"location": "imgui_impl_vulkan:205",
"location": "imgui_impl_vulkan:206",
"ov_cimguiname": "ImGui_ImplVulkanH_SelectSurfaceFormat",
"ret": "VkSurfaceFormatKHR",
"signature": "(VkPhysicalDevice,VkSurfaceKHR,const VkFormat*,int,VkColorSpaceKHR)",
@@ -1553,7 +1570,7 @@
"constructor": true,
"defaults": {},
"funcname": "ImGui_ImplVulkanH_Window",
"location": "imgui_impl_vulkan:255",
"location": "imgui_impl_vulkan:256",
"namespace": "ImGui_ImplVulkanH_Window",
"ov_cimguiname": "ImGui_ImplVulkanH_Window_ImGui_ImplVulkanH_Window",
"signature": "()",
@@ -1573,7 +1590,7 @@
"cimguiname": "ImGui_ImplVulkanH_Window_destroy",
"defaults": {},
"destructor": true,
"location": "imgui_impl_vulkan:255",
"location": "imgui_impl_vulkan:256",
"ov_cimguiname": "ImGui_ImplVulkanH_Window_destroy",
"ret": "void",
"signature": "(ImGui_ImplVulkanH_Window*)",

View File

@@ -558,6 +558,22 @@ local t={
signature="()",
stname=""},
["()"]=nil},
ImGui_ImplOpenGL3_GetRenderState={
[1]={
args="()",
argsT={},
argsoriginal="()",
call_args="()",
call_args_old="()",
cimguiname="ImGui_ImplOpenGL3_GetRenderState",
defaults={},
funcname="ImGui_ImplOpenGL3_GetRenderState",
location="imgui_impl_opengl3:79",
ov_cimguiname="ImGui_ImplOpenGL3_GetRenderState",
ret="ImGui_ImplOpenGL3_RenderState*",
signature="()",
stname=""},
["()"]=nil},
ImGui_ImplOpenGL3_Init={
[1]={
args="(const char* glsl_version)",
@@ -1179,7 +1195,7 @@ local t={
cimguiname="ImGui_ImplVulkanH_CreateOrResizeWindow",
defaults={},
funcname="ImGui_ImplVulkanH_CreateOrResizeWindow",
location="imgui_impl_vulkan:203",
location="imgui_impl_vulkan:204",
ov_cimguiname="ImGui_ImplVulkanH_CreateOrResizeWindow",
ret="void",
signature="(VkInstance,VkPhysicalDevice,VkDevice,ImGui_ImplVulkanH_Window*,uint32_t,const VkAllocationCallbacks*,int,int,uint32_t,VkImageUsageFlags)",
@@ -1207,7 +1223,7 @@ local t={
cimguiname="ImGui_ImplVulkanH_DestroyWindow",
defaults={},
funcname="ImGui_ImplVulkanH_DestroyWindow",
location="imgui_impl_vulkan:204",
location="imgui_impl_vulkan:205",
ov_cimguiname="ImGui_ImplVulkanH_DestroyWindow",
ret="void",
signature="(VkInstance,VkDevice,ImGui_ImplVulkanH_Window*,const VkAllocationCallbacks*)",
@@ -1226,7 +1242,7 @@ local t={
cimguiname="ImGui_ImplVulkanH_GetMinImageCountFromPresentMode",
defaults={},
funcname="ImGui_ImplVulkanH_GetMinImageCountFromPresentMode",
location="imgui_impl_vulkan:209",
location="imgui_impl_vulkan:210",
ov_cimguiname="ImGui_ImplVulkanH_GetMinImageCountFromPresentMode",
ret="int",
signature="(VkPresentModeKHR)",
@@ -1245,7 +1261,7 @@ local t={
cimguiname="ImGui_ImplVulkanH_SelectPhysicalDevice",
defaults={},
funcname="ImGui_ImplVulkanH_SelectPhysicalDevice",
location="imgui_impl_vulkan:207",
location="imgui_impl_vulkan:208",
ov_cimguiname="ImGui_ImplVulkanH_SelectPhysicalDevice",
ret="VkPhysicalDevice",
signature="(VkInstance)",
@@ -1273,7 +1289,7 @@ local t={
cimguiname="ImGui_ImplVulkanH_SelectPresentMode",
defaults={},
funcname="ImGui_ImplVulkanH_SelectPresentMode",
location="imgui_impl_vulkan:206",
location="imgui_impl_vulkan:207",
ov_cimguiname="ImGui_ImplVulkanH_SelectPresentMode",
ret="VkPresentModeKHR",
signature="(VkPhysicalDevice,VkSurfaceKHR,const VkPresentModeKHR*,int)",
@@ -1292,7 +1308,7 @@ local t={
cimguiname="ImGui_ImplVulkanH_SelectQueueFamilyIndex",
defaults={},
funcname="ImGui_ImplVulkanH_SelectQueueFamilyIndex",
location="imgui_impl_vulkan:208",
location="imgui_impl_vulkan:209",
ov_cimguiname="ImGui_ImplVulkanH_SelectQueueFamilyIndex",
ret="uint32_t",
signature="(VkPhysicalDevice)",
@@ -1323,7 +1339,7 @@ local t={
cimguiname="ImGui_ImplVulkanH_SelectSurfaceFormat",
defaults={},
funcname="ImGui_ImplVulkanH_SelectSurfaceFormat",
location="imgui_impl_vulkan:205",
location="imgui_impl_vulkan:206",
ov_cimguiname="ImGui_ImplVulkanH_SelectSurfaceFormat",
ret="VkSurfaceFormatKHR",
signature="(VkPhysicalDevice,VkSurfaceKHR,const VkFormat*,int,VkColorSpaceKHR)",
@@ -1340,7 +1356,7 @@ local t={
constructor=true,
defaults={},
funcname="ImGui_ImplVulkanH_Window",
location="imgui_impl_vulkan:255",
location="imgui_impl_vulkan:256",
namespace="ImGui_ImplVulkanH_Window",
ov_cimguiname="ImGui_ImplVulkanH_Window_ImGui_ImplVulkanH_Window",
signature="()",
@@ -1357,7 +1373,7 @@ local t={
cimguiname="ImGui_ImplVulkanH_Window_destroy",
defaults={},
destructor=true,
location="imgui_impl_vulkan:255",
location="imgui_impl_vulkan:256",
ov_cimguiname="ImGui_ImplVulkanH_Window_destroy",
ret="void",
signature="(ImGui_ImplVulkanH_Window*)",
@@ -1592,6 +1608,7 @@ t.ImGui_ImplOpenGL2_Shutdown["()"]=t.ImGui_ImplOpenGL2_Shutdown[1]
t.ImGui_ImplOpenGL2_UpdateTexture["(ImTextureData*)"]=t.ImGui_ImplOpenGL2_UpdateTexture[1]
t.ImGui_ImplOpenGL3_CreateDeviceObjects["()"]=t.ImGui_ImplOpenGL3_CreateDeviceObjects[1]
t.ImGui_ImplOpenGL3_DestroyDeviceObjects["()"]=t.ImGui_ImplOpenGL3_DestroyDeviceObjects[1]
t.ImGui_ImplOpenGL3_GetRenderState["()"]=t.ImGui_ImplOpenGL3_GetRenderState[1]
t.ImGui_ImplOpenGL3_Init["(const char*)"]=t.ImGui_ImplOpenGL3_Init[1]
t.ImGui_ImplOpenGL3_NewFrame["()"]=t.ImGui_ImplOpenGL3_NewFrame[1]
t.ImGui_ImplOpenGL3_RenderDrawData["(ImDrawData*)"]=t.ImGui_ImplOpenGL3_RenderDrawData[1]

View File

@@ -8,6 +8,9 @@ ImColor_ImColor 5
ImDrawList_AddText 2
1 void ImDrawList_AddText_Vec2 (const ImVec2,ImU32,const char*,const char*)
2 void ImDrawList_AddText_FontPtr (ImFont*,float,const ImVec2,ImU32,const char*,const char*,float,const ImVec4*)
ImGuiPackedDate_ImGuiPackedDate 2
1 nil ImGuiPackedDate_ImGuiPackedDate_Nil ()
2 nil ImGuiPackedDate_ImGuiPackedDate_Int (int)
ImGuiPtrOrIndex_ImGuiPtrOrIndex 2
1 nil ImGuiPtrOrIndex_ImGuiPtrOrIndex_Ptr (void*)
2 nil ImGuiPtrOrIndex_ImGuiPtrOrIndex_Int (int)
@@ -217,8 +220,8 @@ igMenuItem 2
1 bool igMenuItem_Bool (const char*,const char*,bool,bool)
2 bool igMenuItem_BoolPtr (const char*,const char*,bool*,bool)
igOpenPopup 2
1 void igOpenPopup_Str (const char*,ImGuiPopupFlags)
2 void igOpenPopup_ID (ImGuiID,ImGuiPopupFlags)
1 bool igOpenPopup_Str (const char*,ImGuiPopupFlags)
2 bool igOpenPopup_ID (ImGuiID,ImGuiPopupFlags)
igPlotHistogram 2
1 void igPlotHistogram_FloatPtr (const char*,const float*,int,int,const char*,float,float,ImVec2,int)
2 void igPlotHistogram_FnFloatPtr (const char*,float(*)(void*,int),void*,int,int,const char*,float,float,ImVec2)
@@ -309,4 +312,4 @@ igValue 4
2 void igValue_Int (const char*,int)
3 void igValue_Uint (const char*,unsigned int)
4 void igValue_Float (const char*,float,const char*)
216 overloaded
218 overloaded

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -120,6 +120,7 @@
"ImGuiOldColumnFlags": "int",
"ImGuiOldColumns": "struct ImGuiOldColumns",
"ImGuiOnceUponAFrame": "struct ImGuiOnceUponAFrame",
"ImGuiPackedDate": "struct ImGuiPackedDate",
"ImGuiPayload": "struct ImGuiPayload",
"ImGuiPlatformIO": "struct ImGuiPlatformIO",
"ImGuiPlatformImeData": "struct ImGuiPlatformImeData",
@@ -133,6 +134,7 @@
"ImGuiSelectionRequest": "struct ImGuiSelectionRequest",
"ImGuiSelectionUserData": "ImS64",
"ImGuiSeparatorFlags": "int",
"ImGuiSettingsCleanupArgs": "struct ImGuiSettingsCleanupArgs",
"ImGuiSettingsHandler": "struct ImGuiSettingsHandler",
"ImGuiShrinkWidthItem": "struct ImGuiShrinkWidthItem",
"ImGuiSizeCallback": "void (*)(ImGuiSizeCallbackData* data);",
@@ -162,6 +164,7 @@
"ImGuiTableFlags": "int",
"ImGuiTableHeaderData": "struct ImGuiTableHeaderData",
"ImGuiTableInstanceData": "struct ImGuiTableInstanceData",
"ImGuiTableReconcileColumnData": "struct ImGuiTableReconcileColumnData",
"ImGuiTableRowFlags": "int",
"ImGuiTableSettings": "struct ImGuiTableSettings",
"ImGuiTableSortSpecs": "struct ImGuiTableSortSpecs",

View File

@@ -120,6 +120,7 @@ local t={
ImGuiOldColumnFlags="int",
ImGuiOldColumns="struct ImGuiOldColumns",
ImGuiOnceUponAFrame="struct ImGuiOnceUponAFrame",
ImGuiPackedDate="struct ImGuiPackedDate",
ImGuiPayload="struct ImGuiPayload",
ImGuiPlatformIO="struct ImGuiPlatformIO",
ImGuiPlatformImeData="struct ImGuiPlatformImeData",
@@ -133,6 +134,7 @@ local t={
ImGuiSelectionRequest="struct ImGuiSelectionRequest",
ImGuiSelectionUserData="ImS64",
ImGuiSeparatorFlags="int",
ImGuiSettingsCleanupArgs="struct ImGuiSettingsCleanupArgs",
ImGuiSettingsHandler="struct ImGuiSettingsHandler",
ImGuiShrinkWidthItem="struct ImGuiShrinkWidthItem",
ImGuiSizeCallback="void (*)(ImGuiSizeCallbackData* data);",
@@ -162,6 +164,7 @@ local t={
ImGuiTableFlags="int",
ImGuiTableHeaderData="struct ImGuiTableHeaderData",
ImGuiTableInstanceData="struct ImGuiTableInstanceData",
ImGuiTableReconcileColumnData="struct ImGuiTableReconcileColumnData",
ImGuiTableRowFlags="int",
ImGuiTableSettings="struct ImGuiTableSettings",
ImGuiTableSortSpecs="struct ImGuiTableSortSpecs",

2
imgui

Submodule imgui updated: 8936b58fe2...a9e7a8c880