// This file is automatically generated by generator.lua from // https://github.com/cimgui/cimgui based on imgui.h file version "1.90.6" 19060 // from Dear ImGui https://github.com/ocornut/imgui with imgui_internal.h api // docking branch #define IMGUI_ENABLE_FREETYPE #ifdef IMGUI_ENABLE_FREETYPE #ifndef CIMGUI_FREETYPE #error "IMGUI_FREETYPE should be defined for Freetype linking" #endif #else #ifdef CIMGUI_FREETYPE #error "IMGUI_FREETYPE should not be defined without freetype generated cimgui" #endif #endif #include "imgui.h" #ifdef IMGUI_ENABLE_FREETYPE #include "misc/freetype/imgui_freetype.h" #endif #include "imgui_internal.h" #include "cimgui.h" CIMGUI_API ImVec2* ImVec2_ImVec2_Nil(void) { return IM_NEW(ImVec2)(); } CIMGUI_API void ImVec2_destroy(ImVec2* self) { IM_DELETE(self); } CIMGUI_API ImVec2* ImVec2_ImVec2_Float(float _x, float _y) { return IM_NEW(ImVec2)(_x, _y); } CIMGUI_API ImVec4* ImVec4_ImVec4_Nil(void) { return IM_NEW(ImVec4)(); } CIMGUI_API void ImVec4_destroy(ImVec4* self) { IM_DELETE(self); } CIMGUI_API ImVec4* ImVec4_ImVec4_Float(float _x, float _y, float _z, float _w) { return IM_NEW(ImVec4)(_x, _y, _z, _w); } CIMGUI_API ImGuiContext* igCreateContext(ImFontAtlas* shared_font_atlas) { return ImGui::CreateContext(shared_font_atlas); } CIMGUI_API void igDestroyContext(ImGuiContext* ctx) { return ImGui::DestroyContext(ctx); } CIMGUI_API ImGuiContext* igGetCurrentContext() { return ImGui::GetCurrentContext(); } CIMGUI_API void igSetCurrentContext(ImGuiContext* ctx) { return ImGui::SetCurrentContext(ctx); } CIMGUI_API ImGuiIO* igGetIO() { return &ImGui::GetIO(); } CIMGUI_API ImGuiStyle* igGetStyle() { return &ImGui::GetStyle(); } CIMGUI_API void igNewFrame() { return ImGui::NewFrame(); } CIMGUI_API void igEndFrame() { return ImGui::EndFrame(); } CIMGUI_API void igRender() { return ImGui::Render(); } CIMGUI_API ImDrawData* igGetDrawData() { return ImGui::GetDrawData(); } CIMGUI_API void igShowDemoWindow(bool* p_open) { return ImGui::ShowDemoWindow(p_open); } CIMGUI_API void igShowMetricsWindow(bool* p_open) { return ImGui::ShowMetricsWindow(p_open); } CIMGUI_API void igShowDebugLogWindow(bool* p_open) { return ImGui::ShowDebugLogWindow(p_open); } CIMGUI_API void igShowIDStackToolWindow(bool* p_open) { return ImGui::ShowIDStackToolWindow(p_open); } CIMGUI_API void igShowAboutWindow(bool* p_open) { return ImGui::ShowAboutWindow(p_open); } CIMGUI_API void igShowStyleEditor(ImGuiStyle* ref) { return ImGui::ShowStyleEditor(ref); } CIMGUI_API bool igShowStyleSelector(const char* label) { return ImGui::ShowStyleSelector(label); } CIMGUI_API void igShowFontSelector(const char* label) { return ImGui::ShowFontSelector(label); } CIMGUI_API void igShowUserGuide() { return ImGui::ShowUserGuide(); } CIMGUI_API const char* igGetVersion() { return ImGui::GetVersion(); } CIMGUI_API void igStyleColorsDark(ImGuiStyle* dst) { return ImGui::StyleColorsDark(dst); } CIMGUI_API void igStyleColorsLight(ImGuiStyle* dst) { return ImGui::StyleColorsLight(dst); } CIMGUI_API void igStyleColorsClassic(ImGuiStyle* dst) { return ImGui::StyleColorsClassic(dst); } CIMGUI_API bool igBegin(const char* name, bool* p_open, ImGuiWindowFlags flags) { return ImGui::Begin(name, p_open, flags); } CIMGUI_API void igEnd() { return ImGui::End(); } CIMGUI_API bool igBeginChild_Str(const char* str_id, const ImVec2 size, ImGuiChildFlags child_flags, ImGuiWindowFlags window_flags) { return ImGui::BeginChild(str_id, size, child_flags, window_flags); } CIMGUI_API bool igBeginChild_ID(ImGuiID id, const ImVec2 size, ImGuiChildFlags child_flags, ImGuiWindowFlags window_flags) { return ImGui::BeginChild(id, size, child_flags, window_flags); } CIMGUI_API void igEndChild() { return ImGui::EndChild(); } CIMGUI_API bool igIsWindowAppearing() { return ImGui::IsWindowAppearing(); } CIMGUI_API bool igIsWindowCollapsed() { return ImGui::IsWindowCollapsed(); } CIMGUI_API bool igIsWindowFocused(ImGuiFocusedFlags flags) { return ImGui::IsWindowFocused(flags); } CIMGUI_API bool igIsWindowHovered(ImGuiHoveredFlags flags) { return ImGui::IsWindowHovered(flags); } CIMGUI_API ImDrawList* igGetWindowDrawList() { return ImGui::GetWindowDrawList(); } CIMGUI_API float igGetWindowDpiScale() { return ImGui::GetWindowDpiScale(); } CIMGUI_API void igGetWindowPos(ImVec2* pOut) { *pOut = ImGui::GetWindowPos(); } CIMGUI_API void igGetWindowSize(ImVec2* pOut) { *pOut = ImGui::GetWindowSize(); } CIMGUI_API float igGetWindowWidth() { return ImGui::GetWindowWidth(); } CIMGUI_API float igGetWindowHeight() { return ImGui::GetWindowHeight(); } CIMGUI_API ImGuiViewport* igGetWindowViewport() { return ImGui::GetWindowViewport(); } CIMGUI_API void igSetNextWindowPos(const ImVec2 pos, ImGuiCond cond, const ImVec2 pivot) { return ImGui::SetNextWindowPos(pos, cond, pivot); } CIMGUI_API void igSetNextWindowSize(const ImVec2 size, ImGuiCond cond) { return ImGui::SetNextWindowSize(size, cond); } CIMGUI_API void igSetNextWindowSizeConstraints( const ImVec2 size_min, const ImVec2 size_max, ImGuiSizeCallback custom_callback, void* custom_callback_data) { return ImGui::SetNextWindowSizeConstraints( size_min, size_max, custom_callback, custom_callback_data); } CIMGUI_API void igSetNextWindowContentSize(const ImVec2 size) { return ImGui::SetNextWindowContentSize(size); } CIMGUI_API void igSetNextWindowCollapsed(bool collapsed, ImGuiCond cond) { return ImGui::SetNextWindowCollapsed(collapsed, cond); } CIMGUI_API void igSetNextWindowFocus() { return ImGui::SetNextWindowFocus(); } CIMGUI_API void igSetNextWindowScroll(const ImVec2 scroll) { return ImGui::SetNextWindowScroll(scroll); } CIMGUI_API void igSetNextWindowBgAlpha(float alpha) { return ImGui::SetNextWindowBgAlpha(alpha); } CIMGUI_API void igSetNextWindowViewport(ImGuiID viewport_id) { return ImGui::SetNextWindowViewport(viewport_id); } CIMGUI_API void igSetWindowPos_Vec2(const ImVec2 pos, ImGuiCond cond) { return ImGui::SetWindowPos(pos, cond); } CIMGUI_API void igSetWindowSize_Vec2(const ImVec2 size, ImGuiCond cond) { return ImGui::SetWindowSize(size, cond); } CIMGUI_API void igSetWindowCollapsed_Bool(bool collapsed, ImGuiCond cond) { return ImGui::SetWindowCollapsed(collapsed, cond); } CIMGUI_API void igSetWindowFocus_Nil() { return ImGui::SetWindowFocus(); } CIMGUI_API void igSetWindowFontScale(float scale) { return ImGui::SetWindowFontScale(scale); } CIMGUI_API void igSetWindowPos_Str(const char* name, const ImVec2 pos, ImGuiCond cond) { return ImGui::SetWindowPos(name, pos, cond); } CIMGUI_API void igSetWindowSize_Str(const char* name, const ImVec2 size, ImGuiCond cond) { return ImGui::SetWindowSize(name, size, cond); } CIMGUI_API void igSetWindowCollapsed_Str(const char* name, bool collapsed, ImGuiCond cond) { return ImGui::SetWindowCollapsed(name, collapsed, cond); } CIMGUI_API void igSetWindowFocus_Str(const char* name) { return ImGui::SetWindowFocus(name); } CIMGUI_API void igGetContentRegionAvail(ImVec2* pOut) { *pOut = ImGui::GetContentRegionAvail(); } CIMGUI_API void igGetContentRegionMax(ImVec2* pOut) { *pOut = ImGui::GetContentRegionMax(); } CIMGUI_API void igGetWindowContentRegionMin(ImVec2* pOut) { *pOut = ImGui::GetWindowContentRegionMin(); } CIMGUI_API void igGetWindowContentRegionMax(ImVec2* pOut) { *pOut = ImGui::GetWindowContentRegionMax(); } CIMGUI_API float igGetScrollX() { return ImGui::GetScrollX(); } CIMGUI_API float igGetScrollY() { return ImGui::GetScrollY(); } CIMGUI_API void igSetScrollX_Float(float scroll_x) { return ImGui::SetScrollX(scroll_x); } CIMGUI_API void igSetScrollY_Float(float scroll_y) { return ImGui::SetScrollY(scroll_y); } CIMGUI_API float igGetScrollMaxX() { return ImGui::GetScrollMaxX(); } CIMGUI_API float igGetScrollMaxY() { return ImGui::GetScrollMaxY(); } CIMGUI_API void igSetScrollHereX(float center_x_ratio) { return ImGui::SetScrollHereX(center_x_ratio); } CIMGUI_API void igSetScrollHereY(float center_y_ratio) { return ImGui::SetScrollHereY(center_y_ratio); } CIMGUI_API void igSetScrollFromPosX_Float(float local_x, float center_x_ratio) { return ImGui::SetScrollFromPosX(local_x, center_x_ratio); } CIMGUI_API void igSetScrollFromPosY_Float(float local_y, float center_y_ratio) { return ImGui::SetScrollFromPosY(local_y, center_y_ratio); } CIMGUI_API void igPushFont(ImFont* font) { return ImGui::PushFont(font); } CIMGUI_API void igPopFont() { return ImGui::PopFont(); } CIMGUI_API void igPushStyleColor_U32(ImGuiCol idx, ImU32 col) { return ImGui::PushStyleColor(idx, col); } CIMGUI_API void igPushStyleColor_Vec4(ImGuiCol idx, const ImVec4 col) { return ImGui::PushStyleColor(idx, col); } CIMGUI_API void igPopStyleColor(int count) { return ImGui::PopStyleColor(count); } CIMGUI_API void igPushStyleVar_Float(ImGuiStyleVar idx, float val) { return ImGui::PushStyleVar(idx, val); } CIMGUI_API void igPushStyleVar_Vec2(ImGuiStyleVar idx, const ImVec2 val) { return ImGui::PushStyleVar(idx, val); } CIMGUI_API void igPopStyleVar(int count) { return ImGui::PopStyleVar(count); } CIMGUI_API void igPushTabStop(bool tab_stop) { return ImGui::PushTabStop(tab_stop); } CIMGUI_API void igPopTabStop() { return ImGui::PopTabStop(); } CIMGUI_API void igPushButtonRepeat(bool repeat) { return ImGui::PushButtonRepeat(repeat); } CIMGUI_API void igPopButtonRepeat() { return ImGui::PopButtonRepeat(); } CIMGUI_API void igPushItemWidth(float item_width) { return ImGui::PushItemWidth(item_width); } CIMGUI_API void igPopItemWidth() { return ImGui::PopItemWidth(); } CIMGUI_API void igSetNextItemWidth(float item_width) { return ImGui::SetNextItemWidth(item_width); } CIMGUI_API float igCalcItemWidth() { return ImGui::CalcItemWidth(); } CIMGUI_API void igPushTextWrapPos(float wrap_local_pos_x) { return ImGui::PushTextWrapPos(wrap_local_pos_x); } CIMGUI_API void igPopTextWrapPos() { return ImGui::PopTextWrapPos(); } CIMGUI_API ImFont* igGetFont() { return ImGui::GetFont(); } CIMGUI_API float igGetFontSize() { return ImGui::GetFontSize(); } CIMGUI_API void igGetFontTexUvWhitePixel(ImVec2* pOut) { *pOut = ImGui::GetFontTexUvWhitePixel(); } CIMGUI_API ImU32 igGetColorU32_Col(ImGuiCol idx, float alpha_mul) { return ImGui::GetColorU32(idx, alpha_mul); } CIMGUI_API ImU32 igGetColorU32_Vec4(const ImVec4 col) { return ImGui::GetColorU32(col); } CIMGUI_API ImU32 igGetColorU32_U32(ImU32 col, float alpha_mul) { return ImGui::GetColorU32(col, alpha_mul); } CIMGUI_API const ImVec4* igGetStyleColorVec4(ImGuiCol idx) { return &ImGui::GetStyleColorVec4(idx); } CIMGUI_API void igGetCursorScreenPos(ImVec2* pOut) { *pOut = ImGui::GetCursorScreenPos(); } CIMGUI_API void igSetCursorScreenPos(const ImVec2 pos) { return ImGui::SetCursorScreenPos(pos); } CIMGUI_API void igGetCursorPos(ImVec2* pOut) { *pOut = ImGui::GetCursorPos(); } CIMGUI_API float igGetCursorPosX() { return ImGui::GetCursorPosX(); } CIMGUI_API float igGetCursorPosY() { return ImGui::GetCursorPosY(); } CIMGUI_API void igSetCursorPos(const ImVec2 local_pos) { return ImGui::SetCursorPos(local_pos); } CIMGUI_API void igSetCursorPosX(float local_x) { return ImGui::SetCursorPosX(local_x); } CIMGUI_API void igSetCursorPosY(float local_y) { return ImGui::SetCursorPosY(local_y); } CIMGUI_API void igGetCursorStartPos(ImVec2* pOut) { *pOut = ImGui::GetCursorStartPos(); } CIMGUI_API void igSeparator() { return ImGui::Separator(); } CIMGUI_API void igSameLine(float offset_from_start_x, float spacing) { return ImGui::SameLine(offset_from_start_x, spacing); } CIMGUI_API void igNewLine() { return ImGui::NewLine(); } CIMGUI_API void igSpacing() { return ImGui::Spacing(); } CIMGUI_API void igDummy(const ImVec2 size) { return ImGui::Dummy(size); } CIMGUI_API void igIndent(float indent_w) { return ImGui::Indent(indent_w); } CIMGUI_API void igUnindent(float indent_w) { return ImGui::Unindent(indent_w); } CIMGUI_API void igBeginGroup() { return ImGui::BeginGroup(); } CIMGUI_API void igEndGroup() { return ImGui::EndGroup(); } CIMGUI_API void igAlignTextToFramePadding() { return ImGui::AlignTextToFramePadding(); } CIMGUI_API float igGetTextLineHeight() { return ImGui::GetTextLineHeight(); } CIMGUI_API float igGetTextLineHeightWithSpacing() { return ImGui::GetTextLineHeightWithSpacing(); } CIMGUI_API float igGetFrameHeight() { return ImGui::GetFrameHeight(); } CIMGUI_API float igGetFrameHeightWithSpacing() { return ImGui::GetFrameHeightWithSpacing(); } CIMGUI_API void igPushID_Str(const char* str_id) { return ImGui::PushID(str_id); } CIMGUI_API void igPushID_StrStr(const char* str_id_begin, const char* str_id_end) { return ImGui::PushID(str_id_begin, str_id_end); } CIMGUI_API void igPushID_Ptr(const void* ptr_id) { return ImGui::PushID(ptr_id); } CIMGUI_API void igPushID_Int(int int_id) { return ImGui::PushID(int_id); } CIMGUI_API void igPopID() { return ImGui::PopID(); } CIMGUI_API ImGuiID igGetID_Str(const char* str_id) { return ImGui::GetID(str_id); } CIMGUI_API ImGuiID igGetID_StrStr(const char* str_id_begin, const char* str_id_end) { return ImGui::GetID(str_id_begin, str_id_end); } CIMGUI_API ImGuiID igGetID_Ptr(const void* ptr_id) { return ImGui::GetID(ptr_id); } CIMGUI_API void igTextUnformatted(const char* text, const char* text_end) { return ImGui::TextUnformatted(text, text_end); } CIMGUI_API void igText(const char* fmt, ...) { va_list args; va_start(args, fmt); ImGui::TextV(fmt, args); va_end(args); } CIMGUI_API void igTextV(const char* fmt, va_list args) { return ImGui::TextV(fmt, args); } CIMGUI_API void igTextColored(const ImVec4 col, const char* fmt, ...) { va_list args; va_start(args, fmt); ImGui::TextColoredV(col, fmt, args); va_end(args); } CIMGUI_API void igTextColoredV(const ImVec4 col, const char* fmt, va_list args) { return ImGui::TextColoredV(col, fmt, args); } CIMGUI_API void igTextDisabled(const char* fmt, ...) { va_list args; va_start(args, fmt); ImGui::TextDisabledV(fmt, args); va_end(args); } CIMGUI_API void igTextDisabledV(const char* fmt, va_list args) { return ImGui::TextDisabledV(fmt, args); } CIMGUI_API void igTextWrapped(const char* fmt, ...) { va_list args; va_start(args, fmt); ImGui::TextWrappedV(fmt, args); va_end(args); } CIMGUI_API void igTextWrappedV(const char* fmt, va_list args) { return ImGui::TextWrappedV(fmt, args); } CIMGUI_API void igLabelText(const char* label, const char* fmt, ...) { va_list args; va_start(args, fmt); ImGui::LabelTextV(label, fmt, args); va_end(args); } CIMGUI_API void igLabelTextV(const char* label, const char* fmt, va_list args) { return ImGui::LabelTextV(label, fmt, args); } CIMGUI_API void igBulletText(const char* fmt, ...) { va_list args; va_start(args, fmt); ImGui::BulletTextV(fmt, args); va_end(args); } CIMGUI_API void igBulletTextV(const char* fmt, va_list args) { return ImGui::BulletTextV(fmt, args); } CIMGUI_API void igSeparatorText(const char* label) { return ImGui::SeparatorText(label); } CIMGUI_API bool igButton(const char* label, const ImVec2 size) { return ImGui::Button(label, size); } CIMGUI_API bool igSmallButton(const char* label) { return ImGui::SmallButton(label); } CIMGUI_API bool igInvisibleButton(const char* str_id, const ImVec2 size, ImGuiButtonFlags flags) { return ImGui::InvisibleButton(str_id, size, flags); } CIMGUI_API bool igArrowButton(const char* str_id, ImGuiDir dir) { return ImGui::ArrowButton(str_id, dir); } CIMGUI_API bool igCheckbox(const char* label, bool* v) { return ImGui::Checkbox(label, v); } CIMGUI_API bool igCheckboxFlags_IntPtr(const char* label, int* flags, int flags_value) { return ImGui::CheckboxFlags(label, flags, flags_value); } CIMGUI_API bool igCheckboxFlags_UintPtr(const char* label, unsigned int* flags, unsigned int flags_value) { return ImGui::CheckboxFlags(label, flags, flags_value); } CIMGUI_API bool igRadioButton_Bool(const char* label, bool active) { return ImGui::RadioButton(label, active); } CIMGUI_API bool igRadioButton_IntPtr(const char* label, int* v, int v_button) { return ImGui::RadioButton(label, v, v_button); } CIMGUI_API void igProgressBar(float fraction, const ImVec2 size_arg, const char* overlay) { return ImGui::ProgressBar(fraction, size_arg, overlay); } CIMGUI_API void igBullet() { return ImGui::Bullet(); } CIMGUI_API void igImage(ImTextureID user_texture_id, const ImVec2 image_size, const ImVec2 uv0, const ImVec2 uv1, const ImVec4 tint_col, const ImVec4 border_col) { return ImGui::Image(user_texture_id, image_size, uv0, uv1, tint_col, border_col); } CIMGUI_API bool igImageButton(const char* str_id, ImTextureID user_texture_id, const ImVec2 image_size, const ImVec2 uv0, const ImVec2 uv1, const ImVec4 bg_col, const ImVec4 tint_col) { return ImGui::ImageButton(str_id, user_texture_id, image_size, uv0, uv1, bg_col, tint_col); } CIMGUI_API bool igBeginCombo(const char* label, const char* preview_value, ImGuiComboFlags flags) { return ImGui::BeginCombo(label, preview_value, flags); } CIMGUI_API void igEndCombo() { return ImGui::EndCombo(); } CIMGUI_API bool igCombo_Str_arr(const char* label, int* current_item, const char* const items[], int items_count, int popup_max_height_in_items) { return ImGui::Combo(label, current_item, items, items_count, popup_max_height_in_items); } CIMGUI_API bool igCombo_Str(const char* label, int* current_item, const char* items_separated_by_zeros, int popup_max_height_in_items) { return ImGui::Combo(label, current_item, items_separated_by_zeros, popup_max_height_in_items); } CIMGUI_API bool igCombo_FnStrPtr(const char* label, int* current_item, const char* (*getter)(void* user_data, int idx), void* user_data, int items_count, int popup_max_height_in_items) { return ImGui::Combo(label, current_item, getter, user_data, items_count, popup_max_height_in_items); } CIMGUI_API bool igDragFloat(const char* label, float* v, float v_speed, float v_min, float v_max, const char* format, ImGuiSliderFlags flags) { return ImGui::DragFloat(label, v, v_speed, v_min, v_max, format, flags); } CIMGUI_API bool igDragFloat2(const char* label, float v[2], float v_speed, float v_min, float v_max, const char* format, ImGuiSliderFlags flags) { return ImGui::DragFloat2(label, v, v_speed, v_min, v_max, format, flags); } CIMGUI_API bool igDragFloat3(const char* label, float v[3], float v_speed, float v_min, float v_max, const char* format, ImGuiSliderFlags flags) { return ImGui::DragFloat3(label, v, v_speed, v_min, v_max, format, flags); } CIMGUI_API bool igDragFloat4(const char* label, float v[4], float v_speed, float v_min, float v_max, const char* format, ImGuiSliderFlags flags) { return ImGui::DragFloat4(label, v, v_speed, v_min, v_max, format, flags); } CIMGUI_API bool igDragFloatRange2(const char* label, float* v_current_min, float* v_current_max, float v_speed, float v_min, float v_max, const char* format, const char* format_max, ImGuiSliderFlags flags) { return ImGui::DragFloatRange2(label, v_current_min, v_current_max, v_speed, v_min, v_max, format, format_max, flags); } CIMGUI_API bool igDragInt(const char* label, int* v, float v_speed, int v_min, int v_max, const char* format, ImGuiSliderFlags flags) { return ImGui::DragInt(label, v, v_speed, v_min, v_max, format, flags); } CIMGUI_API bool igDragInt2(const char* label, int v[2], float v_speed, int v_min, int v_max, const char* format, ImGuiSliderFlags flags) { return ImGui::DragInt2(label, v, v_speed, v_min, v_max, format, flags); } CIMGUI_API bool igDragInt3(const char* label, int v[3], float v_speed, int v_min, int v_max, const char* format, ImGuiSliderFlags flags) { return ImGui::DragInt3(label, v, v_speed, v_min, v_max, format, flags); } CIMGUI_API bool igDragInt4(const char* label, int v[4], float v_speed, int v_min, int v_max, const char* format, ImGuiSliderFlags flags) { return ImGui::DragInt4(label, v, v_speed, v_min, v_max, format, flags); } CIMGUI_API bool igDragIntRange2(const char* label, int* v_current_min, int* v_current_max, float v_speed, int v_min, int v_max, const char* format, const char* format_max, ImGuiSliderFlags flags) { return ImGui::DragIntRange2(label, v_current_min, v_current_max, v_speed, v_min, v_max, format, format_max, flags); } CIMGUI_API bool igDragScalar(const char* label, ImGuiDataType data_type, void* p_data, float v_speed, const void* p_min, const void* p_max, const char* format, ImGuiSliderFlags flags) { return ImGui::DragScalar(label, data_type, p_data, v_speed, p_min, p_max, format, flags); } CIMGUI_API bool igDragScalarN(const char* label, ImGuiDataType data_type, void* p_data, int components, float v_speed, const void* p_min, const void* p_max, const char* format, ImGuiSliderFlags flags) { return ImGui::DragScalarN(label, data_type, p_data, components, v_speed, p_min, p_max, format, flags); } CIMGUI_API bool igSliderFloat(const char* label, float* v, float v_min, float v_max, const char* format, ImGuiSliderFlags flags) { return ImGui::SliderFloat(label, v, v_min, v_max, format, flags); } CIMGUI_API bool igSliderFloat2(const char* label, float v[2], float v_min, float v_max, const char* format, ImGuiSliderFlags flags) { return ImGui::SliderFloat2(label, v, v_min, v_max, format, flags); } CIMGUI_API bool igSliderFloat3(const char* label, float v[3], float v_min, float v_max, const char* format, ImGuiSliderFlags flags) { return ImGui::SliderFloat3(label, v, v_min, v_max, format, flags); } CIMGUI_API bool igSliderFloat4(const char* label, float v[4], float v_min, float v_max, const char* format, ImGuiSliderFlags flags) { return ImGui::SliderFloat4(label, v, v_min, v_max, format, flags); } CIMGUI_API bool igSliderAngle(const char* label, float* v_rad, float v_degrees_min, float v_degrees_max, const char* format, ImGuiSliderFlags flags) { return ImGui::SliderAngle(label, v_rad, v_degrees_min, v_degrees_max, format, flags); } CIMGUI_API bool igSliderInt(const char* label, int* v, int v_min, int v_max, const char* format, ImGuiSliderFlags flags) { return ImGui::SliderInt(label, v, v_min, v_max, format, flags); } CIMGUI_API bool igSliderInt2(const char* label, int v[2], int v_min, int v_max, const char* format, ImGuiSliderFlags flags) { return ImGui::SliderInt2(label, v, v_min, v_max, format, flags); } CIMGUI_API bool igSliderInt3(const char* label, int v[3], int v_min, int v_max, const char* format, ImGuiSliderFlags flags) { return ImGui::SliderInt3(label, v, v_min, v_max, format, flags); } CIMGUI_API bool igSliderInt4(const char* label, int v[4], int v_min, int v_max, const char* format, ImGuiSliderFlags flags) { return ImGui::SliderInt4(label, v, v_min, v_max, format, flags); } CIMGUI_API bool igSliderScalar(const char* label, ImGuiDataType data_type, void* p_data, const void* p_min, const void* p_max, const char* format, ImGuiSliderFlags flags) { return ImGui::SliderScalar(label, data_type, p_data, p_min, p_max, format, flags); } CIMGUI_API bool igSliderScalarN(const char* label, ImGuiDataType data_type, void* p_data, int components, const void* p_min, const void* p_max, const char* format, ImGuiSliderFlags flags) { return ImGui::SliderScalarN(label, data_type, p_data, components, p_min, p_max, format, flags); } CIMGUI_API bool igVSliderFloat(const char* label, const ImVec2 size, float* v, float v_min, float v_max, const char* format, ImGuiSliderFlags flags) { return ImGui::VSliderFloat(label, size, v, v_min, v_max, format, flags); } CIMGUI_API bool igVSliderInt(const char* label, const ImVec2 size, int* v, int v_min, int v_max, const char* format, ImGuiSliderFlags flags) { return ImGui::VSliderInt(label, size, v, v_min, v_max, format, flags); } CIMGUI_API bool igVSliderScalar(const char* label, const ImVec2 size, ImGuiDataType data_type, void* p_data, const void* p_min, const void* p_max, const char* format, ImGuiSliderFlags flags) { return ImGui::VSliderScalar(label, size, data_type, p_data, p_min, p_max, format, flags); } CIMGUI_API bool igInputText(const char* label, char* buf, size_t buf_size, ImGuiInputTextFlags flags, ImGuiInputTextCallback callback, void* user_data) { return ImGui::InputText(label, buf, buf_size, flags, callback, user_data); } CIMGUI_API bool igInputTextMultiline(const char* label, char* buf, size_t buf_size, const ImVec2 size, ImGuiInputTextFlags flags, ImGuiInputTextCallback callback, void* user_data) { return ImGui::InputTextMultiline(label, buf, buf_size, size, flags, callback, user_data); } CIMGUI_API bool igInputTextWithHint(const char* label, const char* hint, char* buf, size_t buf_size, ImGuiInputTextFlags flags, ImGuiInputTextCallback callback, void* user_data) { return ImGui::InputTextWithHint(label, hint, buf, buf_size, flags, callback, user_data); } CIMGUI_API bool igInputFloat(const char* label, float* v, float step, float step_fast, const char* format, ImGuiInputTextFlags flags) { return ImGui::InputFloat(label, v, step, step_fast, format, flags); } CIMGUI_API bool igInputFloat2(const char* label, float v[2], const char* format, ImGuiInputTextFlags flags) { return ImGui::InputFloat2(label, v, format, flags); } CIMGUI_API bool igInputFloat3(const char* label, float v[3], const char* format, ImGuiInputTextFlags flags) { return ImGui::InputFloat3(label, v, format, flags); } CIMGUI_API bool igInputFloat4(const char* label, float v[4], const char* format, ImGuiInputTextFlags flags) { return ImGui::InputFloat4(label, v, format, flags); } CIMGUI_API bool igInputInt(const char* label, int* v, int step, int step_fast, ImGuiInputTextFlags flags) { return ImGui::InputInt(label, v, step, step_fast, flags); } CIMGUI_API bool igInputInt2(const char* label, int v[2], ImGuiInputTextFlags flags) { return ImGui::InputInt2(label, v, flags); } CIMGUI_API bool igInputInt3(const char* label, int v[3], ImGuiInputTextFlags flags) { return ImGui::InputInt3(label, v, flags); } CIMGUI_API bool igInputInt4(const char* label, int v[4], ImGuiInputTextFlags flags) { return ImGui::InputInt4(label, v, flags); } CIMGUI_API bool igInputDouble(const char* label, double* v, double step, double step_fast, const char* format, ImGuiInputTextFlags flags) { return ImGui::InputDouble(label, v, step, step_fast, format, flags); } CIMGUI_API bool igInputScalar(const char* label, ImGuiDataType data_type, void* p_data, const void* p_step, const void* p_step_fast, const char* format, ImGuiInputTextFlags flags) { return ImGui::InputScalar(label, data_type, p_data, p_step, p_step_fast, format, flags); } CIMGUI_API bool igInputScalarN(const char* label, ImGuiDataType data_type, void* p_data, int components, const void* p_step, const void* p_step_fast, const char* format, ImGuiInputTextFlags flags) { return ImGui::InputScalarN(label, data_type, p_data, components, p_step, p_step_fast, format, flags); } CIMGUI_API bool igColorEdit3(const char* label, float col[3], ImGuiColorEditFlags flags) { return ImGui::ColorEdit3(label, col, flags); } CIMGUI_API bool igColorEdit4(const char* label, float col[4], ImGuiColorEditFlags flags) { return ImGui::ColorEdit4(label, col, flags); } CIMGUI_API bool igColorPicker3(const char* label, float col[3], ImGuiColorEditFlags flags) { return ImGui::ColorPicker3(label, col, flags); } CIMGUI_API bool igColorPicker4(const char* label, float col[4], ImGuiColorEditFlags flags, const float* ref_col) { return ImGui::ColorPicker4(label, col, flags, ref_col); } CIMGUI_API bool igColorButton(const char* desc_id, const ImVec4 col, ImGuiColorEditFlags flags, const ImVec2 size) { return ImGui::ColorButton(desc_id, col, flags, size); } CIMGUI_API void igSetColorEditOptions(ImGuiColorEditFlags flags) { return ImGui::SetColorEditOptions(flags); } CIMGUI_API bool igTreeNode_Str(const char* label) { return ImGui::TreeNode(label); } CIMGUI_API bool igTreeNode_StrStr(const char* str_id, const char* fmt, ...) { va_list args; va_start(args, fmt); bool ret = ImGui::TreeNodeV(str_id, fmt, args); va_end(args); return ret; } CIMGUI_API bool igTreeNode_Ptr(const void* ptr_id, const char* fmt, ...) { va_list args; va_start(args, fmt); bool ret = ImGui::TreeNodeV(ptr_id, fmt, args); va_end(args); return ret; } CIMGUI_API bool igTreeNodeV_Str(const char* str_id, const char* fmt, va_list args) { return ImGui::TreeNodeV(str_id, fmt, args); } CIMGUI_API bool igTreeNodeV_Ptr(const void* ptr_id, const char* fmt, va_list args) { return ImGui::TreeNodeV(ptr_id, fmt, args); } CIMGUI_API bool igTreeNodeEx_Str(const char* label, ImGuiTreeNodeFlags flags) { return ImGui::TreeNodeEx(label, flags); } CIMGUI_API bool igTreeNodeEx_StrStr(const char* str_id, ImGuiTreeNodeFlags flags, const char* fmt, ...) { va_list args; va_start(args, fmt); bool ret = ImGui::TreeNodeExV(str_id, flags, fmt, args); va_end(args); return ret; } CIMGUI_API bool igTreeNodeEx_Ptr(const void* ptr_id, ImGuiTreeNodeFlags flags, const char* fmt, ...) { va_list args; va_start(args, fmt); bool ret = ImGui::TreeNodeExV(ptr_id, flags, fmt, args); va_end(args); return ret; } CIMGUI_API bool igTreeNodeExV_Str(const char* str_id, ImGuiTreeNodeFlags flags, const char* fmt, va_list args) { return ImGui::TreeNodeExV(str_id, flags, fmt, args); } CIMGUI_API bool igTreeNodeExV_Ptr(const void* ptr_id, ImGuiTreeNodeFlags flags, const char* fmt, va_list args) { return ImGui::TreeNodeExV(ptr_id, flags, fmt, args); } CIMGUI_API void igTreePush_Str(const char* str_id) { return ImGui::TreePush(str_id); } CIMGUI_API void igTreePush_Ptr(const void* ptr_id) { return ImGui::TreePush(ptr_id); } CIMGUI_API void igTreePop() { return ImGui::TreePop(); } CIMGUI_API float igGetTreeNodeToLabelSpacing() { return ImGui::GetTreeNodeToLabelSpacing(); } CIMGUI_API bool igCollapsingHeader_TreeNodeFlags(const char* label, ImGuiTreeNodeFlags flags) { return ImGui::CollapsingHeader(label, flags); } CIMGUI_API bool igCollapsingHeader_BoolPtr(const char* label, bool* p_visible, ImGuiTreeNodeFlags flags) { return ImGui::CollapsingHeader(label, p_visible, flags); } CIMGUI_API void igSetNextItemOpen(bool is_open, ImGuiCond cond) { return ImGui::SetNextItemOpen(is_open, cond); } CIMGUI_API bool igSelectable_Bool(const char* label, bool selected, ImGuiSelectableFlags flags, const ImVec2 size) { return ImGui::Selectable(label, selected, flags, size); } CIMGUI_API bool igSelectable_BoolPtr(const char* label, bool* p_selected, ImGuiSelectableFlags flags, const ImVec2 size) { return ImGui::Selectable(label, p_selected, flags, size); } CIMGUI_API bool igBeginListBox(const char* label, const ImVec2 size) { return ImGui::BeginListBox(label, size); } CIMGUI_API void igEndListBox() { return ImGui::EndListBox(); } CIMGUI_API bool igListBox_Str_arr(const char* label, int* current_item, const char* const items[], int items_count, int height_in_items) { return ImGui::ListBox(label, current_item, items, items_count, height_in_items); } CIMGUI_API bool igListBox_FnStrPtr(const char* label, int* current_item, const char* (*getter)(void* user_data, int idx), void* user_data, int items_count, int height_in_items) { return ImGui::ListBox(label, current_item, getter, user_data, items_count, height_in_items); } CIMGUI_API void igPlotLines_FloatPtr(const char* label, const float* values, int values_count, int values_offset, const char* overlay_text, float scale_min, float scale_max, ImVec2 graph_size, int stride) { return ImGui::PlotLines(label, values, values_count, values_offset, overlay_text, scale_min, scale_max, graph_size, stride); } CIMGUI_API void igPlotLines_FnFloatPtr(const char* label, float (*values_getter)(void* data, int idx), void* data, int values_count, int values_offset, const char* overlay_text, float scale_min, float scale_max, ImVec2 graph_size) { return ImGui::PlotLines(label, values_getter, data, values_count, values_offset, overlay_text, scale_min, scale_max, graph_size); } CIMGUI_API void igPlotHistogram_FloatPtr(const char* label, const float* values, int values_count, int values_offset, const char* overlay_text, float scale_min, float scale_max, ImVec2 graph_size, int stride) { return ImGui::PlotHistogram(label, values, values_count, values_offset, overlay_text, scale_min, scale_max, graph_size, stride); } CIMGUI_API void igPlotHistogram_FnFloatPtr(const char* label, float (*values_getter)(void* data, int idx), void* data, int values_count, int values_offset, const char* overlay_text, float scale_min, float scale_max, ImVec2 graph_size) { return ImGui::PlotHistogram(label, values_getter, data, values_count, values_offset, overlay_text, scale_min, scale_max, graph_size); } CIMGUI_API void igValue_Bool(const char* prefix, bool b) { return ImGui::Value(prefix, b); } CIMGUI_API void igValue_Int(const char* prefix, int v) { return ImGui::Value(prefix, v); } CIMGUI_API void igValue_Uint(const char* prefix, unsigned int v) { return ImGui::Value(prefix, v); } CIMGUI_API void igValue_Float(const char* prefix, float v, const char* float_format) { return ImGui::Value(prefix, v, float_format); } CIMGUI_API bool igBeginMenuBar() { return ImGui::BeginMenuBar(); } CIMGUI_API void igEndMenuBar() { return ImGui::EndMenuBar(); } CIMGUI_API bool igBeginMainMenuBar() { return ImGui::BeginMainMenuBar(); } CIMGUI_API void igEndMainMenuBar() { return ImGui::EndMainMenuBar(); } CIMGUI_API bool igBeginMenu(const char* label, bool enabled) { return ImGui::BeginMenu(label, enabled); } CIMGUI_API void igEndMenu() { return ImGui::EndMenu(); } CIMGUI_API bool igMenuItem_Bool(const char* label, const char* shortcut, bool selected, bool enabled) { return ImGui::MenuItem(label, shortcut, selected, enabled); } CIMGUI_API bool igMenuItem_BoolPtr(const char* label, const char* shortcut, bool* p_selected, bool enabled) { return ImGui::MenuItem(label, shortcut, p_selected, enabled); } CIMGUI_API bool igBeginTooltip() { return ImGui::BeginTooltip(); } CIMGUI_API void igEndTooltip() { return ImGui::EndTooltip(); } CIMGUI_API void igSetTooltip(const char* fmt, ...) { va_list args; va_start(args, fmt); ImGui::SetTooltipV(fmt, args); va_end(args); } CIMGUI_API void igSetTooltipV(const char* fmt, va_list args) { return ImGui::SetTooltipV(fmt, args); } CIMGUI_API bool igBeginItemTooltip() { return ImGui::BeginItemTooltip(); } CIMGUI_API void igSetItemTooltip(const char* fmt, ...) { va_list args; va_start(args, fmt); ImGui::SetItemTooltipV(fmt, args); va_end(args); } CIMGUI_API void igSetItemTooltipV(const char* fmt, va_list args) { return ImGui::SetItemTooltipV(fmt, args); } CIMGUI_API bool igBeginPopup(const char* str_id, ImGuiWindowFlags flags) { return ImGui::BeginPopup(str_id, flags); } CIMGUI_API bool igBeginPopupModal(const char* name, bool* p_open, ImGuiWindowFlags flags) { return ImGui::BeginPopupModal(name, p_open, flags); } CIMGUI_API void igEndPopup() { return ImGui::EndPopup(); } CIMGUI_API void 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) { return ImGui::OpenPopup(id, popup_flags); } CIMGUI_API void igOpenPopupOnItemClick(const char* str_id, ImGuiPopupFlags popup_flags) { return ImGui::OpenPopupOnItemClick(str_id, popup_flags); } CIMGUI_API void igCloseCurrentPopup() { return ImGui::CloseCurrentPopup(); } CIMGUI_API bool igBeginPopupContextItem(const char* str_id, ImGuiPopupFlags popup_flags) { return ImGui::BeginPopupContextItem(str_id, popup_flags); } CIMGUI_API bool igBeginPopupContextWindow(const char* str_id, ImGuiPopupFlags popup_flags) { return ImGui::BeginPopupContextWindow(str_id, popup_flags); } CIMGUI_API bool igBeginPopupContextVoid(const char* str_id, ImGuiPopupFlags popup_flags) { return ImGui::BeginPopupContextVoid(str_id, popup_flags); } CIMGUI_API bool igIsPopupOpen_Str(const char* str_id, ImGuiPopupFlags flags) { return ImGui::IsPopupOpen(str_id, flags); } CIMGUI_API bool igBeginTable(const char* str_id, int column, ImGuiTableFlags flags, const ImVec2 outer_size, float inner_width) { return ImGui::BeginTable(str_id, column, flags, outer_size, inner_width); } CIMGUI_API void igEndTable() { return ImGui::EndTable(); } CIMGUI_API void igTableNextRow(ImGuiTableRowFlags row_flags, float min_row_height) { return ImGui::TableNextRow(row_flags, min_row_height); } CIMGUI_API bool igTableNextColumn() { return ImGui::TableNextColumn(); } 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) { return ImGui::TableSetupColumn(label, flags, init_width_or_weight, user_id); } CIMGUI_API void igTableSetupScrollFreeze(int cols, int rows) { return ImGui::TableSetupScrollFreeze(cols, rows); } CIMGUI_API void igTableHeader(const char* label) { return ImGui::TableHeader(label); } CIMGUI_API void igTableHeadersRow() { return ImGui::TableHeadersRow(); } CIMGUI_API void igTableAngledHeadersRow() { return ImGui::TableAngledHeadersRow(); } CIMGUI_API ImGuiTableSortSpecs* igTableGetSortSpecs() { return ImGui::TableGetSortSpecs(); } CIMGUI_API int igTableGetColumnCount() { return ImGui::TableGetColumnCount(); } CIMGUI_API int igTableGetColumnIndex() { return ImGui::TableGetColumnIndex(); } CIMGUI_API int igTableGetRowIndex() { return ImGui::TableGetRowIndex(); } CIMGUI_API const char* igTableGetColumnName_Int(int column_n) { return ImGui::TableGetColumnName(column_n); } CIMGUI_API ImGuiTableColumnFlags igTableGetColumnFlags(int column_n) { return ImGui::TableGetColumnFlags(column_n); } CIMGUI_API void igTableSetColumnEnabled(int column_n, bool v) { return ImGui::TableSetColumnEnabled(column_n, v); } CIMGUI_API void igTableSetBgColor(ImGuiTableBgTarget target, ImU32 color, int column_n) { return ImGui::TableSetBgColor(target, color, column_n); } CIMGUI_API void igColumns(int count, const char* id, bool border) { return ImGui::Columns(count, id, border); } CIMGUI_API void igNextColumn() { return ImGui::NextColumn(); } CIMGUI_API int igGetColumnIndex() { return ImGui::GetColumnIndex(); } CIMGUI_API float igGetColumnWidth(int column_index) { return ImGui::GetColumnWidth(column_index); } CIMGUI_API void igSetColumnWidth(int column_index, float width) { return ImGui::SetColumnWidth(column_index, width); } CIMGUI_API float igGetColumnOffset(int column_index) { return ImGui::GetColumnOffset(column_index); } CIMGUI_API void igSetColumnOffset(int column_index, float offset_x) { return ImGui::SetColumnOffset(column_index, offset_x); } CIMGUI_API int igGetColumnsCount() { return ImGui::GetColumnsCount(); } CIMGUI_API bool igBeginTabBar(const char* str_id, ImGuiTabBarFlags flags) { return ImGui::BeginTabBar(str_id, flags); } CIMGUI_API void igEndTabBar() { return ImGui::EndTabBar(); } CIMGUI_API bool igBeginTabItem(const char* label, bool* p_open, ImGuiTabItemFlags flags) { return ImGui::BeginTabItem(label, p_open, flags); } CIMGUI_API void igEndTabItem() { return ImGui::EndTabItem(); } CIMGUI_API bool igTabItemButton(const char* label, ImGuiTabItemFlags flags) { return ImGui::TabItemButton(label, flags); } CIMGUI_API void igSetTabItemClosed(const char* tab_or_docked_window_label) { return ImGui::SetTabItemClosed(tab_or_docked_window_label); } CIMGUI_API ImGuiID igDockSpace(ImGuiID id, const ImVec2 size, ImGuiDockNodeFlags flags, const ImGuiWindowClass* window_class) { return ImGui::DockSpace(id, size, flags, window_class); } CIMGUI_API ImGuiID igDockSpaceOverViewport(const ImGuiViewport* viewport, ImGuiDockNodeFlags flags, const ImGuiWindowClass* window_class) { return ImGui::DockSpaceOverViewport(viewport, flags, window_class); } CIMGUI_API void igSetNextWindowDockID(ImGuiID dock_id, ImGuiCond cond) { return ImGui::SetNextWindowDockID(dock_id, cond); } CIMGUI_API void igSetNextWindowClass(const ImGuiWindowClass* window_class) { return ImGui::SetNextWindowClass(window_class); } CIMGUI_API ImGuiID igGetWindowDockID() { return ImGui::GetWindowDockID(); } CIMGUI_API bool igIsWindowDocked() { return ImGui::IsWindowDocked(); } CIMGUI_API void igLogToTTY(int auto_open_depth) { return ImGui::LogToTTY(auto_open_depth); } CIMGUI_API void igLogToFile(int auto_open_depth, const char* filename) { return ImGui::LogToFile(auto_open_depth, filename); } CIMGUI_API void igLogToClipboard(int auto_open_depth) { return ImGui::LogToClipboard(auto_open_depth); } CIMGUI_API void igLogFinish() { return ImGui::LogFinish(); } CIMGUI_API void igLogButtons() { return ImGui::LogButtons(); } CIMGUI_API void igLogTextV(const char* fmt, va_list args) { return ImGui::LogTextV(fmt, args); } CIMGUI_API bool igBeginDragDropSource(ImGuiDragDropFlags flags) { return ImGui::BeginDragDropSource(flags); } CIMGUI_API bool igSetDragDropPayload(const char* type, const void* data, size_t sz, ImGuiCond cond) { return ImGui::SetDragDropPayload(type, data, sz, cond); } CIMGUI_API void igEndDragDropSource() { return ImGui::EndDragDropSource(); } CIMGUI_API bool igBeginDragDropTarget() { return ImGui::BeginDragDropTarget(); } CIMGUI_API const ImGuiPayload* igAcceptDragDropPayload( const char* type, ImGuiDragDropFlags flags) { return ImGui::AcceptDragDropPayload(type, flags); } CIMGUI_API void igEndDragDropTarget() { return ImGui::EndDragDropTarget(); } CIMGUI_API const ImGuiPayload* igGetDragDropPayload() { return ImGui::GetDragDropPayload(); } CIMGUI_API void igBeginDisabled(bool disabled) { return ImGui::BeginDisabled(disabled); } CIMGUI_API void igEndDisabled() { return ImGui::EndDisabled(); } CIMGUI_API void igPushClipRect(const ImVec2 clip_rect_min, const ImVec2 clip_rect_max, bool intersect_with_current_clip_rect) { return ImGui::PushClipRect(clip_rect_min, clip_rect_max, intersect_with_current_clip_rect); } CIMGUI_API void igPopClipRect() { return ImGui::PopClipRect(); } CIMGUI_API void igSetItemDefaultFocus() { return ImGui::SetItemDefaultFocus(); } CIMGUI_API void igSetKeyboardFocusHere(int offset) { return ImGui::SetKeyboardFocusHere(offset); } CIMGUI_API void igSetNextItemAllowOverlap() { return ImGui::SetNextItemAllowOverlap(); } CIMGUI_API bool igIsItemHovered(ImGuiHoveredFlags flags) { return ImGui::IsItemHovered(flags); } CIMGUI_API bool igIsItemActive() { return ImGui::IsItemActive(); } CIMGUI_API bool igIsItemFocused() { return ImGui::IsItemFocused(); } CIMGUI_API bool igIsItemClicked(ImGuiMouseButton mouse_button) { return ImGui::IsItemClicked(mouse_button); } CIMGUI_API bool igIsItemVisible() { return ImGui::IsItemVisible(); } CIMGUI_API bool igIsItemEdited() { return ImGui::IsItemEdited(); } CIMGUI_API bool igIsItemActivated() { return ImGui::IsItemActivated(); } CIMGUI_API bool igIsItemDeactivated() { return ImGui::IsItemDeactivated(); } CIMGUI_API bool igIsItemDeactivatedAfterEdit() { return ImGui::IsItemDeactivatedAfterEdit(); } CIMGUI_API bool igIsItemToggledOpen() { return ImGui::IsItemToggledOpen(); } CIMGUI_API bool igIsAnyItemHovered() { return ImGui::IsAnyItemHovered(); } CIMGUI_API bool igIsAnyItemActive() { return ImGui::IsAnyItemActive(); } CIMGUI_API bool igIsAnyItemFocused() { return ImGui::IsAnyItemFocused(); } CIMGUI_API ImGuiID igGetItemID() { return ImGui::GetItemID(); } CIMGUI_API void igGetItemRectMin(ImVec2* pOut) { *pOut = ImGui::GetItemRectMin(); } CIMGUI_API void igGetItemRectMax(ImVec2* pOut) { *pOut = ImGui::GetItemRectMax(); } CIMGUI_API void igGetItemRectSize(ImVec2* pOut) { *pOut = ImGui::GetItemRectSize(); } CIMGUI_API ImGuiViewport* igGetMainViewport() { return ImGui::GetMainViewport(); } CIMGUI_API ImDrawList* igGetBackgroundDrawList_Nil() { return ImGui::GetBackgroundDrawList(); } CIMGUI_API ImDrawList* igGetForegroundDrawList_Nil() { return ImGui::GetForegroundDrawList(); } CIMGUI_API ImDrawList* igGetBackgroundDrawList_ViewportPtr( ImGuiViewport* viewport) { return ImGui::GetBackgroundDrawList(viewport); } CIMGUI_API ImDrawList* igGetForegroundDrawList_ViewportPtr( ImGuiViewport* viewport) { return ImGui::GetForegroundDrawList(viewport); } CIMGUI_API bool igIsRectVisible_Nil(const ImVec2 size) { return ImGui::IsRectVisible(size); } CIMGUI_API bool igIsRectVisible_Vec2(const ImVec2 rect_min, const ImVec2 rect_max) { return ImGui::IsRectVisible(rect_min, rect_max); } CIMGUI_API double igGetTime() { return ImGui::GetTime(); } CIMGUI_API int igGetFrameCount() { return ImGui::GetFrameCount(); } CIMGUI_API ImDrawListSharedData* igGetDrawListSharedData() { return ImGui::GetDrawListSharedData(); } CIMGUI_API const char* igGetStyleColorName(ImGuiCol idx) { return ImGui::GetStyleColorName(idx); } CIMGUI_API void igSetStateStorage(ImGuiStorage* storage) { return ImGui::SetStateStorage(storage); } CIMGUI_API ImGuiStorage* igGetStateStorage() { return ImGui::GetStateStorage(); } CIMGUI_API void igCalcTextSize(ImVec2* pOut, const char* text, const char* text_end, bool hide_text_after_double_hash, float wrap_width) { *pOut = ImGui::CalcTextSize(text, text_end, hide_text_after_double_hash, wrap_width); } CIMGUI_API void igColorConvertU32ToFloat4(ImVec4* pOut, ImU32 in) { *pOut = ImGui::ColorConvertU32ToFloat4(in); } CIMGUI_API ImU32 igColorConvertFloat4ToU32(const ImVec4 in) { return ImGui::ColorConvertFloat4ToU32(in); } CIMGUI_API void igColorConvertRGBtoHSV(float r, float g, float b, float* out_h, float* out_s, float* out_v) { return ImGui::ColorConvertRGBtoHSV(r, g, b, *out_h, *out_s, *out_v); } CIMGUI_API void igColorConvertHSVtoRGB(float h, float s, float v, float* out_r, float* out_g, float* out_b) { return ImGui::ColorConvertHSVtoRGB(h, s, v, *out_r, *out_g, *out_b); } CIMGUI_API bool igIsKeyDown_Nil(ImGuiKey key) { return ImGui::IsKeyDown(key); } CIMGUI_API bool igIsKeyPressed_Bool(ImGuiKey key, bool repeat) { return ImGui::IsKeyPressed(key, repeat); } CIMGUI_API bool igIsKeyReleased_Nil(ImGuiKey key) { return ImGui::IsKeyReleased(key); } CIMGUI_API bool igIsKeyChordPressed_Nil(ImGuiKeyChord key_chord) { return ImGui::IsKeyChordPressed(key_chord); } CIMGUI_API int igGetKeyPressedAmount(ImGuiKey key, float repeat_delay, float rate) { return ImGui::GetKeyPressedAmount(key, repeat_delay, rate); } CIMGUI_API const char* igGetKeyName(ImGuiKey key) { return ImGui::GetKeyName(key); } CIMGUI_API void igSetNextFrameWantCaptureKeyboard(bool want_capture_keyboard) { return ImGui::SetNextFrameWantCaptureKeyboard(want_capture_keyboard); } CIMGUI_API bool igIsMouseDown_Nil(ImGuiMouseButton button) { return ImGui::IsMouseDown(button); } CIMGUI_API bool igIsMouseClicked_Bool(ImGuiMouseButton button, bool repeat) { return ImGui::IsMouseClicked(button, repeat); } CIMGUI_API bool igIsMouseReleased_Nil(ImGuiMouseButton button) { return ImGui::IsMouseReleased(button); } CIMGUI_API bool igIsMouseDoubleClicked_Nil(ImGuiMouseButton button) { return ImGui::IsMouseDoubleClicked(button); } CIMGUI_API int igGetMouseClickedCount(ImGuiMouseButton button) { return ImGui::GetMouseClickedCount(button); } CIMGUI_API bool igIsMouseHoveringRect(const ImVec2 r_min, const ImVec2 r_max, bool clip) { return ImGui::IsMouseHoveringRect(r_min, r_max, clip); } CIMGUI_API bool igIsMousePosValid(const ImVec2* mouse_pos) { return ImGui::IsMousePosValid(mouse_pos); } CIMGUI_API bool igIsAnyMouseDown() { return ImGui::IsAnyMouseDown(); } CIMGUI_API void igGetMousePos(ImVec2* pOut) { *pOut = ImGui::GetMousePos(); } CIMGUI_API void igGetMousePosOnOpeningCurrentPopup(ImVec2* pOut) { *pOut = ImGui::GetMousePosOnOpeningCurrentPopup(); } CIMGUI_API bool igIsMouseDragging(ImGuiMouseButton button, float lock_threshold) { return ImGui::IsMouseDragging(button, lock_threshold); } CIMGUI_API void igGetMouseDragDelta(ImVec2* pOut, ImGuiMouseButton button, float lock_threshold) { *pOut = ImGui::GetMouseDragDelta(button, lock_threshold); } CIMGUI_API void igResetMouseDragDelta(ImGuiMouseButton button) { return ImGui::ResetMouseDragDelta(button); } CIMGUI_API ImGuiMouseCursor igGetMouseCursor() { return ImGui::GetMouseCursor(); } CIMGUI_API void igSetMouseCursor(ImGuiMouseCursor cursor_type) { return ImGui::SetMouseCursor(cursor_type); } CIMGUI_API void igSetNextFrameWantCaptureMouse(bool want_capture_mouse) { return ImGui::SetNextFrameWantCaptureMouse(want_capture_mouse); } CIMGUI_API const char* igGetClipboardText() { return ImGui::GetClipboardText(); } CIMGUI_API void igSetClipboardText(const char* text) { return ImGui::SetClipboardText(text); } CIMGUI_API void igLoadIniSettingsFromDisk(const char* ini_filename) { return ImGui::LoadIniSettingsFromDisk(ini_filename); } CIMGUI_API void igLoadIniSettingsFromMemory(const char* ini_data, size_t ini_size) { return ImGui::LoadIniSettingsFromMemory(ini_data, ini_size); } CIMGUI_API void igSaveIniSettingsToDisk(const char* ini_filename) { return ImGui::SaveIniSettingsToDisk(ini_filename); } CIMGUI_API const char* igSaveIniSettingsToMemory(size_t* out_ini_size) { return ImGui::SaveIniSettingsToMemory(out_ini_size); } CIMGUI_API void igDebugTextEncoding(const char* text) { return ImGui::DebugTextEncoding(text); } CIMGUI_API void igDebugFlashStyleColor(ImGuiCol idx) { return ImGui::DebugFlashStyleColor(idx); } CIMGUI_API void igDebugStartItemPicker() { return ImGui::DebugStartItemPicker(); } CIMGUI_API bool igDebugCheckVersionAndDataLayout(const char* version_str, size_t sz_io, size_t sz_style, size_t sz_vec2, size_t sz_vec4, size_t sz_drawvert, size_t sz_drawidx) { return ImGui::DebugCheckVersionAndDataLayout( version_str, sz_io, sz_style, sz_vec2, sz_vec4, sz_drawvert, sz_drawidx); } CIMGUI_API void igSetAllocatorFunctions(ImGuiMemAllocFunc alloc_func, ImGuiMemFreeFunc free_func, void* user_data) { return ImGui::SetAllocatorFunctions(alloc_func, free_func, user_data); } CIMGUI_API void igGetAllocatorFunctions(ImGuiMemAllocFunc* p_alloc_func, ImGuiMemFreeFunc* p_free_func, void** p_user_data) { return ImGui::GetAllocatorFunctions(p_alloc_func, p_free_func, p_user_data); } CIMGUI_API void* igMemAlloc(size_t size) { return ImGui::MemAlloc(size); } CIMGUI_API void igMemFree(void* ptr) { return ImGui::MemFree(ptr); } CIMGUI_API ImGuiPlatformIO* igGetPlatformIO() { return &ImGui::GetPlatformIO(); } CIMGUI_API void igUpdatePlatformWindows() { return ImGui::UpdatePlatformWindows(); } CIMGUI_API void igRenderPlatformWindowsDefault(void* platform_render_arg, void* renderer_render_arg) { return ImGui::RenderPlatformWindowsDefault(platform_render_arg, renderer_render_arg); } CIMGUI_API void igDestroyPlatformWindows() { return ImGui::DestroyPlatformWindows(); } CIMGUI_API ImGuiViewport* igFindViewportByID(ImGuiID id) { return ImGui::FindViewportByID(id); } CIMGUI_API ImGuiViewport* igFindViewportByPlatformHandle( void* platform_handle) { return ImGui::FindViewportByPlatformHandle(platform_handle); } CIMGUI_API ImGuiTableSortSpecs* ImGuiTableSortSpecs_ImGuiTableSortSpecs(void) { return IM_NEW(ImGuiTableSortSpecs)(); } CIMGUI_API void ImGuiTableSortSpecs_destroy(ImGuiTableSortSpecs* self) { IM_DELETE(self); } CIMGUI_API ImGuiTableColumnSortSpecs* ImGuiTableColumnSortSpecs_ImGuiTableColumnSortSpecs(void) { return IM_NEW(ImGuiTableColumnSortSpecs)(); } CIMGUI_API void ImGuiTableColumnSortSpecs_destroy( ImGuiTableColumnSortSpecs* self) { IM_DELETE(self); } CIMGUI_API ImGuiStyle* ImGuiStyle_ImGuiStyle(void) { return IM_NEW(ImGuiStyle)(); } CIMGUI_API void ImGuiStyle_destroy(ImGuiStyle* self) { IM_DELETE(self); } CIMGUI_API void ImGuiStyle_ScaleAllSizes(ImGuiStyle* self, float scale_factor) { return self->ScaleAllSizes(scale_factor); } CIMGUI_API void ImGuiIO_AddKeyEvent(ImGuiIO* self, ImGuiKey key, bool down) { return self->AddKeyEvent(key, down); } CIMGUI_API void ImGuiIO_AddKeyAnalogEvent(ImGuiIO* self, ImGuiKey key, bool down, float v) { return self->AddKeyAnalogEvent(key, down, v); } CIMGUI_API void ImGuiIO_AddMousePosEvent(ImGuiIO* self, float x, float y) { return self->AddMousePosEvent(x, y); } CIMGUI_API void ImGuiIO_AddMouseButtonEvent(ImGuiIO* self, int button, bool down) { return self->AddMouseButtonEvent(button, down); } CIMGUI_API void ImGuiIO_AddMouseWheelEvent(ImGuiIO* self, float wheel_x, float wheel_y) { return self->AddMouseWheelEvent(wheel_x, wheel_y); } CIMGUI_API void ImGuiIO_AddMouseSourceEvent(ImGuiIO* self, ImGuiMouseSource source) { return self->AddMouseSourceEvent(source); } CIMGUI_API void ImGuiIO_AddMouseViewportEvent(ImGuiIO* self, ImGuiID id) { return self->AddMouseViewportEvent(id); } CIMGUI_API void ImGuiIO_AddFocusEvent(ImGuiIO* self, bool focused) { return self->AddFocusEvent(focused); } CIMGUI_API void ImGuiIO_AddInputCharacter(ImGuiIO* self, unsigned int c) { return self->AddInputCharacter(c); } CIMGUI_API void ImGuiIO_AddInputCharacterUTF16(ImGuiIO* self, ImWchar16 c) { return self->AddInputCharacterUTF16(c); } CIMGUI_API void ImGuiIO_AddInputCharactersUTF8(ImGuiIO* self, const char* str) { return self->AddInputCharactersUTF8(str); } CIMGUI_API void ImGuiIO_SetKeyEventNativeData(ImGuiIO* self, ImGuiKey key, int native_keycode, int native_scancode, int native_legacy_index) { return self->SetKeyEventNativeData(key, native_keycode, native_scancode, native_legacy_index); } CIMGUI_API void ImGuiIO_SetAppAcceptingEvents(ImGuiIO* self, bool accepting_events) { return self->SetAppAcceptingEvents(accepting_events); } CIMGUI_API void ImGuiIO_ClearEventsQueue(ImGuiIO* self) { return self->ClearEventsQueue(); } CIMGUI_API void ImGuiIO_ClearInputKeys(ImGuiIO* self) { return self->ClearInputKeys(); } CIMGUI_API ImGuiIO* ImGuiIO_ImGuiIO(void) { return IM_NEW(ImGuiIO)(); } CIMGUI_API void ImGuiIO_destroy(ImGuiIO* self) { IM_DELETE(self); } CIMGUI_API ImGuiInputTextCallbackData* ImGuiInputTextCallbackData_ImGuiInputTextCallbackData(void) { return IM_NEW(ImGuiInputTextCallbackData)(); } CIMGUI_API void ImGuiInputTextCallbackData_destroy( ImGuiInputTextCallbackData* self) { IM_DELETE(self); } CIMGUI_API void ImGuiInputTextCallbackData_DeleteChars( ImGuiInputTextCallbackData* self, int pos, int bytes_count) { return self->DeleteChars(pos, bytes_count); } CIMGUI_API void ImGuiInputTextCallbackData_InsertChars( ImGuiInputTextCallbackData* self, int pos, const char* text, const char* text_end) { return self->InsertChars(pos, text, text_end); } CIMGUI_API void ImGuiInputTextCallbackData_SelectAll( ImGuiInputTextCallbackData* self) { return self->SelectAll(); } CIMGUI_API void ImGuiInputTextCallbackData_ClearSelection( ImGuiInputTextCallbackData* self) { return self->ClearSelection(); } CIMGUI_API bool ImGuiInputTextCallbackData_HasSelection( ImGuiInputTextCallbackData* self) { return self->HasSelection(); } CIMGUI_API ImGuiWindowClass* ImGuiWindowClass_ImGuiWindowClass(void) { return IM_NEW(ImGuiWindowClass)(); } CIMGUI_API void ImGuiWindowClass_destroy(ImGuiWindowClass* self) { IM_DELETE(self); } CIMGUI_API ImGuiPayload* ImGuiPayload_ImGuiPayload(void) { return IM_NEW(ImGuiPayload)(); } CIMGUI_API void ImGuiPayload_destroy(ImGuiPayload* self) { IM_DELETE(self); } CIMGUI_API void ImGuiPayload_Clear(ImGuiPayload* self) { return self->Clear(); } CIMGUI_API bool ImGuiPayload_IsDataType(ImGuiPayload* self, const char* type) { return self->IsDataType(type); } CIMGUI_API bool ImGuiPayload_IsPreview(ImGuiPayload* self) { return self->IsPreview(); } CIMGUI_API bool ImGuiPayload_IsDelivery(ImGuiPayload* self) { return self->IsDelivery(); } CIMGUI_API ImGuiOnceUponAFrame* ImGuiOnceUponAFrame_ImGuiOnceUponAFrame(void) { return IM_NEW(ImGuiOnceUponAFrame)(); } CIMGUI_API void ImGuiOnceUponAFrame_destroy(ImGuiOnceUponAFrame* self) { IM_DELETE(self); } CIMGUI_API ImGuiTextFilter* ImGuiTextFilter_ImGuiTextFilter( const char* default_filter) { return IM_NEW(ImGuiTextFilter)(default_filter); } CIMGUI_API void ImGuiTextFilter_destroy(ImGuiTextFilter* self) { IM_DELETE(self); } CIMGUI_API bool ImGuiTextFilter_Draw(ImGuiTextFilter* self, const char* label, float width) { return self->Draw(label, width); } CIMGUI_API bool ImGuiTextFilter_PassFilter(ImGuiTextFilter* self, const char* text, const char* text_end) { return self->PassFilter(text, text_end); } CIMGUI_API void ImGuiTextFilter_Build(ImGuiTextFilter* self) { return self->Build(); } CIMGUI_API void ImGuiTextFilter_Clear(ImGuiTextFilter* self) { return self->Clear(); } CIMGUI_API bool ImGuiTextFilter_IsActive(ImGuiTextFilter* self) { return self->IsActive(); } CIMGUI_API ImGuiTextRange* ImGuiTextRange_ImGuiTextRange_Nil(void) { return IM_NEW(ImGuiTextRange)(); } CIMGUI_API void ImGuiTextRange_destroy(ImGuiTextRange* self) { IM_DELETE(self); } CIMGUI_API ImGuiTextRange* ImGuiTextRange_ImGuiTextRange_Str(const char* _b, const char* _e) { return IM_NEW(ImGuiTextRange)(_b, _e); } CIMGUI_API bool ImGuiTextRange_empty(ImGuiTextRange* self) { return self->empty(); } CIMGUI_API void ImGuiTextRange_split(ImGuiTextRange* self, char separator, ImVector_ImGuiTextRange* out) { return self->split(separator, out); } CIMGUI_API ImGuiTextBuffer* ImGuiTextBuffer_ImGuiTextBuffer(void) { return IM_NEW(ImGuiTextBuffer)(); } CIMGUI_API void ImGuiTextBuffer_destroy(ImGuiTextBuffer* self) { IM_DELETE(self); } CIMGUI_API const char* ImGuiTextBuffer_begin(ImGuiTextBuffer* self) { return self->begin(); } CIMGUI_API const char* ImGuiTextBuffer_end(ImGuiTextBuffer* self) { return self->end(); } CIMGUI_API int ImGuiTextBuffer_size(ImGuiTextBuffer* self) { return self->size(); } CIMGUI_API bool ImGuiTextBuffer_empty(ImGuiTextBuffer* self) { return self->empty(); } CIMGUI_API void ImGuiTextBuffer_clear(ImGuiTextBuffer* self) { return self->clear(); } CIMGUI_API void ImGuiTextBuffer_reserve(ImGuiTextBuffer* self, int capacity) { return self->reserve(capacity); } CIMGUI_API const char* ImGuiTextBuffer_c_str(ImGuiTextBuffer* self) { return self->c_str(); } CIMGUI_API void ImGuiTextBuffer_append(ImGuiTextBuffer* self, const char* str, const char* str_end) { return self->append(str, str_end); } CIMGUI_API void ImGuiTextBuffer_appendfv(ImGuiTextBuffer* self, const char* fmt, va_list args) { return self->appendfv(fmt, args); } CIMGUI_API ImGuiStoragePair* ImGuiStoragePair_ImGuiStoragePair_Int(ImGuiID _key, int _val) { return IM_NEW(ImGuiStoragePair)(_key, _val); } CIMGUI_API void ImGuiStoragePair_destroy(ImGuiStoragePair* self) { IM_DELETE(self); } CIMGUI_API ImGuiStoragePair* ImGuiStoragePair_ImGuiStoragePair_Float( ImGuiID _key, float _val) { return IM_NEW(ImGuiStoragePair)(_key, _val); } CIMGUI_API ImGuiStoragePair* ImGuiStoragePair_ImGuiStoragePair_Ptr(ImGuiID _key, void* _val) { return IM_NEW(ImGuiStoragePair)(_key, _val); } CIMGUI_API void ImGuiStorage_Clear(ImGuiStorage* self) { return self->Clear(); } CIMGUI_API int ImGuiStorage_GetInt(ImGuiStorage* self, ImGuiID key, int default_val) { return self->GetInt(key, default_val); } CIMGUI_API void ImGuiStorage_SetInt(ImGuiStorage* self, ImGuiID key, int val) { return self->SetInt(key, val); } CIMGUI_API bool ImGuiStorage_GetBool(ImGuiStorage* self, ImGuiID key, bool default_val) { return self->GetBool(key, default_val); } CIMGUI_API void ImGuiStorage_SetBool(ImGuiStorage* self, ImGuiID key, bool val) { return self->SetBool(key, val); } CIMGUI_API float ImGuiStorage_GetFloat(ImGuiStorage* self, ImGuiID key, float default_val) { return self->GetFloat(key, default_val); } CIMGUI_API void ImGuiStorage_SetFloat(ImGuiStorage* self, ImGuiID key, float val) { return self->SetFloat(key, val); } CIMGUI_API void* ImGuiStorage_GetVoidPtr(ImGuiStorage* self, ImGuiID key) { return self->GetVoidPtr(key); } CIMGUI_API void ImGuiStorage_SetVoidPtr(ImGuiStorage* self, ImGuiID key, void* val) { return self->SetVoidPtr(key, val); } CIMGUI_API int* ImGuiStorage_GetIntRef(ImGuiStorage* self, ImGuiID key, int default_val) { return self->GetIntRef(key, default_val); } CIMGUI_API bool* ImGuiStorage_GetBoolRef(ImGuiStorage* self, ImGuiID key, bool default_val) { return self->GetBoolRef(key, default_val); } CIMGUI_API float* ImGuiStorage_GetFloatRef(ImGuiStorage* self, ImGuiID key, float default_val) { return self->GetFloatRef(key, default_val); } CIMGUI_API void** ImGuiStorage_GetVoidPtrRef(ImGuiStorage* self, ImGuiID key, void* default_val) { return self->GetVoidPtrRef(key, default_val); } CIMGUI_API void ImGuiStorage_BuildSortByKey(ImGuiStorage* self) { return self->BuildSortByKey(); } CIMGUI_API void ImGuiStorage_SetAllInt(ImGuiStorage* self, int val) { return self->SetAllInt(val); } CIMGUI_API ImGuiListClipper* ImGuiListClipper_ImGuiListClipper(void) { return IM_NEW(ImGuiListClipper)(); } CIMGUI_API void ImGuiListClipper_destroy(ImGuiListClipper* self) { IM_DELETE(self); } CIMGUI_API void ImGuiListClipper_Begin(ImGuiListClipper* self, int items_count, float items_height) { return self->Begin(items_count, items_height); } CIMGUI_API void ImGuiListClipper_End(ImGuiListClipper* self) { return self->End(); } CIMGUI_API bool ImGuiListClipper_Step(ImGuiListClipper* self) { return self->Step(); } CIMGUI_API void ImGuiListClipper_IncludeItemByIndex(ImGuiListClipper* self, int item_index) { return self->IncludeItemByIndex(item_index); } CIMGUI_API void ImGuiListClipper_IncludeItemsByIndex(ImGuiListClipper* self, int item_begin, int item_end) { return self->IncludeItemsByIndex(item_begin, item_end); } CIMGUI_API ImColor* ImColor_ImColor_Nil(void) { return IM_NEW(ImColor)(); } CIMGUI_API void ImColor_destroy(ImColor* self) { IM_DELETE(self); } CIMGUI_API ImColor* ImColor_ImColor_Float(float r, float g, float b, float a) { return IM_NEW(ImColor)(r, g, b, a); } CIMGUI_API ImColor* ImColor_ImColor_Vec4(const ImVec4 col) { return IM_NEW(ImColor)(col); } CIMGUI_API ImColor* ImColor_ImColor_Int(int r, int g, int b, int a) { return IM_NEW(ImColor)(r, g, b, a); } CIMGUI_API ImColor* ImColor_ImColor_U32(ImU32 rgba) { return IM_NEW(ImColor)(rgba); } CIMGUI_API void ImColor_SetHSV(ImColor* self, float h, float s, float v, float a) { return self->SetHSV(h, s, v, a); } CIMGUI_API void ImColor_HSV(ImColor* pOut, float h, float s, float v, float a) { *pOut = ImColor::HSV(h, s, v, a); } CIMGUI_API ImDrawCmd* ImDrawCmd_ImDrawCmd(void) { return IM_NEW(ImDrawCmd)(); } CIMGUI_API void ImDrawCmd_destroy(ImDrawCmd* self) { IM_DELETE(self); } CIMGUI_API ImTextureID ImDrawCmd_GetTexID(ImDrawCmd* self) { return self->GetTexID(); } CIMGUI_API ImDrawListSplitter* ImDrawListSplitter_ImDrawListSplitter(void) { return IM_NEW(ImDrawListSplitter)(); } CIMGUI_API void ImDrawListSplitter_destroy(ImDrawListSplitter* self) { IM_DELETE(self); } CIMGUI_API void ImDrawListSplitter_Clear(ImDrawListSplitter* self) { return self->Clear(); } CIMGUI_API void ImDrawListSplitter_ClearFreeMemory(ImDrawListSplitter* self) { return self->ClearFreeMemory(); } CIMGUI_API void ImDrawListSplitter_Split(ImDrawListSplitter* self, ImDrawList* draw_list, int count) { return self->Split(draw_list, count); } CIMGUI_API void ImDrawListSplitter_Merge(ImDrawListSplitter* self, ImDrawList* draw_list) { return self->Merge(draw_list); } CIMGUI_API void ImDrawListSplitter_SetCurrentChannel(ImDrawListSplitter* self, ImDrawList* draw_list, int channel_idx) { return self->SetCurrentChannel(draw_list, channel_idx); } CIMGUI_API ImDrawList* ImDrawList_ImDrawList( ImDrawListSharedData* shared_data) { return IM_NEW(ImDrawList)(shared_data); } CIMGUI_API void ImDrawList_destroy(ImDrawList* self) { IM_DELETE(self); } CIMGUI_API void ImDrawList_PushClipRect(ImDrawList* self, const ImVec2 clip_rect_min, const ImVec2 clip_rect_max, bool intersect_with_current_clip_rect) { return self->PushClipRect(clip_rect_min, clip_rect_max, intersect_with_current_clip_rect); } CIMGUI_API void ImDrawList_PushClipRectFullScreen(ImDrawList* self) { return self->PushClipRectFullScreen(); } CIMGUI_API void ImDrawList_PopClipRect(ImDrawList* self) { return self->PopClipRect(); } CIMGUI_API void ImDrawList_PushTextureID(ImDrawList* self, ImTextureID texture_id) { return self->PushTextureID(texture_id); } CIMGUI_API void ImDrawList_PopTextureID(ImDrawList* self) { return self->PopTextureID(); } CIMGUI_API void ImDrawList_GetClipRectMin(ImVec2* pOut, ImDrawList* self) { *pOut = self->GetClipRectMin(); } CIMGUI_API void ImDrawList_GetClipRectMax(ImVec2* pOut, ImDrawList* self) { *pOut = self->GetClipRectMax(); } CIMGUI_API void ImDrawList_AddLine(ImDrawList* self, const ImVec2 p1, const ImVec2 p2, ImU32 col, float thickness) { return self->AddLine(p1, p2, col, thickness); } CIMGUI_API void ImDrawList_AddRect(ImDrawList* self, const ImVec2 p_min, const ImVec2 p_max, ImU32 col, float rounding, ImDrawFlags flags, float thickness) { return self->AddRect(p_min, p_max, col, rounding, flags, thickness); } CIMGUI_API void ImDrawList_AddRectFilled(ImDrawList* self, const ImVec2 p_min, const ImVec2 p_max, ImU32 col, float rounding, ImDrawFlags flags) { return self->AddRectFilled(p_min, p_max, col, rounding, flags); } CIMGUI_API void ImDrawList_AddRectFilledMultiColor(ImDrawList* self, const ImVec2 p_min, const ImVec2 p_max, ImU32 col_upr_left, ImU32 col_upr_right, ImU32 col_bot_right, ImU32 col_bot_left) { return self->AddRectFilledMultiColor( p_min, p_max, col_upr_left, col_upr_right, col_bot_right, col_bot_left); } CIMGUI_API void ImDrawList_AddQuad(ImDrawList* self, const ImVec2 p1, const ImVec2 p2, const ImVec2 p3, const ImVec2 p4, ImU32 col, float thickness) { return self->AddQuad(p1, p2, p3, p4, col, thickness); } CIMGUI_API void ImDrawList_AddQuadFilled(ImDrawList* self, const ImVec2 p1, const ImVec2 p2, const ImVec2 p3, const ImVec2 p4, ImU32 col) { return self->AddQuadFilled(p1, p2, p3, p4, col); } CIMGUI_API void ImDrawList_AddTriangle(ImDrawList* self, const ImVec2 p1, const ImVec2 p2, const ImVec2 p3, ImU32 col, float thickness) { return self->AddTriangle(p1, p2, p3, col, thickness); } CIMGUI_API void ImDrawList_AddTriangleFilled(ImDrawList* self, const ImVec2 p1, const ImVec2 p2, const ImVec2 p3, ImU32 col) { return self->AddTriangleFilled(p1, p2, p3, col); } CIMGUI_API void ImDrawList_AddCircle(ImDrawList* self, const ImVec2 center, float radius, ImU32 col, int num_segments, float thickness) { return self->AddCircle(center, radius, col, num_segments, thickness); } CIMGUI_API void ImDrawList_AddCircleFilled(ImDrawList* self, const ImVec2 center, float radius, ImU32 col, int num_segments) { return self->AddCircleFilled(center, radius, col, num_segments); } CIMGUI_API void ImDrawList_AddNgon(ImDrawList* self, const ImVec2 center, float radius, ImU32 col, int num_segments, float thickness) { return self->AddNgon(center, radius, col, num_segments, thickness); } CIMGUI_API void ImDrawList_AddNgonFilled(ImDrawList* self, const ImVec2 center, float radius, ImU32 col, int num_segments) { return self->AddNgonFilled(center, radius, col, num_segments); } 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, col, rot, num_segments, thickness); } 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, 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) { return self->AddText(pos, col, text_begin, 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) { 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); } CIMGUI_API void ImDrawList_AddConvexPolyFilled(ImDrawList* self, const ImVec2* points, int num_points, ImU32 col) { return self->AddConvexPolyFilled(points, num_points, col); } CIMGUI_API void ImDrawList_AddConcavePolyFilled(ImDrawList* self, const ImVec2* points, int num_points, ImU32 col) { 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) { return self->AddImage(user_texture_id, p_min, p_max, uv_min, uv_max, 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) { return self->AddImageQuad(user_texture_id, p1, p2, p3, p4, uv1, uv2, uv3, uv4, 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) { return self->AddImageRounded(user_texture_id, p_min, p_max, uv_min, uv_max, col, rounding, flags); } CIMGUI_API void ImDrawList_PathClear(ImDrawList* self) { return self->PathClear(); } CIMGUI_API void ImDrawList_PathLineTo(ImDrawList* self, const ImVec2 pos) { return self->PathLineTo(pos); } CIMGUI_API void ImDrawList_PathLineToMergeDuplicate(ImDrawList* self, const ImVec2 pos) { return self->PathLineToMergeDuplicate(pos); } 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); } CIMGUI_API void ImDrawList_PathArcTo(ImDrawList* self, const ImVec2 center, float radius, float a_min, float a_max, int num_segments) { return self->PathArcTo(center, radius, a_min, a_max, num_segments); } CIMGUI_API void ImDrawList_PathArcToFast(ImDrawList* self, const ImVec2 center, float radius, int a_min_of_12, int a_max_of_12) { return self->PathArcToFast(center, radius, a_min_of_12, a_max_of_12); } 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, 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) { return self->PathBezierCubicCurveTo(p2, p3, p4, num_segments); } CIMGUI_API void ImDrawList_PathBezierQuadraticCurveTo(ImDrawList* self, const ImVec2 p2, const ImVec2 p3, int num_segments) { return self->PathBezierQuadraticCurveTo(p2, p3, num_segments); } CIMGUI_API void ImDrawList_PathRect(ImDrawList* self, const ImVec2 rect_min, const ImVec2 rect_max, float rounding, ImDrawFlags flags) { return self->PathRect(rect_min, rect_max, rounding, flags); } CIMGUI_API void ImDrawList_AddCallback(ImDrawList* self, ImDrawCallback callback, void* callback_data) { return self->AddCallback(callback, callback_data); } CIMGUI_API void ImDrawList_AddDrawCmd(ImDrawList* self) { return self->AddDrawCmd(); } CIMGUI_API ImDrawList* ImDrawList_CloneOutput(ImDrawList* self) { return self->CloneOutput(); } CIMGUI_API void ImDrawList_ChannelsSplit(ImDrawList* self, int count) { return self->ChannelsSplit(count); } CIMGUI_API void ImDrawList_ChannelsMerge(ImDrawList* self) { return self->ChannelsMerge(); } CIMGUI_API void ImDrawList_ChannelsSetCurrent(ImDrawList* self, int n) { return self->ChannelsSetCurrent(n); } CIMGUI_API void ImDrawList_PrimReserve(ImDrawList* self, int idx_count, int vtx_count) { return self->PrimReserve(idx_count, vtx_count); } CIMGUI_API void ImDrawList_PrimUnreserve(ImDrawList* self, int idx_count, int vtx_count) { return self->PrimUnreserve(idx_count, vtx_count); } CIMGUI_API void ImDrawList_PrimRect(ImDrawList* self, const ImVec2 a, const ImVec2 b, ImU32 col) { return self->PrimRect(a, b, col); } CIMGUI_API void ImDrawList_PrimRectUV(ImDrawList* self, const ImVec2 a, const ImVec2 b, const ImVec2 uv_a, const ImVec2 uv_b, ImU32 col) { return self->PrimRectUV(a, b, uv_a, uv_b, col); } CIMGUI_API void ImDrawList_PrimQuadUV(ImDrawList* self, const ImVec2 a, const ImVec2 b, const ImVec2 c, const ImVec2 d, const ImVec2 uv_a, const ImVec2 uv_b, const ImVec2 uv_c, const ImVec2 uv_d, ImU32 col) { return self->PrimQuadUV(a, b, c, d, uv_a, uv_b, uv_c, uv_d, col); } CIMGUI_API void ImDrawList_PrimWriteVtx(ImDrawList* self, const ImVec2 pos, const ImVec2 uv, ImU32 col) { return self->PrimWriteVtx(pos, uv, col); } CIMGUI_API void ImDrawList_PrimWriteIdx(ImDrawList* self, ImDrawIdx idx) { return self->PrimWriteIdx(idx); } CIMGUI_API void ImDrawList_PrimVtx(ImDrawList* self, const ImVec2 pos, const ImVec2 uv, ImU32 col) { return self->PrimVtx(pos, uv, col); } CIMGUI_API void ImDrawList__ResetForNewFrame(ImDrawList* self) { return self->_ResetForNewFrame(); } CIMGUI_API void ImDrawList__ClearFreeMemory(ImDrawList* self) { return self->_ClearFreeMemory(); } CIMGUI_API void ImDrawList__PopUnusedDrawCmd(ImDrawList* self) { return self->_PopUnusedDrawCmd(); } CIMGUI_API void ImDrawList__TryMergeDrawCmds(ImDrawList* self) { return self->_TryMergeDrawCmds(); } CIMGUI_API void ImDrawList__OnChangedClipRect(ImDrawList* self) { return self->_OnChangedClipRect(); } CIMGUI_API void ImDrawList__OnChangedTextureID(ImDrawList* self) { return self->_OnChangedTextureID(); } CIMGUI_API void ImDrawList__OnChangedVtxOffset(ImDrawList* self) { return self->_OnChangedVtxOffset(); } CIMGUI_API int ImDrawList__CalcCircleAutoSegmentCount(ImDrawList* self, float radius) { return self->_CalcCircleAutoSegmentCount(radius); } CIMGUI_API void ImDrawList__PathArcToFastEx(ImDrawList* self, const ImVec2 center, float radius, int a_min_sample, int a_max_sample, int a_step) { return self->_PathArcToFastEx(center, radius, a_min_sample, a_max_sample, a_step); } CIMGUI_API void ImDrawList__PathArcToN(ImDrawList* self, const ImVec2 center, float radius, float a_min, float a_max, int num_segments) { return self->_PathArcToN(center, radius, a_min, a_max, num_segments); } CIMGUI_API ImDrawData* ImDrawData_ImDrawData(void) { return IM_NEW(ImDrawData)(); } CIMGUI_API void ImDrawData_destroy(ImDrawData* self) { IM_DELETE(self); } CIMGUI_API void ImDrawData_Clear(ImDrawData* self) { return self->Clear(); } CIMGUI_API void ImDrawData_AddDrawList(ImDrawData* self, ImDrawList* draw_list) { return self->AddDrawList(draw_list); } CIMGUI_API void ImDrawData_DeIndexAllBuffers(ImDrawData* self) { return self->DeIndexAllBuffers(); } CIMGUI_API void ImDrawData_ScaleClipRects(ImDrawData* self, const ImVec2 fb_scale) { return self->ScaleClipRects(fb_scale); } CIMGUI_API ImFontConfig* ImFontConfig_ImFontConfig(void) { return IM_NEW(ImFontConfig)(); } CIMGUI_API void ImFontConfig_destroy(ImFontConfig* self) { IM_DELETE(self); } CIMGUI_API ImFontGlyphRangesBuilder* ImFontGlyphRangesBuilder_ImFontGlyphRangesBuilder(void) { return IM_NEW(ImFontGlyphRangesBuilder)(); } CIMGUI_API void ImFontGlyphRangesBuilder_destroy( ImFontGlyphRangesBuilder* self) { IM_DELETE(self); } CIMGUI_API void ImFontGlyphRangesBuilder_Clear(ImFontGlyphRangesBuilder* self) { return self->Clear(); } CIMGUI_API bool ImFontGlyphRangesBuilder_GetBit(ImFontGlyphRangesBuilder* self, size_t n) { return self->GetBit(n); } CIMGUI_API void ImFontGlyphRangesBuilder_SetBit(ImFontGlyphRangesBuilder* self, size_t n) { return self->SetBit(n); } CIMGUI_API void ImFontGlyphRangesBuilder_AddChar(ImFontGlyphRangesBuilder* self, ImWchar c) { return self->AddChar(c); } CIMGUI_API void ImFontGlyphRangesBuilder_AddText(ImFontGlyphRangesBuilder* self, const char* text, const char* text_end) { return self->AddText(text, text_end); } CIMGUI_API void ImFontGlyphRangesBuilder_AddRanges( ImFontGlyphRangesBuilder* self, const ImWchar* ranges) { return self->AddRanges(ranges); } CIMGUI_API void ImFontGlyphRangesBuilder_BuildRanges( ImFontGlyphRangesBuilder* self, ImVector_ImWchar* out_ranges) { return self->BuildRanges(out_ranges); } CIMGUI_API ImFontAtlasCustomRect* ImFontAtlasCustomRect_ImFontAtlasCustomRect( void) { return IM_NEW(ImFontAtlasCustomRect)(); } CIMGUI_API void ImFontAtlasCustomRect_destroy(ImFontAtlasCustomRect* self) { IM_DELETE(self); } CIMGUI_API bool ImFontAtlasCustomRect_IsPacked(ImFontAtlasCustomRect* self) { return self->IsPacked(); } CIMGUI_API ImFontAtlas* ImFontAtlas_ImFontAtlas(void) { return IM_NEW(ImFontAtlas)(); } CIMGUI_API void ImFontAtlas_destroy(ImFontAtlas* self) { IM_DELETE(self); } CIMGUI_API ImFont* ImFontAtlas_AddFont(ImFontAtlas* self, const ImFontConfig* font_cfg) { return self->AddFont(font_cfg); } CIMGUI_API ImFont* ImFontAtlas_AddFontDefault(ImFontAtlas* self, const ImFontConfig* font_cfg) { return self->AddFontDefault(font_cfg); } CIMGUI_API ImFont* ImFontAtlas_AddFontFromFileTTF(ImFontAtlas* self, const char* filename, float size_pixels, const ImFontConfig* font_cfg, const ImWchar* glyph_ranges) { return self->AddFontFromFileTTF(filename, size_pixels, font_cfg, glyph_ranges); } CIMGUI_API ImFont* ImFontAtlas_AddFontFromMemoryTTF( ImFontAtlas* self, void* font_data, int font_data_size, float size_pixels, const ImFontConfig* font_cfg, const ImWchar* glyph_ranges) { return self->AddFontFromMemoryTTF(font_data, font_data_size, size_pixels, font_cfg, glyph_ranges); } 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) { return self->AddFontFromMemoryCompressedTTF( compressed_font_data, compressed_font_data_size, size_pixels, font_cfg, 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) { return self->AddFontFromMemoryCompressedBase85TTF( compressed_font_data_base85, size_pixels, font_cfg, glyph_ranges); } CIMGUI_API void ImFontAtlas_ClearInputData(ImFontAtlas* self) { return self->ClearInputData(); } CIMGUI_API void ImFontAtlas_ClearTexData(ImFontAtlas* self) { return self->ClearTexData(); } CIMGUI_API void ImFontAtlas_ClearFonts(ImFontAtlas* self) { return self->ClearFonts(); } CIMGUI_API void ImFontAtlas_Clear(ImFontAtlas* self) { return self->Clear(); } CIMGUI_API bool ImFontAtlas_Build(ImFontAtlas* self) { return self->Build(); } CIMGUI_API void ImFontAtlas_GetTexDataAsAlpha8(ImFontAtlas* self, unsigned char** out_pixels, int* out_width, int* out_height, int* out_bytes_per_pixel) { return self->GetTexDataAsAlpha8(out_pixels, out_width, out_height, out_bytes_per_pixel); } CIMGUI_API void ImFontAtlas_GetTexDataAsRGBA32(ImFontAtlas* self, unsigned char** out_pixels, int* out_width, int* out_height, int* out_bytes_per_pixel) { return self->GetTexDataAsRGBA32(out_pixels, out_width, out_height, out_bytes_per_pixel); } CIMGUI_API bool ImFontAtlas_IsBuilt(ImFontAtlas* self) { return self->IsBuilt(); } CIMGUI_API void ImFontAtlas_SetTexID(ImFontAtlas* self, ImTextureID id) { return self->SetTexID(id); } CIMGUI_API const ImWchar* ImFontAtlas_GetGlyphRangesDefault(ImFontAtlas* self) { return self->GetGlyphRangesDefault(); } CIMGUI_API const ImWchar* ImFontAtlas_GetGlyphRangesGreek(ImFontAtlas* self) { return self->GetGlyphRangesGreek(); } CIMGUI_API const ImWchar* ImFontAtlas_GetGlyphRangesKorean(ImFontAtlas* self) { return self->GetGlyphRangesKorean(); } CIMGUI_API const ImWchar* ImFontAtlas_GetGlyphRangesJapanese( ImFontAtlas* self) { return self->GetGlyphRangesJapanese(); } CIMGUI_API const ImWchar* ImFontAtlas_GetGlyphRangesChineseFull( ImFontAtlas* self) { return self->GetGlyphRangesChineseFull(); } CIMGUI_API const ImWchar* ImFontAtlas_GetGlyphRangesChineseSimplifiedCommon( ImFontAtlas* self) { return self->GetGlyphRangesChineseSimplifiedCommon(); } CIMGUI_API const ImWchar* ImFontAtlas_GetGlyphRangesCyrillic( ImFontAtlas* self) { return self->GetGlyphRangesCyrillic(); } CIMGUI_API const ImWchar* ImFontAtlas_GetGlyphRangesThai(ImFontAtlas* self) { return self->GetGlyphRangesThai(); } CIMGUI_API const ImWchar* ImFontAtlas_GetGlyphRangesVietnamese( ImFontAtlas* self) { return self->GetGlyphRangesVietnamese(); } CIMGUI_API int ImFontAtlas_AddCustomRectRegular(ImFontAtlas* self, int width, int height) { return self->AddCustomRectRegular(width, height); } CIMGUI_API int ImFontAtlas_AddCustomRectFontGlyph(ImFontAtlas* self, ImFont* font, ImWchar id, int width, int height, float advance_x, const ImVec2 offset) { return self->AddCustomRectFontGlyph(font, id, width, height, advance_x, offset); } CIMGUI_API ImFontAtlasCustomRect* ImFontAtlas_GetCustomRectByIndex( ImFontAtlas* self, int index) { return self->GetCustomRectByIndex(index); } CIMGUI_API void ImFontAtlas_CalcCustomRectUV(ImFontAtlas* self, const ImFontAtlasCustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max) { return self->CalcCustomRectUV(rect, out_uv_min, out_uv_max); } CIMGUI_API bool ImFontAtlas_GetMouseCursorTexData(ImFontAtlas* self, ImGuiMouseCursor cursor, ImVec2* out_offset, ImVec2* out_size, ImVec2 out_uv_border[2], ImVec2 out_uv_fill[2]) { return self->GetMouseCursorTexData(cursor, out_offset, out_size, out_uv_border, out_uv_fill); } CIMGUI_API ImFont* ImFont_ImFont(void) { return IM_NEW(ImFont)(); } CIMGUI_API void ImFont_destroy(ImFont* self) { IM_DELETE(self); } CIMGUI_API const ImFontGlyph* ImFont_FindGlyph(ImFont* self, ImWchar c) { return self->FindGlyph(c); } CIMGUI_API const ImFontGlyph* ImFont_FindGlyphNoFallback(ImFont* self, ImWchar c) { return self->FindGlyphNoFallback(c); } CIMGUI_API float ImFont_GetCharAdvance(ImFont* self, ImWchar c) { return self->GetCharAdvance(c); } CIMGUI_API bool ImFont_IsLoaded(ImFont* self) { return self->IsLoaded(); } CIMGUI_API const char* ImFont_GetDebugName(ImFont* self) { return self->GetDebugName(); } CIMGUI_API void ImFont_CalcTextSizeA(ImVec2* pOut, ImFont* self, float size, float max_width, float wrap_width, const char* text_begin, const char* text_end, const char** remaining) { *pOut = self->CalcTextSizeA(size, max_width, wrap_width, text_begin, text_end, remaining); } CIMGUI_API const char* ImFont_CalcWordWrapPositionA(ImFont* self, float scale, const char* text, const char* text_end, float wrap_width) { return self->CalcWordWrapPositionA(scale, text, text_end, wrap_width); } CIMGUI_API void ImFont_RenderChar(ImFont* self, ImDrawList* draw_list, float size, const ImVec2 pos, ImU32 col, ImWchar c) { return self->RenderChar(draw_list, size, pos, col, c); } CIMGUI_API void ImFont_RenderText(ImFont* self, ImDrawList* draw_list, float size, const ImVec2 pos, ImU32 col, const ImVec4 clip_rect, const char* text_begin, const char* text_end, float wrap_width, bool cpu_fine_clip) { return self->RenderText(draw_list, size, pos, col, clip_rect, text_begin, text_end, wrap_width, cpu_fine_clip); } CIMGUI_API void ImFont_BuildLookupTable(ImFont* self) { return self->BuildLookupTable(); } CIMGUI_API void ImFont_ClearOutputData(ImFont* self) { return self->ClearOutputData(); } CIMGUI_API void ImFont_GrowIndex(ImFont* self, int new_size) { return self->GrowIndex(new_size); } CIMGUI_API void ImFont_AddGlyph(ImFont* self, const ImFontConfig* src_cfg, ImWchar c, float x0, float y0, float x1, float y1, float u0, float v0, float u1, float v1, float advance_x) { return self->AddGlyph(src_cfg, c, x0, y0, x1, y1, u0, v0, u1, v1, advance_x); } CIMGUI_API void ImFont_AddRemapChar(ImFont* self, ImWchar dst, ImWchar src, bool overwrite_dst) { return self->AddRemapChar(dst, src, overwrite_dst); } CIMGUI_API void ImFont_SetGlyphVisible(ImFont* self, ImWchar c, bool visible) { return self->SetGlyphVisible(c, visible); } CIMGUI_API bool ImFont_IsGlyphRangeUnused(ImFont* self, unsigned int c_begin, unsigned int c_last) { return self->IsGlyphRangeUnused(c_begin, c_last); } CIMGUI_API ImGuiViewport* ImGuiViewport_ImGuiViewport(void) { return IM_NEW(ImGuiViewport)(); } CIMGUI_API void ImGuiViewport_destroy(ImGuiViewport* self) { IM_DELETE(self); } CIMGUI_API void ImGuiViewport_GetCenter(ImVec2* pOut, ImGuiViewport* self) { *pOut = self->GetCenter(); } CIMGUI_API void ImGuiViewport_GetWorkCenter(ImVec2* pOut, ImGuiViewport* self) { *pOut = self->GetWorkCenter(); } CIMGUI_API ImGuiPlatformIO* ImGuiPlatformIO_ImGuiPlatformIO(void) { return IM_NEW(ImGuiPlatformIO)(); } CIMGUI_API void ImGuiPlatformIO_destroy(ImGuiPlatformIO* self) { IM_DELETE(self); } CIMGUI_API ImGuiPlatformMonitor* ImGuiPlatformMonitor_ImGuiPlatformMonitor( void) { return IM_NEW(ImGuiPlatformMonitor)(); } CIMGUI_API void ImGuiPlatformMonitor_destroy(ImGuiPlatformMonitor* self) { IM_DELETE(self); } CIMGUI_API ImGuiPlatformImeData* ImGuiPlatformImeData_ImGuiPlatformImeData( void) { return IM_NEW(ImGuiPlatformImeData)(); } CIMGUI_API void ImGuiPlatformImeData_destroy(ImGuiPlatformImeData* self) { IM_DELETE(self); } CIMGUI_API ImGuiID igImHashData(const void* data, size_t data_size, ImGuiID seed) { return ImHashData(data, data_size, seed); } CIMGUI_API ImGuiID igImHashStr(const char* data, size_t data_size, ImGuiID seed) { return ImHashStr(data, data_size, seed); } CIMGUI_API void igImQsort(void* base, size_t count, size_t size_of_element, int (*compare_func)(void const*, void const*)) { return ImQsort(base, count, size_of_element, compare_func); } CIMGUI_API ImU32 igImAlphaBlendColors(ImU32 col_a, ImU32 col_b) { return ImAlphaBlendColors(col_a, col_b); } CIMGUI_API bool igImIsPowerOfTwo_Int(int v) { return ImIsPowerOfTwo(v); } CIMGUI_API bool igImIsPowerOfTwo_U64(ImU64 v) { return ImIsPowerOfTwo(v); } CIMGUI_API int igImUpperPowerOfTwo(int v) { return ImUpperPowerOfTwo(v); } CIMGUI_API int igImStricmp(const char* str1, const char* str2) { return ImStricmp(str1, str2); } CIMGUI_API int igImStrnicmp(const char* str1, const char* str2, size_t count) { return ImStrnicmp(str1, str2, count); } CIMGUI_API void igImStrncpy(char* dst, const char* src, size_t count) { return ImStrncpy(dst, src, count); } CIMGUI_API char* igImStrdup(const char* str) { return ImStrdup(str); } CIMGUI_API char* igImStrdupcpy(char* dst, size_t* p_dst_size, const char* str) { return ImStrdupcpy(dst, p_dst_size, str); } CIMGUI_API const char* igImStrchrRange(const char* str_begin, const char* str_end, char c) { return ImStrchrRange(str_begin, str_end, c); } CIMGUI_API const char* igImStreolRange(const char* str, const char* str_end) { return ImStreolRange(str, str_end); } CIMGUI_API const char* igImStristr(const char* haystack, const char* haystack_end, const char* needle, const char* needle_end) { return ImStristr(haystack, haystack_end, needle, needle_end); } CIMGUI_API void igImStrTrimBlanks(char* str) { return ImStrTrimBlanks(str); } CIMGUI_API const char* igImStrSkipBlank(const char* str) { return ImStrSkipBlank(str); } CIMGUI_API int igImStrlenW(const ImWchar* str) { return ImStrlenW(str); } CIMGUI_API const ImWchar* igImStrbolW(const ImWchar* buf_mid_line, const ImWchar* buf_begin) { return ImStrbolW(buf_mid_line, buf_begin); } CIMGUI_API char igImToUpper(char c) { return ImToUpper(c); } CIMGUI_API bool igImCharIsBlankA(char c) { return ImCharIsBlankA(c); } CIMGUI_API bool igImCharIsBlankW(unsigned int c) { return ImCharIsBlankW(c); } CIMGUI_API int igImFormatString(char* buf, size_t buf_size, const char* fmt, ...) { va_list args; va_start(args, fmt); int ret = ImFormatStringV(buf, buf_size, fmt, args); va_end(args); return ret; } CIMGUI_API int igImFormatStringV(char* buf, size_t buf_size, const char* fmt, va_list args) { return ImFormatStringV(buf, buf_size, fmt, args); } CIMGUI_API void igImFormatStringToTempBuffer(const char** out_buf, const char** out_buf_end, const char* fmt, ...) { va_list args; va_start(args, fmt); ImFormatStringToTempBufferV(out_buf, out_buf_end, fmt, args); va_end(args); } CIMGUI_API void igImFormatStringToTempBufferV(const char** out_buf, const char** out_buf_end, const char* fmt, va_list args) { return ImFormatStringToTempBufferV(out_buf, out_buf_end, fmt, args); } CIMGUI_API const char* igImParseFormatFindStart(const char* format) { return ImParseFormatFindStart(format); } CIMGUI_API const char* igImParseFormatFindEnd(const char* format) { return ImParseFormatFindEnd(format); } CIMGUI_API const char* igImParseFormatTrimDecorations(const char* format, char* buf, size_t buf_size) { return ImParseFormatTrimDecorations(format, buf, buf_size); } CIMGUI_API void igImParseFormatSanitizeForPrinting(const char* fmt_in, char* fmt_out, size_t fmt_out_size) { return ImParseFormatSanitizeForPrinting(fmt_in, fmt_out, fmt_out_size); } CIMGUI_API const char* igImParseFormatSanitizeForScanning(const char* fmt_in, char* fmt_out, size_t fmt_out_size) { return ImParseFormatSanitizeForScanning(fmt_in, fmt_out, fmt_out_size); } CIMGUI_API int igImParseFormatPrecision(const char* format, int default_value) { return ImParseFormatPrecision(format, default_value); } CIMGUI_API const char* igImTextCharToUtf8(char out_buf[5], unsigned int c) { return ImTextCharToUtf8(out_buf, c); } CIMGUI_API int igImTextStrToUtf8(char* out_buf, int out_buf_size, const ImWchar* in_text, const ImWchar* in_text_end) { return ImTextStrToUtf8(out_buf, out_buf_size, in_text, in_text_end); } CIMGUI_API int igImTextCharFromUtf8(unsigned int* out_char, const char* in_text, const char* in_text_end) { return ImTextCharFromUtf8(out_char, in_text, in_text_end); } CIMGUI_API int igImTextStrFromUtf8(ImWchar* out_buf, int out_buf_size, const char* in_text, const char* in_text_end, const char** in_remaining) { return ImTextStrFromUtf8(out_buf, out_buf_size, in_text, in_text_end, in_remaining); } CIMGUI_API int igImTextCountCharsFromUtf8(const char* in_text, const char* in_text_end) { return ImTextCountCharsFromUtf8(in_text, in_text_end); } CIMGUI_API int igImTextCountUtf8BytesFromChar(const char* in_text, const char* in_text_end) { return ImTextCountUtf8BytesFromChar(in_text, in_text_end); } CIMGUI_API int igImTextCountUtf8BytesFromStr(const ImWchar* in_text, const ImWchar* in_text_end) { return ImTextCountUtf8BytesFromStr(in_text, in_text_end); } CIMGUI_API const char* igImTextFindPreviousUtf8Codepoint( const char* in_text_start, const char* in_text_curr) { 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); } CIMGUI_API bool igImFileClose(ImFileHandle file) { return ImFileClose(file); } CIMGUI_API ImU64 igImFileGetSize(ImFileHandle file) { return ImFileGetSize(file); } CIMGUI_API ImU64 igImFileRead(void* data, ImU64 size, ImU64 count, ImFileHandle file) { return ImFileRead(data, size, count, file); } CIMGUI_API ImU64 igImFileWrite(const void* data, ImU64 size, ImU64 count, ImFileHandle file) { return ImFileWrite(data, size, count, file); } CIMGUI_API void* igImFileLoadToMemory(const char* filename, const char* mode, size_t* out_file_size, int padding_bytes) { return ImFileLoadToMemory(filename, mode, out_file_size, padding_bytes); } CIMGUI_API float igImPow_Float(float x, float y) { return ImPow(x, y); } CIMGUI_API double igImPow_double(double x, double y) { return ImPow(x, y); } CIMGUI_API float igImLog_Float(float x) { return ImLog(x); } CIMGUI_API double igImLog_double(double x) { return ImLog(x); } CIMGUI_API int igImAbs_Int(int x) { return ImAbs(x); } CIMGUI_API float igImAbs_Float(float x) { return ImAbs(x); } CIMGUI_API double igImAbs_double(double x) { return ImAbs(x); } CIMGUI_API float igImSign_Float(float x) { return ImSign(x); } CIMGUI_API double igImSign_double(double x) { return ImSign(x); } CIMGUI_API float igImRsqrt_Float(float x) { return ImRsqrt(x); } CIMGUI_API double igImRsqrt_double(double x) { return ImRsqrt(x); } CIMGUI_API void igImMin(ImVec2* pOut, const ImVec2 lhs, const ImVec2 rhs) { *pOut = ImMin(lhs, rhs); } 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) { *pOut = ImClamp(v, mn, mx); } CIMGUI_API void igImLerp_Vec2Float(ImVec2* pOut, const ImVec2 a, const ImVec2 b, float t) { *pOut = ImLerp(a, b, t); } CIMGUI_API void igImLerp_Vec2Vec2(ImVec2* pOut, const ImVec2 a, const ImVec2 b, const ImVec2 t) { *pOut = ImLerp(a, b, t); } CIMGUI_API void igImLerp_Vec4(ImVec4* pOut, const ImVec4 a, const ImVec4 b, float t) { *pOut = ImLerp(a, b, t); } CIMGUI_API float igImSaturate(float f) { return ImSaturate(f); } CIMGUI_API float igImLengthSqr_Vec2(const ImVec2 lhs) { return ImLengthSqr(lhs); } CIMGUI_API float igImLengthSqr_Vec4(const ImVec4 lhs) { return ImLengthSqr(lhs); } CIMGUI_API float igImInvLength(const ImVec2 lhs, float fail_value) { return ImInvLength(lhs, fail_value); } CIMGUI_API float igImTrunc_Float(float f) { return ImTrunc(f); } CIMGUI_API void igImTrunc_Vec2(ImVec2* pOut, const ImVec2 v) { *pOut = ImTrunc(v); } CIMGUI_API float igImFloor_Float(float f) { return ImFloor(f); } CIMGUI_API void igImFloor_Vec2(ImVec2* pOut, const ImVec2 v) { *pOut = ImFloor(v); } CIMGUI_API int igImModPositive(int a, int b) { return ImModPositive(a, b); } CIMGUI_API float igImDot(const ImVec2 a, const ImVec2 b) { return ImDot(a, b); } CIMGUI_API void igImRotate(ImVec2* pOut, const ImVec2 v, float cos_a, float sin_a) { *pOut = ImRotate(v, cos_a, sin_a); } CIMGUI_API float igImLinearSweep(float current, float target, float speed) { return ImLinearSweep(current, target, speed); } CIMGUI_API void igImMul(ImVec2* pOut, const ImVec2 lhs, const ImVec2 rhs) { *pOut = ImMul(lhs, rhs); } CIMGUI_API bool igImIsFloatAboveGuaranteedIntegerPrecision(float f) { return ImIsFloatAboveGuaranteedIntegerPrecision(f); } CIMGUI_API float igImExponentialMovingAverage(float avg, float sample, int n) { return ImExponentialMovingAverage(avg, sample, n); } CIMGUI_API void igImBezierCubicCalc(ImVec2* pOut, const ImVec2 p1, const ImVec2 p2, const ImVec2 p3, const ImVec2 p4, float t) { *pOut = ImBezierCubicCalc(p1, p2, p3, p4, t); } CIMGUI_API void igImBezierCubicClosestPoint(ImVec2* pOut, const ImVec2 p1, const ImVec2 p2, const ImVec2 p3, const ImVec2 p4, const ImVec2 p, int num_segments) { *pOut = ImBezierCubicClosestPoint(p1, p2, p3, p4, p, num_segments); } CIMGUI_API void igImBezierCubicClosestPointCasteljau(ImVec2* pOut, const ImVec2 p1, const ImVec2 p2, const ImVec2 p3, const ImVec2 p4, const ImVec2 p, float tess_tol) { *pOut = ImBezierCubicClosestPointCasteljau(p1, p2, p3, p4, p, tess_tol); } CIMGUI_API void igImBezierQuadraticCalc(ImVec2* pOut, const ImVec2 p1, const ImVec2 p2, const ImVec2 p3, float t) { *pOut = ImBezierQuadraticCalc(p1, p2, p3, t); } CIMGUI_API void igImLineClosestPoint(ImVec2* pOut, const ImVec2 a, const ImVec2 b, const ImVec2 p) { *pOut = ImLineClosestPoint(a, b, p); } CIMGUI_API bool igImTriangleContainsPoint(const ImVec2 a, const ImVec2 b, const ImVec2 c, const ImVec2 p) { return ImTriangleContainsPoint(a, b, c, p); } CIMGUI_API void igImTriangleClosestPoint(ImVec2* pOut, const ImVec2 a, const ImVec2 b, const ImVec2 c, const ImVec2 p) { *pOut = ImTriangleClosestPoint(a, b, c, 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) { return ImTriangleBarycentricCoords(a, b, c, p, *out_u, *out_v, *out_w); } 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)(); } CIMGUI_API void ImVec1_destroy(ImVec1* self) { IM_DELETE(self); } CIMGUI_API ImVec1* ImVec1_ImVec1_Float(float _x) { return IM_NEW(ImVec1)(_x); } CIMGUI_API ImVec2ih* ImVec2ih_ImVec2ih_Nil(void) { return IM_NEW(ImVec2ih)(); } CIMGUI_API void ImVec2ih_destroy(ImVec2ih* self) { IM_DELETE(self); } CIMGUI_API ImVec2ih* ImVec2ih_ImVec2ih_short(short _x, short _y) { return IM_NEW(ImVec2ih)(_x, _y); } CIMGUI_API ImVec2ih* ImVec2ih_ImVec2ih_Vec2(const ImVec2 rhs) { return IM_NEW(ImVec2ih)(rhs); } CIMGUI_API ImRect* ImRect_ImRect_Nil(void) { return IM_NEW(ImRect)(); } CIMGUI_API void ImRect_destroy(ImRect* self) { IM_DELETE(self); } CIMGUI_API ImRect* ImRect_ImRect_Vec2(const ImVec2 min, const ImVec2 max) { return IM_NEW(ImRect)(min, max); } CIMGUI_API ImRect* ImRect_ImRect_Vec4(const ImVec4 v) { return IM_NEW(ImRect)(v); } CIMGUI_API ImRect* ImRect_ImRect_Float(float x1, float y1, float x2, float y2) { return IM_NEW(ImRect)(x1, y1, x2, y2); } CIMGUI_API void ImRect_GetCenter(ImVec2* pOut, ImRect* self) { *pOut = self->GetCenter(); } CIMGUI_API void ImRect_GetSize(ImVec2* pOut, ImRect* self) { *pOut = self->GetSize(); } CIMGUI_API float ImRect_GetWidth(ImRect* self) { return self->GetWidth(); } CIMGUI_API float ImRect_GetHeight(ImRect* self) { return self->GetHeight(); } CIMGUI_API float ImRect_GetArea(ImRect* self) { return self->GetArea(); } CIMGUI_API void ImRect_GetTL(ImVec2* pOut, ImRect* self) { *pOut = self->GetTL(); } CIMGUI_API void ImRect_GetTR(ImVec2* pOut, ImRect* self) { *pOut = self->GetTR(); } CIMGUI_API void ImRect_GetBL(ImVec2* pOut, ImRect* self) { *pOut = self->GetBL(); } CIMGUI_API void ImRect_GetBR(ImVec2* pOut, ImRect* self) { *pOut = self->GetBR(); } CIMGUI_API bool ImRect_Contains_Vec2(ImRect* self, const ImVec2 p) { return self->Contains(p); } CIMGUI_API bool ImRect_Contains_Rect(ImRect* self, const ImRect r) { return self->Contains(r); } CIMGUI_API bool ImRect_ContainsWithPad(ImRect* self, const ImVec2 p, const ImVec2 pad) { return self->ContainsWithPad(p, pad); } CIMGUI_API bool ImRect_Overlaps(ImRect* self, const ImRect r) { return self->Overlaps(r); } CIMGUI_API void ImRect_Add_Vec2(ImRect* self, const ImVec2 p) { return self->Add(p); } CIMGUI_API void ImRect_Add_Rect(ImRect* self, const ImRect r) { return self->Add(r); } CIMGUI_API void ImRect_Expand_Float(ImRect* self, const float amount) { return self->Expand(amount); } CIMGUI_API void ImRect_Expand_Vec2(ImRect* self, const ImVec2 amount) { return self->Expand(amount); } CIMGUI_API void ImRect_Translate(ImRect* self, const ImVec2 d) { return self->Translate(d); } CIMGUI_API void ImRect_TranslateX(ImRect* self, float dx) { return self->TranslateX(dx); } CIMGUI_API void ImRect_TranslateY(ImRect* self, float dy) { return self->TranslateY(dy); } CIMGUI_API void ImRect_ClipWith(ImRect* self, const ImRect r) { return self->ClipWith(r); } CIMGUI_API void ImRect_ClipWithFull(ImRect* self, const ImRect r) { return self->ClipWithFull(r); } CIMGUI_API void ImRect_Floor(ImRect* self) { return self->Floor(); } CIMGUI_API bool ImRect_IsInverted(ImRect* self) { return self->IsInverted(); } CIMGUI_API void ImRect_ToVec4(ImVec4* pOut, ImRect* self) { *pOut = self->ToVec4(); } CIMGUI_API size_t igImBitArrayGetStorageSizeInBytes(int bitcount) { return ImBitArrayGetStorageSizeInBytes(bitcount); } CIMGUI_API void igImBitArrayClearAllBits(ImU32* arr, int bitcount) { return ImBitArrayClearAllBits(arr, bitcount); } CIMGUI_API bool igImBitArrayTestBit(const ImU32* arr, int n) { return ImBitArrayTestBit(arr, n); } CIMGUI_API void igImBitArrayClearBit(ImU32* arr, int n) { return ImBitArrayClearBit(arr, n); } CIMGUI_API void igImBitArraySetBit(ImU32* arr, int n) { return ImBitArraySetBit(arr, n); } CIMGUI_API void igImBitArraySetBitRange(ImU32* arr, int n, int n2) { return ImBitArraySetBitRange(arr, n, n2); } CIMGUI_API void ImBitVector_Create(ImBitVector* self, int sz) { return self->Create(sz); } CIMGUI_API void ImBitVector_Clear(ImBitVector* self) { return self->Clear(); } CIMGUI_API bool ImBitVector_TestBit(ImBitVector* self, int n) { return self->TestBit(n); } CIMGUI_API void ImBitVector_SetBit(ImBitVector* self, int n) { return self->SetBit(n); } CIMGUI_API void ImBitVector_ClearBit(ImBitVector* self, int n) { return self->ClearBit(n); } CIMGUI_API void ImGuiTextIndex_clear(ImGuiTextIndex* self) { return self->clear(); } CIMGUI_API int ImGuiTextIndex_size(ImGuiTextIndex* self) { return self->size(); } CIMGUI_API const char* ImGuiTextIndex_get_line_begin(ImGuiTextIndex* self, const char* base, int n) { return self->get_line_begin(base, n); } CIMGUI_API const char* ImGuiTextIndex_get_line_end(ImGuiTextIndex* self, const char* base, int n) { return self->get_line_end(base, n); } CIMGUI_API void ImGuiTextIndex_append(ImGuiTextIndex* self, const char* base, int old_size, int new_size) { return self->append(base, old_size, new_size); } CIMGUI_API ImDrawListSharedData* ImDrawListSharedData_ImDrawListSharedData( void) { return IM_NEW(ImDrawListSharedData)(); } CIMGUI_API void ImDrawListSharedData_destroy(ImDrawListSharedData* self) { IM_DELETE(self); } CIMGUI_API void ImDrawListSharedData_SetCircleTessellationMaxError( ImDrawListSharedData* self, float max_error) { return self->SetCircleTessellationMaxError(max_error); } CIMGUI_API ImDrawDataBuilder* ImDrawDataBuilder_ImDrawDataBuilder(void) { return IM_NEW(ImDrawDataBuilder)(); } CIMGUI_API void ImDrawDataBuilder_destroy(ImDrawDataBuilder* self) { IM_DELETE(self); } CIMGUI_API ImGuiStyleMod* ImGuiStyleMod_ImGuiStyleMod_Int(ImGuiStyleVar idx, int v) { return IM_NEW(ImGuiStyleMod)(idx, v); } CIMGUI_API void ImGuiStyleMod_destroy(ImGuiStyleMod* self) { IM_DELETE(self); } CIMGUI_API ImGuiStyleMod* ImGuiStyleMod_ImGuiStyleMod_Float(ImGuiStyleVar idx, float v) { return IM_NEW(ImGuiStyleMod)(idx, v); } CIMGUI_API ImGuiStyleMod* ImGuiStyleMod_ImGuiStyleMod_Vec2(ImGuiStyleVar idx, ImVec2 v) { return IM_NEW(ImGuiStyleMod)(idx, v); } CIMGUI_API ImGuiComboPreviewData* ImGuiComboPreviewData_ImGuiComboPreviewData( void) { return IM_NEW(ImGuiComboPreviewData)(); } CIMGUI_API void ImGuiComboPreviewData_destroy(ImGuiComboPreviewData* self) { IM_DELETE(self); } CIMGUI_API ImGuiMenuColumns* ImGuiMenuColumns_ImGuiMenuColumns(void) { return IM_NEW(ImGuiMenuColumns)(); } CIMGUI_API void ImGuiMenuColumns_destroy(ImGuiMenuColumns* self) { IM_DELETE(self); } CIMGUI_API void ImGuiMenuColumns_Update(ImGuiMenuColumns* self, float spacing, bool window_reappearing) { return self->Update(spacing, window_reappearing); } CIMGUI_API float ImGuiMenuColumns_DeclColumns(ImGuiMenuColumns* self, float w_icon, float w_label, float w_shortcut, float w_mark) { return self->DeclColumns(w_icon, w_label, w_shortcut, w_mark); } CIMGUI_API void ImGuiMenuColumns_CalcNextTotalWidth(ImGuiMenuColumns* self, bool update_offsets) { return self->CalcNextTotalWidth(update_offsets); } CIMGUI_API ImGuiInputTextDeactivatedState* ImGuiInputTextDeactivatedState_ImGuiInputTextDeactivatedState(void) { return IM_NEW(ImGuiInputTextDeactivatedState)(); } CIMGUI_API void ImGuiInputTextDeactivatedState_destroy( ImGuiInputTextDeactivatedState* self) { IM_DELETE(self); } CIMGUI_API void ImGuiInputTextDeactivatedState_ClearFreeMemory( ImGuiInputTextDeactivatedState* self) { return self->ClearFreeMemory(); } CIMGUI_API ImGuiInputTextState* ImGuiInputTextState_ImGuiInputTextState(void) { return IM_NEW(ImGuiInputTextState)(); } CIMGUI_API void ImGuiInputTextState_destroy(ImGuiInputTextState* self) { IM_DELETE(self); } CIMGUI_API void ImGuiInputTextState_ClearText(ImGuiInputTextState* self) { return self->ClearText(); } CIMGUI_API void ImGuiInputTextState_ClearFreeMemory(ImGuiInputTextState* self) { return self->ClearFreeMemory(); } CIMGUI_API int ImGuiInputTextState_GetUndoAvailCount( ImGuiInputTextState* self) { return self->GetUndoAvailCount(); } CIMGUI_API int ImGuiInputTextState_GetRedoAvailCount( ImGuiInputTextState* self) { return self->GetRedoAvailCount(); } CIMGUI_API void ImGuiInputTextState_OnKeyPressed(ImGuiInputTextState* self, int key) { return self->OnKeyPressed(key); } CIMGUI_API void ImGuiInputTextState_CursorAnimReset(ImGuiInputTextState* self) { return self->CursorAnimReset(); } CIMGUI_API void ImGuiInputTextState_CursorClamp(ImGuiInputTextState* self) { return self->CursorClamp(); } CIMGUI_API bool ImGuiInputTextState_HasSelection(ImGuiInputTextState* self) { return self->HasSelection(); } CIMGUI_API void ImGuiInputTextState_ClearSelection(ImGuiInputTextState* self) { return self->ClearSelection(); } CIMGUI_API int ImGuiInputTextState_GetCursorPos(ImGuiInputTextState* self) { return self->GetCursorPos(); } CIMGUI_API int ImGuiInputTextState_GetSelectionStart( ImGuiInputTextState* self) { return self->GetSelectionStart(); } CIMGUI_API int ImGuiInputTextState_GetSelectionEnd(ImGuiInputTextState* self) { return self->GetSelectionEnd(); } CIMGUI_API void ImGuiInputTextState_SelectAll(ImGuiInputTextState* self) { return self->SelectAll(); } CIMGUI_API void ImGuiInputTextState_ReloadUserBufAndSelectAll( ImGuiInputTextState* self) { return self->ReloadUserBufAndSelectAll(); } CIMGUI_API void ImGuiInputTextState_ReloadUserBufAndKeepSelection( ImGuiInputTextState* self) { return self->ReloadUserBufAndKeepSelection(); } CIMGUI_API void ImGuiInputTextState_ReloadUserBufAndMoveToEnd( ImGuiInputTextState* self) { return self->ReloadUserBufAndMoveToEnd(); } CIMGUI_API ImGuiNextWindowData* ImGuiNextWindowData_ImGuiNextWindowData(void) { return IM_NEW(ImGuiNextWindowData)(); } CIMGUI_API void ImGuiNextWindowData_destroy(ImGuiNextWindowData* self) { IM_DELETE(self); } CIMGUI_API void ImGuiNextWindowData_ClearFlags(ImGuiNextWindowData* self) { return self->ClearFlags(); } CIMGUI_API ImGuiNextItemData* ImGuiNextItemData_ImGuiNextItemData(void) { return IM_NEW(ImGuiNextItemData)(); } CIMGUI_API void ImGuiNextItemData_destroy(ImGuiNextItemData* self) { IM_DELETE(self); } CIMGUI_API void ImGuiNextItemData_ClearFlags(ImGuiNextItemData* self) { return self->ClearFlags(); } CIMGUI_API ImGuiLastItemData* ImGuiLastItemData_ImGuiLastItemData(void) { return IM_NEW(ImGuiLastItemData)(); } CIMGUI_API void ImGuiLastItemData_destroy(ImGuiLastItemData* self) { IM_DELETE(self); } CIMGUI_API ImGuiStackSizes* ImGuiStackSizes_ImGuiStackSizes(void) { return IM_NEW(ImGuiStackSizes)(); } CIMGUI_API void ImGuiStackSizes_destroy(ImGuiStackSizes* self) { IM_DELETE(self); } CIMGUI_API void ImGuiStackSizes_SetToContextState(ImGuiStackSizes* self, ImGuiContext* ctx) { return self->SetToContextState(ctx); } CIMGUI_API void ImGuiStackSizes_CompareWithContextState(ImGuiStackSizes* self, ImGuiContext* ctx) { return self->CompareWithContextState(ctx); } CIMGUI_API ImGuiPtrOrIndex* ImGuiPtrOrIndex_ImGuiPtrOrIndex_Ptr(void* ptr) { return IM_NEW(ImGuiPtrOrIndex)(ptr); } CIMGUI_API void ImGuiPtrOrIndex_destroy(ImGuiPtrOrIndex* self) { IM_DELETE(self); } 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)(); } CIMGUI_API void ImGuiPopupData_destroy(ImGuiPopupData* self) { IM_DELETE(self); } CIMGUI_API ImGuiInputEvent* ImGuiInputEvent_ImGuiInputEvent(void) { return IM_NEW(ImGuiInputEvent)(); } CIMGUI_API void ImGuiInputEvent_destroy(ImGuiInputEvent* self) { IM_DELETE(self); } CIMGUI_API ImGuiKeyRoutingData* ImGuiKeyRoutingData_ImGuiKeyRoutingData(void) { return IM_NEW(ImGuiKeyRoutingData)(); } CIMGUI_API void ImGuiKeyRoutingData_destroy(ImGuiKeyRoutingData* self) { IM_DELETE(self); } CIMGUI_API ImGuiKeyRoutingTable* ImGuiKeyRoutingTable_ImGuiKeyRoutingTable( void) { return IM_NEW(ImGuiKeyRoutingTable)(); } CIMGUI_API void ImGuiKeyRoutingTable_destroy(ImGuiKeyRoutingTable* self) { IM_DELETE(self); } CIMGUI_API void ImGuiKeyRoutingTable_Clear(ImGuiKeyRoutingTable* self) { return self->Clear(); } CIMGUI_API ImGuiKeyOwnerData* ImGuiKeyOwnerData_ImGuiKeyOwnerData(void) { return IM_NEW(ImGuiKeyOwnerData)(); } CIMGUI_API void ImGuiKeyOwnerData_destroy(ImGuiKeyOwnerData* self) { IM_DELETE(self); } CIMGUI_API ImGuiListClipperRange ImGuiListClipperRange_FromIndices(int min, int max) { return ImGuiListClipperRange::FromIndices(min, max); } CIMGUI_API ImGuiListClipperRange ImGuiListClipperRange_FromPositions(float y1, float y2, int off_min, int off_max) { return ImGuiListClipperRange::FromPositions(y1, y2, off_min, off_max); } CIMGUI_API ImGuiListClipperData* ImGuiListClipperData_ImGuiListClipperData( void) { return IM_NEW(ImGuiListClipperData)(); } CIMGUI_API void ImGuiListClipperData_destroy(ImGuiListClipperData* self) { IM_DELETE(self); } CIMGUI_API void ImGuiListClipperData_Reset(ImGuiListClipperData* self, ImGuiListClipper* clipper) { return self->Reset(clipper); } CIMGUI_API ImGuiNavItemData* ImGuiNavItemData_ImGuiNavItemData(void) { return IM_NEW(ImGuiNavItemData)(); } CIMGUI_API void ImGuiNavItemData_destroy(ImGuiNavItemData* self) { IM_DELETE(self); } CIMGUI_API void ImGuiNavItemData_Clear(ImGuiNavItemData* self) { return self->Clear(); } CIMGUI_API ImGuiTypingSelectState* ImGuiTypingSelectState_ImGuiTypingSelectState(void) { return IM_NEW(ImGuiTypingSelectState)(); } CIMGUI_API void ImGuiTypingSelectState_destroy(ImGuiTypingSelectState* self) { IM_DELETE(self); } CIMGUI_API void ImGuiTypingSelectState_Clear(ImGuiTypingSelectState* self) { return self->Clear(); } CIMGUI_API ImGuiOldColumnData* ImGuiOldColumnData_ImGuiOldColumnData(void) { return IM_NEW(ImGuiOldColumnData)(); } CIMGUI_API void ImGuiOldColumnData_destroy(ImGuiOldColumnData* self) { IM_DELETE(self); } CIMGUI_API ImGuiOldColumns* ImGuiOldColumns_ImGuiOldColumns(void) { return IM_NEW(ImGuiOldColumns)(); } CIMGUI_API void ImGuiOldColumns_destroy(ImGuiOldColumns* self) { IM_DELETE(self); } CIMGUI_API ImGuiDockNode* ImGuiDockNode_ImGuiDockNode(ImGuiID id) { return IM_NEW(ImGuiDockNode)(id); } CIMGUI_API void ImGuiDockNode_destroy(ImGuiDockNode* self) { IM_DELETE(self); } CIMGUI_API bool ImGuiDockNode_IsRootNode(ImGuiDockNode* self) { return self->IsRootNode(); } CIMGUI_API bool ImGuiDockNode_IsDockSpace(ImGuiDockNode* self) { return self->IsDockSpace(); } CIMGUI_API bool ImGuiDockNode_IsFloatingNode(ImGuiDockNode* self) { return self->IsFloatingNode(); } CIMGUI_API bool ImGuiDockNode_IsCentralNode(ImGuiDockNode* self) { return self->IsCentralNode(); } CIMGUI_API bool ImGuiDockNode_IsHiddenTabBar(ImGuiDockNode* self) { return self->IsHiddenTabBar(); } CIMGUI_API bool ImGuiDockNode_IsNoTabBar(ImGuiDockNode* self) { return self->IsNoTabBar(); } CIMGUI_API bool ImGuiDockNode_IsSplitNode(ImGuiDockNode* self) { return self->IsSplitNode(); } CIMGUI_API bool ImGuiDockNode_IsLeafNode(ImGuiDockNode* self) { return self->IsLeafNode(); } CIMGUI_API bool ImGuiDockNode_IsEmpty(ImGuiDockNode* self) { return self->IsEmpty(); } CIMGUI_API void ImGuiDockNode_Rect(ImRect* pOut, ImGuiDockNode* self) { *pOut = self->Rect(); } CIMGUI_API void ImGuiDockNode_SetLocalFlags(ImGuiDockNode* self, ImGuiDockNodeFlags flags) { return self->SetLocalFlags(flags); } CIMGUI_API void ImGuiDockNode_UpdateMergedFlags(ImGuiDockNode* self) { return self->UpdateMergedFlags(); } CIMGUI_API ImGuiDockContext* ImGuiDockContext_ImGuiDockContext(void) { return IM_NEW(ImGuiDockContext)(); } CIMGUI_API void ImGuiDockContext_destroy(ImGuiDockContext* self) { IM_DELETE(self); } CIMGUI_API ImGuiViewportP* ImGuiViewportP_ImGuiViewportP(void) { return IM_NEW(ImGuiViewportP)(); } CIMGUI_API void ImGuiViewportP_destroy(ImGuiViewportP* self) { IM_DELETE(self); } CIMGUI_API void ImGuiViewportP_ClearRequestFlags(ImGuiViewportP* self) { return self->ClearRequestFlags(); } CIMGUI_API void ImGuiViewportP_CalcWorkRectPos(ImVec2* pOut, ImGuiViewportP* self, const ImVec2 off_min) { *pOut = self->CalcWorkRectPos(off_min); } CIMGUI_API void ImGuiViewportP_CalcWorkRectSize(ImVec2* pOut, ImGuiViewportP* self, const ImVec2 off_min, const ImVec2 off_max) { *pOut = self->CalcWorkRectSize(off_min, off_max); } CIMGUI_API void ImGuiViewportP_UpdateWorkRect(ImGuiViewportP* self) { return self->UpdateWorkRect(); } CIMGUI_API void ImGuiViewportP_GetMainRect(ImRect* pOut, ImGuiViewportP* self) { *pOut = self->GetMainRect(); } CIMGUI_API void ImGuiViewportP_GetWorkRect(ImRect* pOut, ImGuiViewportP* self) { *pOut = self->GetWorkRect(); } CIMGUI_API void ImGuiViewportP_GetBuildWorkRect(ImRect* pOut, ImGuiViewportP* self) { *pOut = self->GetBuildWorkRect(); } CIMGUI_API ImGuiWindowSettings* ImGuiWindowSettings_ImGuiWindowSettings(void) { return IM_NEW(ImGuiWindowSettings)(); } CIMGUI_API void ImGuiWindowSettings_destroy(ImGuiWindowSettings* self) { IM_DELETE(self); } CIMGUI_API char* ImGuiWindowSettings_GetName(ImGuiWindowSettings* self) { return self->GetName(); } CIMGUI_API ImGuiSettingsHandler* ImGuiSettingsHandler_ImGuiSettingsHandler( void) { return IM_NEW(ImGuiSettingsHandler)(); } CIMGUI_API void ImGuiSettingsHandler_destroy(ImGuiSettingsHandler* self) { IM_DELETE(self); } CIMGUI_API ImGuiDebugAllocInfo* ImGuiDebugAllocInfo_ImGuiDebugAllocInfo(void) { return IM_NEW(ImGuiDebugAllocInfo)(); } CIMGUI_API void ImGuiDebugAllocInfo_destroy(ImGuiDebugAllocInfo* self) { IM_DELETE(self); } CIMGUI_API ImGuiStackLevelInfo* ImGuiStackLevelInfo_ImGuiStackLevelInfo(void) { return IM_NEW(ImGuiStackLevelInfo)(); } CIMGUI_API void ImGuiStackLevelInfo_destroy(ImGuiStackLevelInfo* self) { IM_DELETE(self); } CIMGUI_API ImGuiIDStackTool* ImGuiIDStackTool_ImGuiIDStackTool(void) { return IM_NEW(ImGuiIDStackTool)(); } CIMGUI_API void ImGuiIDStackTool_destroy(ImGuiIDStackTool* self) { IM_DELETE(self); } CIMGUI_API ImGuiContextHook* ImGuiContextHook_ImGuiContextHook(void) { return IM_NEW(ImGuiContextHook)(); } CIMGUI_API void ImGuiContextHook_destroy(ImGuiContextHook* self) { IM_DELETE(self); } CIMGUI_API ImGuiContext* ImGuiContext_ImGuiContext( ImFontAtlas* shared_font_atlas) { return IM_NEW(ImGuiContext)(shared_font_atlas); } CIMGUI_API void ImGuiContext_destroy(ImGuiContext* self) { IM_DELETE(self); } CIMGUI_API ImGuiWindow* ImGuiWindow_ImGuiWindow(ImGuiContext* context, const char* name) { return IM_NEW(ImGuiWindow)(context, name); } CIMGUI_API void ImGuiWindow_destroy(ImGuiWindow* self) { IM_DELETE(self); } CIMGUI_API ImGuiID ImGuiWindow_GetID_Str(ImGuiWindow* self, const char* str, const char* str_end) { return self->GetID(str, str_end); } CIMGUI_API ImGuiID ImGuiWindow_GetID_Ptr(ImGuiWindow* self, const void* ptr) { return self->GetID(ptr); } CIMGUI_API ImGuiID ImGuiWindow_GetID_Int(ImGuiWindow* self, int n) { return self->GetID(n); } CIMGUI_API ImGuiID ImGuiWindow_GetIDFromRectangle(ImGuiWindow* self, const ImRect r_abs) { return self->GetIDFromRectangle(r_abs); } CIMGUI_API void ImGuiWindow_Rect(ImRect* pOut, ImGuiWindow* self) { *pOut = self->Rect(); } 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(); } CIMGUI_API ImGuiTabItem* ImGuiTabItem_ImGuiTabItem(void) { return IM_NEW(ImGuiTabItem)(); } CIMGUI_API void ImGuiTabItem_destroy(ImGuiTabItem* self) { IM_DELETE(self); } CIMGUI_API ImGuiTabBar* ImGuiTabBar_ImGuiTabBar(void) { return IM_NEW(ImGuiTabBar)(); } CIMGUI_API void ImGuiTabBar_destroy(ImGuiTabBar* self) { IM_DELETE(self); } CIMGUI_API ImGuiTableColumn* ImGuiTableColumn_ImGuiTableColumn(void) { return IM_NEW(ImGuiTableColumn)(); } CIMGUI_API void ImGuiTableColumn_destroy(ImGuiTableColumn* self) { IM_DELETE(self); } CIMGUI_API ImGuiTableInstanceData* ImGuiTableInstanceData_ImGuiTableInstanceData(void) { return IM_NEW(ImGuiTableInstanceData)(); } CIMGUI_API void ImGuiTableInstanceData_destroy(ImGuiTableInstanceData* self) { IM_DELETE(self); } CIMGUI_API ImGuiTable* ImGuiTable_ImGuiTable(void) { return IM_NEW(ImGuiTable)(); } CIMGUI_API void ImGuiTable_destroy(ImGuiTable* self) { IM_DELETE(self); } CIMGUI_API ImGuiTableTempData* ImGuiTableTempData_ImGuiTableTempData(void) { return IM_NEW(ImGuiTableTempData)(); } CIMGUI_API void ImGuiTableTempData_destroy(ImGuiTableTempData* self) { IM_DELETE(self); } CIMGUI_API ImGuiTableColumnSettings* ImGuiTableColumnSettings_ImGuiTableColumnSettings(void) { return IM_NEW(ImGuiTableColumnSettings)(); } CIMGUI_API void ImGuiTableColumnSettings_destroy( ImGuiTableColumnSettings* self) { IM_DELETE(self); } CIMGUI_API ImGuiTableSettings* ImGuiTableSettings_ImGuiTableSettings(void) { return IM_NEW(ImGuiTableSettings)(); } CIMGUI_API void ImGuiTableSettings_destroy(ImGuiTableSettings* self) { IM_DELETE(self); } CIMGUI_API ImGuiTableColumnSettings* ImGuiTableSettings_GetColumnSettings( ImGuiTableSettings* self) { return self->GetColumnSettings(); } CIMGUI_API ImGuiWindow* igGetCurrentWindowRead() { return ImGui::GetCurrentWindowRead(); } CIMGUI_API ImGuiWindow* igGetCurrentWindow() { return ImGui::GetCurrentWindow(); } CIMGUI_API ImGuiWindow* igFindWindowByID(ImGuiID id) { return ImGui::FindWindowByID(id); } CIMGUI_API ImGuiWindow* igFindWindowByName(const char* name) { return ImGui::FindWindowByName(name); } CIMGUI_API void igUpdateWindowParentAndRootLinks(ImGuiWindow* window, ImGuiWindowFlags flags, ImGuiWindow* parent_window) { 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); } CIMGUI_API bool igIsWindowChildOf(ImGuiWindow* window, ImGuiWindow* potential_parent, bool popup_hierarchy, bool dock_hierarchy) { return ImGui::IsWindowChildOf(window, potential_parent, popup_hierarchy, dock_hierarchy); } CIMGUI_API bool igIsWindowWithinBeginStackOf(ImGuiWindow* window, ImGuiWindow* potential_parent) { return ImGui::IsWindowWithinBeginStackOf(window, potential_parent); } CIMGUI_API bool igIsWindowAbove(ImGuiWindow* potential_above, ImGuiWindow* potential_below) { return ImGui::IsWindowAbove(potential_above, potential_below); } CIMGUI_API bool igIsWindowNavFocusable(ImGuiWindow* window) { return ImGui::IsWindowNavFocusable(window); } CIMGUI_API void igSetWindowPos_WindowPtr(ImGuiWindow* window, const ImVec2 pos, ImGuiCond cond) { return ImGui::SetWindowPos(window, pos, cond); } CIMGUI_API void igSetWindowSize_WindowPtr(ImGuiWindow* window, const ImVec2 size, ImGuiCond cond) { return ImGui::SetWindowSize(window, size, cond); } CIMGUI_API void igSetWindowCollapsed_WindowPtr(ImGuiWindow* window, bool collapsed, ImGuiCond cond) { return ImGui::SetWindowCollapsed(window, collapsed, cond); } CIMGUI_API void igSetWindowHitTestHole(ImGuiWindow* window, const ImVec2 pos, const ImVec2 size) { return ImGui::SetWindowHitTestHole(window, pos, size); } CIMGUI_API void igSetWindowHiddenAndSkipItemsForCurrentFrame( ImGuiWindow* window) { return ImGui::SetWindowHiddenAndSkipItemsForCurrentFrame(window); } CIMGUI_API void igSetWindowParentWindowForFocusRoute( ImGuiWindow* window, ImGuiWindow* parent_window) { return ImGui::SetWindowParentWindowForFocusRoute(window, parent_window); } CIMGUI_API void igWindowRectAbsToRel(ImRect* pOut, ImGuiWindow* window, const ImRect r) { *pOut = ImGui::WindowRectAbsToRel(window, r); } CIMGUI_API void igWindowRectRelToAbs(ImRect* pOut, ImGuiWindow* window, const ImRect r) { *pOut = ImGui::WindowRectRelToAbs(window, r); } CIMGUI_API void igWindowPosRelToAbs(ImVec2* pOut, ImGuiWindow* window, const ImVec2 p) { *pOut = ImGui::WindowPosRelToAbs(window, p); } CIMGUI_API void igFocusWindow(ImGuiWindow* window, ImGuiFocusRequestFlags flags) { return ImGui::FocusWindow(window, flags); } CIMGUI_API void igFocusTopMostWindowUnderOne(ImGuiWindow* under_this_window, ImGuiWindow* ignore_window, ImGuiViewport* filter_viewport, ImGuiFocusRequestFlags flags) { return ImGui::FocusTopMostWindowUnderOne(under_this_window, ignore_window, filter_viewport, flags); } CIMGUI_API void igBringWindowToFocusFront(ImGuiWindow* window) { return ImGui::BringWindowToFocusFront(window); } CIMGUI_API void igBringWindowToDisplayFront(ImGuiWindow* window) { return ImGui::BringWindowToDisplayFront(window); } CIMGUI_API void igBringWindowToDisplayBack(ImGuiWindow* window) { return ImGui::BringWindowToDisplayBack(window); } CIMGUI_API void igBringWindowToDisplayBehind(ImGuiWindow* window, ImGuiWindow* above_window) { return ImGui::BringWindowToDisplayBehind(window, above_window); } CIMGUI_API int igFindWindowDisplayIndex(ImGuiWindow* window) { return ImGui::FindWindowDisplayIndex(window); } CIMGUI_API ImGuiWindow* igFindBottomMostVisibleWindowWithinBeginStack( ImGuiWindow* window) { return ImGui::FindBottomMostVisibleWindowWithinBeginStack(window); } CIMGUI_API void igSetNextWindowRefreshPolicy(ImGuiWindowRefreshFlags flags) { return ImGui::SetNextWindowRefreshPolicy(flags); } CIMGUI_API void igSetCurrentFont(ImFont* font) { return ImGui::SetCurrentFont(font); } CIMGUI_API ImFont* igGetDefaultFont() { return ImGui::GetDefaultFont(); } CIMGUI_API ImDrawList* igGetForegroundDrawList_WindowPtr(ImGuiWindow* window) { return ImGui::GetForegroundDrawList(window); } CIMGUI_API void igAddDrawListToDrawDataEx(ImDrawData* draw_data, ImVector_ImDrawListPtr* out_list, ImDrawList* draw_list) { return ImGui::AddDrawListToDrawDataEx(draw_data, out_list, draw_list); } CIMGUI_API void igInitialize() { return ImGui::Initialize(); } CIMGUI_API void igShutdown() { return ImGui::Shutdown(); } CIMGUI_API void igUpdateInputEvents(bool trickle_fast_inputs) { return ImGui::UpdateInputEvents(trickle_fast_inputs); } CIMGUI_API void igUpdateHoveredWindowAndCaptureFlags() { return ImGui::UpdateHoveredWindowAndCaptureFlags(); } CIMGUI_API void igStartMouseMovingWindow(ImGuiWindow* window) { return ImGui::StartMouseMovingWindow(window); } CIMGUI_API void igStartMouseMovingWindowOrNode(ImGuiWindow* window, ImGuiDockNode* node, bool undock) { return ImGui::StartMouseMovingWindowOrNode(window, node, undock); } CIMGUI_API void igUpdateMouseMovingWindowNewFrame() { return ImGui::UpdateMouseMovingWindowNewFrame(); } CIMGUI_API void igUpdateMouseMovingWindowEndFrame() { return ImGui::UpdateMouseMovingWindowEndFrame(); } CIMGUI_API ImGuiID igAddContextHook(ImGuiContext* context, const ImGuiContextHook* hook) { return ImGui::AddContextHook(context, hook); } CIMGUI_API void igRemoveContextHook(ImGuiContext* context, ImGuiID hook_to_remove) { return ImGui::RemoveContextHook(context, hook_to_remove); } CIMGUI_API void igCallContextHooks(ImGuiContext* context, ImGuiContextHookType type) { return ImGui::CallContextHooks(context, type); } CIMGUI_API void igTranslateWindowsInViewport(ImGuiViewportP* viewport, const ImVec2 old_pos, const ImVec2 new_pos) { return ImGui::TranslateWindowsInViewport(viewport, old_pos, new_pos); } CIMGUI_API void igScaleWindowsInViewport(ImGuiViewportP* viewport, float scale) { return ImGui::ScaleWindowsInViewport(viewport, scale); } CIMGUI_API void igDestroyPlatformWindow(ImGuiViewportP* viewport) { return ImGui::DestroyPlatformWindow(viewport); } CIMGUI_API void igSetWindowViewport(ImGuiWindow* window, ImGuiViewportP* viewport) { return ImGui::SetWindowViewport(window, viewport); } CIMGUI_API void igSetCurrentViewport(ImGuiWindow* window, ImGuiViewportP* viewport) { return ImGui::SetCurrentViewport(window, viewport); } CIMGUI_API const ImGuiPlatformMonitor* igGetViewportPlatformMonitor( ImGuiViewport* viewport) { return ImGui::GetViewportPlatformMonitor(viewport); } CIMGUI_API ImGuiViewportP* igFindHoveredViewportFromPlatformWindowStack( const ImVec2 mouse_platform_pos) { return ImGui::FindHoveredViewportFromPlatformWindowStack(mouse_platform_pos); } CIMGUI_API void igMarkIniSettingsDirty_Nil() { return ImGui::MarkIniSettingsDirty(); } CIMGUI_API void igMarkIniSettingsDirty_WindowPtr(ImGuiWindow* window) { return ImGui::MarkIniSettingsDirty(window); } CIMGUI_API void igClearIniSettings() { return ImGui::ClearIniSettings(); } CIMGUI_API void igAddSettingsHandler(const ImGuiSettingsHandler* handler) { return ImGui::AddSettingsHandler(handler); } CIMGUI_API void igRemoveSettingsHandler(const char* type_name) { return ImGui::RemoveSettingsHandler(type_name); } CIMGUI_API ImGuiSettingsHandler* igFindSettingsHandler(const char* type_name) { return ImGui::FindSettingsHandler(type_name); } CIMGUI_API ImGuiWindowSettings* igCreateNewWindowSettings(const char* name) { return ImGui::CreateNewWindowSettings(name); } CIMGUI_API ImGuiWindowSettings* igFindWindowSettingsByID(ImGuiID id) { return ImGui::FindWindowSettingsByID(id); } CIMGUI_API ImGuiWindowSettings* igFindWindowSettingsByWindow( ImGuiWindow* window) { return ImGui::FindWindowSettingsByWindow(window); } CIMGUI_API void igClearWindowSettings(const char* name) { return ImGui::ClearWindowSettings(name); } CIMGUI_API void igLocalizeRegisterEntries(const ImGuiLocEntry* entries, int count) { return ImGui::LocalizeRegisterEntries(entries, count); } CIMGUI_API const char* igLocalizeGetMsg(ImGuiLocKey key) { return ImGui::LocalizeGetMsg(key); } CIMGUI_API void igSetScrollX_WindowPtr(ImGuiWindow* window, float scroll_x) { return ImGui::SetScrollX(window, scroll_x); } CIMGUI_API void igSetScrollY_WindowPtr(ImGuiWindow* window, float scroll_y) { return ImGui::SetScrollY(window, scroll_y); } CIMGUI_API void igSetScrollFromPosX_WindowPtr(ImGuiWindow* window, float local_x, float center_x_ratio) { return ImGui::SetScrollFromPosX(window, local_x, center_x_ratio); } CIMGUI_API void igSetScrollFromPosY_WindowPtr(ImGuiWindow* window, float local_y, float center_y_ratio) { return ImGui::SetScrollFromPosY(window, local_y, center_y_ratio); } CIMGUI_API void igScrollToItem(ImGuiScrollFlags flags) { return ImGui::ScrollToItem(flags); } CIMGUI_API void igScrollToRect(ImGuiWindow* window, const ImRect rect, ImGuiScrollFlags flags) { return ImGui::ScrollToRect(window, rect, flags); } CIMGUI_API void igScrollToRectEx(ImVec2* pOut, ImGuiWindow* window, const ImRect rect, ImGuiScrollFlags flags) { *pOut = ImGui::ScrollToRectEx(window, rect, flags); } CIMGUI_API void igScrollToBringRectIntoView(ImGuiWindow* window, const ImRect rect) { return ImGui::ScrollToBringRectIntoView(window, rect); } CIMGUI_API ImGuiItemStatusFlags igGetItemStatusFlags() { return ImGui::GetItemStatusFlags(); } CIMGUI_API ImGuiItemFlags igGetItemFlags() { return ImGui::GetItemFlags(); } CIMGUI_API ImGuiID igGetActiveID() { return ImGui::GetActiveID(); } CIMGUI_API ImGuiID igGetFocusID() { return ImGui::GetFocusID(); } CIMGUI_API void igSetActiveID(ImGuiID id, ImGuiWindow* window) { return ImGui::SetActiveID(id, window); } CIMGUI_API void igSetFocusID(ImGuiID id, ImGuiWindow* window) { return ImGui::SetFocusID(id, window); } CIMGUI_API void igClearActiveID() { return ImGui::ClearActiveID(); } CIMGUI_API ImGuiID igGetHoveredID() { return ImGui::GetHoveredID(); } CIMGUI_API void igSetHoveredID(ImGuiID id) { return ImGui::SetHoveredID(id); } CIMGUI_API void igKeepAliveID(ImGuiID id) { return ImGui::KeepAliveID(id); } CIMGUI_API void igMarkItemEdited(ImGuiID id) { return ImGui::MarkItemEdited(id); } CIMGUI_API void igPushOverrideID(ImGuiID id) { return ImGui::PushOverrideID(id); } CIMGUI_API ImGuiID igGetIDWithSeed_Str(const char* str_id_begin, const char* str_id_end, ImGuiID seed) { return ImGui::GetIDWithSeed(str_id_begin, str_id_end, seed); } CIMGUI_API ImGuiID igGetIDWithSeed_Int(int n, ImGuiID seed) { return ImGui::GetIDWithSeed(n, seed); } CIMGUI_API void igItemSize_Vec2(const ImVec2 size, float text_baseline_y) { return ImGui::ItemSize(size, text_baseline_y); } CIMGUI_API void igItemSize_Rect(const ImRect bb, float text_baseline_y) { return ImGui::ItemSize(bb, text_baseline_y); } CIMGUI_API bool igItemAdd(const ImRect bb, ImGuiID id, const ImRect* nav_bb, ImGuiItemFlags extra_flags) { return ImGui::ItemAdd(bb, id, nav_bb, extra_flags); } CIMGUI_API bool igItemHoverable(const ImRect bb, ImGuiID id, ImGuiItemFlags item_flags) { return ImGui::ItemHoverable(bb, id, item_flags); } CIMGUI_API bool igIsWindowContentHoverable(ImGuiWindow* window, ImGuiHoveredFlags flags) { return ImGui::IsWindowContentHoverable(window, flags); } CIMGUI_API bool igIsClippedEx(const ImRect bb, ImGuiID id) { return ImGui::IsClippedEx(bb, id); } CIMGUI_API void igSetLastItemData(ImGuiID item_id, ImGuiItemFlags in_flags, ImGuiItemStatusFlags status_flags, const ImRect item_rect) { return ImGui::SetLastItemData(item_id, in_flags, status_flags, item_rect); } CIMGUI_API void igCalcItemSize(ImVec2* pOut, ImVec2 size, float default_w, float default_h) { *pOut = ImGui::CalcItemSize(size, default_w, default_h); } CIMGUI_API float igCalcWrapWidthForPos(const ImVec2 pos, float wrap_pos_x) { return ImGui::CalcWrapWidthForPos(pos, wrap_pos_x); } CIMGUI_API void igPushMultiItemsWidths(int components, float width_full) { return ImGui::PushMultiItemsWidths(components, width_full); } CIMGUI_API bool igIsItemToggledSelection() { return ImGui::IsItemToggledSelection(); } CIMGUI_API void igGetContentRegionMaxAbs(ImVec2* pOut) { *pOut = ImGui::GetContentRegionMaxAbs(); } CIMGUI_API void igShrinkWidths(ImGuiShrinkWidthItem* items, int count, float width_excess) { return ImGui::ShrinkWidths(items, count, width_excess); } CIMGUI_API void igPushItemFlag(ImGuiItemFlags option, bool enabled) { return ImGui::PushItemFlag(option, enabled); } CIMGUI_API void igPopItemFlag() { return ImGui::PopItemFlag(); } CIMGUI_API const ImGuiDataVarInfo* igGetStyleVarInfo(ImGuiStyleVar idx) { return ImGui::GetStyleVarInfo(idx); } CIMGUI_API void igLogBegin(ImGuiLogType type, int auto_open_depth) { return ImGui::LogBegin(type, auto_open_depth); } CIMGUI_API void igLogToBuffer(int auto_open_depth) { return ImGui::LogToBuffer(auto_open_depth); } CIMGUI_API void igLogRenderedText(const ImVec2* ref_pos, const char* text, const char* text_end) { return ImGui::LogRenderedText(ref_pos, text, text_end); } CIMGUI_API void igLogSetNextTextDecoration(const char* prefix, const char* suffix) { return ImGui::LogSetNextTextDecoration(prefix, suffix); } CIMGUI_API bool igBeginChildEx(const char* name, ImGuiID id, const ImVec2 size_arg, ImGuiChildFlags child_flags, ImGuiWindowFlags window_flags) { return ImGui::BeginChildEx(name, id, size_arg, child_flags, window_flags); } CIMGUI_API void igOpenPopupEx(ImGuiID id, ImGuiPopupFlags popup_flags) { return ImGui::OpenPopupEx(id, popup_flags); } CIMGUI_API void igClosePopupToLevel(int remaining, bool restore_focus_to_window_under_popup) { return ImGui::ClosePopupToLevel(remaining, restore_focus_to_window_under_popup); } CIMGUI_API void igClosePopupsOverWindow( ImGuiWindow* ref_window, bool restore_focus_to_window_under_popup) { return ImGui::ClosePopupsOverWindow(ref_window, restore_focus_to_window_under_popup); } CIMGUI_API void igClosePopupsExceptModals() { return ImGui::ClosePopupsExceptModals(); } CIMGUI_API bool igIsPopupOpen_ID(ImGuiID id, ImGuiPopupFlags popup_flags) { return ImGui::IsPopupOpen(id, popup_flags); } CIMGUI_API bool igBeginPopupEx(ImGuiID id, ImGuiWindowFlags extra_flags) { return ImGui::BeginPopupEx(id, extra_flags); } CIMGUI_API bool igBeginTooltipEx(ImGuiTooltipFlags tooltip_flags, ImGuiWindowFlags extra_window_flags) { return ImGui::BeginTooltipEx(tooltip_flags, extra_window_flags); } CIMGUI_API bool igBeginTooltipHidden() { return ImGui::BeginTooltipHidden(); } CIMGUI_API void igGetPopupAllowedExtentRect(ImRect* pOut, ImGuiWindow* window) { *pOut = ImGui::GetPopupAllowedExtentRect(window); } CIMGUI_API ImGuiWindow* igGetTopMostPopupModal() { return ImGui::GetTopMostPopupModal(); } CIMGUI_API ImGuiWindow* igGetTopMostAndVisiblePopupModal() { return ImGui::GetTopMostAndVisiblePopupModal(); } CIMGUI_API ImGuiWindow* igFindBlockingModal(ImGuiWindow* window) { return ImGui::FindBlockingModal(window); } CIMGUI_API void igFindBestWindowPosForPopup(ImVec2* pOut, ImGuiWindow* window) { *pOut = ImGui::FindBestWindowPosForPopup(window); } CIMGUI_API void igFindBestWindowPosForPopupEx(ImVec2* pOut, const ImVec2 ref_pos, const ImVec2 size, ImGuiDir* last_dir, const ImRect r_outer, const ImRect r_avoid, ImGuiPopupPositionPolicy policy) { *pOut = ImGui::FindBestWindowPosForPopupEx(ref_pos, size, last_dir, r_outer, r_avoid, policy); } CIMGUI_API bool igBeginViewportSideBar(const char* name, ImGuiViewport* viewport, ImGuiDir dir, float size, ImGuiWindowFlags window_flags) { return ImGui::BeginViewportSideBar(name, viewport, dir, size, window_flags); } CIMGUI_API bool igBeginMenuEx(const char* label, const char* icon, bool enabled) { return ImGui::BeginMenuEx(label, icon, enabled); } CIMGUI_API bool igMenuItemEx(const char* label, const char* icon, const char* shortcut, bool selected, bool enabled) { return ImGui::MenuItemEx(label, icon, shortcut, selected, enabled); } CIMGUI_API bool igBeginComboPopup(ImGuiID popup_id, const ImRect bb, ImGuiComboFlags flags) { return ImGui::BeginComboPopup(popup_id, bb, flags); } CIMGUI_API bool igBeginComboPreview() { return ImGui::BeginComboPreview(); } CIMGUI_API void igEndComboPreview() { return ImGui::EndComboPreview(); } CIMGUI_API void igNavInitWindow(ImGuiWindow* window, bool force_reinit) { return ImGui::NavInitWindow(window, force_reinit); } CIMGUI_API void igNavInitRequestApplyResult() { return ImGui::NavInitRequestApplyResult(); } CIMGUI_API bool igNavMoveRequestButNoResultYet() { return ImGui::NavMoveRequestButNoResultYet(); } CIMGUI_API void igNavMoveRequestSubmit(ImGuiDir move_dir, ImGuiDir clip_dir, ImGuiNavMoveFlags move_flags, ImGuiScrollFlags scroll_flags) { return ImGui::NavMoveRequestSubmit(move_dir, clip_dir, move_flags, scroll_flags); } CIMGUI_API void igNavMoveRequestForward(ImGuiDir move_dir, ImGuiDir clip_dir, ImGuiNavMoveFlags move_flags, ImGuiScrollFlags scroll_flags) { return ImGui::NavMoveRequestForward(move_dir, clip_dir, move_flags, scroll_flags); } CIMGUI_API void igNavMoveRequestResolveWithLastItem(ImGuiNavItemData* result) { return ImGui::NavMoveRequestResolveWithLastItem(result); } CIMGUI_API void igNavMoveRequestResolveWithPastTreeNode( ImGuiNavItemData* result, ImGuiNavTreeNodeData* tree_node_data) { return ImGui::NavMoveRequestResolveWithPastTreeNode(result, tree_node_data); } CIMGUI_API void igNavMoveRequestCancel() { return ImGui::NavMoveRequestCancel(); } CIMGUI_API void igNavMoveRequestApplyResult() { return ImGui::NavMoveRequestApplyResult(); } CIMGUI_API void igNavMoveRequestTryWrapping(ImGuiWindow* window, ImGuiNavMoveFlags move_flags) { return ImGui::NavMoveRequestTryWrapping(window, move_flags); } CIMGUI_API void igNavHighlightActivated(ImGuiID id) { return ImGui::NavHighlightActivated(id); } CIMGUI_API void igNavClearPreferredPosForAxis(ImGuiAxis axis) { return ImGui::NavClearPreferredPosForAxis(axis); } CIMGUI_API void igNavRestoreHighlightAfterMove() { return ImGui::NavRestoreHighlightAfterMove(); } CIMGUI_API void igNavUpdateCurrentWindowIsScrollPushableX() { return ImGui::NavUpdateCurrentWindowIsScrollPushableX(); } CIMGUI_API void igSetNavWindow(ImGuiWindow* window) { return ImGui::SetNavWindow(window); } CIMGUI_API void igSetNavID(ImGuiID id, ImGuiNavLayer nav_layer, ImGuiID focus_scope_id, const ImRect rect_rel) { return ImGui::SetNavID(id, nav_layer, focus_scope_id, rect_rel); } CIMGUI_API void igSetNavFocusScope(ImGuiID focus_scope_id) { return ImGui::SetNavFocusScope(focus_scope_id); } CIMGUI_API void igFocusItem() { return ImGui::FocusItem(); } CIMGUI_API void igActivateItemByID(ImGuiID id) { return ImGui::ActivateItemByID(id); } CIMGUI_API bool igIsNamedKey(ImGuiKey key) { return ImGui::IsNamedKey(key); } CIMGUI_API bool igIsNamedKeyOrModKey(ImGuiKey key) { return ImGui::IsNamedKeyOrModKey(key); } CIMGUI_API bool igIsLegacyKey(ImGuiKey key) { return ImGui::IsLegacyKey(key); } CIMGUI_API bool igIsKeyboardKey(ImGuiKey key) { return ImGui::IsKeyboardKey(key); } CIMGUI_API bool igIsGamepadKey(ImGuiKey key) { return ImGui::IsGamepadKey(key); } CIMGUI_API bool igIsMouseKey(ImGuiKey key) { return ImGui::IsMouseKey(key); } CIMGUI_API bool igIsAliasKey(ImGuiKey key) { return ImGui::IsAliasKey(key); } CIMGUI_API bool igIsModKey(ImGuiKey key) { return ImGui::IsModKey(key); } CIMGUI_API ImGuiKeyChord igFixupKeyChord(ImGuiContext* ctx, ImGuiKeyChord key_chord) { return ImGui::FixupKeyChord(ctx, key_chord); } CIMGUI_API ImGuiKey igConvertSingleModFlagToKey(ImGuiContext* ctx, ImGuiKey key) { return ImGui::ConvertSingleModFlagToKey(ctx, key); } CIMGUI_API ImGuiKeyData* igGetKeyData_ContextPtr(ImGuiContext* ctx, ImGuiKey key) { return ImGui::GetKeyData(ctx, key); } CIMGUI_API ImGuiKeyData* igGetKeyData_Key(ImGuiKey key) { return ImGui::GetKeyData(key); } CIMGUI_API const char* igGetKeyChordName(ImGuiKeyChord key_chord) { return ImGui::GetKeyChordName(key_chord); } CIMGUI_API ImGuiKey igMouseButtonToKey(ImGuiMouseButton button) { return ImGui::MouseButtonToKey(button); } CIMGUI_API bool igIsMouseDragPastThreshold(ImGuiMouseButton button, float lock_threshold) { return ImGui::IsMouseDragPastThreshold(button, lock_threshold); } CIMGUI_API void igGetKeyMagnitude2d(ImVec2* pOut, ImGuiKey key_left, ImGuiKey key_right, ImGuiKey key_up, ImGuiKey key_down) { *pOut = ImGui::GetKeyMagnitude2d(key_left, key_right, key_up, key_down); } CIMGUI_API float igGetNavTweakPressedAmount(ImGuiAxis axis) { return ImGui::GetNavTweakPressedAmount(axis); } CIMGUI_API int igCalcTypematicRepeatAmount(float t0, float t1, float repeat_delay, float repeat_rate) { return ImGui::CalcTypematicRepeatAmount(t0, t1, repeat_delay, repeat_rate); } CIMGUI_API void igGetTypematicRepeatRate(ImGuiInputFlags flags, float* repeat_delay, float* repeat_rate) { return ImGui::GetTypematicRepeatRate(flags, repeat_delay, repeat_rate); } CIMGUI_API void igTeleportMousePos(const ImVec2 pos) { return ImGui::TeleportMousePos(pos); } CIMGUI_API void igSetActiveIdUsingAllKeyboardKeys() { return ImGui::SetActiveIdUsingAllKeyboardKeys(); } CIMGUI_API bool igIsActiveIdUsingNavDir(ImGuiDir dir) { return ImGui::IsActiveIdUsingNavDir(dir); } CIMGUI_API ImGuiID igGetKeyOwner(ImGuiKey key) { return ImGui::GetKeyOwner(key); } CIMGUI_API void igSetKeyOwner(ImGuiKey key, ImGuiID owner_id, ImGuiInputFlags flags) { return ImGui::SetKeyOwner(key, owner_id, flags); } CIMGUI_API void igSetKeyOwnersForKeyChord(ImGuiKeyChord key, ImGuiID owner_id, ImGuiInputFlags flags) { return ImGui::SetKeyOwnersForKeyChord(key, owner_id, flags); } CIMGUI_API void igSetItemKeyOwner(ImGuiKey key, ImGuiInputFlags flags) { return ImGui::SetItemKeyOwner(key, flags); } CIMGUI_API bool igTestKeyOwner(ImGuiKey key, ImGuiID owner_id) { return ImGui::TestKeyOwner(key, owner_id); } CIMGUI_API ImGuiKeyOwnerData* igGetKeyOwnerData(ImGuiContext* ctx, ImGuiKey key) { return ImGui::GetKeyOwnerData(ctx, key); } 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) { return ImGui::IsKeyPressed(key, owner_id, flags); } CIMGUI_API bool igIsKeyReleased_ID(ImGuiKey key, ImGuiID owner_id) { return ImGui::IsKeyReleased(key, 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) { return ImGui::IsMouseClicked(button, owner_id, flags); } CIMGUI_API bool igIsMouseReleased_ID(ImGuiMouseButton button, ImGuiID owner_id) { return ImGui::IsMouseReleased(button, owner_id); } CIMGUI_API bool igIsMouseDoubleClicked_ID(ImGuiMouseButton button, ImGuiID owner_id) { return ImGui::IsMouseDoubleClicked(button, owner_id); } CIMGUI_API bool igIsKeyChordPressed_ID(ImGuiKeyChord key_chord, ImGuiID owner_id, ImGuiInputFlags flags) { return ImGui::IsKeyChordPressed(key_chord, owner_id, flags); } CIMGUI_API void igSetNextItemShortcut(ImGuiKeyChord key_chord) { 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); } CIMGUI_API bool igTestShortcutRouting(ImGuiKeyChord key_chord, ImGuiID owner_id) { return ImGui::TestShortcutRouting(key_chord, owner_id); } CIMGUI_API ImGuiKeyRoutingData* igGetShortcutRoutingData( ImGuiKeyChord key_chord) { return ImGui::GetShortcutRoutingData(key_chord); } CIMGUI_API void igDockContextInitialize(ImGuiContext* ctx) { return ImGui::DockContextInitialize(ctx); } CIMGUI_API void igDockContextShutdown(ImGuiContext* ctx) { return ImGui::DockContextShutdown(ctx); } CIMGUI_API void igDockContextClearNodes(ImGuiContext* ctx, ImGuiID root_id, bool clear_settings_refs) { return ImGui::DockContextClearNodes(ctx, root_id, clear_settings_refs); } CIMGUI_API void igDockContextRebuildNodes(ImGuiContext* ctx) { return ImGui::DockContextRebuildNodes(ctx); } CIMGUI_API void igDockContextNewFrameUpdateUndocking(ImGuiContext* ctx) { return ImGui::DockContextNewFrameUpdateUndocking(ctx); } CIMGUI_API void igDockContextNewFrameUpdateDocking(ImGuiContext* ctx) { return ImGui::DockContextNewFrameUpdateDocking(ctx); } CIMGUI_API void igDockContextEndFrame(ImGuiContext* ctx) { return ImGui::DockContextEndFrame(ctx); } CIMGUI_API ImGuiID igDockContextGenNodeID(ImGuiContext* ctx) { return ImGui::DockContextGenNodeID(ctx); } CIMGUI_API void igDockContextQueueDock(ImGuiContext* ctx, ImGuiWindow* target, ImGuiDockNode* target_node, ImGuiWindow* payload, ImGuiDir split_dir, float split_ratio, bool split_outer) { return ImGui::DockContextQueueDock(ctx, target, target_node, payload, split_dir, split_ratio, split_outer); } CIMGUI_API void igDockContextQueueUndockWindow(ImGuiContext* ctx, ImGuiWindow* window) { return ImGui::DockContextQueueUndockWindow(ctx, window); } CIMGUI_API void igDockContextQueueUndockNode(ImGuiContext* ctx, ImGuiDockNode* node) { return ImGui::DockContextQueueUndockNode(ctx, node); } CIMGUI_API void igDockContextProcessUndockWindow( ImGuiContext* ctx, ImGuiWindow* window, bool clear_persistent_docking_ref) { return ImGui::DockContextProcessUndockWindow(ctx, window, clear_persistent_docking_ref); } CIMGUI_API void igDockContextProcessUndockNode(ImGuiContext* ctx, ImGuiDockNode* node) { return ImGui::DockContextProcessUndockNode(ctx, node); } CIMGUI_API bool igDockContextCalcDropPosForDocking(ImGuiWindow* target, ImGuiDockNode* target_node, ImGuiWindow* payload_window, ImGuiDockNode* payload_node, ImGuiDir split_dir, bool split_outer, ImVec2* out_pos) { return ImGui::DockContextCalcDropPosForDocking( target, target_node, payload_window, payload_node, split_dir, split_outer, out_pos); } CIMGUI_API ImGuiDockNode* igDockContextFindNodeByID(ImGuiContext* ctx, ImGuiID id) { return ImGui::DockContextFindNodeByID(ctx, id); } CIMGUI_API void igDockNodeWindowMenuHandler_Default(ImGuiContext* ctx, ImGuiDockNode* node, ImGuiTabBar* tab_bar) { return ImGui::DockNodeWindowMenuHandler_Default(ctx, node, tab_bar); } CIMGUI_API bool igDockNodeBeginAmendTabBar(ImGuiDockNode* node) { return ImGui::DockNodeBeginAmendTabBar(node); } CIMGUI_API void igDockNodeEndAmendTabBar() { return ImGui::DockNodeEndAmendTabBar(); } CIMGUI_API ImGuiDockNode* igDockNodeGetRootNode(ImGuiDockNode* node) { return ImGui::DockNodeGetRootNode(node); } CIMGUI_API bool igDockNodeIsInHierarchyOf(ImGuiDockNode* node, ImGuiDockNode* parent) { return ImGui::DockNodeIsInHierarchyOf(node, parent); } CIMGUI_API int igDockNodeGetDepth(const ImGuiDockNode* node) { return ImGui::DockNodeGetDepth(node); } CIMGUI_API ImGuiID igDockNodeGetWindowMenuButtonId(const ImGuiDockNode* node) { return ImGui::DockNodeGetWindowMenuButtonId(node); } CIMGUI_API ImGuiDockNode* igGetWindowDockNode() { return ImGui::GetWindowDockNode(); } CIMGUI_API bool igGetWindowAlwaysWantOwnTabBar(ImGuiWindow* window) { return ImGui::GetWindowAlwaysWantOwnTabBar(window); } CIMGUI_API void igBeginDocked(ImGuiWindow* window, bool* p_open) { return ImGui::BeginDocked(window, p_open); } CIMGUI_API void igBeginDockableDragDropSource(ImGuiWindow* window) { return ImGui::BeginDockableDragDropSource(window); } CIMGUI_API void igBeginDockableDragDropTarget(ImGuiWindow* window) { return ImGui::BeginDockableDragDropTarget(window); } CIMGUI_API void igSetWindowDock(ImGuiWindow* window, ImGuiID dock_id, ImGuiCond cond) { return ImGui::SetWindowDock(window, dock_id, cond); } CIMGUI_API void igDockBuilderDockWindow(const char* window_name, ImGuiID node_id) { return ImGui::DockBuilderDockWindow(window_name, node_id); } CIMGUI_API ImGuiDockNode* igDockBuilderGetNode(ImGuiID node_id) { return ImGui::DockBuilderGetNode(node_id); } CIMGUI_API ImGuiDockNode* igDockBuilderGetCentralNode(ImGuiID node_id) { return ImGui::DockBuilderGetCentralNode(node_id); } CIMGUI_API ImGuiID igDockBuilderAddNode(ImGuiID node_id, ImGuiDockNodeFlags flags) { return ImGui::DockBuilderAddNode(node_id, flags); } CIMGUI_API void igDockBuilderRemoveNode(ImGuiID node_id) { return ImGui::DockBuilderRemoveNode(node_id); } CIMGUI_API void igDockBuilderRemoveNodeDockedWindows(ImGuiID node_id, bool clear_settings_refs) { return ImGui::DockBuilderRemoveNodeDockedWindows(node_id, clear_settings_refs); } CIMGUI_API void igDockBuilderRemoveNodeChildNodes(ImGuiID node_id) { return ImGui::DockBuilderRemoveNodeChildNodes(node_id); } CIMGUI_API void igDockBuilderSetNodePos(ImGuiID node_id, ImVec2 pos) { return ImGui::DockBuilderSetNodePos(node_id, pos); } CIMGUI_API void igDockBuilderSetNodeSize(ImGuiID node_id, ImVec2 size) { return ImGui::DockBuilderSetNodeSize(node_id, size); } CIMGUI_API ImGuiID igDockBuilderSplitNode(ImGuiID node_id, ImGuiDir split_dir, float size_ratio_for_node_at_dir, ImGuiID* out_id_at_dir, ImGuiID* out_id_at_opposite_dir) { return ImGui::DockBuilderSplitNode(node_id, split_dir, size_ratio_for_node_at_dir, out_id_at_dir, out_id_at_opposite_dir); } CIMGUI_API void igDockBuilderCopyDockSpace( ImGuiID src_dockspace_id, ImGuiID dst_dockspace_id, ImVector_const_charPtr* in_window_remap_pairs) { return ImGui::DockBuilderCopyDockSpace(src_dockspace_id, dst_dockspace_id, in_window_remap_pairs); } CIMGUI_API void igDockBuilderCopyNode(ImGuiID src_node_id, ImGuiID dst_node_id, ImVector_ImGuiID* out_node_remap_pairs) { return ImGui::DockBuilderCopyNode(src_node_id, dst_node_id, out_node_remap_pairs); } CIMGUI_API void igDockBuilderCopyWindowSettings(const char* src_name, const char* dst_name) { return ImGui::DockBuilderCopyWindowSettings(src_name, dst_name); } CIMGUI_API void igDockBuilderFinish(ImGuiID node_id) { return ImGui::DockBuilderFinish(node_id); } CIMGUI_API void igPushFocusScope(ImGuiID id) { return ImGui::PushFocusScope(id); } CIMGUI_API void igPopFocusScope() { return ImGui::PopFocusScope(); } CIMGUI_API ImGuiID igGetCurrentFocusScope() { return ImGui::GetCurrentFocusScope(); } CIMGUI_API bool igIsDragDropActive() { return ImGui::IsDragDropActive(); } CIMGUI_API bool igBeginDragDropTargetCustom(const ImRect bb, ImGuiID id) { return ImGui::BeginDragDropTargetCustom(bb, id); } CIMGUI_API void igClearDragDrop() { return ImGui::ClearDragDrop(); } CIMGUI_API bool igIsDragDropPayloadBeingAccepted() { return ImGui::IsDragDropPayloadBeingAccepted(); } CIMGUI_API void igRenderDragDropTargetRect(const ImRect bb, const ImRect item_clip_rect) { return ImGui::RenderDragDropTargetRect(bb, item_clip_rect); } CIMGUI_API ImGuiTypingSelectRequest* igGetTypingSelectRequest( ImGuiTypingSelectFlags flags) { return ImGui::GetTypingSelectRequest(flags); } CIMGUI_API int igTypingSelectFindMatch(ImGuiTypingSelectRequest* req, int items_count, const char* (*get_item_name_func)(void*, int), void* user_data, int nav_item_idx) { return ImGui::TypingSelectFindMatch(req, items_count, get_item_name_func, user_data, nav_item_idx); } CIMGUI_API int igTypingSelectFindNextSingleCharMatch( ImGuiTypingSelectRequest* req, int items_count, const char* (*get_item_name_func)(void*, int), void* user_data, int nav_item_idx) { return ImGui::TypingSelectFindNextSingleCharMatch( req, items_count, get_item_name_func, user_data, nav_item_idx); } CIMGUI_API int igTypingSelectFindBestLeadingMatch( ImGuiTypingSelectRequest* req, int items_count, const char* (*get_item_name_func)(void*, int), void* user_data) { return ImGui::TypingSelectFindBestLeadingMatch(req, items_count, get_item_name_func, user_data); } CIMGUI_API void igSetWindowClipRectBeforeSetChannel(ImGuiWindow* window, const ImRect clip_rect) { return ImGui::SetWindowClipRectBeforeSetChannel(window, 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 igTableGetHoveredColumn() { return ImGui::TableGetHoveredColumn(); } 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 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 outer_size, float inner_width) { return ImGui::BeginTableEx(name, id, columns_count, flags, 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 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 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 void igTableGetCellBgRect(ImRect* pOut, const ImGuiTable* table, int column_n) { *pOut = 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 igTableGetMaxColumnWidth(const ImGuiTable* table, int column_n) { return ImGui::TableGetMaxColumnWidth(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 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(); } CIMGUI_API bool igBeginTabBarEx(ImGuiTabBar* tab_bar, const ImRect bb, ImGuiTabBarFlags flags) { return ImGui::BeginTabBarEx(tab_bar, bb, flags); } CIMGUI_API ImGuiTabItem* igTabBarFindTabByID(ImGuiTabBar* tab_bar, ImGuiID tab_id) { return ImGui::TabBarFindTabByID(tab_bar, tab_id); } CIMGUI_API ImGuiTabItem* igTabBarFindTabByOrder(ImGuiTabBar* tab_bar, int order) { return ImGui::TabBarFindTabByOrder(tab_bar, order); } CIMGUI_API ImGuiTabItem* igTabBarFindMostRecentlySelectedTabForActiveWindow( ImGuiTabBar* tab_bar) { return ImGui::TabBarFindMostRecentlySelectedTabForActiveWindow(tab_bar); } CIMGUI_API ImGuiTabItem* igTabBarGetCurrentTab(ImGuiTabBar* tab_bar) { return ImGui::TabBarGetCurrentTab(tab_bar); } CIMGUI_API int igTabBarGetTabOrder(ImGuiTabBar* tab_bar, ImGuiTabItem* tab) { return ImGui::TabBarGetTabOrder(tab_bar, tab); } CIMGUI_API const char* igTabBarGetTabName(ImGuiTabBar* tab_bar, ImGuiTabItem* tab) { return ImGui::TabBarGetTabName(tab_bar, tab); } CIMGUI_API void igTabBarAddTab(ImGuiTabBar* tab_bar, ImGuiTabItemFlags tab_flags, ImGuiWindow* window) { return ImGui::TabBarAddTab(tab_bar, tab_flags, window); } CIMGUI_API void igTabBarRemoveTab(ImGuiTabBar* tab_bar, ImGuiID tab_id) { return ImGui::TabBarRemoveTab(tab_bar, tab_id); } CIMGUI_API void igTabBarCloseTab(ImGuiTabBar* tab_bar, ImGuiTabItem* tab) { return ImGui::TabBarCloseTab(tab_bar, tab); } CIMGUI_API void igTabBarQueueFocus(ImGuiTabBar* tab_bar, ImGuiTabItem* tab) { return ImGui::TabBarQueueFocus(tab_bar, tab); } CIMGUI_API void igTabBarQueueReorder(ImGuiTabBar* tab_bar, ImGuiTabItem* tab, int offset) { return ImGui::TabBarQueueReorder(tab_bar, tab, offset); } CIMGUI_API void igTabBarQueueReorderFromMousePos(ImGuiTabBar* tab_bar, ImGuiTabItem* tab, ImVec2 mouse_pos) { return ImGui::TabBarQueueReorderFromMousePos(tab_bar, tab, mouse_pos); } CIMGUI_API bool igTabBarProcessReorder(ImGuiTabBar* tab_bar) { return ImGui::TabBarProcessReorder(tab_bar); } CIMGUI_API bool igTabItemEx(ImGuiTabBar* tab_bar, const char* label, bool* p_open, ImGuiTabItemFlags flags, ImGuiWindow* docked_window) { return ImGui::TabItemEx(tab_bar, label, p_open, flags, docked_window); } CIMGUI_API void igTabItemCalcSize_Str(ImVec2* pOut, const char* label, bool has_close_button_or_unsaved_marker) { *pOut = ImGui::TabItemCalcSize(label, has_close_button_or_unsaved_marker); } CIMGUI_API void igTabItemCalcSize_WindowPtr(ImVec2* pOut, ImGuiWindow* window) { *pOut = ImGui::TabItemCalcSize(window); } CIMGUI_API void igTabItemBackground(ImDrawList* draw_list, const ImRect bb, ImGuiTabItemFlags flags, ImU32 col) { return ImGui::TabItemBackground(draw_list, bb, flags, col); } CIMGUI_API void igTabItemLabelAndCloseButton(ImDrawList* draw_list, const ImRect bb, ImGuiTabItemFlags flags, ImVec2 frame_padding, const char* label, ImGuiID tab_id, ImGuiID close_button_id, bool is_contents_visible, bool* out_just_closed, bool* out_text_clipped) { return ImGui::TabItemLabelAndCloseButton( draw_list, bb, flags, frame_padding, label, tab_id, close_button_id, is_contents_visible, out_just_closed, out_text_clipped); } CIMGUI_API void igRenderText(ImVec2 pos, const char* text, const char* text_end, bool hide_text_after_hash) { return ImGui::RenderText(pos, text, text_end, hide_text_after_hash); } CIMGUI_API void igRenderTextWrapped(ImVec2 pos, const char* text, const char* text_end, float wrap_width) { return ImGui::RenderTextWrapped(pos, text, text_end, wrap_width); } CIMGUI_API void igRenderTextClipped(const ImVec2 pos_min, const ImVec2 pos_max, const char* text, const char* text_end, const ImVec2* text_size_if_known, const ImVec2 align, const ImRect* clip_rect) { return ImGui::RenderTextClipped(pos_min, pos_max, text, text_end, text_size_if_known, align, clip_rect); } CIMGUI_API void igRenderTextClippedEx(ImDrawList* draw_list, const ImVec2 pos_min, const ImVec2 pos_max, const char* text, const char* text_end, const ImVec2* text_size_if_known, const ImVec2 align, const ImRect* clip_rect) { return ImGui::RenderTextClippedEx(draw_list, pos_min, pos_max, text, text_end, text_size_if_known, align, clip_rect); } CIMGUI_API void igRenderTextEllipsis(ImDrawList* draw_list, const ImVec2 pos_min, const ImVec2 pos_max, float clip_max_x, float ellipsis_max_x, const char* text, const char* text_end, const ImVec2* text_size_if_known) { return ImGui::RenderTextEllipsis(draw_list, pos_min, pos_max, clip_max_x, ellipsis_max_x, text, text_end, text_size_if_known); } CIMGUI_API void igRenderFrame(ImVec2 p_min, ImVec2 p_max, ImU32 fill_col, bool border, float rounding) { return ImGui::RenderFrame(p_min, p_max, fill_col, border, rounding); } CIMGUI_API void igRenderFrameBorder(ImVec2 p_min, ImVec2 p_max, float rounding) { return ImGui::RenderFrameBorder(p_min, p_max, rounding); } CIMGUI_API void igRenderColorRectWithAlphaCheckerboard(ImDrawList* draw_list, ImVec2 p_min, ImVec2 p_max, ImU32 fill_col, float grid_step, ImVec2 grid_off, float rounding, ImDrawFlags flags) { return ImGui::RenderColorRectWithAlphaCheckerboard( draw_list, p_min, p_max, fill_col, grid_step, grid_off, rounding, flags); } CIMGUI_API void igRenderNavHighlight(const ImRect bb, ImGuiID id, ImGuiNavHighlightFlags flags) { return ImGui::RenderNavHighlight(bb, id, flags); } CIMGUI_API const char* igFindRenderedTextEnd(const char* text, const char* text_end) { return ImGui::FindRenderedTextEnd(text, text_end); } CIMGUI_API void igRenderMouseCursor(ImVec2 pos, float scale, ImGuiMouseCursor mouse_cursor, ImU32 col_fill, ImU32 col_border, ImU32 col_shadow) { return ImGui::RenderMouseCursor(pos, scale, mouse_cursor, col_fill, col_border, col_shadow); } CIMGUI_API void igRenderArrow(ImDrawList* draw_list, ImVec2 pos, ImU32 col, ImGuiDir dir, float scale) { return ImGui::RenderArrow(draw_list, pos, col, dir, scale); } CIMGUI_API void igRenderBullet(ImDrawList* draw_list, ImVec2 pos, ImU32 col) { return ImGui::RenderBullet(draw_list, pos, col); } CIMGUI_API void igRenderCheckMark(ImDrawList* draw_list, ImVec2 pos, ImU32 col, float sz) { return ImGui::RenderCheckMark(draw_list, pos, col, sz); } CIMGUI_API void igRenderArrowPointingAt(ImDrawList* draw_list, ImVec2 pos, ImVec2 half_sz, ImGuiDir direction, ImU32 col) { return ImGui::RenderArrowPointingAt(draw_list, pos, half_sz, direction, col); } CIMGUI_API void igRenderArrowDockMenu(ImDrawList* draw_list, ImVec2 p_min, float sz, ImU32 col) { return ImGui::RenderArrowDockMenu(draw_list, p_min, sz, col); } CIMGUI_API void igRenderRectFilledRangeH(ImDrawList* draw_list, const ImRect rect, ImU32 col, float x_start_norm, float x_end_norm, float rounding) { return ImGui::RenderRectFilledRangeH(draw_list, rect, col, x_start_norm, x_end_norm, rounding); } CIMGUI_API void igRenderRectFilledWithHole(ImDrawList* draw_list, const ImRect outer, const ImRect inner, ImU32 col, float rounding) { return ImGui::RenderRectFilledWithHole(draw_list, outer, inner, col, rounding); } CIMGUI_API ImDrawFlags igCalcRoundingFlagsForRectInRect(const ImRect r_in, const ImRect r_outer, float threshold) { return ImGui::CalcRoundingFlagsForRectInRect(r_in, r_outer, threshold); } CIMGUI_API void igTextEx(const char* text, const char* text_end, ImGuiTextFlags flags) { return ImGui::TextEx(text, text_end, flags); } CIMGUI_API bool igButtonEx(const char* label, const ImVec2 size_arg, ImGuiButtonFlags flags) { return ImGui::ButtonEx(label, size_arg, flags); } CIMGUI_API bool igArrowButtonEx(const char* str_id, ImGuiDir dir, ImVec2 size_arg, ImGuiButtonFlags flags) { return ImGui::ArrowButtonEx(str_id, dir, size_arg, flags); } CIMGUI_API bool igImageButtonEx(ImGuiID id, ImTextureID texture_id, const ImVec2 image_size, const ImVec2 uv0, const ImVec2 uv1, const ImVec4 bg_col, const ImVec4 tint_col, ImGuiButtonFlags flags) { return ImGui::ImageButtonEx(id, texture_id, image_size, uv0, uv1, bg_col, tint_col, flags); } CIMGUI_API void igSeparatorEx(ImGuiSeparatorFlags flags, float thickness) { return ImGui::SeparatorEx(flags, thickness); } CIMGUI_API void igSeparatorTextEx(ImGuiID id, const char* label, const char* label_end, float extra_width) { return ImGui::SeparatorTextEx(id, label, label_end, extra_width); } CIMGUI_API bool igCheckboxFlags_S64Ptr(const char* label, ImS64* flags, ImS64 flags_value) { return ImGui::CheckboxFlags(label, flags, flags_value); } CIMGUI_API bool igCheckboxFlags_U64Ptr(const char* label, ImU64* flags, ImU64 flags_value) { return ImGui::CheckboxFlags(label, flags, flags_value); } CIMGUI_API bool igCloseButton(ImGuiID id, const ImVec2 pos) { return ImGui::CloseButton(id, pos); } CIMGUI_API bool igCollapseButton(ImGuiID id, const ImVec2 pos, ImGuiDockNode* dock_node) { return ImGui::CollapseButton(id, pos, dock_node); } CIMGUI_API void igScrollbar(ImGuiAxis axis) { return ImGui::Scrollbar(axis); } CIMGUI_API bool igScrollbarEx(const ImRect bb, ImGuiID id, ImGuiAxis axis, ImS64* p_scroll_v, ImS64 avail_v, ImS64 contents_v, ImDrawFlags flags) { return ImGui::ScrollbarEx(bb, id, axis, p_scroll_v, avail_v, contents_v, flags); } CIMGUI_API void igGetWindowScrollbarRect(ImRect* pOut, ImGuiWindow* window, ImGuiAxis axis) { *pOut = ImGui::GetWindowScrollbarRect(window, axis); } CIMGUI_API ImGuiID igGetWindowScrollbarID(ImGuiWindow* window, ImGuiAxis axis) { return ImGui::GetWindowScrollbarID(window, axis); } CIMGUI_API ImGuiID igGetWindowResizeCornerID(ImGuiWindow* window, int n) { return ImGui::GetWindowResizeCornerID(window, n); } CIMGUI_API ImGuiID igGetWindowResizeBorderID(ImGuiWindow* window, ImGuiDir dir) { return ImGui::GetWindowResizeBorderID(window, dir); } CIMGUI_API bool igButtonBehavior(const ImRect bb, ImGuiID id, bool* out_hovered, bool* out_held, ImGuiButtonFlags flags) { return ImGui::ButtonBehavior(bb, id, out_hovered, out_held, flags); } CIMGUI_API bool igDragBehavior(ImGuiID id, ImGuiDataType data_type, void* p_v, float v_speed, const void* p_min, const void* p_max, const char* format, ImGuiSliderFlags flags) { return ImGui::DragBehavior(id, data_type, p_v, v_speed, p_min, p_max, format, flags); } CIMGUI_API bool igSliderBehavior(const ImRect bb, ImGuiID id, ImGuiDataType data_type, void* p_v, const void* p_min, const void* p_max, const char* format, ImGuiSliderFlags flags, ImRect* out_grab_bb) { return ImGui::SliderBehavior(bb, id, data_type, p_v, p_min, p_max, format, flags, out_grab_bb); } CIMGUI_API bool igSplitterBehavior(const ImRect bb, ImGuiID id, ImGuiAxis axis, float* size1, float* size2, float min_size1, float min_size2, float hover_extend, float hover_visibility_delay, ImU32 bg_col) { return ImGui::SplitterBehavior(bb, id, axis, size1, size2, min_size1, min_size2, hover_extend, hover_visibility_delay, bg_col); } CIMGUI_API bool igTreeNodeBehavior(ImGuiID id, ImGuiTreeNodeFlags flags, const char* label, const char* label_end) { return ImGui::TreeNodeBehavior(id, flags, label, label_end); } CIMGUI_API void igTreePushOverrideID(ImGuiID id) { return ImGui::TreePushOverrideID(id); } CIMGUI_API void igTreeNodeSetOpen(ImGuiID id, bool open) { return ImGui::TreeNodeSetOpen(id, open); } CIMGUI_API bool igTreeNodeUpdateNextOpen(ImGuiID id, ImGuiTreeNodeFlags flags) { return ImGui::TreeNodeUpdateNextOpen(id, flags); } CIMGUI_API void igSetNextItemSelectionUserData( ImGuiSelectionUserData selection_user_data) { return ImGui::SetNextItemSelectionUserData(selection_user_data); } CIMGUI_API const ImGuiDataTypeInfo* igDataTypeGetInfo(ImGuiDataType data_type) { return ImGui::DataTypeGetInfo(data_type); } CIMGUI_API int igDataTypeFormatString(char* buf, int buf_size, ImGuiDataType data_type, const void* p_data, const char* format) { return ImGui::DataTypeFormatString(buf, buf_size, data_type, p_data, format); } CIMGUI_API void igDataTypeApplyOp(ImGuiDataType data_type, int op, void* output, const void* arg_1, const void* arg_2) { 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) { return ImGui::DataTypeApplyFromText(buf, data_type, p_data, format); } CIMGUI_API int igDataTypeCompare(ImGuiDataType data_type, const void* arg_1, const void* arg_2) { return ImGui::DataTypeCompare(data_type, arg_1, arg_2); } CIMGUI_API bool igDataTypeClamp(ImGuiDataType data_type, void* p_data, const void* p_min, const void* p_max) { return ImGui::DataTypeClamp(data_type, p_data, p_min, 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) { return ImGui::InputTextEx(label, hint, buf, buf_size, size_arg, flags, callback, user_data); } CIMGUI_API void igInputTextDeactivateHook(ImGuiID id) { return ImGui::InputTextDeactivateHook(id); } CIMGUI_API bool igTempInputText(const ImRect bb, ImGuiID id, const char* label, char* buf, int buf_size, ImGuiInputTextFlags flags) { return ImGui::TempInputText(bb, id, label, buf, buf_size, flags); } 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) { return ImGui::TempInputScalar(bb, id, label, data_type, p_data, format, p_clamp_min, p_clamp_max); } CIMGUI_API bool igTempInputIsActive(ImGuiID id) { return ImGui::TempInputIsActive(id); } CIMGUI_API ImGuiInputTextState* igGetInputTextState(ImGuiID id) { return ImGui::GetInputTextState(id); } CIMGUI_API void igColorTooltip(const char* text, const float* col, ImGuiColorEditFlags flags) { return ImGui::ColorTooltip(text, col, flags); } CIMGUI_API void igColorEditOptionsPopup(const float* col, ImGuiColorEditFlags flags) { return ImGui::ColorEditOptionsPopup(col, flags); } CIMGUI_API void igColorPickerOptionsPopup(const float* ref_col, ImGuiColorEditFlags flags) { return ImGui::ColorPickerOptionsPopup(ref_col, flags); } CIMGUI_API int igPlotEx(ImGuiPlotType plot_type, const char* label, float (*values_getter)(void* data, int idx), void* data, int values_count, int values_offset, const char* overlay_text, float scale_min, float scale_max, const ImVec2 size_arg) { return ImGui::PlotEx(plot_type, label, values_getter, data, values_count, values_offset, overlay_text, scale_min, scale_max, size_arg); } CIMGUI_API void igShadeVertsLinearColorGradientKeepAlpha(ImDrawList* draw_list, int vert_start_idx, int vert_end_idx, ImVec2 gradient_p0, ImVec2 gradient_p1, ImU32 col0, ImU32 col1) { return ImGui::ShadeVertsLinearColorGradientKeepAlpha( draw_list, vert_start_idx, vert_end_idx, gradient_p0, gradient_p1, col0, col1); } CIMGUI_API void igShadeVertsLinearUV(ImDrawList* draw_list, int vert_start_idx, int vert_end_idx, const ImVec2 a, const ImVec2 b, const ImVec2 uv_a, const ImVec2 uv_b, bool clamp) { return ImGui::ShadeVertsLinearUV(draw_list, vert_start_idx, vert_end_idx, a, b, uv_a, uv_b, clamp); } CIMGUI_API void igShadeVertsTransformPos(ImDrawList* draw_list, int vert_start_idx, int vert_end_idx, const ImVec2 pivot_in, float cos_a, float sin_a, const ImVec2 pivot_out) { return ImGui::ShadeVertsTransformPos(draw_list, vert_start_idx, vert_end_idx, pivot_in, cos_a, sin_a, pivot_out); } CIMGUI_API void igGcCompactTransientMiscBuffers() { return ImGui::GcCompactTransientMiscBuffers(); } CIMGUI_API void igGcCompactTransientWindowBuffers(ImGuiWindow* window) { return ImGui::GcCompactTransientWindowBuffers(window); } CIMGUI_API void igGcAwakeTransientWindowBuffers(ImGuiWindow* window) { return ImGui::GcAwakeTransientWindowBuffers(window); } CIMGUI_API void igDebugLog(const char* fmt, ...) { va_list args; va_start(args, fmt); ImGui::DebugLogV(fmt, args); va_end(args); } CIMGUI_API void igDebugLogV(const char* fmt, va_list args) { return ImGui::DebugLogV(fmt, args); } CIMGUI_API void igDebugAllocHook(ImGuiDebugAllocInfo* info, int frame_count, void* ptr, size_t size) { return ImGui::DebugAllocHook(info, frame_count, ptr, size); } CIMGUI_API void igErrorCheckEndFrameRecover(ImGuiErrorLogCallback log_callback, void* user_data) { return ImGui::ErrorCheckEndFrameRecover(log_callback, user_data); } CIMGUI_API void igErrorCheckEndWindowRecover(ImGuiErrorLogCallback log_callback, void* user_data) { return ImGui::ErrorCheckEndWindowRecover(log_callback, user_data); } CIMGUI_API void igErrorCheckUsingSetCursorPosToExtendParentBoundaries() { return ImGui::ErrorCheckUsingSetCursorPosToExtendParentBoundaries(); } CIMGUI_API void igDebugDrawCursorPos(ImU32 col) { return ImGui::DebugDrawCursorPos(col); } CIMGUI_API void igDebugDrawLineExtents(ImU32 col) { return ImGui::DebugDrawLineExtents(col); } CIMGUI_API void igDebugDrawItemRect(ImU32 col) { return ImGui::DebugDrawItemRect(col); } CIMGUI_API void igDebugLocateItem(ImGuiID target_id) { return ImGui::DebugLocateItem(target_id); } CIMGUI_API void igDebugLocateItemOnHover(ImGuiID target_id) { return ImGui::DebugLocateItemOnHover(target_id); } CIMGUI_API void igDebugLocateItemResolveWithLastItem() { return ImGui::DebugLocateItemResolveWithLastItem(); } CIMGUI_API void igDebugBreakClearData() { return ImGui::DebugBreakClearData(); } CIMGUI_API bool igDebugBreakButton(const char* label, const char* description_of_location) { return ImGui::DebugBreakButton(label, description_of_location); } CIMGUI_API void igDebugBreakButtonTooltip(bool keyboard_only, const char* description_of_location) { return ImGui::DebugBreakButtonTooltip(keyboard_only, description_of_location); } CIMGUI_API void igShowFontAtlas(ImFontAtlas* atlas) { return ImGui::ShowFontAtlas(atlas); } CIMGUI_API void igDebugHookIdInfo(ImGuiID id, ImGuiDataType data_type, const void* data_id, const void* data_id_end) { return ImGui::DebugHookIdInfo(id, data_type, data_id, data_id_end); } CIMGUI_API void igDebugNodeColumns(ImGuiOldColumns* columns) { return ImGui::DebugNodeColumns(columns); } CIMGUI_API void igDebugNodeDockNode(ImGuiDockNode* node, const char* label) { return ImGui::DebugNodeDockNode(node, label); } CIMGUI_API void igDebugNodeDrawList(ImGuiWindow* window, ImGuiViewportP* viewport, const ImDrawList* draw_list, const char* label) { return ImGui::DebugNodeDrawList(window, viewport, draw_list, label); } CIMGUI_API void igDebugNodeDrawCmdShowMeshAndBoundingBox( ImDrawList* out_draw_list, const ImDrawList* draw_list, const ImDrawCmd* draw_cmd, bool show_mesh, bool show_aabb) { return ImGui::DebugNodeDrawCmdShowMeshAndBoundingBox( out_draw_list, draw_list, draw_cmd, show_mesh, show_aabb); } CIMGUI_API void igDebugNodeFont(ImFont* font) { return ImGui::DebugNodeFont(font); } CIMGUI_API void igDebugNodeFontGlyph(ImFont* font, const ImFontGlyph* glyph) { return ImGui::DebugNodeFontGlyph(font, glyph); } CIMGUI_API void igDebugNodeStorage(ImGuiStorage* storage, const char* label) { return ImGui::DebugNodeStorage(storage, label); } CIMGUI_API void igDebugNodeTabBar(ImGuiTabBar* tab_bar, const char* label) { return ImGui::DebugNodeTabBar(tab_bar, label); } CIMGUI_API void igDebugNodeTable(ImGuiTable* table) { return ImGui::DebugNodeTable(table); } CIMGUI_API void igDebugNodeTableSettings(ImGuiTableSettings* settings) { return ImGui::DebugNodeTableSettings(settings); } CIMGUI_API void igDebugNodeInputTextState(ImGuiInputTextState* state) { return ImGui::DebugNodeInputTextState(state); } CIMGUI_API void igDebugNodeTypingSelectState(ImGuiTypingSelectState* state) { return ImGui::DebugNodeTypingSelectState(state); } CIMGUI_API void igDebugNodeWindow(ImGuiWindow* window, const char* label) { return ImGui::DebugNodeWindow(window, label); } CIMGUI_API void igDebugNodeWindowSettings(ImGuiWindowSettings* settings) { return ImGui::DebugNodeWindowSettings(settings); } CIMGUI_API void igDebugNodeWindowsList(ImVector_ImGuiWindowPtr* windows, const char* label) { return ImGui::DebugNodeWindowsList(windows, label); } CIMGUI_API void igDebugNodeWindowsListByBeginStackParent( ImGuiWindow** windows, int windows_size, ImGuiWindow* parent_in_begin_stack) { return ImGui::DebugNodeWindowsListByBeginStackParent(windows, windows_size, parent_in_begin_stack); } CIMGUI_API void igDebugNodeViewport(ImGuiViewportP* viewport) { return ImGui::DebugNodeViewport(viewport); } CIMGUI_API void igDebugRenderKeyboardPreview(ImDrawList* draw_list) { return ImGui::DebugRenderKeyboardPreview(draw_list); } CIMGUI_API void igDebugRenderViewportThumbnail(ImDrawList* draw_list, ImGuiViewportP* viewport, const ImRect bb) { return ImGui::DebugRenderViewportThumbnail(draw_list, viewport, bb); } CIMGUI_API void igImFontAtlasUpdateConfigDataPointers(ImFontAtlas* atlas) { return ImFontAtlasUpdateConfigDataPointers(atlas); } CIMGUI_API void igImFontAtlasBuildInit(ImFontAtlas* atlas) { return ImFontAtlasBuildInit(atlas); } CIMGUI_API void igImFontAtlasBuildSetupFont(ImFontAtlas* atlas, ImFont* font, ImFontConfig* font_config, float ascent, float descent) { return ImFontAtlasBuildSetupFont(atlas, font, font_config, ascent, descent); } CIMGUI_API void igImFontAtlasBuildPackCustomRects(ImFontAtlas* atlas, void* stbrp_context_opaque) { return ImFontAtlasBuildPackCustomRects(atlas, stbrp_context_opaque); } CIMGUI_API void igImFontAtlasBuildFinish(ImFontAtlas* atlas) { return ImFontAtlasBuildFinish(atlas); } CIMGUI_API void igImFontAtlasBuildRender8bppRectFromString( ImFontAtlas* atlas, int x, int y, int w, int h, const char* in_str, char in_marker_char, unsigned char in_marker_pixel_value) { return ImFontAtlasBuildRender8bppRectFromString( atlas, x, y, w, h, in_str, in_marker_char, in_marker_pixel_value); } CIMGUI_API void igImFontAtlasBuildRender32bppRectFromString( ImFontAtlas* atlas, int x, int y, int w, int h, const char* in_str, char in_marker_char, unsigned int in_marker_pixel_value) { return ImFontAtlasBuildRender32bppRectFromString( atlas, x, y, w, h, in_str, in_marker_char, in_marker_pixel_value); } CIMGUI_API void igImFontAtlasBuildMultiplyCalcLookupTable( unsigned char out_table[256], float in_multiply_factor) { return ImFontAtlasBuildMultiplyCalcLookupTable(out_table, in_multiply_factor); } CIMGUI_API void igImFontAtlasBuildMultiplyRectAlpha8( const unsigned char table[256], unsigned char* pixels, int x, int y, int w, int h, int stride) { return ImFontAtlasBuildMultiplyRectAlpha8(table, pixels, x, y, w, h, stride); } /////////////////////////////manual written functions CIMGUI_API void igLogText(CONST char* fmt, ...) { char buffer[256]; va_list args; va_start(args, fmt); vsnprintf(buffer, 256, fmt, args); va_end(args); ImGui::LogText("%s", buffer); } CIMGUI_API void ImGuiTextBuffer_appendf(struct ImGuiTextBuffer* buffer, const char* fmt, ...) { va_list args; va_start(args, fmt); buffer->appendfv(fmt, args); va_end(args); } CIMGUI_API float igGET_FLT_MAX() { return FLT_MAX; } CIMGUI_API float igGET_FLT_MIN() { return FLT_MIN; } CIMGUI_API ImVector_ImWchar* ImVector_ImWchar_create() { return IM_NEW(ImVector)(); } CIMGUI_API void ImVector_ImWchar_destroy(ImVector_ImWchar* self) { IM_DELETE(self); } CIMGUI_API void ImVector_ImWchar_Init(ImVector_ImWchar* p) { IM_PLACEMENT_NEW(p) ImVector(); } CIMGUI_API void ImVector_ImWchar_UnInit(ImVector_ImWchar* p) { p->~ImVector(); } #ifdef IMGUI_HAS_DOCK // NOTE: Some function pointers in the ImGuiPlatformIO structure are not // C-compatible because of their use of a complex return type. To work around // this, we store a custom CimguiStorage object inside // ImGuiIO::BackendLanguageUserData, which contains C-compatible function // pointer variants for these functions. When a user function pointer is // provided, we hook up the underlying ImGuiPlatformIO function pointer to a // thunk which accesses the user function pointer through CimguiStorage. struct CimguiStorage { void (*Platform_GetWindowPos)(ImGuiViewport* vp, ImVec2* out_pos); void (*Platform_GetWindowSize)(ImGuiViewport* vp, ImVec2* out_pos); }; // Gets a reference to the CimguiStorage object stored in the current ImGui // context's BackendLanguageUserData. CimguiStorage& GetCimguiStorage() { ImGuiIO& io = ImGui::GetIO(); if (io.BackendLanguageUserData == NULL) { io.BackendLanguageUserData = new CimguiStorage(); } return *(CimguiStorage*)io.BackendLanguageUserData; } // Thunk satisfying the signature of ImGuiPlatformIO::Platform_GetWindowPos. ImVec2 Platform_GetWindowPos_hook(ImGuiViewport* vp) { ImVec2 pos; GetCimguiStorage().Platform_GetWindowPos(vp, &pos); return pos; }; // Fully C-compatible function pointer setter for // ImGuiPlatformIO::Platform_GetWindowPos. CIMGUI_API void ImGuiPlatformIO_Set_Platform_GetWindowPos( ImGuiPlatformIO* platform_io, void (*user_callback)(ImGuiViewport* vp, ImVec2* out_pos)) { CimguiStorage& storage = GetCimguiStorage(); storage.Platform_GetWindowPos = user_callback; platform_io->Platform_GetWindowPos = &Platform_GetWindowPos_hook; } // Thunk satisfying the signature of ImGuiPlatformIO::Platform_GetWindowSize. ImVec2 Platform_GetWindowSize_hook(ImGuiViewport* vp) { ImVec2 size; GetCimguiStorage().Platform_GetWindowSize(vp, &size); return size; }; // Fully C-compatible function pointer setter for // ImGuiPlatformIO::Platform_GetWindowSize. CIMGUI_API void ImGuiPlatformIO_Set_Platform_GetWindowSize( ImGuiPlatformIO* platform_io, void (*user_callback)(ImGuiViewport* vp, ImVec2* out_size)) { CimguiStorage& storage = GetCimguiStorage(); storage.Platform_GetWindowSize = user_callback; platform_io->Platform_GetWindowSize = &Platform_GetWindowSize_hook; } #endif