Compare commits

...

15 Commits

Author SHA1 Message Date
sonoro1234
56fdbf845b pull imgui docking 1.89.2 and generate 2023-01-07 10:34:35 +01:00
sonoro1234
d159c2622d correction after merge?!! 2022-12-15 10:44:29 +01:00
Victor Bombi
56892a4e3a Merge pull request #227 from rokups/rk/fix-ci
Fix windows CI builds (#226)
2022-12-15 10:29:40 +01:00
Rokas Kupstys
0a953b7102 Fix CI builds. For some reason bash on windows no longer recognizes luajit without .exe suffix.
Fixes #226
2022-12-15 10:23:58 +02:00
sonoro1234
0348715500 pull imgui 1.89.1 and generate 2022-11-26 09:10:06 +01:00
sonoro1234
68483775b3 pull imgui 1.89.1 docking and generate 2022-11-26 08:32:02 +01:00
sonoro1234
0369ceb1b4 generator.lua: use IMGUI_VERSION_NUM 2022-11-25 10:27:13 +01:00
sonoro1234
4f089273b1 cpp2ffi.lua: changes to keep comments from struct and enums (from branch comments4000) 2022-11-16 17:13:33 +01:00
sonoro1234
b0649485e9 correcting errors on last merge: example_glfw_opengl3 2022-11-16 11:15:37 +01:00
Victor Bombi
a0a7ca3ca2 Merge pull request #224 from seafork/docking_inter
Adding an example for GLFW + OpenGL
2022-11-16 11:02:33 +01:00
seafork
3e823cd2ee fixed misspelt cmake file 2022-11-15 23:06:35 -05:00
seafork
6a2b18fa65 made glfw more portable 2022-11-15 22:59:36 -05:00
seafork
75ec483e75 fixed compilation error on windows. 2022-11-15 22:09:06 -05:00
seafork
08f24307b8 cleaned up a comment 2022-11-15 19:44:24 -05:00
seafork
a9a9fa4e9e add example for glfw3 and opengl3 2022-11-15 19:27:21 -05:00
16 changed files with 4007 additions and 3090 deletions

View File

@@ -30,6 +30,8 @@ jobs:
elif [ "$GITHUB_OS" == "windows-latest" ];
then
vcpkg install luajit
echo "/C/vcpkg/packages/luajit_x86-windows/tools" >> $GITHUB_PATH
echo "/C/vcpkg/packages/luajit_x86-windows/bin" >> $GITHUB_PATH
fi
- name: Download Submodules
@@ -47,7 +49,6 @@ jobs:
- name: Generate Bindings
shell: bash
run: |
export PATH=$PATH:/C/vcpkg/packages/luajit_x86-windows/tools/:/C/vcpkg/packages/luajit_x86-windows/bin/
cd ./generator
bash ./generator.sh

View File

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

View File

@@ -0,0 +1,103 @@
Project(cimgui_glfw)
cmake_minimum_required(VERSION 3.11)
if(WIN32) # to mingw work as all the others
set(CMAKE_SHARED_LIBRARY_PREFIX "")
endif(WIN32)
set (CMAKE_CXX_STANDARD 11)
# general settings
if (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/../../imgui/backends)
set(BAKENDS_FOLDER "../../imgui/backends/")
else()
set(BAKENDS_FOLDER "../../imgui/examples/")
endif()
if (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/../../imgui/imgui_tables.cpp)
set(TABLES_SOURCE "../../imgui/imgui_tables.cpp")
else()
set(TABLES_SOURCE "")
endif()
include_directories(../../imgui)
add_definitions("-DIMGUI_DISABLE_OBSOLETE_FUNCTIONS=1")
include_directories(../../)
set(IMGUI_SOURCES
../../cimgui.cpp
../../imgui/imgui.cpp
../../imgui/imgui_draw.cpp
../../imgui/imgui_demo.cpp
../../imgui/imgui_widgets.cpp
${TABLES_SOURCE}
)
set(IMGUI_SOURCES_sdl)
set(IMGUI_LIBRARIES )
if (WIN32)
add_definitions("-DIMGUI_IMPL_API=extern \"C\" __declspec\(dllexport\)")
else(WIN32)
add_definitions("-DIMGUI_IMPL_API=extern \"C\" ")
endif(WIN32)
add_compile_definitions("IMGUI_IMPL_OPENGL_LOADER_GL3W")
# optional adding freetype
option(IMGUI_FREETYPE "add Freetype2" OFF)
if(IMGUI_FREETYPE)
FIND_PACKAGE(freetype REQUIRED PATHS ${FREETYPE_PATH})
list(APPEND IMGUI_LIBRARIES freetype)
list(APPEND IMGUI_SOURCES ../../imgui/misc/freetype/imgui_freetype.cpp)
add_definitions("-DCIMGUI_FREETYPE=1")
endif(IMGUI_FREETYPE)
# opengl3
list(APPEND IMGUI_SOURCES ${BAKENDS_FOLDER}imgui_impl_opengl3.cpp)
include_directories(../../imgui/examples/libs/gl3w)
if(WIN32)
list(APPEND IMGUI_LIBRARIES opengl32)
else(WIN32) # Unix
list(APPEND IMGUI_LIBRARIES GL)
endif(WIN32)
# GLFW
list(APPEND IMGUI_SOURCES ${BAKENDS_FOLDER}imgui_impl_glfw.cpp)
set(GLFW_VERSION 3.3.8)
include(FetchContent)
FetchContent_Declare(
glfw
URL https://github.com/glfw/glfw/archive/refs/tags/${GLFW_VERSION}.tar.gz)
FetchContent_GetProperties(glfw)
if (NOT glfw_POPULATED)
set(FETCHCONTENT_QUIET NO)
FetchContent_Populate(glfw)
set(GLFW_BUILD_TESTS OFF CACHE BOOL "" FORCE)
set(GLFW_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
add_subdirectory(${glfw_SOURCE_DIR} ${glfw_BINARY_DIR})
endif()
# glfw/imgui gets confused if it is not statically built.
IF (WIN32)
add_library(cimgui STATIC ${IMGUI_SOURCES})
ELSE()
add_library(cimgui SHARED ${IMGUI_SOURCES})
ENDIF()
target_link_libraries(cimgui ${IMGUI_LIBRARIES} glfw)
# using library
include_directories(../../generator/output/)
add_executable(${PROJECT_NAME} main.c)
target_compile_definitions(${PROJECT_NAME} PUBLIC -DCIMGUI_USE_OPENGL3 -DCIMGUI_USE_GLFW)
if (MINGW)
target_link_options(${PROJECT_NAME} PRIVATE "-mconsole")
endif()
target_link_libraries(${PROJECT_NAME} ${IMGUI_SDL_LIBRARY} cimgui)

View File

@@ -0,0 +1,169 @@
#define CIMGUI_DEFINE_ENUMS_AND_STRUCTS
#include "cimgui.h"
#include "cimgui_impl.h"
#include <GLFW/glfw3.h>
#include <stdio.h>
#ifdef _MSC_VER
#include <windows.h>
#endif
#include <GL/gl.h>
#ifdef IMGUI_HAS_IMSTR
#define igBegin igBegin_Str
#define igSliderFloat igSliderFloat_Str
#define igCheckbox igCheckbox_Str
#define igColorEdit3 igColorEdit3_Str
#define igButton igButton_Str
#endif
GLFWwindow *window;
int main(int argc, char *argv[])
{
if (!glfwInit())
return -1;
// Decide GL+GLSL versions
glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GLFW_TRUE);
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 2);
#if __APPLE__
// GL 3.2 Core + GLSL 150
const char *glsl_version = "#version 150";
#else
// GL 3.2 + GLSL 130
const char *glsl_version = "#version 130";
#endif
// just an extra window hint for resize
glfwWindowHint(GLFW_RESIZABLE, GLFW_TRUE);
window = glfwCreateWindow(1024, 768, "Hello World!", NULL, NULL);
if (!window)
{
printf("Failed to create window! Terminating!\n");
glfwTerminate();
return -1;
}
glfwMakeContextCurrent(window);
// enable vsync
glfwSwapInterval(1);
// check opengl version sdl uses
printf("opengl version: %s\n", (char *)glGetString(GL_VERSION));
// setup imgui
igCreateContext(NULL);
// set docking
ImGuiIO *ioptr = igGetIO();
ioptr->ConfigFlags |= ImGuiConfigFlags_NavEnableKeyboard; // Enable Keyboard Controls
//ioptr->ConfigFlags |= ImGuiConfigFlags_NavEnableGamepad; // Enable Gamepad Controls
#ifdef IMGUI_HAS_DOCK
ioptr->ConfigFlags |= ImGuiConfigFlags_DockingEnable; // Enable Docking
ioptr->ConfigFlags |= ImGuiConfigFlags_ViewportsEnable; // Enable Multi-Viewport / Platform Windows
#endif
ImGui_ImplGlfw_InitForOpenGL(window, true);
ImGui_ImplOpenGL3_Init(glsl_version);
igStyleColorsDark(NULL);
// ImFontAtlas_AddFontDefault(io.Fonts, NULL);
bool showDemoWindow = true;
bool showAnotherWindow = false;
ImVec4 clearColor;
clearColor.x = 0.45f;
clearColor.y = 0.55f;
clearColor.z = 0.60f;
clearColor.w = 1.00f;
// main event loop
bool quit = false;
while (!glfwWindowShouldClose(window))
{
glfwPollEvents();
// start imgui frame
ImGui_ImplOpenGL3_NewFrame();
ImGui_ImplGlfw_NewFrame();
igNewFrame();
if (showDemoWindow)
igShowDemoWindow(&showDemoWindow);
// show a simple window that we created ourselves.
{
static float f = 0.0f;
static int counter = 0;
igBegin("Hello, world!", NULL, 0);
igText("This is some useful text");
igCheckbox("Demo window", &showDemoWindow);
igCheckbox("Another window", &showAnotherWindow);
igSliderFloat("Float", &f, 0.0f, 1.0f, "%.3f", 0);
igColorEdit3("clear color", (float *)&clearColor, 0);
ImVec2 buttonSize;
buttonSize.x = 0;
buttonSize.y = 0;
if (igButton("Button", buttonSize))
counter++;
igSameLine(0.0f, -1.0f);
igText("counter = %d", counter);
igText("Application average %.3f ms/frame (%.1f FPS)",
1000.0f / igGetIO()->Framerate, igGetIO()->Framerate);
igEnd();
}
if (showAnotherWindow)
{
igBegin("imgui Another Window", &showAnotherWindow, 0);
igText("Hello from imgui");
ImVec2 buttonSize;
buttonSize.x = 0;
buttonSize.y = 0;
if (igButton("Close me", buttonSize)) {
showAnotherWindow = false;
}
igEnd();
}
// render
igRender();
glfwMakeContextCurrent(window);
glViewport(0, 0, (int)ioptr->DisplaySize.x, (int)ioptr->DisplaySize.y);
glClearColor(clearColor.x, clearColor.y, clearColor.z, clearColor.w);
glClear(GL_COLOR_BUFFER_BIT);
ImGui_ImplOpenGL3_RenderDrawData(igGetDrawData());
#ifdef IMGUI_HAS_DOCK
if (ioptr->ConfigFlags & ImGuiConfigFlags_ViewportsEnable)
{
GLFWwindow *backup_current_window = glfwGetCurrentContext();
igUpdatePlatformWindows();
igRenderPlatformWindowsDefault(NULL, NULL);
glfwMakeContextCurrent(backup_current_window);
}
#endif
glfwSwapBuffers(window);
}
// clean up
ImGui_ImplOpenGL3_Shutdown();
ImGui_ImplGlfw_Shutdown();
igDestroyContext(NULL);
glfwDestroyWindow(window);
glfwTerminate();
return 0;
}

View File

@@ -1,5 +1,5 @@
//This file is automatically generated by generator.lua from https://github.com/cimgui/cimgui
//based on imgui.h file version "1.89" from Dear ImGui https://github.com/ocornut/imgui
//based on imgui.h file version "1.89.2" 18920 from Dear ImGui https://github.com/ocornut/imgui
//with imgui_internal.h api
//docking branch
#ifdef IMGUI_ENABLE_FREETYPE
@@ -1389,6 +1389,10 @@ CIMGUI_API bool igIsAnyItemFocused()
{
return ImGui::IsAnyItemFocused();
}
CIMGUI_API ImGuiID igGetItemID()
{
return ImGui::GetItemID();
}
CIMGUI_API void igGetItemRectMin(ImVec2 *pOut)
{
*pOut = ImGui::GetItemRectMin();
@@ -2952,6 +2956,10 @@ 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);
@@ -3264,9 +3272,9 @@ CIMGUI_API void ImGuiMenuColumns_CalcNextTotalWidth(ImGuiMenuColumns* self,bool
{
return self->CalcNextTotalWidth(update_offsets);
}
CIMGUI_API ImGuiInputTextState* ImGuiInputTextState_ImGuiInputTextState(void)
CIMGUI_API ImGuiInputTextState* ImGuiInputTextState_ImGuiInputTextState(ImGuiContext* ctx)
{
return IM_NEW(ImGuiInputTextState)();
return IM_NEW(ImGuiInputTextState)(ctx);
}
CIMGUI_API void ImGuiInputTextState_destroy(ImGuiInputTextState* self)
{
@@ -3976,6 +3984,14 @@ CIMGUI_API ImGuiSettingsHandler* igFindSettingsHandler(const char* type_name)
{
return ImGui::FindSettingsHandler(type_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);
@@ -4008,10 +4024,6 @@ CIMGUI_API void igScrollToBringRectIntoView(ImGuiWindow* window,const ImRect rec
{
return ImGui::ScrollToBringRectIntoView(window,rect);
}
CIMGUI_API ImGuiID igGetItemID()
{
return ImGui::GetItemID();
}
CIMGUI_API ImGuiItemStatusFlags igGetItemStatusFlags()
{
return ImGui::GetItemStatusFlags();
@@ -4272,14 +4284,26 @@ 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 ImGuiKeyChord igConvertShortcutMod(ImGuiKeyChord key_chord)
{
return ImGui::ConvertShortcutMod(key_chord);
}
CIMGUI_API ImGuiKey igConvertSingleModFlagToKey(ImGuiKey key)
{
return ImGui::ConvertSingleModFlagToKey(key);
@@ -4300,9 +4324,9 @@ CIMGUI_API bool igIsMouseDragPastThreshold(ImGuiMouseButton button,float lock_th
{
return ImGui::IsMouseDragPastThreshold(button,lock_threshold);
}
CIMGUI_API void igGetKeyVector2d(ImVec2 *pOut,ImGuiKey key_left,ImGuiKey key_right,ImGuiKey key_up,ImGuiKey key_down)
CIMGUI_API void igGetKeyMagnitude2d(ImVec2 *pOut,ImGuiKey key_left,ImGuiKey key_right,ImGuiKey key_up,ImGuiKey key_down)
{
*pOut = ImGui::GetKeyVector2d(key_left,key_right,key_up,key_down);
*pOut = ImGui::GetKeyMagnitude2d(key_left,key_right,key_up,key_down);
}
CIMGUI_API float igGetNavTweakPressedAmount(ImGuiAxis axis)
{
@@ -4940,6 +4964,26 @@ CIMGUI_API bool igButtonEx(const char* label,const ImVec2 size_arg,ImGuiButtonFl
{
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 size,const ImVec2 uv0,const ImVec2 uv1,const ImVec4 bg_col,const ImVec4 tint_col)
{
return ImGui::ImageButtonEx(id,texture_id,size,uv0,uv1,bg_col,tint_col);
}
CIMGUI_API void igSeparatorEx(ImGuiSeparatorFlags flags)
{
return ImGui::SeparatorEx(flags);
}
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);
@@ -4948,10 +4992,6 @@ CIMGUI_API bool igCollapseButton(ImGuiID id,const ImVec2 pos,ImGuiDockNode* dock
{
return ImGui::CollapseButton(id,pos,dock_node);
}
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 void igScrollbar(ImGuiAxis axis)
{
return ImGui::Scrollbar(axis);
@@ -4960,10 +5000,6 @@ CIMGUI_API bool igScrollbarEx(const ImRect bb,ImGuiID id,ImGuiAxis axis,ImS64* p
{
return ImGui::ScrollbarEx(bb,id,axis,p_scroll_v,avail_v,contents_v,flags);
}
CIMGUI_API bool igImageButtonEx(ImGuiID id,ImTextureID texture_id,const ImVec2 size,const ImVec2 uv0,const ImVec2 uv1,const ImVec4 bg_col,const ImVec4 tint_col)
{
return ImGui::ImageButtonEx(id,texture_id,size,uv0,uv1,bg_col,tint_col);
}
CIMGUI_API void igGetWindowScrollbarRect(ImRect *pOut,ImGuiWindow* window,ImGuiAxis axis)
{
*pOut = ImGui::GetWindowScrollbarRect(window,axis);
@@ -4980,18 +5016,6 @@ CIMGUI_API ImGuiID igGetWindowResizeBorderID(ImGuiWindow* window,ImGuiDir dir)
{
return ImGui::GetWindowResizeBorderID(window,dir);
}
CIMGUI_API void igSeparatorEx(ImGuiSeparatorFlags flags)
{
return ImGui::SeparatorEx(flags);
}
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 igButtonBehavior(const ImRect bb,ImGuiID id,bool* out_hovered,bool* out_held,ImGuiButtonFlags flags)
{
return ImGui::ButtonBehavior(bb,id,out_hovered,out_held,flags);
@@ -5219,6 +5243,10 @@ 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);

View File

@@ -1,5 +1,5 @@
//This file is automatically generated by generator.lua from https://github.com/cimgui/cimgui
//based on imgui.h file version "1.89" from Dear ImGui https://github.com/ocornut/imgui
//based on imgui.h file version "1.89.2" 18920 from Dear ImGui https://github.com/ocornut/imgui
//with imgui_internal.h api
//docking branch
#ifndef CIMGUI_INCLUDED
@@ -87,6 +87,7 @@ typedef struct ImGuiDockNodeSettings ImGuiDockNodeSettings;
typedef struct ImGuiGroupData ImGuiGroupData;
typedef struct ImGuiInputTextState ImGuiInputTextState;
typedef struct ImGuiLastItemData ImGuiLastItemData;
typedef struct ImGuiLocEntry ImGuiLocEntry;
typedef struct ImGuiMenuColumns ImGuiMenuColumns;
typedef struct ImGuiNavItemData ImGuiNavItemData;
typedef struct ImGuiMetricsConfig ImGuiMetricsConfig;
@@ -638,8 +639,8 @@ ImGuiMod_Ctrl=1 << 12,
ImGuiMod_Shift=1 << 13,
ImGuiMod_Alt=1 << 14,
ImGuiMod_Super=1 << 15,
ImGuiMod_Mask_=0xF000,
ImGuiMod_Shortcut=ImGuiMod_Ctrl,
ImGuiMod_Shortcut=1 << 11,
ImGuiMod_Mask_=0xF800,
ImGuiKey_NamedKey_BEGIN=512,
ImGuiKey_NamedKey_END=ImGuiKey_COUNT,
ImGuiKey_NamedKey_COUNT=ImGuiKey_NamedKey_END - ImGuiKey_NamedKey_BEGIN,
@@ -1266,6 +1267,7 @@ struct ImFontAtlas
int TexDesiredWidth;
int TexGlyphPadding;
bool Locked;
void* UserData;
bool TexReady;
bool TexPixelsUseColors;
unsigned char* TexPixelsAlpha8;
@@ -1338,6 +1340,7 @@ struct ImGuiViewport
void* PlatformUserData;
void* PlatformHandle;
void* PlatformHandleRaw;
bool PlatformWindowCreated;
bool PlatformRequestMove;
bool PlatformRequestResize;
bool PlatformRequestClose;
@@ -1401,6 +1404,7 @@ struct ImGuiDockNodeSettings;
struct ImGuiGroupData;
struct ImGuiInputTextState;
struct ImGuiLastItemData;
struct ImGuiLocEntry;
struct ImGuiMenuColumns;
struct ImGuiNavItemData;
struct ImGuiMetricsConfig;
@@ -1596,10 +1600,9 @@ typedef enum {
ImGuiSelectableFlags_SelectOnClick = 1 << 22,
ImGuiSelectableFlags_SelectOnRelease = 1 << 23,
ImGuiSelectableFlags_SpanAvailWidth = 1 << 24,
ImGuiSelectableFlags_DrawHoveredWhenHeld = 1 << 25,
ImGuiSelectableFlags_SetNavIdOnHover = 1 << 26,
ImGuiSelectableFlags_NoPadWithHalfSpacing = 1 << 27,
ImGuiSelectableFlags_NoSetKeyOwner = 1 << 28,
ImGuiSelectableFlags_SetNavIdOnHover = 1 << 25,
ImGuiSelectableFlags_NoPadWithHalfSpacing = 1 << 26,
ImGuiSelectableFlags_NoSetKeyOwner = 1 << 27,
}ImGuiSelectableFlagsPrivate_;
typedef enum {
ImGuiTreeNodeFlags_ClipLabelForTrailingButton = 1 << 20,
@@ -1707,6 +1710,7 @@ struct ImGuiMenuColumns
};
struct ImGuiInputTextState
{
ImGuiContext* Ctx;
ImGuiID ID;
int CurLenW, CurLenA;
ImVector_ImWchar TextW;
@@ -2172,7 +2176,6 @@ struct ImGuiViewportP
float Alpha;
float LastAlpha;
short PlatformMonitor;
bool PlatformWindowCreated;
ImGuiWindow* Window;
int DrawListsLastFrame[2];
ImDrawList* DrawLists[2];
@@ -2211,6 +2214,22 @@ struct ImGuiSettingsHandler
void (*WriteAllFn)(ImGuiContext* ctx, ImGuiSettingsHandler* handler, ImGuiTextBuffer* out_buf);
void* UserData;
};
typedef enum {
ImGuiLocKey_TableSizeOne=0,
ImGuiLocKey_TableSizeAllFit=1,
ImGuiLocKey_TableSizeAllDefault=2,
ImGuiLocKey_TableResetOrder=3,
ImGuiLocKey_WindowingMainMenuBar=4,
ImGuiLocKey_WindowingPopup=5,
ImGuiLocKey_WindowingUntitled=6,
ImGuiLocKey_DockingHideTabBar=7,
ImGuiLocKey_COUNT=8,
}ImGuiLocKey;
struct ImGuiLocEntry
{
ImGuiLocKey Key;
const char* Text;
};
typedef enum {
ImGuiDebugLogFlags_None = 0,
ImGuiDebugLogFlags_EventActiveId = 1 << 0,
@@ -2351,7 +2370,10 @@ struct ImGuiContext
ImGuiWindow* MovingWindow;
ImGuiWindow* WheelingWindow;
ImVec2 WheelingWindowRefMousePos;
int WheelingWindowStartFrame;
float WheelingWindowReleaseTimer;
ImVec2 WheelingWindowWheelRemainder;
ImVec2 WheelingAxisAvg;
ImGuiID DebugHookIdInfo;
ImGuiID HoveredId;
ImGuiID HoveredIdPreviousFrame;
@@ -2528,6 +2550,7 @@ struct ImGuiContext
ImChunkStream_ImGuiTableSettings SettingsTables;
ImVector_ImGuiContextHook Hooks;
ImGuiID HookIdNext;
const char* LocalizationTable[ImGuiLocKey_COUNT];
bool LogEnabled;
ImGuiLogType LogType;
ImFileHandle LogFile;
@@ -2617,6 +2640,9 @@ struct ImGuiWindow
ImVec2 WindowPadding;
float WindowRounding;
float WindowBorderSize;
float DecoOuterSizeX1, DecoOuterSizeY1;
float DecoOuterSizeX2, DecoOuterSizeY2;
float DecoInnerSizeX1, DecoInnerSizeY1;
int NameBufLen;
ImGuiID MoveId;
ImGuiID TabId;
@@ -2829,6 +2855,7 @@ struct ImGuiTableInstanceData
{
float LastOuterHeight;
float LastFirstRowHeight;
float LastFrozenHeight;
};
typedef struct ImSpan_ImGuiTableColumn {ImGuiTableColumn* Data;ImGuiTableColumn* DataEnd;} ImSpan_ImGuiTableColumn;
@@ -2944,6 +2971,8 @@ struct ImGuiTable
bool IsResetDisplayOrderRequest;
bool IsUnfrozenRows;
bool IsDefaultSizingPolicy;
bool HasScrollbarYCurr;
bool HasScrollbarYPrev;
bool MemoryCompacted;
bool HostSkipItems;
};
@@ -3392,6 +3421,7 @@ CIMGUI_API bool igIsItemToggledOpen(void);
CIMGUI_API bool igIsAnyItemHovered(void);
CIMGUI_API bool igIsAnyItemActive(void);
CIMGUI_API bool igIsAnyItemFocused(void);
CIMGUI_API ImGuiID igGetItemID(void);
CIMGUI_API void igGetItemRectMin(ImVec2 *pOut);
CIMGUI_API void igGetItemRectMax(ImVec2 *pOut);
CIMGUI_API void igGetItemRectSize(ImVec2 *pOut);
@@ -3781,6 +3811,7 @@ CIMGUI_API void igImRotate(ImVec2 *pOut,const ImVec2 v,float cos_a,float sin_a);
CIMGUI_API float igImLinearSweep(float current,float target,float speed);
CIMGUI_API void igImMul(ImVec2 *pOut,const ImVec2 lhs,const ImVec2 rhs);
CIMGUI_API bool igImIsFloatAboveGuaranteedIntegerPrecision(float f);
CIMGUI_API float igImExponentialMovingAverage(float avg,float sample,int n);
CIMGUI_API void igImBezierCubicCalc(ImVec2 *pOut,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,const ImVec2 p4,float 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);
CIMGUI_API void igImBezierCubicClosestPointCasteljau(ImVec2 *pOut,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,const ImVec2 p4,const ImVec2 p,float tess_tol);
@@ -3859,7 +3890,7 @@ CIMGUI_API void ImGuiMenuColumns_destroy(ImGuiMenuColumns* self);
CIMGUI_API void ImGuiMenuColumns_Update(ImGuiMenuColumns* self,float spacing,bool window_reappearing);
CIMGUI_API float ImGuiMenuColumns_DeclColumns(ImGuiMenuColumns* self,float w_icon,float w_label,float w_shortcut,float w_mark);
CIMGUI_API void ImGuiMenuColumns_CalcNextTotalWidth(ImGuiMenuColumns* self,bool update_offsets);
CIMGUI_API ImGuiInputTextState* ImGuiInputTextState_ImGuiInputTextState(void);
CIMGUI_API ImGuiInputTextState* ImGuiInputTextState_ImGuiInputTextState(ImGuiContext* ctx);
CIMGUI_API void ImGuiInputTextState_destroy(ImGuiInputTextState* self);
CIMGUI_API void ImGuiInputTextState_ClearText(ImGuiInputTextState* self);
CIMGUI_API void ImGuiInputTextState_ClearFreeMemory(ImGuiInputTextState* self);
@@ -4037,6 +4068,8 @@ CIMGUI_API ImGuiWindowSettings* igFindOrCreateWindowSettings(const char* name);
CIMGUI_API void igAddSettingsHandler(const ImGuiSettingsHandler* handler);
CIMGUI_API void igRemoveSettingsHandler(const char* type_name);
CIMGUI_API ImGuiSettingsHandler* igFindSettingsHandler(const char* type_name);
CIMGUI_API void igLocalizeRegisterEntries(const ImGuiLocEntry* entries,int count);
CIMGUI_API const char* igLocalizeGetMsg(ImGuiLocKey key);
CIMGUI_API void igSetScrollX_WindowPtr(ImGuiWindow* window,float scroll_x);
CIMGUI_API void igSetScrollY_WindowPtr(ImGuiWindow* window,float scroll_y);
CIMGUI_API void igSetScrollFromPosX_WindowPtr(ImGuiWindow* window,float local_x,float center_x_ratio);
@@ -4045,7 +4078,6 @@ CIMGUI_API void igScrollToItem(ImGuiScrollFlags flags);
CIMGUI_API void igScrollToRect(ImGuiWindow* window,const ImRect rect,ImGuiScrollFlags flags);
CIMGUI_API void igScrollToRectEx(ImVec2 *pOut,ImGuiWindow* window,const ImRect rect,ImGuiScrollFlags flags);
CIMGUI_API void igScrollToBringRectIntoView(ImGuiWindow* window,const ImRect rect);
CIMGUI_API ImGuiID igGetItemID(void);
CIMGUI_API ImGuiItemStatusFlags igGetItemStatusFlags(void);
CIMGUI_API ImGuiItemFlags igGetItemFlags(void);
CIMGUI_API ImGuiID igGetActiveID(void);
@@ -4111,14 +4143,17 @@ CIMGUI_API void igSetNavID(ImGuiID id,ImGuiNavLayer nav_layer,ImGuiID focus_scop
CIMGUI_API bool igIsNamedKey(ImGuiKey key);
CIMGUI_API bool igIsNamedKeyOrModKey(ImGuiKey key);
CIMGUI_API bool igIsLegacyKey(ImGuiKey key);
CIMGUI_API bool igIsKeyboardKey(ImGuiKey key);
CIMGUI_API bool igIsGamepadKey(ImGuiKey key);
CIMGUI_API bool igIsMouseKey(ImGuiKey key);
CIMGUI_API bool igIsAliasKey(ImGuiKey key);
CIMGUI_API ImGuiKeyChord igConvertShortcutMod(ImGuiKeyChord key_chord);
CIMGUI_API ImGuiKey igConvertSingleModFlagToKey(ImGuiKey key);
CIMGUI_API ImGuiKeyData* igGetKeyData(ImGuiKey key);
CIMGUI_API void igGetKeyChordName(ImGuiKeyChord key_chord,char* out_buf,int out_buf_size);
CIMGUI_API ImGuiKey igMouseButtonToKey(ImGuiMouseButton button);
CIMGUI_API bool igIsMouseDragPastThreshold(ImGuiMouseButton button,float lock_threshold);
CIMGUI_API void igGetKeyVector2d(ImVec2 *pOut,ImGuiKey key_left,ImGuiKey key_right,ImGuiKey key_up,ImGuiKey key_down);
CIMGUI_API void igGetKeyMagnitude2d(ImVec2 *pOut,ImGuiKey key_left,ImGuiKey key_right,ImGuiKey key_up,ImGuiKey key_down);
CIMGUI_API float igGetNavTweakPressedAmount(ImGuiAxis axis);
CIMGUI_API int igCalcTypematicRepeatAmount(float t0,float t1,float repeat_delay,float repeat_rate);
CIMGUI_API void igGetTypematicRepeatRate(ImGuiInputFlags flags,float* repeat_delay,float* repeat_rate);
@@ -4278,19 +4313,19 @@ CIMGUI_API void igRenderRectFilledWithHole(ImDrawList* draw_list,const ImRect ou
CIMGUI_API ImDrawFlags igCalcRoundingFlagsForRectInRect(const ImRect r_in,const ImRect r_outer,float threshold);
CIMGUI_API void igTextEx(const char* text,const char* text_end,ImGuiTextFlags flags);
CIMGUI_API bool igButtonEx(const char* label,const ImVec2 size_arg,ImGuiButtonFlags flags);
CIMGUI_API bool igArrowButtonEx(const char* str_id,ImGuiDir dir,ImVec2 size_arg,ImGuiButtonFlags flags);
CIMGUI_API bool igImageButtonEx(ImGuiID id,ImTextureID texture_id,const ImVec2 size,const ImVec2 uv0,const ImVec2 uv1,const ImVec4 bg_col,const ImVec4 tint_col);
CIMGUI_API void igSeparatorEx(ImGuiSeparatorFlags flags);
CIMGUI_API bool igCheckboxFlags_S64Ptr(const char* label,ImS64* flags,ImS64 flags_value);
CIMGUI_API bool igCheckboxFlags_U64Ptr(const char* label,ImU64* flags,ImU64 flags_value);
CIMGUI_API bool igCloseButton(ImGuiID id,const ImVec2 pos);
CIMGUI_API bool igCollapseButton(ImGuiID id,const ImVec2 pos,ImGuiDockNode* dock_node);
CIMGUI_API bool igArrowButtonEx(const char* str_id,ImGuiDir dir,ImVec2 size_arg,ImGuiButtonFlags flags);
CIMGUI_API void igScrollbar(ImGuiAxis axis);
CIMGUI_API bool igScrollbarEx(const ImRect bb,ImGuiID id,ImGuiAxis axis,ImS64* p_scroll_v,ImS64 avail_v,ImS64 contents_v,ImDrawFlags flags);
CIMGUI_API bool igImageButtonEx(ImGuiID id,ImTextureID texture_id,const ImVec2 size,const ImVec2 uv0,const ImVec2 uv1,const ImVec4 bg_col,const ImVec4 tint_col);
CIMGUI_API void igGetWindowScrollbarRect(ImRect *pOut,ImGuiWindow* window,ImGuiAxis axis);
CIMGUI_API ImGuiID igGetWindowScrollbarID(ImGuiWindow* window,ImGuiAxis axis);
CIMGUI_API ImGuiID igGetWindowResizeCornerID(ImGuiWindow* window,int n);
CIMGUI_API ImGuiID igGetWindowResizeBorderID(ImGuiWindow* window,ImGuiDir dir);
CIMGUI_API void igSeparatorEx(ImGuiSeparatorFlags flags);
CIMGUI_API bool igCheckboxFlags_S64Ptr(const char* label,ImS64* flags,ImS64 flags_value);
CIMGUI_API bool igCheckboxFlags_U64Ptr(const char* label,ImU64* flags,ImU64 flags_value);
CIMGUI_API bool igButtonBehavior(const ImRect bb,ImGuiID id,bool* out_hovered,bool* out_held,ImGuiButtonFlags 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);
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);
@@ -4347,6 +4382,7 @@ CIMGUI_API void igDebugNodeWindowSettings(ImGuiWindowSettings* settings);
CIMGUI_API void igDebugNodeWindowsList(ImVector_ImGuiWindowPtr* windows,const char* label);
CIMGUI_API void igDebugNodeWindowsListByBeginStackParent(ImGuiWindow** windows,int windows_size,ImGuiWindow* parent_in_begin_stack);
CIMGUI_API void igDebugNodeViewport(ImGuiViewportP* viewport);
CIMGUI_API void igDebugRenderKeyboardPreview(ImDrawList* draw_list);
CIMGUI_API void igDebugRenderViewportThumbnail(ImDrawList* draw_list,ImGuiViewportP* viewport,const ImRect bb);
CIMGUI_API bool igIsKeyPressedMap(ImGuiKey key,bool repeat);
CIMGUI_API const ImFontBuilderIO* igImFontAtlasGetBuilderForStbTruetype(void);

View File

@@ -129,6 +129,23 @@ local function clean_comments(txt)
txt = txt:gsub("%s*//[^\n]*","")
return txt,comms
end
--dont keep commens above empty line
local function clean_outercomms(oc)
local oc2 = {}
for i,v in ipairs(oc) do
--print(string.format("%d\n%q",i,v))
if v:match"\n%s*\n" then
--print(string.format("match:\n%q",v))--,v:match"\n%s*\n"))
v=v:gsub("\n%s*\n","")
--print("clean",v)
oc2 = {}
else
--print"dont clean"
end
table.insert(oc2,v)
end
return table.concat(oc2)--,"\n")
end
local function strip(cad)
return cad:gsub("^%s*(.-)%s*$","%1") --remove initial and final spaces
end
@@ -317,11 +334,13 @@ local function getRE()
functionD_re = "^([^;{}]-%b()[\n%s%w]*%b{}%s-;*)",
--functionD_re = "^([^;{}]-%b()[^{}%(%)]*%b{})",
functype_re = "^%s*[%w%s%*]+%(%*[%w_]+%)%([^%(%)]*%)%s*;",
comment_re = "^%s*//[^\n]*",
comment2_re = "^%s*/%*.-%*/"
comment_re = "^\n*%s*//[^\n]*",
comment2_re = "^%s*/%*.-%*/",
emptyline_re = "^\n%s*\n"
}
local resN = {"comment2_re","comment_re","functypedef_re","functype_re","function_re","functionD_re","typedef_st_re","struct_re","enum_re","union_re","namespace_re","class_re","typedef_re","vardef_re"}
local resN = {"comment2_re","comment_re","emptyline_re",
"functypedef_re","functype_re","function_re","functionD_re","typedef_st_re","struct_re","enum_re","union_re","namespace_re","class_re","typedef_re","vardef_re"}
return res,resN
end
@@ -348,7 +367,7 @@ local function parseItems(txt,linenumdict, itparent, dumpit)
if i then
item = txt:sub(i,e)
--print("re_name",re_name,item)
--print("re_name:",re_name,string.format("%q",item))
------------------
--[[
--if re~=functionD_re then --skip defined functions
@@ -359,7 +378,8 @@ local function parseItems(txt,linenumdict, itparent, dumpit)
table.insert(items[re_name],item)
--]]
--------------------
if re_name=="comment_re" or re_name=="comment2_re" then
if re_name=="comment_re" or re_name=="comment2_re" or re_name=="emptyline_re" then
--print("parit",item)
--[[
table.insert(outercomms,item)
-- comments to previous item
@@ -368,6 +388,13 @@ local function parseItems(txt,linenumdict, itparent, dumpit)
itemarr[#itemarr].comments = prev .. item
end
--]]
--clean initial spaces
--item = item:gsub("^%s*(//.-)$","%1")
--if item:match"^[^\n%S]*" then
--print("commspace1",string.format("%q",item))
item = item:gsub("^[^\n%S]*(//.-)$","%1")
--print("commspace2",string.format("%q",item))
--end
--comments begining with \n will go to next item
if item:match("^%s*\n") then
table.insert(outercomms,item)
@@ -382,7 +409,8 @@ local function parseItems(txt,linenumdict, itparent, dumpit)
--item,inercoms = clean_comments(item)
local itemold = item
item = item:gsub("extern __attribute__%(%(dllexport%)%) ","")
local comments = table.concat(outercomms,"\n") --..inercoms
local comments = clean_outercomms(outercomms)
--local comments = table.concat(outercomms,"\n") --..inercoms
if comments=="" then comments=nil end
outercomms = {}
local loca
@@ -417,7 +445,7 @@ local function parseItems(txt,linenumdict, itparent, dumpit)
else
error"no linenumdict"
end
table.insert(itemarr,{re_name=re_name,item=item,locat=loca})--,comments=comments})
table.insert(itemarr,{re_name=re_name,item=item,locat=loca,prevcomments=comments})
items[re_name] = items[re_name] or {}
table.insert(items[re_name],item)
end
@@ -1178,7 +1206,7 @@ function M.Parser()
end
local defines = {}
local preprocessed = {}--
for line,loca,loca2 in M.location(pipe,names,defines,compiler) do
for line,loca,loca2 in M.location(pipe,names,defines,compiler,self.COMMENTS_GENERATION) do
self:insert(line, tostring(loca)..":"..tostring(loca2))
table.insert(preprocessed,line)--
end
@@ -1413,14 +1441,14 @@ function M.Parser()
it2 = it2:gsub("%s*=.+;",";")
end
table.insert(outtab,it2)
table.insert(commtab,it.comments or "")
table.insert(commtab,{above=it.prevcomments,sameline=it.comments})--it.comments or "")
end
elseif it.re_name == "struct_re" then
--check if has declaration
local decl = it.item:match"%b{}%s*([^%s}{]+)%s*;"
if decl then
table.insert(outtab,"\n "..it.name.." "..decl..";")
table.insert(commtab,it.comments or "")
table.insert(commtab,{above=it.prevcomments,sameline=it.comments})--it.comments or "")
end
local cleanst,structname,strtab,comstab,predec = self:clean_structR1(it,doheader)
if doheader then
@@ -1624,7 +1652,11 @@ function M.Parser()
end
-----------
function par:parse_struct_line(line,outtab,comment)
comment = comment ~= "" and comment or nil
if type(comment)=="string" then
comment = comment ~= "" and comment or nil
else
comment = next(comment) and comment or nil
end
local functype_re = "^%s*[%w%s%*]+%(%*[%w_]+%)%([^%(%)]*%)"
local functype_reex = "^(%s*[%w%s%*]+%(%*)([%w_]+)(%)%([^%(%)]*%))"
line = clean_spaces(line)
@@ -1677,6 +1709,8 @@ function M.Parser()
print("enumtype",enumtype)
outtab.enumtypes[enumname] = enumtype
end
outtab.enum_comments[enumname] = {sameline=it.comments, above=it.prevcomments}
outtab.enum_comments[enumname] = next(outtab.enum_comments[enumname]) and outtab.enum_comments[enumname] or nil
outtab.enums[enumname] = {}
table.insert(enumsordered,enumname)
local inner = strip_end(it.item:match("%b{}"):sub(2,-2))
@@ -1698,6 +1732,7 @@ function M.Parser()
for j,line in ipairs(enumarr) do
local comment
line, comment = split_comment(line)
comment = comment and comment:gsub("^[^\n%S]*(//.-)$","%1") or nil
assert(line~="")
local name,value = line:match("%s*([%w_]+)%s*=%s*([^,]+)")
if value then
@@ -1725,7 +1760,7 @@ function M.Parser()
par.enums_for_table = enums_for_table
function par:gen_structs_and_enums_table()
print"--------------gen_structs_and_enums_table"
local outtab = {enums={},structs={},locations={},enumtypes={}}
local outtab = {enums={},structs={},locations={},enumtypes={},struct_comments={},enum_comments={}}
self.typedefs_table = {}
local enumsordered = {}
unnamed_enum_counter = 0
@@ -1759,6 +1794,8 @@ function M.Parser()
if not structname then print("NO NAME",cleanst,it.item) end
if structname and not self.typenames[structname] then
outtab.structs[structname] = {}
outtab.struct_comments[structname] = {sameline=it.comments,above=it.prevcomments}
outtab.struct_comments[structname] = next(outtab.struct_comments[structname]) and outtab.struct_comments[structname] or nil
outtab.locations[structname] = it.locat
for j=3,#strtab-1 do
self:parse_struct_line(strtab[j],outtab.structs[structname],comstab[j])
@@ -1829,6 +1866,11 @@ function M.Parser()
end
end
end
--delete comments tables if not desired
if not self.COMMENTS_GENERATION then
outtab.enum_comments = nil
outtab.struct_comments = nil
end
self.structs_and_enums_table = outtab
return outtab
end
@@ -2121,7 +2163,7 @@ M.serializeTableF = function(t)
return M.serializeTable("defs",t).."\nreturn defs"
end
--iterates lines from a gcc/clang -E in a specific location
local function location(file,locpathT,defines,COMPILER)
local function location(file,locpathT,defines,COMPILER,keepemptylines)
local define_re = "^#define%s+([^%s]+)%s+(.+)$"
local number_re = "^-?[0-9]+u*$"
local hex_re = "0x[0-9a-fA-F]+u*$"
@@ -2186,7 +2228,7 @@ local function location(file,locpathT,defines,COMPILER)
local loc_num_real = loc_num + loc_num_incr
loc_num_incr = loc_num_incr + 1
--if doprint then print(which_locationold,which_location) end
if line:match("%S") then --nothing on emptyline
if keepemptylines or line:match("%S") then --nothing on emptyline
if (which_locationold~=which_location) or (loc_num_realold and loc_num_realold < loc_num_real) then
--old line complete
--doprint = false
@@ -2395,11 +2437,22 @@ M.func_header_generate = func_header_generate
local code = [[
enum pedro : int ;
int pedro;
//linea1
//linea2
enum coco
{
uno,
dos
};
]]
local parser = M.Parser()
for line in code:gmatch("[^\n]+") do
--for line in code:gmatch("[^\n]+") do
for line in code:gmatch'(.-)\r?\n' do
--print("inserting",line)
parser:insert(line,"11")
end

View File

@@ -269,12 +269,12 @@ end
--------------------------------------------------------
--get imgui.h version and IMGUI_HAS_DOCK--------------------------
--defines for the cl compiler must be present in the print_defines.cpp file
gdefines = get_defines{"IMGUI_VERSION","FLT_MAX","FLT_MIN","IMGUI_HAS_DOCK","IMGUI_HAS_IMSTR"}
gdefines = get_defines{"IMGUI_VERSION","IMGUI_VERSION_NUM","FLT_MAX","FLT_MIN","IMGUI_HAS_DOCK","IMGUI_HAS_IMSTR"}
if gdefines.IMGUI_HAS_DOCK then gdefines.IMGUI_HAS_DOCK = true end
if gdefines.IMGUI_HAS_IMSTR then gdefines.IMGUI_HAS_IMSTR = true end
cimgui_header = cimgui_header:gsub("XXX",gdefines.IMGUI_VERSION)
cimgui_header = cimgui_header:gsub("XXX",gdefines.IMGUI_VERSION .. " "..(gdefines.IMGUI_VERSION_NUM or ""))
if INTERNAL_GENERATION then
cimgui_header = cimgui_header..[[//with imgui_internal.h api
]]

View File

@@ -16,4 +16,10 @@
# arg[2] options as words in one string: internal for imgui_internal generation, freetype for freetype generation, comments for comments generation
# examples: "" "internal" "internal freetype" "comments internal"
# arg[3..n] name of implementations to generate and/or CLFLAGS (e.g. -DIMGUI_USER_CONFIG or -DIMGUI_USE_WCHAR32)
luajit ./generator.lua gcc "internal" glfw opengl3 opengl2 sdl
if [[ "$OSTYPE" == "cygwin" || "$OSTYPE" == "msys" || "$OSTYPE" == "win32" ]];
then
suffix='.exe'
fi
luajit$suffix ./generator.lua gcc "internal" glfw opengl3 opengl2 sdl

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -2648,14 +2648,14 @@
"value": "1 << 15"
},
{
"calc_value": 61440,
"name": "ImGuiMod_Mask_",
"value": "0xF000"
"calc_value": 2048,
"name": "ImGuiMod_Shortcut",
"value": "1 << 11"
},
{
"calc_value": 4096,
"name": "ImGuiMod_Shortcut",
"value": "ImGuiMod_Ctrl"
"calc_value": 63488,
"name": "ImGuiMod_Mask_",
"value": "0xF800"
},
{
"calc_value": 512,
@@ -2695,6 +2695,53 @@
"value": "1"
}
],
"ImGuiLocKey": [
{
"calc_value": 0,
"name": "ImGuiLocKey_TableSizeOne",
"value": "0"
},
{
"calc_value": 1,
"name": "ImGuiLocKey_TableSizeAllFit",
"value": "1"
},
{
"calc_value": 2,
"name": "ImGuiLocKey_TableSizeAllDefault",
"value": "2"
},
{
"calc_value": 3,
"name": "ImGuiLocKey_TableResetOrder",
"value": "3"
},
{
"calc_value": 4,
"name": "ImGuiLocKey_WindowingMainMenuBar",
"value": "4"
},
{
"calc_value": 5,
"name": "ImGuiLocKey_WindowingPopup",
"value": "5"
},
{
"calc_value": 6,
"name": "ImGuiLocKey_WindowingUntitled",
"value": "6"
},
{
"calc_value": 7,
"name": "ImGuiLocKey_DockingHideTabBar",
"value": "7"
},
{
"calc_value": 8,
"name": "ImGuiLocKey_COUNT",
"value": "8"
}
],
"ImGuiLogType": [
{
"calc_value": 0,
@@ -3281,23 +3328,18 @@
},
{
"calc_value": 33554432,
"name": "ImGuiSelectableFlags_DrawHoveredWhenHeld",
"name": "ImGuiSelectableFlags_SetNavIdOnHover",
"value": "1 << 25"
},
{
"calc_value": 67108864,
"name": "ImGuiSelectableFlags_SetNavIdOnHover",
"name": "ImGuiSelectableFlags_NoPadWithHalfSpacing",
"value": "1 << 26"
},
{
"calc_value": 134217728,
"name": "ImGuiSelectableFlags_NoPadWithHalfSpacing",
"value": "1 << 27"
},
{
"calc_value": 268435456,
"name": "ImGuiSelectableFlags_NoSetKeyOwner",
"value": "1 << 28"
"value": "1 << 27"
}
],
"ImGuiSelectableFlags_": [
@@ -4434,182 +4476,185 @@
]
},
"enumtypes": {
"ImGuiKey": "int"
"ImGuiKey": "int",
"ImGuiLocKey": "int"
},
"locations": {
"ImBitVector": "imgui_internal:587",
"ImColor": "imgui:2458",
"ImDrawChannel": "imgui:2548",
"ImDrawCmd": "imgui:2507",
"ImDrawCmdHeader": "imgui:2540",
"ImDrawData": "imgui:2740",
"ImDrawDataBuilder": "imgui_internal:776",
"ImDrawFlags_": "imgui:2574",
"ImDrawList": "imgui:2612",
"ImDrawListFlags_": "imgui:2594",
"ImDrawListSharedData": "imgui_internal:753",
"ImDrawListSplitter": "imgui:2557",
"ImDrawVert": "imgui:2525",
"ImFont": "imgui:2959",
"ImFontAtlas": "imgui:2857",
"ImFontAtlasCustomRect": "imgui:2819",
"ImFontAtlasFlags_": "imgui:2832",
"ImFontBuilderIO": "imgui_internal:3433",
"ImFontConfig": "imgui:2763",
"ImFontGlyph": "imgui:2792",
"ImFontGlyphRangesBuilder": "imgui:2804",
"ImGuiActivateFlags_": "imgui_internal:1420",
"ImGuiAxis": "imgui_internal:943",
"ImGuiBackendFlags_": "imgui:1579",
"ImGuiButtonFlagsPrivate_": "imgui_internal:847",
"ImGuiButtonFlags_": "imgui:1693",
"ImGuiCol_": "imgui:1594",
"ImGuiColorEditFlags_": "imgui:1706",
"ImGuiColorMod": "imgui_internal:986",
"ImGuiComboFlagsPrivate_": "imgui_internal:872",
"ImBitVector": "imgui_internal:598",
"ImColor": "imgui:2455",
"ImDrawChannel": "imgui:2545",
"ImDrawCmd": "imgui:2504",
"ImDrawCmdHeader": "imgui:2537",
"ImDrawData": "imgui:2737",
"ImDrawDataBuilder": "imgui_internal:787",
"ImDrawFlags_": "imgui:2571",
"ImDrawList": "imgui:2609",
"ImDrawListFlags_": "imgui:2591",
"ImDrawListSharedData": "imgui_internal:764",
"ImDrawListSplitter": "imgui:2554",
"ImDrawVert": "imgui:2522",
"ImFont": "imgui:2957",
"ImFontAtlas": "imgui:2854",
"ImFontAtlasCustomRect": "imgui:2816",
"ImFontAtlasFlags_": "imgui:2829",
"ImFontBuilderIO": "imgui_internal:3497",
"ImFontConfig": "imgui:2760",
"ImFontGlyph": "imgui:2789",
"ImFontGlyphRangesBuilder": "imgui:2801",
"ImGuiActivateFlags_": "imgui_internal:1433",
"ImGuiAxis": "imgui_internal:953",
"ImGuiBackendFlags_": "imgui:1576",
"ImGuiButtonFlagsPrivate_": "imgui_internal:858",
"ImGuiButtonFlags_": "imgui:1690",
"ImGuiCol_": "imgui:1591",
"ImGuiColorEditFlags_": "imgui:1703",
"ImGuiColorMod": "imgui_internal:996",
"ImGuiComboFlagsPrivate_": "imgui_internal:883",
"ImGuiComboFlags_": "imgui:1124",
"ImGuiComboPreviewData": "imgui_internal:1003",
"ImGuiCond_": "imgui:1797",
"ImGuiConfigFlags_": "imgui:1554",
"ImGuiContext": "imgui_internal:1873",
"ImGuiContextHook": "imgui_internal:1858",
"ImGuiContextHookType": "imgui_internal:1856",
"ImGuiDataAuthority_": "imgui_internal:1591",
"ImGuiDataTypeInfo": "imgui_internal:969",
"ImGuiDataTypePrivate_": "imgui_internal:978",
"ImGuiDataTypeTempStorage": "imgui_internal:963",
"ImGuiComboPreviewData": "imgui_internal:1013",
"ImGuiCond_": "imgui:1794",
"ImGuiConfigFlags_": "imgui:1551",
"ImGuiContext": "imgui_internal:1910",
"ImGuiContextHook": "imgui_internal:1895",
"ImGuiContextHookType": "imgui_internal:1893",
"ImGuiDataAuthority_": "imgui_internal:1604",
"ImGuiDataTypeInfo": "imgui_internal:979",
"ImGuiDataTypePrivate_": "imgui_internal:988",
"ImGuiDataTypeTempStorage": "imgui_internal:973",
"ImGuiDataType_": "imgui:1376",
"ImGuiDebugLogFlags_": "imgui_internal:1788",
"ImGuiDebugLogFlags_": "imgui_internal:1825",
"ImGuiDir_": "imgui:1392",
"ImGuiDockContext": "imgui_internal:1689",
"ImGuiDockNode": "imgui_internal:1607",
"ImGuiDockNodeFlagsPrivate_": "imgui_internal:1566",
"ImGuiDockContext": "imgui_internal:1702",
"ImGuiDockNode": "imgui_internal:1620",
"ImGuiDockNodeFlagsPrivate_": "imgui_internal:1579",
"ImGuiDockNodeFlags_": "imgui:1341",
"ImGuiDockNodeState": "imgui_internal:1598",
"ImGuiDockNodeState": "imgui_internal:1611",
"ImGuiDragDropFlags_": "imgui:1354",
"ImGuiFocusedFlags_": "imgui:1301",
"ImGuiGroupData": "imgui_internal:1016",
"ImGuiGroupData": "imgui_internal:1026",
"ImGuiHoveredFlags_": "imgui:1315",
"ImGuiIO": "imgui:1974",
"ImGuiInputEvent": "imgui_internal:1278",
"ImGuiInputEventAppFocused": "imgui_internal:1276",
"ImGuiInputEventKey": "imgui_internal:1274",
"ImGuiInputEventMouseButton": "imgui_internal:1272",
"ImGuiInputEventMousePos": "imgui_internal:1270",
"ImGuiInputEventMouseViewport": "imgui_internal:1273",
"ImGuiInputEventMouseWheel": "imgui_internal:1271",
"ImGuiInputEventText": "imgui_internal:1275",
"ImGuiInputEventType": "imgui_internal:1244",
"ImGuiInputFlags_": "imgui_internal:1341",
"ImGuiInputSource": "imgui_internal:1257",
"ImGuiInputTextCallbackData": "imgui:2162",
"ImGuiInputTextFlagsPrivate_": "imgui_internal:838",
"ImGuiIO": "imgui:1971",
"ImGuiInputEvent": "imgui_internal:1291",
"ImGuiInputEventAppFocused": "imgui_internal:1289",
"ImGuiInputEventKey": "imgui_internal:1287",
"ImGuiInputEventMouseButton": "imgui_internal:1285",
"ImGuiInputEventMousePos": "imgui_internal:1283",
"ImGuiInputEventMouseViewport": "imgui_internal:1286",
"ImGuiInputEventMouseWheel": "imgui_internal:1284",
"ImGuiInputEventText": "imgui_internal:1288",
"ImGuiInputEventType": "imgui_internal:1257",
"ImGuiInputFlags_": "imgui_internal:1354",
"ImGuiInputSource": "imgui_internal:1270",
"ImGuiInputTextCallbackData": "imgui:2159",
"ImGuiInputTextFlagsPrivate_": "imgui_internal:849",
"ImGuiInputTextFlags_": "imgui:1036",
"ImGuiInputTextState": "imgui_internal:1051",
"ImGuiItemFlags_": "imgui_internal:795",
"ImGuiItemStatusFlags_": "imgui_internal:815",
"ImGuiKey": "imgui:1413",
"ImGuiKeyData": "imgui:1966",
"ImGuiKeyOwnerData": "imgui_internal:1329",
"ImGuiKeyRoutingData": "imgui_internal:1304",
"ImGuiKeyRoutingTable": "imgui_internal:1317",
"ImGuiLastItemData": "imgui_internal:1165",
"ImGuiLayoutType_": "imgui_internal:927",
"ImGuiListClipper": "imgui:2407",
"ImGuiListClipperData": "imgui_internal:1404",
"ImGuiListClipperRange": "imgui_internal:1391",
"ImGuiLogType": "imgui_internal:933",
"ImGuiMenuColumns": "imgui_internal:1032",
"ImGuiMetricsConfig": "imgui_internal:1804",
"ImGuiMouseButton_": "imgui:1769",
"ImGuiMouseCursor_": "imgui:1779",
"ImGuiNavHighlightFlags_": "imgui_internal:1443",
"ImGuiNavInput": "imgui:1545",
"ImGuiNavItemData": "imgui_internal:1477",
"ImGuiNavLayer": "imgui_internal:1470",
"ImGuiNavMoveFlags_": "imgui_internal:1452",
"ImGuiNextItemData": "imgui_internal:1152",
"ImGuiNextItemDataFlags_": "imgui_internal:1145",
"ImGuiNextWindowData": "imgui_internal:1118",
"ImGuiNextWindowDataFlags_": "imgui_internal:1101",
"ImGuiOldColumnData": "imgui_internal:1517",
"ImGuiOldColumnFlags_": "imgui_internal:1497",
"ImGuiOldColumns": "imgui_internal:1527",
"ImGuiOnceUponAFrame": "imgui:2282",
"ImGuiPayload": "imgui:2223",
"ImGuiPlatformIO": "imgui:3123",
"ImGuiPlatformImeData": "imgui:3195",
"ImGuiPlatformMonitor": "imgui:3186",
"ImGuiPlotType": "imgui_internal:950",
"ImGuiPopupData": "imgui_internal:1087",
"ImGuiInputTextState": "imgui_internal:1061",
"ImGuiItemFlags_": "imgui_internal:806",
"ImGuiItemStatusFlags_": "imgui_internal:826",
"ImGuiKey": "imgui:1414",
"ImGuiKeyData": "imgui:1963",
"ImGuiKeyOwnerData": "imgui_internal:1342",
"ImGuiKeyRoutingData": "imgui_internal:1317",
"ImGuiKeyRoutingTable": "imgui_internal:1330",
"ImGuiLastItemData": "imgui_internal:1176",
"ImGuiLayoutType_": "imgui_internal:937",
"ImGuiListClipper": "imgui:2404",
"ImGuiListClipperData": "imgui_internal:1417",
"ImGuiListClipperRange": "imgui_internal:1404",
"ImGuiLocEntry": "imgui_internal:1814",
"ImGuiLocKey": "imgui_internal:1801",
"ImGuiLogType": "imgui_internal:943",
"ImGuiMenuColumns": "imgui_internal:1042",
"ImGuiMetricsConfig": "imgui_internal:1841",
"ImGuiMouseButton_": "imgui:1766",
"ImGuiMouseCursor_": "imgui:1776",
"ImGuiNavHighlightFlags_": "imgui_internal:1456",
"ImGuiNavInput": "imgui:1542",
"ImGuiNavItemData": "imgui_internal:1490",
"ImGuiNavLayer": "imgui_internal:1483",
"ImGuiNavMoveFlags_": "imgui_internal:1465",
"ImGuiNextItemData": "imgui_internal:1163",
"ImGuiNextItemDataFlags_": "imgui_internal:1156",
"ImGuiNextWindowData": "imgui_internal:1129",
"ImGuiNextWindowDataFlags_": "imgui_internal:1112",
"ImGuiOldColumnData": "imgui_internal:1530",
"ImGuiOldColumnFlags_": "imgui_internal:1510",
"ImGuiOldColumns": "imgui_internal:1540",
"ImGuiOnceUponAFrame": "imgui:2279",
"ImGuiPayload": "imgui:2220",
"ImGuiPlatformIO": "imgui:3122",
"ImGuiPlatformImeData": "imgui:3194",
"ImGuiPlatformMonitor": "imgui:3185",
"ImGuiPlotType": "imgui_internal:960",
"ImGuiPopupData": "imgui_internal:1098",
"ImGuiPopupFlags_": "imgui:1097",
"ImGuiPopupPositionPolicy": "imgui_internal:956",
"ImGuiPtrOrIndex": "imgui_internal:1209",
"ImGuiScrollFlags_": "imgui_internal:1429",
"ImGuiSelectableFlagsPrivate_": "imgui_internal:885",
"ImGuiPopupPositionPolicy": "imgui_internal:966",
"ImGuiPtrOrIndex": "imgui_internal:1220",
"ImGuiScrollFlags_": "imgui_internal:1442",
"ImGuiSelectableFlagsPrivate_": "imgui_internal:896",
"ImGuiSelectableFlags_": "imgui:1113",
"ImGuiSeparatorFlags_": "imgui_internal:905",
"ImGuiSettingsHandler": "imgui_internal:1769",
"ImGuiShrinkWidthItem": "imgui_internal:1202",
"ImGuiSizeCallbackData": "imgui:2193",
"ImGuiSliderFlagsPrivate_": "imgui_internal:878",
"ImGuiSliderFlags_": "imgui:1752",
"ImGuiSeparatorFlags_": "imgui_internal:915",
"ImGuiSettingsHandler": "imgui_internal:1781",
"ImGuiShrinkWidthItem": "imgui_internal:1213",
"ImGuiSizeCallbackData": "imgui:2190",
"ImGuiSliderFlagsPrivate_": "imgui_internal:889",
"ImGuiSliderFlags_": "imgui:1749",
"ImGuiSortDirection_": "imgui:1403",
"ImGuiStackLevelInfo": "imgui_internal:1827",
"ImGuiStackSizes": "imgui_internal:1177",
"ImGuiStackTool": "imgui_internal:1839",
"ImGuiStorage": "imgui:2344",
"ImGuiStoragePair": "imgui:2347",
"ImGuiStyle": "imgui:1909",
"ImGuiStyleMod": "imgui_internal:993",
"ImGuiStyleVar_": "imgui:1661",
"ImGuiTabBar": "imgui_internal:2575",
"ImGuiTabBarFlagsPrivate_": "imgui_internal:2537",
"ImGuiStackLevelInfo": "imgui_internal:1864",
"ImGuiStackSizes": "imgui_internal:1188",
"ImGuiStackTool": "imgui_internal:1876",
"ImGuiStorage": "imgui:2341",
"ImGuiStoragePair": "imgui:2344",
"ImGuiStyle": "imgui:1906",
"ImGuiStyleMod": "imgui_internal:1003",
"ImGuiStyleVar_": "imgui:1658",
"ImGuiTabBar": "imgui_internal:2625",
"ImGuiTabBarFlagsPrivate_": "imgui_internal:2587",
"ImGuiTabBarFlags_": "imgui:1138",
"ImGuiTabItem": "imgui_internal:2555",
"ImGuiTabItemFlagsPrivate_": "imgui_internal:2545",
"ImGuiTabItem": "imgui_internal:2605",
"ImGuiTabItemFlagsPrivate_": "imgui_internal:2595",
"ImGuiTabItemFlags_": "imgui:1154",
"ImGuiTable": "imgui_internal:2711",
"ImGuiTable": "imgui_internal:2762",
"ImGuiTableBgTarget_": "imgui:1292",
"ImGuiTableCellData": "imgui_internal:2695",
"ImGuiTableColumn": "imgui_internal:2636",
"ImGuiTableCellData": "imgui_internal:2745",
"ImGuiTableColumn": "imgui_internal:2686",
"ImGuiTableColumnFlags_": "imgui:1240",
"ImGuiTableColumnSettings": "imgui_internal:2846",
"ImGuiTableColumnSortSpecs": "imgui:2245",
"ImGuiTableColumnSettings": "imgui_internal:2899",
"ImGuiTableColumnSortSpecs": "imgui:2242",
"ImGuiTableFlags_": "imgui:1189",
"ImGuiTableInstanceData": "imgui_internal:2702",
"ImGuiTableInstanceData": "imgui_internal:2752",
"ImGuiTableRowFlags_": "imgui:1277",
"ImGuiTableSettings": "imgui_internal:2870",
"ImGuiTableSortSpecs": "imgui:2259",
"ImGuiTableTempData": "imgui_internal:2825",
"ImGuiTextBuffer": "imgui:2317",
"ImGuiTextFilter": "imgui:2290",
"ImGuiTextFlags_": "imgui_internal:913",
"ImGuiTextIndex": "imgui_internal:710",
"ImGuiTextRange": "imgui:2300",
"ImGuiTooltipFlags_": "imgui_internal:919",
"ImGuiTreeNodeFlagsPrivate_": "imgui_internal:900",
"ImGuiTableSettings": "imgui_internal:2923",
"ImGuiTableSortSpecs": "imgui:2256",
"ImGuiTableTempData": "imgui_internal:2878",
"ImGuiTextBuffer": "imgui:2314",
"ImGuiTextFilter": "imgui:2287",
"ImGuiTextFlags_": "imgui_internal:923",
"ImGuiTextIndex": "imgui_internal:721",
"ImGuiTextRange": "imgui:2297",
"ImGuiTooltipFlags_": "imgui_internal:929",
"ImGuiTreeNodeFlagsPrivate_": "imgui_internal:910",
"ImGuiTreeNodeFlags_": "imgui:1068",
"ImGuiViewport": "imgui:3040",
"ImGuiViewportFlags_": "imgui:3015",
"ImGuiViewportP": "imgui_internal:1706",
"ImGuiWindow": "imgui_internal:2393",
"ImGuiWindowClass": "imgui:2208",
"ImGuiWindowDockStyle": "imgui_internal:1684",
"ImGuiWindowDockStyleCol": "imgui_internal:1673",
"ImGuiViewport": "imgui:3038",
"ImGuiViewportFlags_": "imgui:3013",
"ImGuiViewportP": "imgui_internal:1719",
"ImGuiWindow": "imgui_internal:2440",
"ImGuiWindowClass": "imgui:2205",
"ImGuiWindowDockStyle": "imgui_internal:1697",
"ImGuiWindowDockStyleCol": "imgui_internal:1686",
"ImGuiWindowFlags_": "imgui:995",
"ImGuiWindowSettings": "imgui_internal:1752",
"ImGuiWindowStackData": "imgui_internal:1195",
"ImGuiWindowTempData": "imgui_internal:2345",
"ImRect": "imgui_internal:515",
"ImVec1": "imgui_internal:497",
"ImGuiWindowSettings": "imgui_internal:1764",
"ImGuiWindowStackData": "imgui_internal:1206",
"ImGuiWindowTempData": "imgui_internal:2392",
"ImRect": "imgui_internal:526",
"ImVec1": "imgui_internal:508",
"ImVec2": "imgui:259",
"ImVec2ih": "imgui_internal:505",
"ImVec2ih": "imgui_internal:516",
"ImVec4": "imgui:272",
"STB_TexteditState": "imstb_textedit:319",
"StbTexteditRow": "imstb_textedit:366",
"StbUndoRecord": "imstb_textedit:301",
"StbUndoState": "imstb_textedit:310"
"STB_TexteditState": "imstb_textedit:320",
"StbTexteditRow": "imstb_textedit:367",
"StbUndoRecord": "imstb_textedit:302",
"StbUndoState": "imstb_textedit:311"
},
"structs": {
"ImBitVector": [
@@ -4976,6 +5021,10 @@
"name": "Locked",
"type": "bool"
},
{
"name": "UserData",
"type": "void*"
},
{
"name": "TexReady",
"type": "bool"
@@ -5415,10 +5464,22 @@
"name": "WheelingWindowRefMousePos",
"type": "ImVec2"
},
{
"name": "WheelingWindowStartFrame",
"type": "int"
},
{
"name": "WheelingWindowReleaseTimer",
"type": "float"
},
{
"name": "WheelingWindowWheelRemainder",
"type": "ImVec2"
},
{
"name": "WheelingAxisAvg",
"type": "ImVec2"
},
{
"name": "DebugHookIdInfo",
"type": "ImGuiID"
@@ -6149,6 +6210,11 @@
"name": "HookIdNext",
"type": "ImGuiID"
},
{
"name": "LocalizationTable[ImGuiLocKey_COUNT]",
"size": 8,
"type": "const char*"
},
{
"name": "LogEnabled",
"type": "bool"
@@ -7103,6 +7169,10 @@
}
],
"ImGuiInputTextState": [
{
"name": "Ctx",
"type": "ImGuiContext*"
},
{
"name": "ID",
"type": "ImGuiID"
@@ -7339,6 +7409,16 @@
"type": "ImS8"
}
],
"ImGuiLocEntry": [
{
"name": "Key",
"type": "ImGuiLocKey"
},
{
"name": "Text",
"type": "const char*"
}
],
"ImGuiMenuColumns": [
{
"name": "TotalWidth",
@@ -8819,6 +8899,14 @@
"name": "IsDefaultSizingPolicy",
"type": "bool"
},
{
"name": "HasScrollbarYCurr",
"type": "bool"
},
{
"name": "HasScrollbarYPrev",
"type": "bool"
},
{
"name": "MemoryCompacted",
"type": "bool"
@@ -9071,6 +9159,10 @@
{
"name": "LastFirstRowHeight",
"type": "float"
},
{
"name": "LastFrozenHeight",
"type": "float"
}
],
"ImGuiTableSettings": [
@@ -9260,6 +9352,10 @@
"name": "PlatformHandleRaw",
"type": "void*"
},
{
"name": "PlatformWindowCreated",
"type": "bool"
},
{
"name": "PlatformRequestMove",
"type": "bool"
@@ -9310,10 +9406,6 @@
"name": "PlatformMonitor",
"type": "short"
},
{
"name": "PlatformWindowCreated",
"type": "bool"
},
{
"name": "Window",
"type": "ImGuiWindow*"
@@ -9438,6 +9530,30 @@
"name": "WindowBorderSize",
"type": "float"
},
{
"name": "DecoOuterSizeX1",
"type": "float"
},
{
"name": "DecoOuterSizeY1",
"type": "float"
},
{
"name": "DecoOuterSizeX2",
"type": "float"
},
{
"name": "DecoOuterSizeY2",
"type": "float"
},
{
"name": "DecoInnerSizeX1",
"type": "float"
},
{
"name": "DecoInnerSizeY1",
"type": "float"
},
{
"name": "NameBufLen",
"type": "int"

File diff suppressed because it is too large Load Diff

View File

@@ -81,6 +81,7 @@
"ImGuiListClipper": "struct ImGuiListClipper",
"ImGuiListClipperData": "struct ImGuiListClipperData",
"ImGuiListClipperRange": "struct ImGuiListClipperRange",
"ImGuiLocEntry": "struct ImGuiLocEntry",
"ImGuiMemAllocFunc": "void*(*)(size_t sz,void* user_data);",
"ImGuiMemFreeFunc": "void(*)(void* ptr,void* user_data);",
"ImGuiMenuColumns": "struct ImGuiMenuColumns",

View File

@@ -81,6 +81,7 @@ defs["ImGuiLayoutType"] = "int"
defs["ImGuiListClipper"] = "struct ImGuiListClipper"
defs["ImGuiListClipperData"] = "struct ImGuiListClipperData"
defs["ImGuiListClipperRange"] = "struct ImGuiListClipperRange"
defs["ImGuiLocEntry"] = "struct ImGuiLocEntry"
defs["ImGuiMemAllocFunc"] = "void*(*)(size_t sz,void* user_data);"
defs["ImGuiMemFreeFunc"] = "void(*)(void* ptr,void* user_data);"
defs["ImGuiMenuColumns"] = "struct ImGuiMenuColumns"

2
imgui

Submodule imgui updated: 94e850fd6f...d822c65317