Compare commits

..

13 Commits

Author SHA1 Message Date
sonoro1234
35fdbf393f Merge branch 'docking_inter' 2024-06-07 13:26:08 +02:00
sonoro1234
7c16d31cdb pull imgui docking 1.90.8 and generate 2024-06-07 13:21:00 +02:00
sonoro1234
b3e02743f2 avoid type&name -> type& name 2024-06-07 13:18:13 +02:00
sonoro1234
155d5961dc add definitions to cimgui.h (issue #268) 2024-06-01 12:54:07 +02:00
sonoro1234
bf02a1552e Merge branch 'docking_inter' 2024-05-28 10:18:05 +02:00
sonoro1234
a01f163a81 pull imgui 1.90.7 dock and generate 2024-05-28 10:12:28 +02:00
sonoro1234
481cd32543 Merge branch 'docking_inter' 2024-05-10 17:11:32 +02:00
sonoro1234
67cf8c96b7 pull imgui 1.90.6 and generate 2024-05-10 17:06:30 +02:00
sonoro1234
d222bc5a4e Merge branch 'docking_inter' 2024-04-19 10:54:29 +02:00
sonoro1234
f055d73efc pull imgui 1.90.5 and generate 2024-04-19 10:48:53 +02:00
Victor Bombi
781edadf8d Merge pull request #265 from alfredbaudisch/add-raylib-cimgui
Added raylib-cimgui to the README
2024-04-08 11:40:40 +02:00
Alfred Reinold Baudisch
b6520c67a8 Added raylib-cimgui to the README 2024-04-07 18:07:33 +01:00
sonoro1234
eb0649acf3 pull ImDrawCallback_ResetRenderState to cimgui.h 2024-02-27 09:56:32 +01:00
15 changed files with 5460 additions and 4606 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.90.4 of Dear ImGui with internal api]
* currently this wrapper is based on version [1.90.8 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.
@@ -118,3 +118,4 @@ Notes:
* [sdl2-cimgui-demo](https://github.com/haxpor/sdl2-cimgui-demo)
* [cimgui_c_sdl2_example](https://github.com/canoi12/cimgui_c_sdl2_example/)
* [cimgui-c-example](https://github.com/peko/cimgui-c-example) with GLFW
* [raylib-cimgui](https://github.com/alfredbaudisch/raylib-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.90.4" 19040 from Dear ImGui https://github.com/ocornut/imgui
//based on imgui.h file version "1.90.8" 19080 from Dear ImGui https://github.com/ocornut/imgui
//with imgui_internal.h api
#ifdef IMGUI_ENABLE_FREETYPE
#ifndef CIMGUI_FREETYPE
@@ -1487,6 +1487,14 @@ CIMGUI_API void igSetNextFrameWantCaptureKeyboard(bool want_capture_keyboard)
{
return ImGui::SetNextFrameWantCaptureKeyboard(want_capture_keyboard);
}
CIMGUI_API bool igShortcut_Nil(ImGuiKeyChord key_chord,ImGuiInputFlags flags)
{
return ImGui::Shortcut(key_chord,flags);
}
CIMGUI_API void igSetNextItemShortcut(ImGuiKeyChord key_chord,ImGuiInputFlags flags)
{
return ImGui::SetNextItemShortcut(key_chord,flags);
}
CIMGUI_API bool igIsMouseDown_Nil(ImGuiMouseButton button)
{
return ImGui::IsMouseDown(button);
@@ -2111,13 +2119,13 @@ CIMGUI_API void ImDrawList_AddNgonFilled(ImDrawList* self,const ImVec2 center,fl
{
return self->AddNgonFilled(center,radius,col,num_segments);
}
CIMGUI_API void ImDrawList_AddEllipse(ImDrawList* self,const ImVec2 center,float radius_x,float radius_y,ImU32 col,float rot,int num_segments,float thickness)
CIMGUI_API void ImDrawList_AddEllipse(ImDrawList* self,const ImVec2 center,const ImVec2 radius,ImU32 col,float rot,int num_segments,float thickness)
{
return self->AddEllipse(center,radius_x,radius_y,col,rot,num_segments,thickness);
return self->AddEllipse(center,radius,col,rot,num_segments,thickness);
}
CIMGUI_API void ImDrawList_AddEllipseFilled(ImDrawList* self,const ImVec2 center,float radius_x,float radius_y,ImU32 col,float rot,int num_segments)
CIMGUI_API void ImDrawList_AddEllipseFilled(ImDrawList* self,const ImVec2 center,const ImVec2 radius,ImU32 col,float rot,int num_segments)
{
return self->AddEllipseFilled(center,radius_x,radius_y,col,rot,num_segments);
return self->AddEllipseFilled(center,radius,col,rot,num_segments);
}
CIMGUI_API void ImDrawList_AddText_Vec2(ImDrawList* self,const ImVec2 pos,ImU32 col,const char* text_begin,const char* text_end)
{
@@ -2127,6 +2135,14 @@ CIMGUI_API void ImDrawList_AddText_FontPtr(ImDrawList* self,const ImFont* font,f
{
return self->AddText(font,font_size,pos,col,text_begin,text_end,wrap_width,cpu_fine_clip_rect);
}
CIMGUI_API void ImDrawList_AddBezierCubic(ImDrawList* self,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,const ImVec2 p4,ImU32 col,float thickness,int num_segments)
{
return self->AddBezierCubic(p1,p2,p3,p4,col,thickness,num_segments);
}
CIMGUI_API void ImDrawList_AddBezierQuadratic(ImDrawList* self,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,ImU32 col,float thickness,int num_segments)
{
return self->AddBezierQuadratic(p1,p2,p3,col,thickness,num_segments);
}
CIMGUI_API void ImDrawList_AddPolyline(ImDrawList* self,const ImVec2* points,int num_points,ImU32 col,ImDrawFlags flags,float thickness)
{
return self->AddPolyline(points,num_points,col,flags,thickness);
@@ -2135,13 +2151,9 @@ CIMGUI_API void ImDrawList_AddConvexPolyFilled(ImDrawList* self,const ImVec2* po
{
return self->AddConvexPolyFilled(points,num_points,col);
}
CIMGUI_API void ImDrawList_AddBezierCubic(ImDrawList* self,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,const ImVec2 p4,ImU32 col,float thickness,int num_segments)
CIMGUI_API void ImDrawList_AddConcavePolyFilled(ImDrawList* self,const ImVec2* points,int num_points,ImU32 col)
{
return self->AddBezierCubic(p1,p2,p3,p4,col,thickness,num_segments);
}
CIMGUI_API void ImDrawList_AddBezierQuadratic(ImDrawList* self,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,ImU32 col,float thickness,int num_segments)
{
return self->AddBezierQuadratic(p1,p2,p3,col,thickness,num_segments);
return self->AddConcavePolyFilled(points,num_points,col);
}
CIMGUI_API void ImDrawList_AddImage(ImDrawList* self,ImTextureID user_texture_id,const ImVec2 p_min,const ImVec2 p_max,const ImVec2 uv_min,const ImVec2 uv_max,ImU32 col)
{
@@ -2171,6 +2183,10 @@ CIMGUI_API void ImDrawList_PathFillConvex(ImDrawList* self,ImU32 col)
{
return self->PathFillConvex(col);
}
CIMGUI_API void ImDrawList_PathFillConcave(ImDrawList* self,ImU32 col)
{
return self->PathFillConcave(col);
}
CIMGUI_API void ImDrawList_PathStroke(ImDrawList* self,ImU32 col,ImDrawFlags flags,float thickness)
{
return self->PathStroke(col,flags,thickness);
@@ -2183,9 +2199,9 @@ CIMGUI_API void ImDrawList_PathArcToFast(ImDrawList* self,const ImVec2 center,fl
{
return self->PathArcToFast(center,radius,a_min_of_12,a_max_of_12);
}
CIMGUI_API void ImDrawList_PathEllipticalArcTo(ImDrawList* self,const ImVec2 center,float radius_x,float radius_y,float rot,float a_min,float a_max,int num_segments)
CIMGUI_API void ImDrawList_PathEllipticalArcTo(ImDrawList* self,const ImVec2 center,const ImVec2 radius,float rot,float a_min,float a_max,int num_segments)
{
return self->PathEllipticalArcTo(center,radius_x,radius_y,rot,a_min,a_max,num_segments);
return self->PathEllipticalArcTo(center,radius,rot,a_min,a_max,num_segments);
}
CIMGUI_API void ImDrawList_PathBezierCubicCurveTo(ImDrawList* self,const ImVec2 p2,const ImVec2 p3,const ImVec2 p4,int num_segments)
{
@@ -2595,10 +2611,6 @@ CIMGUI_API void ImGuiPlatformImeData_destroy(ImGuiPlatformImeData* self)
{
IM_DELETE(self);
}
CIMGUI_API ImGuiKey igGetKeyIndex(ImGuiKey key)
{
return ImGui::GetKeyIndex(key);
}
CIMGUI_API ImGuiID igImHashData(const void* data,size_t data_size,ImGuiID seed)
{
return ImHashData(data,data_size,seed);
@@ -2766,6 +2778,10 @@ CIMGUI_API const char* igImTextFindPreviousUtf8Codepoint(const char* in_text_sta
{
return ImTextFindPreviousUtf8Codepoint(in_text_start,in_text_curr);
}
CIMGUI_API int igImTextCountLines(const char* in_text,const char* in_text_end)
{
return ImTextCountLines(in_text,in_text_end);
}
CIMGUI_API ImFileHandle igImFileOpen(const char* filename,const char* mode)
{
return ImFileOpen(filename,mode);
@@ -2842,7 +2858,7 @@ CIMGUI_API void igImMax(ImVec2 *pOut,const ImVec2 lhs,const ImVec2 rhs)
{
*pOut = ImMax(lhs,rhs);
}
CIMGUI_API void igImClamp(ImVec2 *pOut,const ImVec2 v,const ImVec2 mn,ImVec2 mx)
CIMGUI_API void igImClamp(ImVec2 *pOut,const ImVec2 v,const ImVec2 mn,const ImVec2 mx)
{
*pOut = ImClamp(v,mn,mx);
}
@@ -2954,6 +2970,10 @@ CIMGUI_API float igImTriangleArea(const ImVec2 a,const ImVec2 b,const ImVec2 c)
{
return ImTriangleArea(a,b,c);
}
CIMGUI_API bool igImTriangleIsClockwise(const ImVec2 a,const ImVec2 b,const ImVec2 c)
{
return ImTriangleIsClockwise(a,b,c);
}
CIMGUI_API ImVec1* ImVec1_ImVec1_Nil(void)
{
return IM_NEW(ImVec1)();
@@ -3186,6 +3206,10 @@ CIMGUI_API void ImDrawDataBuilder_destroy(ImDrawDataBuilder* self)
{
IM_DELETE(self);
}
CIMGUI_API void* ImGuiDataVarInfo_GetVarPtr(ImGuiDataVarInfo* self,void* parent)
{
return self->GetVarPtr(parent);
}
CIMGUI_API ImGuiStyleMod* ImGuiStyleMod_ImGuiStyleMod_Int(ImGuiStyleVar idx,int v)
{
return IM_NEW(ImGuiStyleMod)(idx,v);
@@ -3374,10 +3398,6 @@ CIMGUI_API ImGuiPtrOrIndex* ImGuiPtrOrIndex_ImGuiPtrOrIndex_Int(int index)
{
return IM_NEW(ImGuiPtrOrIndex)(index);
}
CIMGUI_API void* ImGuiDataVarInfo_GetVarPtr(ImGuiDataVarInfo* self,void* parent)
{
return self->GetVarPtr(parent);
}
CIMGUI_API ImGuiPopupData* ImGuiPopupData_ImGuiPopupData(void)
{
return IM_NEW(ImGuiPopupData)();
@@ -3606,18 +3626,10 @@ CIMGUI_API float ImGuiWindow_CalcFontSize(ImGuiWindow* self)
{
return self->CalcFontSize();
}
CIMGUI_API float ImGuiWindow_TitleBarHeight(ImGuiWindow* self)
{
return self->TitleBarHeight();
}
CIMGUI_API void ImGuiWindow_TitleBarRect(ImRect *pOut,ImGuiWindow* self)
{
*pOut = self->TitleBarRect();
}
CIMGUI_API float ImGuiWindow_MenuBarHeight(ImGuiWindow* self)
{
return self->MenuBarHeight();
}
CIMGUI_API void ImGuiWindow_MenuBarRect(ImRect *pOut,ImGuiWindow* self)
{
*pOut = self->MenuBarRect();
@@ -3710,6 +3722,10 @@ CIMGUI_API void igUpdateWindowParentAndRootLinks(ImGuiWindow* window,ImGuiWindow
{
return ImGui::UpdateWindowParentAndRootLinks(window,flags,parent_window);
}
CIMGUI_API void igUpdateWindowSkipRefresh(ImGuiWindow* window)
{
return ImGui::UpdateWindowSkipRefresh(window);
}
CIMGUI_API void igCalcWindowNextAutoFitSize(ImVec2 *pOut,ImGuiWindow* window)
{
*pOut = ImGui::CalcWindowNextAutoFitSize(window);
@@ -3798,6 +3814,10 @@ CIMGUI_API ImGuiWindow* igFindBottomMostVisibleWindowWithinBeginStack(ImGuiWindo
{
return ImGui::FindBottomMostVisibleWindowWithinBeginStack(window);
}
CIMGUI_API void igSetNextWindowRefreshPolicy(ImGuiWindowRefreshFlags flags)
{
return ImGui::SetNextWindowRefreshPolicy(flags);
}
CIMGUI_API void igSetCurrentFont(ImFont* font)
{
return ImGui::SetCurrentFont(font);
@@ -3838,6 +3858,10 @@ CIMGUI_API void igUpdateHoveredWindowAndCaptureFlags()
{
return ImGui::UpdateHoveredWindowAndCaptureFlags();
}
CIMGUI_API void igFindHoveredWindowEx(const ImVec2 pos,bool find_first_and_in_any_viewport,ImGuiWindow** out_hovered_window,ImGuiWindow** out_hovered_window_under_moving_window)
{
return ImGui::FindHoveredWindowEx(pos,find_first_and_in_any_viewport,out_hovered_window,out_hovered_window_under_moving_window);
}
CIMGUI_API void igStartMouseMovingWindow(ImGuiWindow* window)
{
return ImGui::StartMouseMovingWindow(window);
@@ -4066,6 +4090,14 @@ CIMGUI_API const ImGuiDataVarInfo* igGetStyleVarInfo(ImGuiStyleVar idx)
{
return ImGui::GetStyleVarInfo(idx);
}
CIMGUI_API void igBeginDisabledOverrideReenable()
{
return ImGui::BeginDisabledOverrideReenable();
}
CIMGUI_API void igEndDisabledOverrideReenable()
{
return ImGui::EndDisabledOverrideReenable();
}
CIMGUI_API void igLogBegin(ImGuiLogType type,int auto_open_depth)
{
return ImGui::LogBegin(type,auto_open_depth);
@@ -4246,9 +4278,9 @@ CIMGUI_API bool igIsNamedKey(ImGuiKey key)
{
return ImGui::IsNamedKey(key);
}
CIMGUI_API bool igIsNamedKeyOrModKey(ImGuiKey key)
CIMGUI_API bool igIsNamedKeyOrMod(ImGuiKey key)
{
return ImGui::IsNamedKeyOrModKey(key);
return ImGui::IsNamedKeyOrMod(key);
}
CIMGUI_API bool igIsLegacyKey(ImGuiKey key)
{
@@ -4274,13 +4306,13 @@ CIMGUI_API bool igIsModKey(ImGuiKey key)
{
return ImGui::IsModKey(key);
}
CIMGUI_API ImGuiKeyChord igFixupKeyChord(ImGuiContext* ctx,ImGuiKeyChord key_chord)
CIMGUI_API ImGuiKeyChord igFixupKeyChord(ImGuiKeyChord key_chord)
{
return ImGui::FixupKeyChord(ctx,key_chord);
return ImGui::FixupKeyChord(key_chord);
}
CIMGUI_API ImGuiKey igConvertSingleModFlagToKey(ImGuiContext* ctx,ImGuiKey key)
CIMGUI_API ImGuiKey igConvertSingleModFlagToKey(ImGuiKey key)
{
return ImGui::ConvertSingleModFlagToKey(ctx,key);
return ImGui::ConvertSingleModFlagToKey(key);
}
CIMGUI_API ImGuiKeyData* igGetKeyData_ContextPtr(ImGuiContext* ctx,ImGuiKey key)
{
@@ -4358,21 +4390,25 @@ CIMGUI_API bool igIsKeyDown_ID(ImGuiKey key,ImGuiID owner_id)
{
return ImGui::IsKeyDown(key,owner_id);
}
CIMGUI_API bool igIsKeyPressed_ID(ImGuiKey key,ImGuiID owner_id,ImGuiInputFlags flags)
CIMGUI_API bool igIsKeyPressed_InputFlags(ImGuiKey key,ImGuiInputFlags flags,ImGuiID owner_id)
{
return ImGui::IsKeyPressed(key,owner_id,flags);
return ImGui::IsKeyPressed(key,flags,owner_id);
}
CIMGUI_API bool igIsKeyReleased_ID(ImGuiKey key,ImGuiID owner_id)
{
return ImGui::IsKeyReleased(key,owner_id);
}
CIMGUI_API bool igIsKeyChordPressed_InputFlags(ImGuiKeyChord key_chord,ImGuiInputFlags flags,ImGuiID owner_id)
{
return ImGui::IsKeyChordPressed(key_chord,flags,owner_id);
}
CIMGUI_API bool igIsMouseDown_ID(ImGuiMouseButton button,ImGuiID owner_id)
{
return ImGui::IsMouseDown(button,owner_id);
}
CIMGUI_API bool igIsMouseClicked_ID(ImGuiMouseButton button,ImGuiID owner_id,ImGuiInputFlags flags)
CIMGUI_API bool igIsMouseClicked_InputFlags(ImGuiMouseButton button,ImGuiInputFlags flags,ImGuiID owner_id)
{
return ImGui::IsMouseClicked(button,owner_id,flags);
return ImGui::IsMouseClicked(button,flags,owner_id);
}
CIMGUI_API bool igIsMouseReleased_ID(ImGuiMouseButton button,ImGuiID owner_id)
{
@@ -4382,21 +4418,13 @@ CIMGUI_API bool igIsMouseDoubleClicked_ID(ImGuiMouseButton button,ImGuiID owner_
{
return ImGui::IsMouseDoubleClicked(button,owner_id);
}
CIMGUI_API bool igIsKeyChordPressed_ID(ImGuiKeyChord key_chord,ImGuiID owner_id,ImGuiInputFlags flags)
CIMGUI_API bool igShortcut_ID(ImGuiKeyChord key_chord,ImGuiInputFlags flags,ImGuiID owner_id)
{
return ImGui::IsKeyChordPressed(key_chord,owner_id,flags);
return ImGui::Shortcut(key_chord,flags,owner_id);
}
CIMGUI_API void igSetNextItemShortcut(ImGuiKeyChord key_chord)
CIMGUI_API bool igSetShortcutRouting(ImGuiKeyChord key_chord,ImGuiInputFlags flags,ImGuiID owner_id)
{
return ImGui::SetNextItemShortcut(key_chord);
}
CIMGUI_API bool igShortcut(ImGuiKeyChord key_chord,ImGuiID owner_id,ImGuiInputFlags flags)
{
return ImGui::Shortcut(key_chord,owner_id,flags);
}
CIMGUI_API bool igSetShortcutRouting(ImGuiKeyChord key_chord,ImGuiID owner_id,ImGuiInputFlags flags)
{
return ImGui::SetShortcutRouting(key_chord,owner_id,flags);
return ImGui::SetShortcutRouting(key_chord,flags,owner_id);
}
CIMGUI_API bool igTestShortcutRouting(ImGuiKeyChord key_chord,ImGuiID owner_id)
{
@@ -4530,9 +4558,9 @@ CIMGUI_API void igTablePopBackgroundChannel()
{
return ImGui::TablePopBackgroundChannel();
}
CIMGUI_API void igTableAngledHeadersRowEx(float angle,float max_label_width)
CIMGUI_API void igTableAngledHeadersRowEx(ImGuiID row_id,float angle,float max_label_width,const ImGuiTableHeaderData* data,int data_count)
{
return ImGui::TableAngledHeadersRowEx(angle,max_label_width);
return ImGui::TableAngledHeadersRowEx(row_id,angle,max_label_width,data,data_count);
}
CIMGUI_API ImGuiTable* igGetCurrentTable()
{
@@ -4950,9 +4978,9 @@ CIMGUI_API void igDataTypeApplyOp(ImGuiDataType data_type,int op,void* output,co
{
return ImGui::DataTypeApplyOp(data_type,op,output,arg_1,arg_2);
}
CIMGUI_API bool igDataTypeApplyFromText(const char* buf,ImGuiDataType data_type,void* p_data,const char* format)
CIMGUI_API bool igDataTypeApplyFromText(const char* buf,ImGuiDataType data_type,void* p_data,const char* format,void* p_data_when_empty)
{
return ImGui::DataTypeApplyFromText(buf,data_type,p_data,format);
return ImGui::DataTypeApplyFromText(buf,data_type,p_data,format,p_data_when_empty);
}
CIMGUI_API int igDataTypeCompare(ImGuiDataType data_type,const void* arg_1,const void* arg_2)
{
@@ -4986,6 +5014,10 @@ CIMGUI_API ImGuiInputTextState* igGetInputTextState(ImGuiID id)
{
return ImGui::GetInputTextState(id);
}
CIMGUI_API void igSetNextItemRefVal(ImGuiDataType data_type,void* p_data)
{
return ImGui::SetNextItemRefVal(data_type,p_data);
}
CIMGUI_API void igColorTooltip(const char* text,const float* col,ImGuiColorEditFlags flags)
{
return ImGui::ColorTooltip(text,col,flags);
@@ -5065,6 +5097,10 @@ CIMGUI_API void igDebugDrawItemRect(ImU32 col)
{
return ImGui::DebugDrawItemRect(col);
}
CIMGUI_API void igDebugTextUnformattedWithLocateItem(const char* line_begin,const char* line_end)
{
return ImGui::DebugTextUnformattedWithLocateItem(line_begin,line_end);
}
CIMGUI_API void igDebugLocateItem(ImGuiID target_id)
{
return ImGui::DebugLocateItem(target_id);

303
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.90.4" 19040 from Dear ImGui https://github.com/ocornut/imgui
//based on imgui.h file version "1.90.8" 19080 from Dear ImGui https://github.com/ocornut/imgui
//with imgui_internal.h api
#ifndef CIMGUI_INCLUDED
#define CIMGUI_INCLUDED
@@ -97,6 +97,7 @@ typedef struct ImGuiStyleMod ImGuiStyleMod;
typedef struct ImGuiTabBar ImGuiTabBar;
typedef struct ImGuiTabItem ImGuiTabItem;
typedef struct ImGuiTable ImGuiTable;
typedef struct ImGuiTableHeaderData ImGuiTableHeaderData;
typedef struct ImGuiTableColumn ImGuiTableColumn;
typedef struct ImGuiTableInstanceData ImGuiTableInstanceData;
typedef struct ImGuiTableTempData ImGuiTableTempData;
@@ -107,6 +108,15 @@ typedef struct ImGuiTypingSelectRequest ImGuiTypingSelectRequest;
typedef struct ImGuiWindow ImGuiWindow;
typedef struct ImGuiWindowTempData ImGuiWindowTempData;
typedef struct ImGuiWindowSettings ImGuiWindowSettings;
typedef unsigned int ImGuiID;
typedef signed char ImS8;
typedef unsigned char ImU8;
typedef signed short ImS16;
typedef unsigned short ImU16;
typedef signed int ImS32;
typedef unsigned int ImU32;
typedef signed long long ImS64;
typedef unsigned long long ImU64;
struct ImDrawChannel;
struct ImDrawCmd;
struct ImDrawData;
@@ -140,10 +150,8 @@ struct ImGuiViewport;
typedef int ImGuiCol;
typedef int ImGuiCond;
typedef int ImGuiDataType;
typedef int ImGuiDir;
typedef int ImGuiMouseButton;
typedef int ImGuiMouseCursor;
typedef int ImGuiSortDirection;
typedef int ImGuiStyleVar;
typedef int ImGuiTableBgTarget;
typedef int ImDrawFlags;
@@ -158,6 +166,7 @@ typedef int ImGuiComboFlags;
typedef int ImGuiDragDropFlags;
typedef int ImGuiFocusedFlags;
typedef int ImGuiHoveredFlags;
typedef int ImGuiInputFlags;
typedef int ImGuiInputTextFlags;
typedef int ImGuiKeyChord;
typedef int ImGuiPopupFlags;
@@ -173,15 +182,6 @@ typedef int ImGuiViewportFlags;
typedef int ImGuiWindowFlags;
typedef void* ImTextureID;
typedef unsigned short ImDrawIdx;
typedef unsigned int ImGuiID;
typedef signed char ImS8;
typedef unsigned char ImU8;
typedef signed short ImS16;
typedef unsigned short ImU16;
typedef signed int ImS32;
typedef unsigned int ImU32;
typedef signed long long ImS64;
typedef unsigned long long ImU64;
typedef unsigned int ImWchar32;
typedef unsigned short ImWchar16;
typedef ImWchar16 ImWchar;
@@ -245,25 +245,27 @@ typedef enum {
ImGuiInputTextFlags_None = 0,
ImGuiInputTextFlags_CharsDecimal = 1 << 0,
ImGuiInputTextFlags_CharsHexadecimal = 1 << 1,
ImGuiInputTextFlags_CharsUppercase = 1 << 2,
ImGuiInputTextFlags_CharsNoBlank = 1 << 3,
ImGuiInputTextFlags_AutoSelectAll = 1 << 4,
ImGuiInputTextFlags_EnterReturnsTrue = 1 << 5,
ImGuiInputTextFlags_CallbackCompletion = 1 << 6,
ImGuiInputTextFlags_CallbackHistory = 1 << 7,
ImGuiInputTextFlags_CallbackAlways = 1 << 8,
ImGuiInputTextFlags_CallbackCharFilter = 1 << 9,
ImGuiInputTextFlags_AllowTabInput = 1 << 10,
ImGuiInputTextFlags_CtrlEnterForNewLine = 1 << 11,
ImGuiInputTextFlags_NoHorizontalScroll = 1 << 12,
ImGuiInputTextFlags_AlwaysOverwrite = 1 << 13,
ImGuiInputTextFlags_ReadOnly = 1 << 14,
ImGuiInputTextFlags_Password = 1 << 15,
ImGuiInputTextFlags_CharsScientific = 1 << 2,
ImGuiInputTextFlags_CharsUppercase = 1 << 3,
ImGuiInputTextFlags_CharsNoBlank = 1 << 4,
ImGuiInputTextFlags_AllowTabInput = 1 << 5,
ImGuiInputTextFlags_EnterReturnsTrue = 1 << 6,
ImGuiInputTextFlags_EscapeClearsAll = 1 << 7,
ImGuiInputTextFlags_CtrlEnterForNewLine = 1 << 8,
ImGuiInputTextFlags_ReadOnly = 1 << 9,
ImGuiInputTextFlags_Password = 1 << 10,
ImGuiInputTextFlags_AlwaysOverwrite = 1 << 11,
ImGuiInputTextFlags_AutoSelectAll = 1 << 12,
ImGuiInputTextFlags_ParseEmptyRefVal = 1 << 13,
ImGuiInputTextFlags_DisplayEmptyRefVal = 1 << 14,
ImGuiInputTextFlags_NoHorizontalScroll = 1 << 15,
ImGuiInputTextFlags_NoUndoRedo = 1 << 16,
ImGuiInputTextFlags_CharsScientific = 1 << 17,
ImGuiInputTextFlags_CallbackResize = 1 << 18,
ImGuiInputTextFlags_CallbackEdit = 1 << 19,
ImGuiInputTextFlags_EscapeClearsAll = 1 << 20,
ImGuiInputTextFlags_CallbackCompletion = 1 << 17,
ImGuiInputTextFlags_CallbackHistory = 1 << 18,
ImGuiInputTextFlags_CallbackAlways = 1 << 19,
ImGuiInputTextFlags_CallbackCharFilter = 1 << 20,
ImGuiInputTextFlags_CallbackResize = 1 << 21,
ImGuiInputTextFlags_CallbackEdit = 1 << 22,
}ImGuiInputTextFlags_;
typedef enum {
ImGuiTreeNodeFlags_None = 0,
@@ -280,8 +282,9 @@ typedef enum {
ImGuiTreeNodeFlags_FramePadding = 1 << 10,
ImGuiTreeNodeFlags_SpanAvailWidth = 1 << 11,
ImGuiTreeNodeFlags_SpanFullWidth = 1 << 12,
ImGuiTreeNodeFlags_SpanAllColumns = 1 << 13,
ImGuiTreeNodeFlags_NavLeftJumpsBackHere = 1 << 14,
ImGuiTreeNodeFlags_SpanTextWidth = 1 << 13,
ImGuiTreeNodeFlags_SpanAllColumns = 1 << 14,
ImGuiTreeNodeFlags_NavLeftJumpsBackHere = 1 << 15,
ImGuiTreeNodeFlags_CollapsingHeader = ImGuiTreeNodeFlags_Framed | ImGuiTreeNodeFlags_NoTreePushOnOpen | ImGuiTreeNodeFlags_NoAutoOpenOnLog,
}ImGuiTreeNodeFlags_;
typedef enum {
@@ -400,18 +403,18 @@ typedef enum {
ImGuiDataType_COUNT
}ImGuiDataType_;
typedef enum {
ImGuiDir_None = -1,
ImGuiDir_Left = 0,
ImGuiDir_Right = 1,
ImGuiDir_Up = 2,
ImGuiDir_Down = 3,
ImGuiDir_COUNT
}ImGuiDir_;
ImGuiDir_None=-1,
ImGuiDir_Left=0,
ImGuiDir_Right=1,
ImGuiDir_Up=2,
ImGuiDir_Down=3,
ImGuiDir_COUNT=4,
}ImGuiDir;
typedef enum {
ImGuiSortDirection_None = 0,
ImGuiSortDirection_Ascending = 1,
ImGuiSortDirection_Descending = 2
}ImGuiSortDirection_;
ImGuiSortDirection_None=0,
ImGuiSortDirection_Ascending=1,
ImGuiSortDirection_Descending=2,
}ImGuiSortDirection;
typedef enum {
ImGuiKey_None=0,
ImGuiKey_Tab=512,
@@ -574,14 +577,26 @@ ImGuiMod_Ctrl=1 << 12,
ImGuiMod_Shift=1 << 13,
ImGuiMod_Alt=1 << 14,
ImGuiMod_Super=1 << 15,
ImGuiMod_Shortcut=1 << 11,
ImGuiMod_Mask_=0xF800,
ImGuiMod_Mask_=0xF000,
ImGuiKey_NamedKey_BEGIN=512,
ImGuiKey_NamedKey_END=ImGuiKey_COUNT,
ImGuiKey_NamedKey_COUNT=ImGuiKey_NamedKey_END - ImGuiKey_NamedKey_BEGIN,
ImGuiKey_KeysData_SIZE=ImGuiKey_NamedKey_COUNT,
ImGuiKey_KeysData_OFFSET=ImGuiKey_NamedKey_BEGIN,
}ImGuiKey;
typedef enum {
ImGuiInputFlags_None = 0,
ImGuiInputFlags_Repeat = 1 << 0,
ImGuiInputFlags_RouteActive = 1 << 10,
ImGuiInputFlags_RouteFocused = 1 << 11,
ImGuiInputFlags_RouteGlobal = 1 << 12,
ImGuiInputFlags_RouteAlways = 1 << 13,
ImGuiInputFlags_RouteOverFocused = 1 << 14,
ImGuiInputFlags_RouteOverActive = 1 << 15,
ImGuiInputFlags_RouteUnlessBgFocused = 1 << 16,
ImGuiInputFlags_RouteFromRootWindow = 1 << 17,
ImGuiInputFlags_Tooltip = 1 << 18,
}ImGuiInputFlags_;
typedef enum {
ImGuiConfigFlags_None = 0,
ImGuiConfigFlags_NavEnableKeyboard = 1 << 0,
@@ -680,7 +695,10 @@ typedef enum {
ImGuiStyleVar_GrabMinSize,
ImGuiStyleVar_GrabRounding,
ImGuiStyleVar_TabRounding,
ImGuiStyleVar_TabBorderSize,
ImGuiStyleVar_TabBarBorderSize,
ImGuiStyleVar_TableAngledHeadersAngle,
ImGuiStyleVar_TableAngledHeadersTextAlign,
ImGuiStyleVar_ButtonTextAlign,
ImGuiStyleVar_SelectableTextAlign,
ImGuiStyleVar_SeparatorTextBorderSize,
@@ -694,7 +712,6 @@ typedef enum {
ImGuiButtonFlags_MouseButtonRight = 1 << 1,
ImGuiButtonFlags_MouseButtonMiddle = 1 << 2,
ImGuiButtonFlags_MouseButtonMask_ = ImGuiButtonFlags_MouseButtonLeft | ImGuiButtonFlags_MouseButtonRight | ImGuiButtonFlags_MouseButtonMiddle,
ImGuiButtonFlags_MouseButtonDefault_ = ImGuiButtonFlags_MouseButtonLeft,
}ImGuiButtonFlags_;
typedef enum {
ImGuiColorEditFlags_None = 0,
@@ -857,7 +874,7 @@ struct ImGuiTableColumnSortSpecs
ImGuiID ColumnUserID;
ImS16 ColumnIndex;
ImS16 SortOrder;
ImGuiSortDirection SortDirection : 8;
ImGuiSortDirection SortDirection;
};
struct ImGuiStyle
{
@@ -892,6 +909,7 @@ struct ImGuiStyle
float TabMinWidthForCloseButton;
float TabBarBorderSize;
float TableAngledHeadersAngle;
ImVec2 TableAngledHeadersTextAlign;
ImGuiDir ColorButtonPosition;
ImVec2 ButtonTextAlign;
ImVec2 SelectableTextAlign;
@@ -1003,6 +1021,7 @@ struct ImGuiIO
bool MouseDownOwned[5];
bool MouseDownOwnedUnlessPopupClose[5];
bool MouseWheelRequestAxisSwap;
bool MouseCtrlLeftAsRightClick;
float MouseDownDuration[5];
float MouseDownDurationPrev[5];
float MouseDragMaxDistanceSqr[5];
@@ -1168,12 +1187,12 @@ typedef enum {
}ImDrawListFlags_;
typedef struct ImVector_ImDrawVert {int Size;int Capacity;ImDrawVert* Data;} ImVector_ImDrawVert;
typedef struct ImVector_ImVec2 {int Size;int Capacity;ImVec2* Data;} ImVector_ImVec2;
typedef struct ImVector_ImVec4 {int Size;int Capacity;ImVec4* Data;} ImVector_ImVec4;
typedef struct ImVector_ImTextureID {int Size;int Capacity;ImTextureID* Data;} ImVector_ImTextureID;
typedef struct ImVector_ImVec2 {int Size;int Capacity;ImVec2* Data;} ImVector_ImVec2;
struct ImDrawList
{
ImVector_ImDrawCmd CmdBuffer;
@@ -1182,15 +1201,15 @@ struct ImDrawList
ImDrawListFlags Flags;
unsigned int _VtxCurrentIdx;
ImDrawListSharedData* _Data;
const char* _OwnerName;
ImDrawVert* _VtxWritePtr;
ImDrawIdx* _IdxWritePtr;
ImVector_ImVec4 _ClipRectStack;
ImVector_ImTextureID _TextureIdStack;
ImVector_ImVec2 _Path;
ImDrawCmdHeader _CmdHeader;
ImDrawListSplitter _Splitter;
ImVector_ImVec4 _ClipRectStack;
ImVector_ImTextureID _TextureIdStack;
float _FringeScale;
const char* _OwnerName;
};
typedef struct ImVector_ImDrawListPtr {int Size;int Capacity;ImDrawList** Data;} ImVector_ImDrawListPtr;
@@ -1368,6 +1387,7 @@ struct ImGuiStyleMod;
struct ImGuiTabBar;
struct ImGuiTabItem;
struct ImGuiTable;
struct ImGuiTableHeaderData;
struct ImGuiTableColumn;
struct ImGuiTableInstanceData;
struct ImGuiTableTempData;
@@ -1382,7 +1402,6 @@ typedef int ImGuiLayoutType;
typedef int ImGuiActivateFlags;
typedef int ImGuiDebugLogFlags;
typedef int ImGuiFocusRequestFlags;
typedef int ImGuiInputFlags;
typedef int ImGuiItemFlags;
typedef int ImGuiItemStatusFlags;
typedef int ImGuiOldColumnFlags;
@@ -1395,6 +1414,7 @@ typedef int ImGuiSeparatorFlags;
typedef int ImGuiTextFlags;
typedef int ImGuiTooltipFlags;
typedef int ImGuiTypingSelectFlags;
typedef int ImGuiWindowRefreshFlags;
typedef void (*ImGuiErrorLogCallback)(void* user_data, const char* fmt, ...);
extern ImGuiContext* GImGui;
typedef struct StbUndoRecord StbUndoRecord;
@@ -1487,6 +1507,29 @@ struct ImDrawDataBuilder
ImVector_ImDrawListPtr* Layers[2];
ImVector_ImDrawListPtr LayerData1;
};
struct ImGuiDataVarInfo
{
ImGuiDataType Type;
ImU32 Count;
ImU32 Offset;
};
typedef struct ImGuiDataTypeStorage ImGuiDataTypeStorage;
struct ImGuiDataTypeStorage
{
ImU8 Data[8];
};
struct ImGuiDataTypeInfo
{
size_t Size;
const char* Name;
const char* PrintFmt;
const char* ScanFmt;
};
typedef enum {
ImGuiDataType_String = ImGuiDataType_COUNT + 1,
ImGuiDataType_Pointer,
ImGuiDataType_ID,
}ImGuiDataTypePrivate_;
typedef enum {
ImGuiItemFlags_None = 0,
ImGuiItemFlags_NoTabStop = 1 << 0,
@@ -1514,6 +1557,7 @@ typedef enum {
ImGuiItemStatusFlags_HoveredWindow = 1 << 7,
ImGuiItemStatusFlags_Visible = 1 << 8,
ImGuiItemStatusFlags_HasClipRect = 1 << 9,
ImGuiItemStatusFlags_HasShortcut = 1 << 10,
}ImGuiItemStatusFlags_;
typedef enum {
ImGuiHoveredFlags_DelayMask_ = ImGuiHoveredFlags_DelayNone | ImGuiHoveredFlags_DelayShort | ImGuiHoveredFlags_DelayNormal | ImGuiHoveredFlags_NoSharedDelay,
@@ -1524,6 +1568,7 @@ typedef enum {
ImGuiInputTextFlags_Multiline = 1 << 26,
ImGuiInputTextFlags_NoMarkEdited = 1 << 27,
ImGuiInputTextFlags_MergedItem = 1 << 28,
ImGuiInputTextFlags_LocalizeDecimalPoint= 1 << 29,
}ImGuiInputTextFlagsPrivate_;
typedef enum {
ImGuiButtonFlags_PressedOnClick = 1 << 4,
@@ -1680,6 +1725,12 @@ struct ImGuiInputTextState
int ReloadSelectionStart;
int ReloadSelectionEnd;
};
typedef enum {
ImGuiWindowRefreshFlags_None = 0,
ImGuiWindowRefreshFlags_TryToAvoidRefresh = 1 << 0,
ImGuiWindowRefreshFlags_RefreshOnHover = 1 << 1,
ImGuiWindowRefreshFlags_RefreshOnFocus = 1 << 2,
}ImGuiWindowRefreshFlags_;
typedef enum {
ImGuiNextWindowDataFlags_None = 0,
ImGuiNextWindowDataFlags_HasPos = 1 << 0,
@@ -1691,6 +1742,7 @@ typedef enum {
ImGuiNextWindowDataFlags_HasBgAlpha = 1 << 6,
ImGuiNextWindowDataFlags_HasScroll = 1 << 7,
ImGuiNextWindowDataFlags_HasChildFlags = 1 << 8,
ImGuiNextWindowDataFlags_HasRefreshPolicy = 1 << 9,
}ImGuiNextWindowDataFlags_;
struct ImGuiNextWindowData
{
@@ -1710,6 +1762,7 @@ struct ImGuiNextWindowData
void* SizeCallbackUserData;
float BgAlphaVal;
ImVec2 MenuBarOffsetMinVal;
ImGuiWindowRefreshFlags RefreshFlagsVal;
};
typedef ImS64 ImGuiSelectionUserData;
typedef enum {
@@ -1717,6 +1770,7 @@ typedef enum {
ImGuiNextItemDataFlags_HasWidth = 1 << 0,
ImGuiNextItemDataFlags_HasOpen = 1 << 1,
ImGuiNextItemDataFlags_HasShortcut = 1 << 2,
ImGuiNextItemDataFlags_HasRefVal = 1 << 3,
}ImGuiNextItemDataFlags_;
struct ImGuiNextItemData
{
@@ -1725,8 +1779,10 @@ struct ImGuiNextItemData
ImGuiSelectionUserData SelectionUserData;
float Width;
ImGuiKeyChord Shortcut;
ImGuiInputFlags ShortcutFlags;
bool OpenVal;
ImGuiCond OpenCond : 8;
ImU8 OpenCond;
ImGuiDataTypeStorage RefVal;
};
struct ImGuiLastItemData
{
@@ -1737,6 +1793,7 @@ struct ImGuiLastItemData
ImRect NavRect;
ImRect DisplayRect;
ImRect ClipRect;
ImGuiKeyChord Shortcut;
};
struct ImGuiNavTreeNodeData
{
@@ -1762,6 +1819,7 @@ struct ImGuiWindowStackData
ImGuiWindow* Window;
ImGuiLastItemData ParentLastItemDataBackup;
ImGuiStackSizes StackSizesOnBegin;
bool DisabledOverrideReenable;
};
typedef struct ImGuiShrinkWidthItem ImGuiShrinkWidthItem;
struct ImGuiShrinkWidthItem
@@ -1776,29 +1834,6 @@ struct ImGuiPtrOrIndex
void* Ptr;
int Index;
};
struct ImGuiDataVarInfo
{
ImGuiDataType Type;
ImU32 Count;
ImU32 Offset;
};
typedef struct ImGuiDataTypeTempStorage ImGuiDataTypeTempStorage;
struct ImGuiDataTypeTempStorage
{
ImU8 Data[8];
};
struct ImGuiDataTypeInfo
{
size_t Size;
const char* Name;
const char* PrintFmt;
const char* ScanFmt;
};
typedef enum {
ImGuiDataType_String = ImGuiDataType_COUNT + 1,
ImGuiDataType_Pointer,
ImGuiDataType_ID,
}ImGuiDataTypePrivate_;
typedef enum {
ImGuiPopupPositionPolicy_Default,
ImGuiPopupPositionPolicy_ComboBox,
@@ -1808,7 +1843,7 @@ struct ImGuiPopupData
{
ImGuiID PopupId;
ImGuiWindow* Window;
ImGuiWindow* BackupNavWindow;
ImGuiWindow* RestoreNavWindow;
int ParentNavLayer;
int OpenFrameCount;
ImGuiID OpenParentId;
@@ -1833,7 +1868,6 @@ typedef enum {
ImGuiInputSource_Mouse,
ImGuiInputSource_Keyboard,
ImGuiInputSource_Gamepad,
ImGuiInputSource_Clipboard,
ImGuiInputSource_COUNT
}ImGuiInputSource;
typedef struct ImGuiInputEventMousePos ImGuiInputEventMousePos;
@@ -1906,8 +1940,6 @@ struct ImGuiKeyOwnerData
bool LockUntilRelease;
};
typedef enum {
ImGuiInputFlags_None = 0,
ImGuiInputFlags_Repeat = 1 << 0,
ImGuiInputFlags_RepeatRateDefault = 1 << 1,
ImGuiInputFlags_RepeatRateNavMove = 1 << 2,
ImGuiInputFlags_RepeatRateNavTweak = 1 << 3,
@@ -1915,28 +1947,24 @@ typedef enum {
ImGuiInputFlags_RepeatUntilKeyModsChange = 1 << 5,
ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone = 1 << 6,
ImGuiInputFlags_RepeatUntilOtherKeyPress = 1 << 7,
ImGuiInputFlags_CondHovered = 1 << 8,
ImGuiInputFlags_CondActive = 1 << 9,
ImGuiInputFlags_LockThisFrame = 1 << 20,
ImGuiInputFlags_LockUntilRelease = 1 << 21,
ImGuiInputFlags_CondHovered = 1 << 22,
ImGuiInputFlags_CondActive = 1 << 23,
ImGuiInputFlags_CondDefault_ = ImGuiInputFlags_CondHovered | ImGuiInputFlags_CondActive,
ImGuiInputFlags_LockThisFrame = 1 << 10,
ImGuiInputFlags_LockUntilRelease = 1 << 11,
ImGuiInputFlags_RouteFocused = 1 << 12,
ImGuiInputFlags_RouteGlobalLow = 1 << 13,
ImGuiInputFlags_RouteGlobal = 1 << 14,
ImGuiInputFlags_RouteGlobalHigh = 1 << 15,
ImGuiInputFlags_RouteAlways = 1 << 16,
ImGuiInputFlags_RouteUnlessBgFocused= 1 << 17,
ImGuiInputFlags_RepeatRateMask_ = ImGuiInputFlags_RepeatRateDefault | ImGuiInputFlags_RepeatRateNavMove | ImGuiInputFlags_RepeatRateNavTweak,
ImGuiInputFlags_RepeatUntilMask_ = ImGuiInputFlags_RepeatUntilRelease | ImGuiInputFlags_RepeatUntilKeyModsChange | ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone | ImGuiInputFlags_RepeatUntilOtherKeyPress,
ImGuiInputFlags_RepeatMask_ = ImGuiInputFlags_Repeat | ImGuiInputFlags_RepeatRateMask_ | ImGuiInputFlags_RepeatUntilMask_,
ImGuiInputFlags_CondMask_ = ImGuiInputFlags_CondHovered | ImGuiInputFlags_CondActive,
ImGuiInputFlags_RouteMask_ = ImGuiInputFlags_RouteFocused | ImGuiInputFlags_RouteGlobal | ImGuiInputFlags_RouteGlobalLow | ImGuiInputFlags_RouteGlobalHigh,
ImGuiInputFlags_RouteTypeMask_ = ImGuiInputFlags_RouteActive | ImGuiInputFlags_RouteFocused | ImGuiInputFlags_RouteGlobal | ImGuiInputFlags_RouteAlways,
ImGuiInputFlags_RouteOptionsMask_ = ImGuiInputFlags_RouteOverFocused | ImGuiInputFlags_RouteOverActive | ImGuiInputFlags_RouteUnlessBgFocused | ImGuiInputFlags_RouteFromRootWindow,
ImGuiInputFlags_SupportedByIsKeyPressed = ImGuiInputFlags_RepeatMask_,
ImGuiInputFlags_SupportedByIsMouseClicked = ImGuiInputFlags_Repeat,
ImGuiInputFlags_SupportedByShortcut = ImGuiInputFlags_RepeatMask_ | ImGuiInputFlags_RouteMask_ | ImGuiInputFlags_RouteAlways | ImGuiInputFlags_RouteUnlessBgFocused,
ImGuiInputFlags_SupportedByShortcut = ImGuiInputFlags_RepeatMask_ | ImGuiInputFlags_RouteTypeMask_ | ImGuiInputFlags_RouteOptionsMask_,
ImGuiInputFlags_SupportedBySetNextItemShortcut = ImGuiInputFlags_RepeatMask_ | ImGuiInputFlags_RouteTypeMask_ | ImGuiInputFlags_RouteOptionsMask_ | ImGuiInputFlags_Tooltip,
ImGuiInputFlags_SupportedBySetKeyOwner = ImGuiInputFlags_LockThisFrame | ImGuiInputFlags_LockUntilRelease,
ImGuiInputFlags_SupportedBySetItemKeyOwner = ImGuiInputFlags_SupportedBySetKeyOwner | ImGuiInputFlags_CondMask_,
}ImGuiInputFlags_;
}ImGuiInputFlagsPrivate_;
typedef struct ImGuiListClipperRange ImGuiListClipperRange;
struct ImGuiListClipperRange
{
@@ -2001,6 +2029,7 @@ typedef enum {
ImGuiNavMoveFlags_Activate = 1 << 12,
ImGuiNavMoveFlags_NoSelect = 1 << 13,
ImGuiNavMoveFlags_NoSetNavHighlight = 1 << 14,
ImGuiNavMoveFlags_NoClearActiveId = 1 << 15,
}ImGuiNavMoveFlags_;
typedef enum {
ImGuiNavLayer_Main = 0,
@@ -2014,10 +2043,10 @@ struct ImGuiNavItemData
ImGuiID FocusScopeId;
ImRect RectRel;
ImGuiItemFlags InFlags;
ImGuiSelectionUserData SelectionUserData;
float DistBox;
float DistCenter;
float DistAxial;
ImGuiSelectionUserData SelectionUserData;
};
typedef struct ImGuiFocusScopeData ImGuiFocusScopeData;
struct ImGuiFocusScopeData
@@ -2269,6 +2298,7 @@ struct ImGuiContext
ImFont* Font;
float FontSize;
float FontBaseSize;
float CurrentDpiScale;
ImDrawListSharedData DrawListSharedData;
double Time;
int FrameCount;
@@ -2306,10 +2336,11 @@ struct ImGuiContext
ImGuiID DebugHookIdInfo;
ImGuiID HoveredId;
ImGuiID HoveredIdPreviousFrame;
bool HoveredIdAllowOverlap;
bool HoveredIdDisabled;
float HoveredIdTimer;
float HoveredIdNotActiveTimer;
bool HoveredIdAllowOverlap;
bool HoveredIdDisabled;
bool ItemUnclipByLog;
ImGuiID ActiveId;
ImGuiID ActiveIdIsAlive;
float ActiveIdTimer;
@@ -2360,11 +2391,11 @@ struct ImGuiContext
ImGuiWindow* NavWindow;
ImGuiID NavId;
ImGuiID NavFocusScopeId;
ImVector_ImGuiFocusScopeData NavFocusRoute;
ImGuiID NavActivateId;
ImGuiID NavActivateDownId;
ImGuiID NavActivatePressedId;
ImGuiActivateFlags NavActivateFlags;
ImVector_ImGuiFocusScopeData NavFocusRoute;
ImGuiID NavHighlightActivatedId;
float NavHighlightActivatedTimer;
ImGuiID NavJustMovedToId;
@@ -2457,6 +2488,7 @@ struct ImGuiContext
ImGuiInputTextDeactivatedState InputTextDeactivatedState;
ImFont InputTextPasswordFont;
ImGuiID TempInputId;
ImGuiDataTypeStorage DataTypeZeroValue;
int BeginMenuDepth;
int BeginComboDepth;
ImGuiColorEditFlags ColorEditOptions;
@@ -2469,13 +2501,14 @@ struct ImGuiContext
ImGuiComboPreviewData ComboPreviewData;
ImRect WindowResizeBorderExpectedRect;
bool WindowResizeRelativeMode;
short ScrollbarSeekMode;
float ScrollbarClickDeltaToGrabCenter;
float SliderGrabClickOffset;
float SliderCurrentAccum;
bool SliderCurrentAccumDirty;
bool DragCurrentAccumDirty;
float DragCurrentAccum;
float DragSpeedDefaultRatio;
float ScrollbarClickDeltaToGrabCenter;
float DisabledAlphaBackup;
short DisabledStackSize;
short LockMarkEdited;
@@ -2591,12 +2624,14 @@ struct ImGuiWindow
ImVec2 WindowPadding;
float WindowRounding;
float WindowBorderSize;
float TitleBarHeight, MenuBarHeight;
float DecoOuterSizeX1, DecoOuterSizeY1;
float DecoOuterSizeX2, DecoOuterSizeY2;
float DecoInnerSizeX1, DecoInnerSizeY1;
int NameBufLen;
ImGuiID MoveId;
ImGuiID ChildId;
ImGuiID PopupId;
ImVec2 Scroll;
ImVec2 ScrollMax;
ImVec2 ScrollTarget;
@@ -2610,6 +2645,7 @@ struct ImGuiWindow
bool Collapsed;
bool WantCollapseToggle;
bool SkipItems;
bool SkipRefresh;
bool Appearing;
bool Hidden;
bool IsFallbackWindow;
@@ -2622,7 +2658,6 @@ struct ImGuiWindow
short BeginOrderWithinParent;
short BeginOrderWithinContext;
short FocusOrder;
ImGuiID PopupId;
ImS8 AutoFitFramesX, AutoFitFramesY;
bool AutoFitOnlyGrows;
ImGuiDir AutoPosLastDirection;
@@ -2786,6 +2821,13 @@ struct ImGuiTableCellData
ImU32 BgColor;
ImGuiTableColumnIdx Column;
};
struct ImGuiTableHeaderData
{
ImGuiTableColumnIdx Index;
ImU32 TextColor;
ImU32 BgColor0;
ImU32 BgColor1;
};
struct ImGuiTableInstanceData
{
ImGuiID TableInstanceID;
@@ -2920,11 +2962,14 @@ struct ImGuiTable
bool MemoryCompacted;
bool HostSkipItems;
};
typedef struct ImVector_ImGuiTableHeaderData {int Size;int Capacity;ImGuiTableHeaderData* Data;} ImVector_ImGuiTableHeaderData;
struct ImGuiTableTempData
{
int TableIndex;
float LastTimeActive;
float AngledHeadersExtraWidth;
ImVector_ImGuiTableHeaderData AngledHeadersRequests;
ImVec2 UserOuterSize;
ImDrawListSplitter DrawSplitter;
ImRect HostBackupWorkRect;
@@ -2961,6 +3006,8 @@ struct ImFontBuilderIO
{
bool (*FontBuilder_Build)(ImFontAtlas* atlas);
};
#define ImDrawCallback_ResetRenderState (ImDrawCallback)(-8)
#else
struct GLFWwindow;
struct SDL_Window;
@@ -3012,6 +3059,7 @@ typedef ImVector<ImGuiStoragePair> ImVector_ImGuiStoragePair;
typedef ImVector<ImGuiStyleMod> ImVector_ImGuiStyleMod;
typedef ImVector<ImGuiTabItem> ImVector_ImGuiTabItem;
typedef ImVector<ImGuiTableColumnSortSpecs> ImVector_ImGuiTableColumnSortSpecs;
typedef ImVector<ImGuiTableHeaderData> ImVector_ImGuiTableHeaderData;
typedef ImVector<ImGuiTableInstanceData> ImVector_ImGuiTableInstanceData;
typedef ImVector<ImGuiTableTempData> ImVector_ImGuiTableTempData;
typedef ImVector<ImGuiTextRange> ImVector_ImGuiTextRange;
@@ -3385,6 +3433,8 @@ CIMGUI_API bool igIsKeyChordPressed_Nil(ImGuiKeyChord key_chord);
CIMGUI_API int igGetKeyPressedAmount(ImGuiKey key,float repeat_delay,float rate);
CIMGUI_API const char* igGetKeyName(ImGuiKey key);
CIMGUI_API void igSetNextFrameWantCaptureKeyboard(bool want_capture_keyboard);
CIMGUI_API bool igShortcut_Nil(ImGuiKeyChord key_chord,ImGuiInputFlags flags);
CIMGUI_API void igSetNextItemShortcut(ImGuiKeyChord key_chord,ImGuiInputFlags flags);
CIMGUI_API bool igIsMouseDown_Nil(ImGuiMouseButton button);
CIMGUI_API bool igIsMouseClicked_Bool(ImGuiMouseButton button,bool repeat);
CIMGUI_API bool igIsMouseReleased_Nil(ImGuiMouseButton button);
@@ -3541,14 +3591,15 @@ CIMGUI_API void ImDrawList_AddCircle(ImDrawList* self,const ImVec2 center,float
CIMGUI_API void ImDrawList_AddCircleFilled(ImDrawList* self,const ImVec2 center,float radius,ImU32 col,int num_segments);
CIMGUI_API void ImDrawList_AddNgon(ImDrawList* self,const ImVec2 center,float radius,ImU32 col,int num_segments,float thickness);
CIMGUI_API void ImDrawList_AddNgonFilled(ImDrawList* self,const ImVec2 center,float radius,ImU32 col,int num_segments);
CIMGUI_API void ImDrawList_AddEllipse(ImDrawList* self,const ImVec2 center,float radius_x,float radius_y,ImU32 col,float rot,int num_segments,float thickness);
CIMGUI_API void ImDrawList_AddEllipseFilled(ImDrawList* self,const ImVec2 center,float radius_x,float radius_y,ImU32 col,float rot,int num_segments);
CIMGUI_API void ImDrawList_AddEllipse(ImDrawList* self,const ImVec2 center,const ImVec2 radius,ImU32 col,float rot,int num_segments,float thickness);
CIMGUI_API void ImDrawList_AddEllipseFilled(ImDrawList* self,const ImVec2 center,const ImVec2 radius,ImU32 col,float rot,int num_segments);
CIMGUI_API void ImDrawList_AddText_Vec2(ImDrawList* self,const ImVec2 pos,ImU32 col,const char* text_begin,const char* text_end);
CIMGUI_API void ImDrawList_AddText_FontPtr(ImDrawList* self,const ImFont* font,float font_size,const ImVec2 pos,ImU32 col,const char* text_begin,const char* text_end,float wrap_width,const ImVec4* cpu_fine_clip_rect);
CIMGUI_API void ImDrawList_AddPolyline(ImDrawList* self,const ImVec2* points,int num_points,ImU32 col,ImDrawFlags flags,float thickness);
CIMGUI_API void ImDrawList_AddConvexPolyFilled(ImDrawList* self,const ImVec2* points,int num_points,ImU32 col);
CIMGUI_API void ImDrawList_AddBezierCubic(ImDrawList* self,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,const ImVec2 p4,ImU32 col,float thickness,int num_segments);
CIMGUI_API void ImDrawList_AddBezierQuadratic(ImDrawList* self,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,ImU32 col,float thickness,int num_segments);
CIMGUI_API void ImDrawList_AddPolyline(ImDrawList* self,const ImVec2* points,int num_points,ImU32 col,ImDrawFlags flags,float thickness);
CIMGUI_API void ImDrawList_AddConvexPolyFilled(ImDrawList* self,const ImVec2* points,int num_points,ImU32 col);
CIMGUI_API void ImDrawList_AddConcavePolyFilled(ImDrawList* self,const ImVec2* points,int num_points,ImU32 col);
CIMGUI_API void ImDrawList_AddImage(ImDrawList* self,ImTextureID user_texture_id,const ImVec2 p_min,const ImVec2 p_max,const ImVec2 uv_min,const ImVec2 uv_max,ImU32 col);
CIMGUI_API void ImDrawList_AddImageQuad(ImDrawList* self,ImTextureID user_texture_id,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,const ImVec2 p4,const ImVec2 uv1,const ImVec2 uv2,const ImVec2 uv3,const ImVec2 uv4,ImU32 col);
CIMGUI_API void ImDrawList_AddImageRounded(ImDrawList* self,ImTextureID user_texture_id,const ImVec2 p_min,const ImVec2 p_max,const ImVec2 uv_min,const ImVec2 uv_max,ImU32 col,float rounding,ImDrawFlags flags);
@@ -3556,10 +3607,11 @@ CIMGUI_API void ImDrawList_PathClear(ImDrawList* self);
CIMGUI_API void ImDrawList_PathLineTo(ImDrawList* self,const ImVec2 pos);
CIMGUI_API void ImDrawList_PathLineToMergeDuplicate(ImDrawList* self,const ImVec2 pos);
CIMGUI_API void ImDrawList_PathFillConvex(ImDrawList* self,ImU32 col);
CIMGUI_API void ImDrawList_PathFillConcave(ImDrawList* self,ImU32 col);
CIMGUI_API void ImDrawList_PathStroke(ImDrawList* self,ImU32 col,ImDrawFlags flags,float thickness);
CIMGUI_API void ImDrawList_PathArcTo(ImDrawList* self,const ImVec2 center,float radius,float a_min,float a_max,int num_segments);
CIMGUI_API void ImDrawList_PathArcToFast(ImDrawList* self,const ImVec2 center,float radius,int a_min_of_12,int a_max_of_12);
CIMGUI_API void ImDrawList_PathEllipticalArcTo(ImDrawList* self,const ImVec2 center,float radius_x,float radius_y,float rot,float a_min,float a_max,int num_segments);
CIMGUI_API void ImDrawList_PathEllipticalArcTo(ImDrawList* self,const ImVec2 center,const ImVec2 radius,float rot,float a_min,float a_max,int num_segments);
CIMGUI_API void ImDrawList_PathBezierCubicCurveTo(ImDrawList* self,const ImVec2 p2,const ImVec2 p3,const ImVec2 p4,int num_segments);
CIMGUI_API void ImDrawList_PathBezierQuadraticCurveTo(ImDrawList* self,const ImVec2 p2,const ImVec2 p3,int num_segments);
CIMGUI_API void ImDrawList_PathRect(ImDrawList* self,const ImVec2 rect_min,const ImVec2 rect_max,float rounding,ImDrawFlags flags);
@@ -3662,7 +3714,6 @@ CIMGUI_API void ImGuiViewport_GetCenter(ImVec2 *pOut,ImGuiViewport* self);
CIMGUI_API void ImGuiViewport_GetWorkCenter(ImVec2 *pOut,ImGuiViewport* self);
CIMGUI_API ImGuiPlatformImeData* ImGuiPlatformImeData_ImGuiPlatformImeData(void);
CIMGUI_API void ImGuiPlatformImeData_destroy(ImGuiPlatformImeData* self);
CIMGUI_API ImGuiKey igGetKeyIndex(ImGuiKey key);
CIMGUI_API ImGuiID igImHashData(const void* data,size_t data_size,ImGuiID seed);
CIMGUI_API ImGuiID igImHashStr(const char* data,size_t data_size,ImGuiID seed);
CIMGUI_API void igImQsort(void* base,size_t count,size_t size_of_element,int(*compare_func)(void const*,void const*));
@@ -3703,6 +3754,7 @@ CIMGUI_API int igImTextCountCharsFromUtf8(const char* in_text,const char* in_tex
CIMGUI_API int igImTextCountUtf8BytesFromChar(const char* in_text,const char* in_text_end);
CIMGUI_API int igImTextCountUtf8BytesFromStr(const ImWchar* in_text,const ImWchar* in_text_end);
CIMGUI_API const char* igImTextFindPreviousUtf8Codepoint(const char* in_text_start,const char* in_text_curr);
CIMGUI_API int igImTextCountLines(const char* in_text,const char* in_text_end);
CIMGUI_API ImFileHandle igImFileOpen(const char* filename,const char* mode);
CIMGUI_API bool igImFileClose(ImFileHandle file);
CIMGUI_API ImU64 igImFileGetSize(ImFileHandle file);
@@ -3722,7 +3774,7 @@ CIMGUI_API float igImRsqrt_Float(float x);
CIMGUI_API double igImRsqrt_double(double x);
CIMGUI_API void igImMin(ImVec2 *pOut,const ImVec2 lhs,const ImVec2 rhs);
CIMGUI_API void igImMax(ImVec2 *pOut,const ImVec2 lhs,const ImVec2 rhs);
CIMGUI_API void igImClamp(ImVec2 *pOut,const ImVec2 v,const ImVec2 mn,ImVec2 mx);
CIMGUI_API void igImClamp(ImVec2 *pOut,const ImVec2 v,const ImVec2 mn,const ImVec2 mx);
CIMGUI_API void igImLerp_Vec2Float(ImVec2 *pOut,const ImVec2 a,const ImVec2 b,float t);
CIMGUI_API void igImLerp_Vec2Vec2(ImVec2 *pOut,const ImVec2 a,const ImVec2 b,const ImVec2 t);
CIMGUI_API void igImLerp_Vec4(ImVec4 *pOut,const ImVec4 a,const ImVec4 b,float t);
@@ -3750,6 +3802,7 @@ CIMGUI_API bool igImTriangleContainsPoint(const ImVec2 a,const ImVec2 b,const Im
CIMGUI_API void igImTriangleClosestPoint(ImVec2 *pOut,const ImVec2 a,const ImVec2 b,const ImVec2 c,const ImVec2 p);
CIMGUI_API void igImTriangleBarycentricCoords(const ImVec2 a,const ImVec2 b,const ImVec2 c,const ImVec2 p,float* out_u,float* out_v,float* out_w);
CIMGUI_API float igImTriangleArea(const ImVec2 a,const ImVec2 b,const ImVec2 c);
CIMGUI_API bool igImTriangleIsClockwise(const ImVec2 a,const ImVec2 b,const ImVec2 c);
CIMGUI_API ImVec1* ImVec1_ImVec1_Nil(void);
CIMGUI_API void ImVec1_destroy(ImVec1* self);
CIMGUI_API ImVec1* ImVec1_ImVec1_Float(float _x);
@@ -3808,6 +3861,7 @@ CIMGUI_API void ImDrawListSharedData_destroy(ImDrawListSharedData* self);
CIMGUI_API void ImDrawListSharedData_SetCircleTessellationMaxError(ImDrawListSharedData* self,float max_error);
CIMGUI_API ImDrawDataBuilder* ImDrawDataBuilder_ImDrawDataBuilder(void);
CIMGUI_API void ImDrawDataBuilder_destroy(ImDrawDataBuilder* self);
CIMGUI_API void* ImGuiDataVarInfo_GetVarPtr(ImGuiDataVarInfo* self,void* parent);
CIMGUI_API ImGuiStyleMod* ImGuiStyleMod_ImGuiStyleMod_Int(ImGuiStyleVar idx,int v);
CIMGUI_API void ImGuiStyleMod_destroy(ImGuiStyleMod* self);
CIMGUI_API ImGuiStyleMod* ImGuiStyleMod_ImGuiStyleMod_Float(ImGuiStyleVar idx,float v);
@@ -3855,7 +3909,6 @@ CIMGUI_API void ImGuiStackSizes_CompareWithContextState(ImGuiStackSizes* self,Im
CIMGUI_API ImGuiPtrOrIndex* ImGuiPtrOrIndex_ImGuiPtrOrIndex_Ptr(void* ptr);
CIMGUI_API void ImGuiPtrOrIndex_destroy(ImGuiPtrOrIndex* self);
CIMGUI_API ImGuiPtrOrIndex* ImGuiPtrOrIndex_ImGuiPtrOrIndex_Int(int index);
CIMGUI_API void* ImGuiDataVarInfo_GetVarPtr(ImGuiDataVarInfo* self,void* parent);
CIMGUI_API ImGuiPopupData* ImGuiPopupData_ImGuiPopupData(void);
CIMGUI_API void ImGuiPopupData_destroy(ImGuiPopupData* self);
CIMGUI_API ImGuiInputEvent* ImGuiInputEvent_ImGuiInputEvent(void);
@@ -3913,9 +3966,7 @@ CIMGUI_API ImGuiID ImGuiWindow_GetID_Int(ImGuiWindow* self,int n);
CIMGUI_API ImGuiID ImGuiWindow_GetIDFromRectangle(ImGuiWindow* self,const ImRect r_abs);
CIMGUI_API void ImGuiWindow_Rect(ImRect *pOut,ImGuiWindow* self);
CIMGUI_API float ImGuiWindow_CalcFontSize(ImGuiWindow* self);
CIMGUI_API float ImGuiWindow_TitleBarHeight(ImGuiWindow* self);
CIMGUI_API void ImGuiWindow_TitleBarRect(ImRect *pOut,ImGuiWindow* self);
CIMGUI_API float ImGuiWindow_MenuBarHeight(ImGuiWindow* self);
CIMGUI_API void ImGuiWindow_MenuBarRect(ImRect *pOut,ImGuiWindow* self);
CIMGUI_API ImGuiTabItem* ImGuiTabItem_ImGuiTabItem(void);
CIMGUI_API void ImGuiTabItem_destroy(ImGuiTabItem* self);
@@ -3939,6 +3990,7 @@ CIMGUI_API ImGuiWindow* igGetCurrentWindow(void);
CIMGUI_API ImGuiWindow* igFindWindowByID(ImGuiID id);
CIMGUI_API ImGuiWindow* igFindWindowByName(const char* name);
CIMGUI_API void igUpdateWindowParentAndRootLinks(ImGuiWindow* window,ImGuiWindowFlags flags,ImGuiWindow* parent_window);
CIMGUI_API void igUpdateWindowSkipRefresh(ImGuiWindow* window);
CIMGUI_API void igCalcWindowNextAutoFitSize(ImVec2 *pOut,ImGuiWindow* window);
CIMGUI_API bool igIsWindowChildOf(ImGuiWindow* window,ImGuiWindow* potential_parent,bool popup_hierarchy);
CIMGUI_API bool igIsWindowWithinBeginStackOf(ImGuiWindow* window,ImGuiWindow* potential_parent);
@@ -3961,6 +4013,7 @@ CIMGUI_API void igBringWindowToDisplayBack(ImGuiWindow* window);
CIMGUI_API void igBringWindowToDisplayBehind(ImGuiWindow* window,ImGuiWindow* above_window);
CIMGUI_API int igFindWindowDisplayIndex(ImGuiWindow* window);
CIMGUI_API ImGuiWindow* igFindBottomMostVisibleWindowWithinBeginStack(ImGuiWindow* window);
CIMGUI_API void igSetNextWindowRefreshPolicy(ImGuiWindowRefreshFlags flags);
CIMGUI_API void igSetCurrentFont(ImFont* font);
CIMGUI_API ImFont* igGetDefaultFont(void);
CIMGUI_API ImDrawList* igGetForegroundDrawList_WindowPtr(ImGuiWindow* window);
@@ -3971,6 +4024,7 @@ CIMGUI_API void igInitialize(void);
CIMGUI_API void igShutdown(void);
CIMGUI_API void igUpdateInputEvents(bool trickle_fast_inputs);
CIMGUI_API void igUpdateHoveredWindowAndCaptureFlags(void);
CIMGUI_API void igFindHoveredWindowEx(const ImVec2 pos,bool find_first_and_in_any_viewport,ImGuiWindow** out_hovered_window,ImGuiWindow** out_hovered_window_under_moving_window);
CIMGUI_API void igStartMouseMovingWindow(ImGuiWindow* window);
CIMGUI_API void igUpdateMouseMovingWindowNewFrame(void);
CIMGUI_API void igUpdateMouseMovingWindowEndFrame(void);
@@ -4028,6 +4082,8 @@ CIMGUI_API void igShrinkWidths(ImGuiShrinkWidthItem* items,int count,float width
CIMGUI_API void igPushItemFlag(ImGuiItemFlags option,bool enabled);
CIMGUI_API void igPopItemFlag(void);
CIMGUI_API const ImGuiDataVarInfo* igGetStyleVarInfo(ImGuiStyleVar idx);
CIMGUI_API void igBeginDisabledOverrideReenable(void);
CIMGUI_API void igEndDisabledOverrideReenable(void);
CIMGUI_API void igLogBegin(ImGuiLogType type,int auto_open_depth);
CIMGUI_API void igLogToBuffer(int auto_open_depth);
CIMGUI_API void igLogRenderedText(const ImVec2* ref_pos,const char* text,const char* text_end);
@@ -4073,15 +4129,15 @@ CIMGUI_API void igSetNavFocusScope(ImGuiID focus_scope_id);
CIMGUI_API void igFocusItem(void);
CIMGUI_API void igActivateItemByID(ImGuiID id);
CIMGUI_API bool igIsNamedKey(ImGuiKey key);
CIMGUI_API bool igIsNamedKeyOrModKey(ImGuiKey key);
CIMGUI_API bool igIsNamedKeyOrMod(ImGuiKey key);
CIMGUI_API bool igIsLegacyKey(ImGuiKey key);
CIMGUI_API bool igIsKeyboardKey(ImGuiKey key);
CIMGUI_API bool igIsGamepadKey(ImGuiKey key);
CIMGUI_API bool igIsMouseKey(ImGuiKey key);
CIMGUI_API bool igIsAliasKey(ImGuiKey key);
CIMGUI_API bool igIsModKey(ImGuiKey key);
CIMGUI_API ImGuiKeyChord igFixupKeyChord(ImGuiContext* ctx,ImGuiKeyChord key_chord);
CIMGUI_API ImGuiKey igConvertSingleModFlagToKey(ImGuiContext* ctx,ImGuiKey key);
CIMGUI_API ImGuiKeyChord igFixupKeyChord(ImGuiKeyChord key_chord);
CIMGUI_API ImGuiKey igConvertSingleModFlagToKey(ImGuiKey key);
CIMGUI_API ImGuiKeyData* igGetKeyData_ContextPtr(ImGuiContext* ctx,ImGuiKey key);
CIMGUI_API ImGuiKeyData* igGetKeyData_Key(ImGuiKey key);
CIMGUI_API const char* igGetKeyChordName(ImGuiKeyChord key_chord);
@@ -4101,16 +4157,15 @@ CIMGUI_API void igSetItemKeyOwner(ImGuiKey key,ImGuiInputFlags flags);
CIMGUI_API bool igTestKeyOwner(ImGuiKey key,ImGuiID owner_id);
CIMGUI_API ImGuiKeyOwnerData* igGetKeyOwnerData(ImGuiContext* ctx,ImGuiKey key);
CIMGUI_API bool igIsKeyDown_ID(ImGuiKey key,ImGuiID owner_id);
CIMGUI_API bool igIsKeyPressed_ID(ImGuiKey key,ImGuiID owner_id,ImGuiInputFlags flags);
CIMGUI_API bool igIsKeyPressed_InputFlags(ImGuiKey key,ImGuiInputFlags flags,ImGuiID owner_id);
CIMGUI_API bool igIsKeyReleased_ID(ImGuiKey key,ImGuiID owner_id);
CIMGUI_API bool igIsKeyChordPressed_InputFlags(ImGuiKeyChord key_chord,ImGuiInputFlags flags,ImGuiID owner_id);
CIMGUI_API bool igIsMouseDown_ID(ImGuiMouseButton button,ImGuiID owner_id);
CIMGUI_API bool igIsMouseClicked_ID(ImGuiMouseButton button,ImGuiID owner_id,ImGuiInputFlags flags);
CIMGUI_API bool igIsMouseClicked_InputFlags(ImGuiMouseButton button,ImGuiInputFlags flags,ImGuiID owner_id);
CIMGUI_API bool igIsMouseReleased_ID(ImGuiMouseButton button,ImGuiID owner_id);
CIMGUI_API bool igIsMouseDoubleClicked_ID(ImGuiMouseButton button,ImGuiID owner_id);
CIMGUI_API bool igIsKeyChordPressed_ID(ImGuiKeyChord key_chord,ImGuiID owner_id,ImGuiInputFlags flags);
CIMGUI_API void igSetNextItemShortcut(ImGuiKeyChord key_chord);
CIMGUI_API bool igShortcut(ImGuiKeyChord key_chord,ImGuiID owner_id,ImGuiInputFlags flags);
CIMGUI_API bool igSetShortcutRouting(ImGuiKeyChord key_chord,ImGuiID owner_id,ImGuiInputFlags flags);
CIMGUI_API bool igShortcut_ID(ImGuiKeyChord key_chord,ImGuiInputFlags flags,ImGuiID owner_id);
CIMGUI_API bool igSetShortcutRouting(ImGuiKeyChord key_chord,ImGuiInputFlags flags,ImGuiID owner_id);
CIMGUI_API bool igTestShortcutRouting(ImGuiKeyChord key_chord,ImGuiID owner_id);
CIMGUI_API ImGuiKeyRoutingData* igGetShortcutRoutingData(ImGuiKeyChord key_chord);
CIMGUI_API void igPushFocusScope(ImGuiID id);
@@ -4144,7 +4199,7 @@ CIMGUI_API float igTableGetHeaderRowHeight(void);
CIMGUI_API float igTableGetHeaderAngledMaxLabelWidth(void);
CIMGUI_API void igTablePushBackgroundChannel(void);
CIMGUI_API void igTablePopBackgroundChannel(void);
CIMGUI_API void igTableAngledHeadersRowEx(float angle,float max_label_width);
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 outer_size,float inner_width);
@@ -4249,7 +4304,7 @@ CIMGUI_API void igSetNextItemSelectionUserData(ImGuiSelectionUserData selection_
CIMGUI_API const ImGuiDataTypeInfo* igDataTypeGetInfo(ImGuiDataType data_type);
CIMGUI_API int igDataTypeFormatString(char* buf,int buf_size,ImGuiDataType data_type,const void* p_data,const char* format);
CIMGUI_API void igDataTypeApplyOp(ImGuiDataType data_type,int op,void* output,const void* arg_1,const void* arg_2);
CIMGUI_API bool igDataTypeApplyFromText(const char* buf,ImGuiDataType data_type,void* p_data,const char* format);
CIMGUI_API bool igDataTypeApplyFromText(const char* buf,ImGuiDataType data_type,void* p_data,const char* format,void* p_data_when_empty);
CIMGUI_API int igDataTypeCompare(ImGuiDataType data_type,const void* arg_1,const void* arg_2);
CIMGUI_API bool igDataTypeClamp(ImGuiDataType data_type,void* p_data,const void* p_min,const void* p_max);
CIMGUI_API bool igInputTextEx(const char* label,const char* hint,char* buf,int buf_size,const ImVec2 size_arg,ImGuiInputTextFlags flags,ImGuiInputTextCallback callback,void* user_data);
@@ -4258,6 +4313,7 @@ CIMGUI_API bool igTempInputText(const ImRect bb,ImGuiID id,const char* label,cha
CIMGUI_API bool igTempInputScalar(const ImRect bb,ImGuiID id,const char* label,ImGuiDataType data_type,void* p_data,const char* format,const void* p_clamp_min,const void* p_clamp_max);
CIMGUI_API bool igTempInputIsActive(ImGuiID id);
CIMGUI_API ImGuiInputTextState* igGetInputTextState(ImGuiID id);
CIMGUI_API void igSetNextItemRefVal(ImGuiDataType data_type,void* p_data);
CIMGUI_API void igColorTooltip(const char* text,const float* col,ImGuiColorEditFlags flags);
CIMGUI_API void igColorEditOptionsPopup(const float* col,ImGuiColorEditFlags flags);
CIMGUI_API void igColorPickerOptionsPopup(const float* ref_col,ImGuiColorEditFlags flags);
@@ -4277,6 +4333,7 @@ CIMGUI_API void igErrorCheckUsingSetCursorPosToExtendParentBoundaries(void);
CIMGUI_API void igDebugDrawCursorPos(ImU32 col);
CIMGUI_API void igDebugDrawLineExtents(ImU32 col);
CIMGUI_API void igDebugDrawItemRect(ImU32 col);
CIMGUI_API void igDebugTextUnformattedWithLocateItem(const char* line_begin,const char* line_end);
CIMGUI_API void igDebugLocateItem(ImGuiID target_id);
CIMGUI_API void igDebugLocateItemOnHover(ImGuiID target_id);
CIMGUI_API void igDebugLocateItemResolveWithLastItem(void);
@@ -4331,6 +4388,10 @@ CIMGUI_API void ImVector_ImWchar_destroy(ImVector_ImWchar* self);
CIMGUI_API void ImVector_ImWchar_Init(ImVector_ImWchar* p);
CIMGUI_API void ImVector_ImWchar_UnInit(ImVector_ImWchar* p);
#ifdef IMGUI_HAS_DOCK
CIMGUI_API void ImGuiPlatformIO_Set_Platform_GetWindowPos(ImGuiPlatformIO* platform_io, void(*user_callback)(ImGuiViewport* vp, ImVec2* out_pos));
CIMGUI_API void ImGuiPlatformIO_Set_Platform_GetWindowSize(ImGuiPlatformIO* platform_io, void(*user_callback)(ImGuiViewport* vp, ImVec2* out_size));
#endif
#endif //CIMGUI_INCLUDED

View File

@@ -61,6 +61,10 @@ CIMGUI_API void ImVector_ImWchar_destroy(ImVector_ImWchar* self);
CIMGUI_API void ImVector_ImWchar_Init(ImVector_ImWchar* p);
CIMGUI_API void ImVector_ImWchar_UnInit(ImVector_ImWchar* p);
#ifdef IMGUI_HAS_DOCK
CIMGUI_API void ImGuiPlatformIO_Set_Platform_GetWindowPos(ImGuiPlatformIO* platform_io, void(*user_callback)(ImGuiViewport* vp, ImVec2* out_pos));
CIMGUI_API void ImGuiPlatformIO_Set_Platform_GetWindowSize(ImGuiPlatformIO* platform_io, void(*user_callback)(ImGuiViewport* vp, ImVec2* out_size));
#endif
#endif //CIMGUI_INCLUDED

View File

@@ -751,6 +751,8 @@ local function parseFunction(self,stname,itt,namespace,locat)
local argsTa2 = {}
local noname_counter = 0
for i,ar in ipairs(argsTa) do
--avoid var name without space type&name -> type& name
ar = ar:gsub("&(%S)","& %1")
local typ,name,retf,sigf,reftoptr,defa,ar1
local has_cdecl = ar:match"__cdecl"
if has_cdecl then ar = ar:gsub("__cdecl","") end

View File

@@ -250,6 +250,9 @@ local function cimgui_generation(parser)
if gdefines.IMGUI_HAS_DOCK then
cstructsstr = cstructsstr.."\n#define IMGUI_HAS_DOCK 1\n"
end
if gdefines.ImDrawCallback_ResetRenderState then
cstructsstr = cstructsstr.."\n#define ImDrawCallback_ResetRenderState "..gdefines.ImDrawCallback_ResetRenderState.."\n"
end
if gdefines.IMGUI_HAS_IMSTR then
if not (NOCHAR or NOIMSTRV) then
cstructsstr = cstructsstr.."\n#define IMGUI_HAS_IMSTR 1\n"
@@ -276,8 +279,8 @@ end
--------------------------------------------------------
--get imgui.h version and IMGUI_HAS_DOCK--------------------------
--defines for the cl compiler must be present in the print_defines.cpp file
gdefines = get_defines{"IMGUI_VERSION","IMGUI_VERSION_NUM","FLT_MAX","FLT_MIN","IMGUI_HAS_DOCK","IMGUI_HAS_IMSTR"}
gdefines = get_defines{"IMGUI_VERSION","IMGUI_VERSION_NUM","FLT_MAX","FLT_MIN","IMGUI_HAS_DOCK","IMGUI_HAS_IMSTR","ImDrawCallback_ResetRenderState"}
--cpp2ffi.prtable(gdefines)
if gdefines.IMGUI_HAS_DOCK then gdefines.IMGUI_HAS_DOCK = true end
if gdefines.IMGUI_HAS_IMSTR then gdefines.IMGUI_HAS_IMSTR = true end

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -163,19 +163,19 @@ igImTrunc 2
2 ImVec2 igImTrunc_Vec2 (const ImVec2)
igIsKeyChordPressed 2
1 bool igIsKeyChordPressed_Nil (ImGuiKeyChord)
2 bool igIsKeyChordPressed_ID (ImGuiKeyChord,ImGuiID,ImGuiInputFlags)
2 bool igIsKeyChordPressed_InputFlags (ImGuiKeyChord,ImGuiInputFlags,ImGuiID)
igIsKeyDown 2
1 bool igIsKeyDown_Nil (ImGuiKey)
2 bool igIsKeyDown_ID (ImGuiKey,ImGuiID)
igIsKeyPressed 2
1 bool igIsKeyPressed_Bool (ImGuiKey,bool)
2 bool igIsKeyPressed_ID (ImGuiKey,ImGuiID,ImGuiInputFlags)
2 bool igIsKeyPressed_InputFlags (ImGuiKey,ImGuiInputFlags,ImGuiID)
igIsKeyReleased 2
1 bool igIsKeyReleased_Nil (ImGuiKey)
2 bool igIsKeyReleased_ID (ImGuiKey,ImGuiID)
igIsMouseClicked 2
1 bool igIsMouseClicked_Bool (ImGuiMouseButton,bool)
2 bool igIsMouseClicked_ID (ImGuiMouseButton,ImGuiID,ImGuiInputFlags)
2 bool igIsMouseClicked_InputFlags (ImGuiMouseButton,ImGuiInputFlags,ImGuiID)
igIsMouseDoubleClicked 2
1 bool igIsMouseDoubleClicked_Nil (ImGuiMouseButton)
2 bool igIsMouseDoubleClicked_ID (ImGuiMouseButton,ImGuiID)
@@ -256,6 +256,9 @@ igSetWindowSize 3
1 void igSetWindowSize_Vec2 (const ImVec2,ImGuiCond)
2 void igSetWindowSize_Str (const char*,const ImVec2,ImGuiCond)
3 void igSetWindowSize_WindowPtr (ImGuiWindow*,const ImVec2,ImGuiCond)
igShortcut 2
1 bool igShortcut_Nil (ImGuiKeyChord,ImGuiInputFlags)
2 bool igShortcut_ID (ImGuiKeyChord,ImGuiInputFlags,ImGuiID)
igTabItemCalcSize 2
1 ImVec2 igTabItemCalcSize_Str (const char*,bool)
2 ImVec2 igTabItemCalcSize_WindowPtr (ImGuiWindow*)
@@ -287,4 +290,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*)
201 overloaded
203 overloaded

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -41,12 +41,11 @@
"ImGuiContextHookCallback": "void(*)(ImGuiContext* ctx,ImGuiContextHook* hook);",
"ImGuiDataType": "int",
"ImGuiDataTypeInfo": "struct ImGuiDataTypeInfo",
"ImGuiDataTypeTempStorage": "struct ImGuiDataTypeTempStorage",
"ImGuiDataTypeStorage": "struct ImGuiDataTypeStorage",
"ImGuiDataVarInfo": "struct ImGuiDataVarInfo",
"ImGuiDebugAllocEntry": "struct ImGuiDebugAllocEntry",
"ImGuiDebugAllocInfo": "struct ImGuiDebugAllocInfo",
"ImGuiDebugLogFlags": "int",
"ImGuiDir": "int",
"ImGuiDragDropFlags": "int",
"ImGuiErrorLogCallback": "void(*)(void* user_data,const char* fmt,...);",
"ImGuiFocusRequestFlags": "int",
@@ -117,7 +116,6 @@
"ImGuiSizeCallback": "void(*)(ImGuiSizeCallbackData* data);",
"ImGuiSizeCallbackData": "struct ImGuiSizeCallbackData",
"ImGuiSliderFlags": "int",
"ImGuiSortDirection": "int",
"ImGuiStackLevelInfo": "struct ImGuiStackLevelInfo",
"ImGuiStackSizes": "struct ImGuiStackSizes",
"ImGuiStorage": "struct ImGuiStorage",
@@ -140,6 +138,7 @@
"ImGuiTableColumnsSettings": "struct ImGuiTableColumnsSettings",
"ImGuiTableDrawChannelIdx": "ImU16",
"ImGuiTableFlags": "int",
"ImGuiTableHeaderData": "struct ImGuiTableHeaderData",
"ImGuiTableInstanceData": "struct ImGuiTableInstanceData",
"ImGuiTableRowFlags": "int",
"ImGuiTableSettings": "struct ImGuiTableSettings",
@@ -160,6 +159,7 @@
"ImGuiViewportP": "struct ImGuiViewportP",
"ImGuiWindow": "struct ImGuiWindow",
"ImGuiWindowFlags": "int",
"ImGuiWindowRefreshFlags": "int",
"ImGuiWindowSettings": "struct ImGuiWindowSettings",
"ImGuiWindowStackData": "struct ImGuiWindowStackData",
"ImGuiWindowTempData": "struct ImGuiWindowTempData",

View File

@@ -41,12 +41,11 @@ defs["ImGuiContextHook"] = "struct ImGuiContextHook"
defs["ImGuiContextHookCallback"] = "void(*)(ImGuiContext* ctx,ImGuiContextHook* hook);"
defs["ImGuiDataType"] = "int"
defs["ImGuiDataTypeInfo"] = "struct ImGuiDataTypeInfo"
defs["ImGuiDataTypeTempStorage"] = "struct ImGuiDataTypeTempStorage"
defs["ImGuiDataTypeStorage"] = "struct ImGuiDataTypeStorage"
defs["ImGuiDataVarInfo"] = "struct ImGuiDataVarInfo"
defs["ImGuiDebugAllocEntry"] = "struct ImGuiDebugAllocEntry"
defs["ImGuiDebugAllocInfo"] = "struct ImGuiDebugAllocInfo"
defs["ImGuiDebugLogFlags"] = "int"
defs["ImGuiDir"] = "int"
defs["ImGuiDragDropFlags"] = "int"
defs["ImGuiErrorLogCallback"] = "void(*)(void* user_data,const char* fmt,...);"
defs["ImGuiFocusRequestFlags"] = "int"
@@ -117,7 +116,6 @@ defs["ImGuiShrinkWidthItem"] = "struct ImGuiShrinkWidthItem"
defs["ImGuiSizeCallback"] = "void(*)(ImGuiSizeCallbackData* data);"
defs["ImGuiSizeCallbackData"] = "struct ImGuiSizeCallbackData"
defs["ImGuiSliderFlags"] = "int"
defs["ImGuiSortDirection"] = "int"
defs["ImGuiStackLevelInfo"] = "struct ImGuiStackLevelInfo"
defs["ImGuiStackSizes"] = "struct ImGuiStackSizes"
defs["ImGuiStorage"] = "struct ImGuiStorage"
@@ -140,6 +138,7 @@ defs["ImGuiTableColumnSortSpecs"] = "struct ImGuiTableColumnSortSpecs"
defs["ImGuiTableColumnsSettings"] = "struct ImGuiTableColumnsSettings"
defs["ImGuiTableDrawChannelIdx"] = "ImU16"
defs["ImGuiTableFlags"] = "int"
defs["ImGuiTableHeaderData"] = "struct ImGuiTableHeaderData"
defs["ImGuiTableInstanceData"] = "struct ImGuiTableInstanceData"
defs["ImGuiTableRowFlags"] = "int"
defs["ImGuiTableSettings"] = "struct ImGuiTableSettings"
@@ -160,6 +159,7 @@ defs["ImGuiViewportFlags"] = "int"
defs["ImGuiViewportP"] = "struct ImGuiViewportP"
defs["ImGuiWindow"] = "struct ImGuiWindow"
defs["ImGuiWindowFlags"] = "int"
defs["ImGuiWindowRefreshFlags"] = "int"
defs["ImGuiWindowSettings"] = "struct ImGuiWindowSettings"
defs["ImGuiWindowStackData"] = "struct ImGuiWindowStackData"
defs["ImGuiWindowTempData"] = "struct ImGuiWindowTempData"

View File

@@ -27,3 +27,7 @@
#ifdef FLT_MAX
#pragma message(CIMGUI_DEFSTRING(FLT_MAX))
#endif
#ifdef ImDrawCallback_ResetRenderState
#pragma message(CIMGUI_DEFSTRING(ImDrawCallback_ResetRenderState))
#endif

2
imgui

Submodule imgui updated: 277ae93c41...6f7b5d0ee2