Compare commits

...

37 Commits

Author SHA1 Message Date
sonoro1234
e3b48a15f0 Merge branch 'docking_inter' 2024-12-12 13:20:21 +01:00
sonoro1234
970c614802 pull imgui docking 1.91.6 and generate 2024-12-12 13:13:36 +01:00
sonoro1234
3d5b2e7650 dont break cimgui.h on comments generation 2024-11-19 07:54:41 +01:00
sonoro1234
8ec6558ecc Merge branch 'docking_inter' 2024-11-18 18:26:51 +01:00
sonoro1234
4e89eac938 pull imgui docking 1.91.5 and generate 2024-11-18 18:20:25 +01:00
sonoro1234
bd2ea2acbb cpp2ffi: move typedefs_dict to gen_structs_and_enums_table 2024-11-06 16:36:29 +01:00
sonoro1234
69d3b29392 update README.md 2024-11-05 16:34:30 +01:00
sonoro1234
1c3d694f36 generator: _destroy functions get location
IMGUI_USE_FREETYPE and IMGUI_USE_WCHAR32 are build options now.
cmake takes IMGUI_FREETYPE and IMGUI_WCHAR32
2024-11-05 16:30:47 +01:00
sonoro1234
be19fd11eb cpp2ffi.lua, generator ... :get manual funcs args and ret 2024-11-01 13:47:14 +01:00
sonoro1234
fdd07821bb CMakeLists.txt: add cimconfig.h to #undef NDEBUG even in release mode https://github.com/ocornut/imgui/issues/8078 2024-10-21 09:59:59 +02:00
sonoro1234
43429513a8 Merge branch 'docking_inter' 2024-10-19 12:05:11 +02:00
sonoro1234
7640b00d27 pull imgui docking 1.91.4 and generate 2024-10-19 11:48:14 +02:00
sonoro1234
90f2147dbe generator: add sdl3 and generate 2024-10-12 11:52:55 +02:00
sonoro1234
79e40b6657 Merge branch 'docking_inter' 2024-10-05 11:06:45 +02:00
sonoro1234
8268b6748b pull imgui 1.91.3 docking and generate 2024-10-05 10:59:13 +02:00
sonoro1234
833e9366de Merge branch 'docking_inter' 2024-10-01 13:05:38 +02:00
sonoro1234
652d4cbc89 pull imgui 1.91.2 and generate 2024-10-01 12:49:47 +02:00
sonoro1234
e50a65fd62 cpp2ffi: templates from classes name :: -> _ 2024-09-24 18:52:47 +02:00
sonoro1234
f276fd4ae1 cpp2ffi: initial changes for processing classes 2024-09-24 17:47:48 +02:00
sonoro1234
c06a46b0f2 cpp2ffi: get enum name from typedef enum ... 2024-09-23 10:53:32 +02:00
sonoro1234
a051fe287b constructors missed semicolon 2024-09-18 17:16:45 +02:00
sonoro1234
411924f104 script param "constructors" to add the _Construct version of constructors issue #278 2024-09-18 14:36:22 +02:00
sonoro1234
0c7f67607d cpp2ffi: get class name 2024-09-14 20:19:51 +02:00
sonoro1234
51197f420a cpp2ffi: clean namespace in typedefs issue #277 2024-09-11 11:39:05 +02:00
sonoro1234
74902e7392 Merge branch 'docking_inter' 2024-09-08 11:57:14 +02:00
sonoro1234
ed017a0704 pull imgui 1.91.1 docking and generate 2024-09-06 16:56:46 +02:00
sonoro1234
c482a65118 cpp2ffi: drop (int) from enums 2024-09-06 16:55:13 +02:00
sonoro1234
143c37b7ac Merge branch 'docking_inter' 2024-07-31 11:27:49 +02:00
sonoro1234
35a4e8f893 pull imgui 1.91.0 and generate 2024-07-31 11:23:21 +02:00
sonoro1234
2b4d572704 cimgui_template: new -> IM_NEW issue #272 2024-07-31 11:16:41 +02:00
sonoro1234
7c79f59fa2 Merge branch 'docking_inter' 2024-07-03 11:14:11 +02:00
sonoro1234
f6fb347cf1 pull 1.90.9 docking and generate 2024-07-03 11:05:17 +02:00
sonoro1234
d8f958f680 example_glfw_opengl3/CMakeLists.txt: move definitions to avoid glfw compilation error. 2024-06-15 17:40:12 +02:00
sonoro1234
ee251eaafa cpp2ffi: only change type&name but not type &name 2024-06-14 18:51:00 +02:00
sonoro1234
00ecbb0ee2 backend_test: make glfw examples work with dynamic and static linking 2024-06-14 16:25:20 +02:00
sonoro1234
577f2b088a example_glfw_dx11/main.c: avoid compiler warning 2024-06-13 10:45:34 +02:00
sonoro1234
26152eac73 add backend_test/example_glfw_dx11 2024-06-13 09:51:41 +02:00
29 changed files with 11770 additions and 6857 deletions

View File

@@ -26,10 +26,10 @@ set(IMGUI_FREETYPE "no" CACHE STRING "Build with freetype library")
set(IMGUI_LIBRARIES )
if(IMGUI_FREETYPE)
message(STATUS "Building with 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)
#add library and link
@@ -39,6 +39,16 @@ else (IMGUI_STATIC)
add_library(cimgui SHARED ${IMGUI_SOURCES})
endif (IMGUI_STATIC)
if(IMGUI_FREETYPE)
target_compile_definitions(cimgui PUBLIC IMGUI_ENABLE_FREETYPE)
target_compile_definitions(cimgui PUBLIC IMGUI_ENABLE_STB_TRUETYPE)
endif(IMGUI_FREETYPE)
if(IMGUI_WCHAR32)
target_compile_definitions(cimgui PUBLIC IMGUI_USE_WCHAR32)
endif(IMGUI_WCHAR32)
add_definitions("-DIMGUI_USER_CONFIG=\"../cimconfig.h\"")
target_compile_definitions(cimgui PUBLIC IMGUI_DISABLE_OBSOLETE_FUNCTIONS=1)
if (WIN32)
target_compile_definitions(cimgui PUBLIC IMGUI_IMPL_API=extern\t\"C\"\t__declspec\(dllexport\))

View File

@@ -11,7 +11,7 @@ History:
Initially cimgui was developed by Stephan Dilly as hand-written code but lately turned into an auto-generated version by sonoro1234 in order to keep up with imgui more easily (letting the user select the desired branch and commit)
Notes:
* currently this wrapper is based on version [1.90.8 of Dear ImGui with internal api]
* currently this wrapper is based on version [1.91.6 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.
@@ -24,7 +24,7 @@ Notes:
* `git submodule update --init --recursive` (If already cloned)
* compile
* using makefile on linux/macOS/mingw (Or use CMake to generate project)
* cmake options are IMGUI_STATIC (compiling as static library), IMGUI_FREETYPE (for using Freetype2) and FREETYPE_PATH (Freetype2 cmake install location) (only if cimgui is generated with freetype option)
* cmake options are IMGUI_STATIC (compiling as static library), IMGUI_FREETYPE (for using Freetype2) and FREETYPE_PATH (Freetype2 cmake install location) and IMGUI_WCHAR32
* or as in https://github.com/sonoro1234/LuaJIT-ImGui/tree/master/build
For compiling with backends there are now examples with SDL2 and opengl3/vulkan in folder backend_test.
@@ -37,12 +37,12 @@ Notes:
* you will need LuaJIT (https://github.com/LuaJIT/LuaJIT.git better 2.1 branch) or precompiled for linux/macOS/windows in https://luapower.com/luajit/download
* you need to use also a C++ compiler for doing preprocessing: gcc (In windows MinGW-W64-builds for example), clang or cl (MSVC). (this repo was done with gcc)
* update `imgui` folder to the version you desire.
* edit `generator/generator.bat` on windows, or `generator/generator.sh` on linux, to choose between gcc, clang, or cl and to choose desired backends and whether imgui_internal is generated or not, Freetype2 is used or not and comments are generated or not
* edit `generator/generator.bat` on windows, or `generator/generator.sh` on linux, to choose between gcc, clang, or cl and to choose desired backends and whether imgui_internal is generated or not, comments are generated or not and if constructors are generated also with versions performing just initialization of structs provided by yourself (_Construct is added to the constructor names)
* the defaults of generator are gcc as compiler, imgui_internal included and sdl, glfw, vulkan, opengl2 and opengl3 as backends.
* edit config_generator.lua for adding includes needed by your chosen backends (vulkan needs that).
* Run generator.bat or generator.sh with gcc, clang or cl and LuaJIT on your PATH.
* as a result some files are generated: `cimgui.cpp`, `cimgui.h` and `cimgui_impl.h` for compiling and some lua/json files with information about the binding: `definitions.json` with function info, `structs_and_enums.json` with struct and enum info, `impl_definitions.json` with functions from the backends info.
* You can pass compiler flags to generator.sh or generator.bat by editing them at the end of the call to further specify the compiler behavior. (e.g. -DIMGUI_USER_CONFIG or -DIMGUI_USE_WCHAR32)
* You can pass compiler flags to generator.sh or generator.bat by editing them at the end of the call to further specify the compiler behavior. (e.g. -DIMGUI_USER_CONFIG)
* You are able to pass any extra argument to generator.sh (.bat) in the command-line.
* If you are using different options than cimgui repo and if you want to keep them after a cimgui update, you can keep them in a copy of generator.sh (.bat) outside of cimgui folder where `cd cimgui/generator` is used before luajit call. See https://github.com/cimgui/cimgui/issues/232#issuecomment-1497059497
# generate binding

View File

@@ -0,0 +1,110 @@
Project(cimgui_glfwdx11)
cmake_minimum_required(VERSION 3.11)
if(WIN32) # to mingw work as all the others
set(CMAKE_SHARED_LIBRARY_PREFIX "")
endif(WIN32)
#run in build dir
set (CMAKE_INSTALL_PREFIX ${CMAKE_CURRENT_BINARY_DIR})
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_USER_CONFIG=\"../cimconfig.h\"")
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_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)
# dx11
list(APPEND IMGUI_SOURCES ${BAKENDS_FOLDER}imgui_impl_dx11.cpp)
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_DOCS OFF CACHE BOOL "" FORCE)
set(GLFW_BUILD_TESTS OFF CACHE BOOL "" FORCE)
set(GLFW_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
if (NOT STATIC_BUILD)
set(BUILD_SHARED_LIBS ON CACHE BOOL "" FORCE)
endif()
add_subdirectory(${glfw_SOURCE_DIR} ${glfw_BINARY_DIR} EXCLUDE_FROM_ALL)
endif()
install(TARGETS glfw RUNTIME DESTINATION ${CMAKE_CURRENT_BINARY_DIR}
LIBRARY DESTINATION ${CMAKE_CURRENT_BINARY_DIR}
)
#FIND_PACKAGE(glfw3 PATHS "C:/LuaGL/gitsources/BUILDS/GLFW/install")
if (NOT STATIC_BUILD)
add_library(cimgui SHARED ${IMGUI_SOURCES})
else()
add_library(cimgui STATIC ${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_DX11 -DCIMGUI_USE_GLFW)
target_link_libraries(${PROJECT_NAME} d3d11 d3dcompiler.lib cimgui)

View File

@@ -0,0 +1,6 @@
This example needs dx11 in generation before compile. (add dx11 to generator.bat(sh) and generate)
`STATIC_BUILD` is the cmake variable to do static linking
Only tested with VC nmake.

View File

@@ -0,0 +1,247 @@
#define CIMGUI_DEFINE_ENUMS_AND_STRUCTS
#include "cimgui.h"
#include "cimgui_impl.h"
#define D3D11_NO_HELPERS
#define CINTERFACE
#define COBJMACROS
#define WIN32_LEAN_AND_MEAN
#include <d3d11.h>
#include <GLFW/glfw3.h>
#define GLFW_EXPOSE_NATIVE_WIN32
#include <GLFW/glfw3native.h>
#include <stdio.h>
#ifdef _MSC_VER
#include <windows.h>
#endif
#pragma comment(lib, "dxguid.lib")
#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;
// Data
static ID3D11Device* g_pd3dDevice = NULL;
static ID3D11DeviceContext* g_pd3dDeviceContext = NULL;
static IDXGISwapChain* g_pSwapChain = NULL;
static ID3D11RenderTargetView* g_mainRenderTargetView = NULL;
// Forward declarations of helper functions
bool CreateDeviceD3D(HWND hWnd);
void CleanupDeviceD3D();
void CreateRenderTarget();
void CleanupRenderTarget();
void window_size_callback(GLFWwindow* window, int width, int height)
{
CleanupRenderTarget();
IDXGISwapChain_ResizeBuffers(g_pSwapChain, 0, width, height, DXGI_FORMAT_UNKNOWN, 0);
CreateRenderTarget();
}
int main(int argc, char *argv[])
{
if (!glfwInit())
return -1;
// Decide GL+GLSL versions
glfwWindowHint(GLFW_CLIENT_API, GLFW_NO_API);
// 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;
}
//
HWND hwnd = glfwGetWin32Window(window);
if (hwnd == NULL)
{
printf("Failed to get win32 window! Terminating!\n");
glfwTerminate();
return -1;
}
// Initialize Direct3D
if (!CreateDeviceD3D(hwnd))
{
CleanupDeviceD3D();
return 1;
}
glfwSetWindowSizeCallback(window, window_size_callback);
// 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_InitForOther(window, true);
ImGui_ImplDX11_Init(g_pd3dDevice, g_pd3dDeviceContext);
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_ImplDX11_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();
const float clear_color_with_alpha[4] = { clearColor.x * clearColor.w, clearColor.y * clearColor.w, clearColor.z * clearColor.w, clearColor.w };
ID3D11DeviceContext_OMSetRenderTargets(g_pd3dDeviceContext, 1, &g_mainRenderTargetView, NULL);
ID3D11DeviceContext_ClearRenderTargetView(g_pd3dDeviceContext, g_mainRenderTargetView, clear_color_with_alpha);
ImGui_ImplDX11_RenderDrawData(igGetDrawData());
#ifdef IMGUI_HAS_DOCK
if (ioptr->ConfigFlags & ImGuiConfigFlags_ViewportsEnable)
{
igUpdatePlatformWindows();
igRenderPlatformWindowsDefault(NULL, NULL);
}
#endif
IDXGISwapChain_Present(g_pSwapChain,1, 0); // Present with vsync
//g_pSwapChain->Present(0, 0); // Present without vsync
}
// clean up
ImGui_ImplDX11_Shutdown();
ImGui_ImplGlfw_Shutdown();
igDestroyContext(NULL);
CleanupDeviceD3D();
glfwDestroyWindow(window);
glfwTerminate();
return 0;
}
// Helper functions to use DirectX11
bool CreateDeviceD3D(HWND hWnd)
{
// Setup swap chain
DXGI_SWAP_CHAIN_DESC sd;
ZeroMemory(&sd, sizeof(sd));
sd.BufferCount = 2;
sd.BufferDesc.Width = 0;
sd.BufferDesc.Height = 0;
sd.BufferDesc.Format = DXGI_FORMAT_R8G8B8A8_UNORM;
sd.BufferDesc.RefreshRate.Numerator = 60;
sd.BufferDesc.RefreshRate.Denominator = 1;
sd.Flags = DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH;
sd.BufferUsage = DXGI_USAGE_RENDER_TARGET_OUTPUT;
sd.OutputWindow = hWnd;
sd.SampleDesc.Count = 1;
sd.SampleDesc.Quality = 0;
sd.Windowed = TRUE;
sd.SwapEffect = DXGI_SWAP_EFFECT_DISCARD;
UINT createDeviceFlags = 0;
//createDeviceFlags |= D3D11_CREATE_DEVICE_DEBUG;
D3D_FEATURE_LEVEL featureLevel;
const D3D_FEATURE_LEVEL featureLevelArray[2] = { D3D_FEATURE_LEVEL_11_0, D3D_FEATURE_LEVEL_10_0, };
if (D3D11CreateDeviceAndSwapChain(NULL, D3D_DRIVER_TYPE_HARDWARE, NULL, createDeviceFlags, featureLevelArray, 2, D3D11_SDK_VERSION, &sd, &g_pSwapChain, &g_pd3dDevice, &featureLevel, &g_pd3dDeviceContext) != S_OK)
return false;
CreateRenderTarget();
return true;
}
void CleanupDeviceD3D()
{
CleanupRenderTarget();
if (g_pSwapChain) { IDXGISwapChain_Release(g_pSwapChain); g_pSwapChain = NULL; }
if (g_pd3dDeviceContext) { ID3D11DeviceContext_Release(g_pd3dDeviceContext); g_pd3dDeviceContext = NULL; }
if (g_pd3dDevice) { ID3D11Device_Release(g_pd3dDevice); g_pd3dDevice = NULL; }
}
void CreateRenderTarget()
{
ID3D11Resource* pBackBuffer;
IDXGISwapChain_GetBuffer(g_pSwapChain, 0, &IID_ID3D11Texture2D, (void**)&pBackBuffer);
ID3D11Device_CreateRenderTargetView(g_pd3dDevice, pBackBuffer, NULL, &g_mainRenderTargetView);
ID3D11Texture2D_Release(pBackBuffer);
}
void CleanupRenderTarget()
{
if (g_mainRenderTargetView) { ID3D11RenderTargetView_Release(g_mainRenderTargetView); g_mainRenderTargetView = NULL; }
}

View File

@@ -4,6 +4,9 @@ if(WIN32) # to mingw work as all the others
set(CMAKE_SHARED_LIBRARY_PREFIX "")
endif(WIN32)
#run in build dir
set (CMAKE_INSTALL_PREFIX ${CMAKE_CURRENT_BINARY_DIR})
set (CMAKE_CXX_STANDARD 11)
# general settings
@@ -20,6 +23,7 @@ else()
endif()
include_directories(../../imgui)
add_definitions("-DIMGUI_USER_CONFIG=\"../cimconfig.h\"")
add_definitions("-DIMGUI_DISABLE_OBSOLETE_FUNCTIONS=1")
include_directories(../../)
@@ -32,14 +36,8 @@ set(IMGUI_SOURCES
${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")
@@ -65,28 +63,44 @@ endif(WIN32)
# GLFW
list(APPEND IMGUI_SOURCES ${BAKENDS_FOLDER}imgui_impl_glfw.cpp)
set(GLFW_VERSION 3.3.8)
set(GLFW_VERSION 3.4)
include(FetchContent)
FetchContent_Declare(
glfw
URL https://github.com/glfw/glfw/archive/refs/tags/${GLFW_VERSION}.tar.gz)
#GIT_REPOSITORY https://github.com/glfw/glfw )
FetchContent_GetProperties(glfw)
if (NOT glfw_POPULATED)
set(FETCHCONTENT_QUIET NO)
FetchContent_Populate(glfw)
set(GLFW_BUILD_DOCS OFF CACHE BOOL "" FORCE)
set(GLFW_BUILD_TESTS OFF CACHE BOOL "" FORCE)
set(GLFW_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
add_subdirectory(${glfw_SOURCE_DIR} ${glfw_BINARY_DIR})
if (NOT STATIC_BUILD)
set(BUILD_SHARED_LIBS ON CACHE BOOL "" FORCE)
endif()
add_subdirectory(${glfw_SOURCE_DIR} ${glfw_BINARY_DIR} EXCLUDE_FROM_ALL)
endif()
#if dynamic glfw then install
install(TARGETS glfw RUNTIME DESTINATION ${CMAKE_CURRENT_BINARY_DIR}
LIBRARY DESTINATION ${CMAKE_CURRENT_BINARY_DIR}
)
#FIND_PACKAGE(glfw3 PATHS "C:/LuaGL/gitsources/BUILDS/GLFW/install" REQUIRED)
# glfw/imgui gets confused if it is not statically built.
IF (WIN32)
add_library(cimgui STATIC ${IMGUI_SOURCES})
ELSE()
if (NOT STATIC_BUILD)
add_library(cimgui SHARED ${IMGUI_SOURCES})
ENDIF()
else()
add_library(cimgui STATIC ${IMGUI_SOURCES})
endif()
if (WIN32)
target_compile_definitions(cimgui PUBLIC "-DIMGUI_IMPL_API=extern \"C\" __declspec\(dllexport\)")
else(WIN32)
target_compile_definitions(cimgui PUBLIC "-DIMGUI_IMPL_API=extern \"C\" ")
endif(WIN32)
target_link_libraries(cimgui ${IMGUI_LIBRARIES} glfw)
@@ -95,9 +109,6 @@ target_link_libraries(cimgui ${IMGUI_LIBRARIES} glfw)
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)
target_link_libraries(${PROJECT_NAME} cimgui)

View File

@@ -0,0 +1,4 @@
To build use `cmake path_to_example_glfw_opengl3` and then `make install`
`STATIC_BUILD` is a cmake variable if you want to do static linking.

View File

@@ -22,6 +22,7 @@ else()
endif()
include_directories(../../imgui)
add_definitions("-DIMGUI_USER_CONFIG=\"../cimconfig.h\"")
add_definitions("-DIMGUI_DISABLE_OBSOLETE_FUNCTIONS=1")
include_directories(../../)

View File

@@ -19,6 +19,7 @@ else()
endif()
include_directories(../../imgui)
add_definitions("-DIMGUI_USER_CONFIG=\"../cimconfig.h\"")
add_definitions("-DIMGUI_DISABLE_OBSOLETE_FUNCTIONS=1")
include_directories(../../)

1
cimconfig.h Normal file
View File

@@ -0,0 +1 @@
#undef NDEBUG

View File

@@ -1,15 +1,8 @@
//This file is automatically generated by generator.lua from https://github.com/cimgui/cimgui
//based on imgui.h file version "1.90.8" 19080 from Dear ImGui https://github.com/ocornut/imgui
//based on imgui.h file version "1.91.6" 19160 from Dear ImGui https://github.com/ocornut/imgui
//with imgui_internal.h api
#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
//with imgui_freetype.h api
#include "./imgui/imgui.h"
#ifdef IMGUI_ENABLE_FREETYPE
#include "./imgui/misc/freetype/imgui_freetype.h"
@@ -63,6 +56,10 @@ CIMGUI_API ImGuiIO* igGetIO()
{
return &ImGui::GetIO();
}
CIMGUI_API ImGuiPlatformIO* igGetPlatformIO()
{
return &ImGui::GetPlatformIO();
}
CIMGUI_API ImGuiStyle* igGetStyle()
{
return &ImGui::GetStyle();
@@ -259,22 +256,6 @@ 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();
@@ -343,25 +324,25 @@ CIMGUI_API void igPushStyleVar_Vec2(ImGuiStyleVar idx,const ImVec2 val)
{
return ImGui::PushStyleVar(idx,val);
}
CIMGUI_API void igPushStyleVarX(ImGuiStyleVar idx,float val_x)
{
return ImGui::PushStyleVarX(idx,val_x);
}
CIMGUI_API void igPushStyleVarY(ImGuiStyleVar idx,float val_y)
{
return ImGui::PushStyleVarY(idx,val_y);
}
CIMGUI_API void igPopStyleVar(int count)
{
return ImGui::PopStyleVar(count);
}
CIMGUI_API void igPushTabStop(bool tab_stop)
CIMGUI_API void igPushItemFlag(ImGuiItemFlags option,bool enabled)
{
return ImGui::PushTabStop(tab_stop);
return ImGui::PushItemFlag(option,enabled);
}
CIMGUI_API void igPopTabStop()
CIMGUI_API void igPopItemFlag()
{
return ImGui::PopTabStop();
}
CIMGUI_API void igPushButtonRepeat(bool repeat)
{
return ImGui::PushButtonRepeat(repeat);
}
CIMGUI_API void igPopButtonRepeat()
{
return ImGui::PopButtonRepeat();
return ImGui::PopItemFlag();
}
CIMGUI_API void igPushItemWidth(float item_width)
{
@@ -423,6 +404,10 @@ CIMGUI_API void igSetCursorScreenPos(const ImVec2 pos)
{
return ImGui::SetCursorScreenPos(pos);
}
CIMGUI_API void igGetContentRegionAvail(ImVec2 *pOut)
{
*pOut = ImGui::GetContentRegionAvail();
}
CIMGUI_API void igGetCursorPos(ImVec2 *pOut)
{
*pOut = ImGui::GetCursorPos();
@@ -539,6 +524,10 @@ CIMGUI_API ImGuiID igGetID_Ptr(const void* ptr_id)
{
return ImGui::GetID(ptr_id);
}
CIMGUI_API ImGuiID igGetID_Int(int int_id)
{
return ImGui::GetID(int_id);
}
CIMGUI_API void igTextUnformatted(const char* text,const char* text_end)
{
return ImGui::TextUnformatted(text,text_end);
@@ -657,6 +646,14 @@ CIMGUI_API void igBullet()
{
return ImGui::Bullet();
}
CIMGUI_API bool igTextLink(const char* label)
{
return ImGui::TextLink(label);
}
CIMGUI_API void igTextLinkOpenURL(const char* label,const char* url)
{
return ImGui::TextLinkOpenURL(label,url);
}
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);
@@ -953,6 +950,10 @@ CIMGUI_API void igSetNextItemOpen(bool is_open,ImGuiCond cond)
{
return ImGui::SetNextItemOpen(is_open,cond);
}
CIMGUI_API void igSetNextItemStorageID(ImGuiID storage_id)
{
return ImGui::SetNextItemStorageID(storage_id);
}
CIMGUI_API bool igSelectable_Bool(const char* label,bool selected,ImGuiSelectableFlags flags,const ImVec2 size)
{
return ImGui::Selectable(label,selected,flags,size);
@@ -961,6 +962,22 @@ CIMGUI_API bool igSelectable_BoolPtr(const char* label,bool* p_selected,ImGuiSel
{
return ImGui::Selectable(label,p_selected,flags,size);
}
CIMGUI_API ImGuiMultiSelectIO* igBeginMultiSelect(ImGuiMultiSelectFlags flags,int selection_size,int items_count)
{
return ImGui::BeginMultiSelect(flags,selection_size,items_count);
}
CIMGUI_API ImGuiMultiSelectIO* igEndMultiSelect()
{
return ImGui::EndMultiSelect();
}
CIMGUI_API void igSetNextItemSelectionUserData(ImGuiSelectionUserData selection_user_data)
{
return ImGui::SetNextItemSelectionUserData(selection_user_data);
}
CIMGUI_API bool igIsItemToggledSelection()
{
return ImGui::IsItemToggledSelection();
}
CIMGUI_API bool igBeginListBox(const char* label,const ImVec2 size)
{
return ImGui::BeginListBox(label,size);
@@ -1119,9 +1136,9 @@ 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)
CIMGUI_API bool igBeginTable(const char* str_id,int columns,ImGuiTableFlags flags,const ImVec2 outer_size,float inner_width)
{
return ImGui::BeginTable(str_id,column,flags,outer_size,inner_width);
return ImGui::BeginTable(str_id,columns,flags,outer_size,inner_width);
}
CIMGUI_API void igEndTable()
{
@@ -1187,13 +1204,17 @@ CIMGUI_API void igTableSetColumnEnabled(int column_n,bool v)
{
return ImGui::TableSetColumnEnabled(column_n,v);
}
CIMGUI_API int igTableGetHoveredColumn()
{
return ImGui::TableGetHoveredColumn();
}
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)
CIMGUI_API void igColumns(int count,const char* id,bool borders)
{
return ImGui::Columns(count,id,border);
return ImGui::Columns(count,id,borders);
}
CIMGUI_API void igNextColumn()
{
@@ -1323,6 +1344,10 @@ CIMGUI_API void igSetKeyboardFocusHere(int offset)
{
return ImGui::SetKeyboardFocusHere(offset);
}
CIMGUI_API void igSetNavCursorVisible(bool visible)
{
return ImGui::SetNavCursorVisible(visible);
}
CIMGUI_API void igSetNextItemAllowOverlap()
{
return ImGui::SetNextItemAllowOverlap();
@@ -1495,6 +1520,10 @@ CIMGUI_API void igSetNextItemShortcut(ImGuiKeyChord key_chord,ImGuiInputFlags fl
{
return ImGui::SetNextItemShortcut(key_chord,flags);
}
CIMGUI_API void igSetItemKeyOwner_Nil(ImGuiKey key)
{
return ImGui::SetItemKeyOwner(key);
}
CIMGUI_API bool igIsMouseDown_Nil(ImGuiMouseButton button)
{
return ImGui::IsMouseDown(button);
@@ -1599,6 +1628,17 @@ CIMGUI_API bool igDebugCheckVersionAndDataLayout(const char* version_str,size_t
{
return ImGui::DebugCheckVersionAndDataLayout(version_str,sz_io,sz_style,sz_vec2,sz_vec4,sz_drawvert,sz_drawidx);
}
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 igSetAllocatorFunctions(ImGuiMemAllocFunc alloc_func,ImGuiMemFreeFunc free_func,void* user_data)
{
return ImGui::SetAllocatorFunctions(alloc_func,free_func,user_data);
@@ -1699,6 +1739,10 @@ CIMGUI_API void ImGuiIO_ClearInputKeys(ImGuiIO* self)
{
return self->ClearInputKeys();
}
CIMGUI_API void ImGuiIO_ClearInputMouse(ImGuiIO* self)
{
return self->ClearInputMouse();
}
CIMGUI_API ImGuiIO* ImGuiIO_ImGuiIO(void)
{
return IM_NEW(ImGuiIO)();
@@ -1963,6 +2007,10 @@ CIMGUI_API void ImGuiListClipper_IncludeItemsByIndex(ImGuiListClipper* self,int
{
return self->IncludeItemsByIndex(item_begin,item_end);
}
CIMGUI_API void ImGuiListClipper_SeekCursorForItem(ImGuiListClipper* self,int item_index)
{
return self->SeekCursorForItem(item_index);
}
CIMGUI_API ImColor* ImColor_ImColor_Nil(void)
{
return IM_NEW(ImColor)();
@@ -1995,6 +2043,54 @@ CIMGUI_API void ImColor_HSV(ImColor *pOut,float h,float s,float v,float a)
{
*pOut = ImColor::HSV(h,s,v,a);
}
CIMGUI_API ImGuiSelectionBasicStorage* ImGuiSelectionBasicStorage_ImGuiSelectionBasicStorage(void)
{
return IM_NEW(ImGuiSelectionBasicStorage)();
}
CIMGUI_API void ImGuiSelectionBasicStorage_destroy(ImGuiSelectionBasicStorage* self)
{
IM_DELETE(self);
}
CIMGUI_API void ImGuiSelectionBasicStorage_ApplyRequests(ImGuiSelectionBasicStorage* self,ImGuiMultiSelectIO* ms_io)
{
return self->ApplyRequests(ms_io);
}
CIMGUI_API bool ImGuiSelectionBasicStorage_Contains(ImGuiSelectionBasicStorage* self,ImGuiID id)
{
return self->Contains(id);
}
CIMGUI_API void ImGuiSelectionBasicStorage_Clear(ImGuiSelectionBasicStorage* self)
{
return self->Clear();
}
CIMGUI_API void ImGuiSelectionBasicStorage_Swap(ImGuiSelectionBasicStorage* self,ImGuiSelectionBasicStorage* r)
{
return self->Swap(*r);
}
CIMGUI_API void ImGuiSelectionBasicStorage_SetItemSelected(ImGuiSelectionBasicStorage* self,ImGuiID id,bool selected)
{
return self->SetItemSelected(id,selected);
}
CIMGUI_API bool ImGuiSelectionBasicStorage_GetNextSelectedItem(ImGuiSelectionBasicStorage* self,void** opaque_it,ImGuiID* out_id)
{
return self->GetNextSelectedItem(opaque_it,out_id);
}
CIMGUI_API ImGuiID ImGuiSelectionBasicStorage_GetStorageIdFromIndex(ImGuiSelectionBasicStorage* self,int idx)
{
return self->GetStorageIdFromIndex(idx);
}
CIMGUI_API ImGuiSelectionExternalStorage* ImGuiSelectionExternalStorage_ImGuiSelectionExternalStorage(void)
{
return IM_NEW(ImGuiSelectionExternalStorage)();
}
CIMGUI_API void ImGuiSelectionExternalStorage_destroy(ImGuiSelectionExternalStorage* self)
{
IM_DELETE(self);
}
CIMGUI_API void ImGuiSelectionExternalStorage_ApplyRequests(ImGuiSelectionExternalStorage* self,ImGuiMultiSelectIO* ms_io)
{
return self->ApplyRequests(ms_io);
}
CIMGUI_API ImDrawCmd* ImDrawCmd_ImDrawCmd(void)
{
return IM_NEW(ImDrawCmd)();
@@ -2131,7 +2227,7 @@ CIMGUI_API void ImDrawList_AddText_Vec2(ImDrawList* self,const ImVec2 pos,ImU32
{
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)
CIMGUI_API void ImDrawList_AddText_FontPtr(ImDrawList* self,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);
}
@@ -2215,9 +2311,9 @@ CIMGUI_API void ImDrawList_PathRect(ImDrawList* self,const ImVec2 rect_min,const
{
return self->PathRect(rect_min,rect_max,rounding,flags);
}
CIMGUI_API void ImDrawList_AddCallback(ImDrawList* self,ImDrawCallback callback,void* callback_data)
CIMGUI_API void ImDrawList_AddCallback(ImDrawList* self,ImDrawCallback callback,void* userdata,size_t userdata_size)
{
return self->AddCallback(callback,callback_data);
return self->AddCallback(callback,userdata,userdata_size);
}
CIMGUI_API void ImDrawList_AddDrawCmd(ImDrawList* self)
{
@@ -2299,6 +2395,10 @@ CIMGUI_API void ImDrawList__OnChangedVtxOffset(ImDrawList* self)
{
return self->_OnChangedVtxOffset();
}
CIMGUI_API void ImDrawList__SetTextureID(ImDrawList* self,ImTextureID texture_id)
{
return self->_SetTextureID(texture_id);
}
CIMGUI_API int ImDrawList__CalcCircleAutoSegmentCount(ImDrawList* self,float radius)
{
return self->_CalcCircleAutoSegmentCount(radius);
@@ -2603,6 +2703,14 @@ 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 ImGuiPlatformImeData* ImGuiPlatformImeData_ImGuiPlatformImeData(void)
{
return IM_NEW(ImGuiPlatformImeData)();
@@ -2683,9 +2791,9 @@ CIMGUI_API int igImStrlenW(const ImWchar* str)
{
return ImStrlenW(str);
}
CIMGUI_API const ImWchar* igImStrbolW(const ImWchar* buf_mid_line,const ImWchar* buf_begin)
CIMGUI_API const char* igImStrbol(const char* buf_mid_line,const char* buf_begin)
{
return ImStrbolW(buf_mid_line,buf_begin);
return ImStrbol(buf_mid_line,buf_begin);
}
CIMGUI_API char igImToUpper(char c)
{
@@ -2699,6 +2807,10 @@ CIMGUI_API bool igImCharIsBlankW(unsigned int c)
{
return ImCharIsBlankW(c);
}
CIMGUI_API bool igImCharIsXdigitA(char c)
{
return ImCharIsXdigitA(c);
}
CIMGUI_API int igImFormatString(char* buf,size_t buf_size,const char* fmt,...)
{
va_list args;
@@ -2922,6 +3034,10 @@ CIMGUI_API float igImLinearSweep(float current,float target,float speed)
{
return ImLinearSweep(current,target,speed);
}
CIMGUI_API float igImLinearRemapClamp(float s0,float s1,float d0,float d1,float x)
{
return ImLinearRemapClamp(s0,s1,d0,d1,x);
}
CIMGUI_API void igImMul(ImVec2 *pOut,const ImVec2 lhs,const ImVec2 rhs)
{
*pOut = ImMul(lhs,rhs);
@@ -3186,6 +3302,10 @@ CIMGUI_API void ImGuiTextIndex_append(ImGuiTextIndex* self,const char* base,int
{
return self->append(base,old_size,new_size);
}
CIMGUI_API ImGuiStoragePair* igImLowerBound(ImGuiStoragePair* in_begin,ImGuiStoragePair* in_end,ImGuiID key)
{
return ImLowerBound(in_begin,in_end,key);
}
CIMGUI_API ImDrawListSharedData* ImDrawListSharedData_ImDrawListSharedData(void)
{
return IM_NEW(ImDrawListSharedData)();
@@ -3282,18 +3402,14 @@ 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_OnCharPressed(ImGuiInputTextState* self,unsigned int c)
{
return self->OnCharPressed(c);
}
CIMGUI_API void ImGuiInputTextState_CursorAnimReset(ImGuiInputTextState* self)
{
return self->CursorAnimReset();
@@ -3370,22 +3486,14 @@ CIMGUI_API void ImGuiLastItemData_destroy(ImGuiLastItemData* self)
{
IM_DELETE(self);
}
CIMGUI_API ImGuiStackSizes* ImGuiStackSizes_ImGuiStackSizes(void)
CIMGUI_API ImGuiErrorRecoveryState* ImGuiErrorRecoveryState_ImGuiErrorRecoveryState(void)
{
return IM_NEW(ImGuiStackSizes)();
return IM_NEW(ImGuiErrorRecoveryState)();
}
CIMGUI_API void ImGuiStackSizes_destroy(ImGuiStackSizes* self)
CIMGUI_API void ImGuiErrorRecoveryState_destroy(ImGuiErrorRecoveryState* 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);
@@ -3502,6 +3610,38 @@ CIMGUI_API void ImGuiOldColumns_destroy(ImGuiOldColumns* self)
{
IM_DELETE(self);
}
CIMGUI_API ImGuiBoxSelectState* ImGuiBoxSelectState_ImGuiBoxSelectState(void)
{
return IM_NEW(ImGuiBoxSelectState)();
}
CIMGUI_API void ImGuiBoxSelectState_destroy(ImGuiBoxSelectState* self)
{
IM_DELETE(self);
}
CIMGUI_API ImGuiMultiSelectTempData* ImGuiMultiSelectTempData_ImGuiMultiSelectTempData(void)
{
return IM_NEW(ImGuiMultiSelectTempData)();
}
CIMGUI_API void ImGuiMultiSelectTempData_destroy(ImGuiMultiSelectTempData* self)
{
IM_DELETE(self);
}
CIMGUI_API void ImGuiMultiSelectTempData_Clear(ImGuiMultiSelectTempData* self)
{
return self->Clear();
}
CIMGUI_API void ImGuiMultiSelectTempData_ClearIO(ImGuiMultiSelectTempData* self)
{
return self->ClearIO();
}
CIMGUI_API ImGuiMultiSelectState* ImGuiMultiSelectState_ImGuiMultiSelectState(void)
{
return IM_NEW(ImGuiMultiSelectState)();
}
CIMGUI_API void ImGuiMultiSelectState_destroy(ImGuiMultiSelectState* self)
{
IM_DELETE(self);
}
CIMGUI_API ImGuiViewportP* ImGuiViewportP_ImGuiViewportP(void)
{
return IM_NEW(ImGuiViewportP)();
@@ -3510,13 +3650,13 @@ CIMGUI_API void ImGuiViewportP_destroy(ImGuiViewportP* self)
{
IM_DELETE(self);
}
CIMGUI_API void ImGuiViewportP_CalcWorkRectPos(ImVec2 *pOut,ImGuiViewportP* self,const ImVec2 off_min)
CIMGUI_API void ImGuiViewportP_CalcWorkRectPos(ImVec2 *pOut,ImGuiViewportP* self,const ImVec2 inset_min)
{
*pOut = self->CalcWorkRectPos(off_min);
*pOut = self->CalcWorkRectPos(inset_min);
}
CIMGUI_API void ImGuiViewportP_CalcWorkRectSize(ImVec2 *pOut,ImGuiViewportP* self,const ImVec2 off_min,const ImVec2 off_max)
CIMGUI_API void ImGuiViewportP_CalcWorkRectSize(ImVec2 *pOut,ImGuiViewportP* self,const ImVec2 inset_min,const ImVec2 inset_max)
{
*pOut = self->CalcWorkRectSize(off_min,off_max);
*pOut = self->CalcWorkRectSize(inset_min,inset_max);
}
CIMGUI_API void ImGuiViewportP_UpdateWorkRect(ImGuiViewportP* self)
{
@@ -3614,6 +3754,10 @@ CIMGUI_API ImGuiID ImGuiWindow_GetID_Int(ImGuiWindow* self,int n)
{
return self->GetID(n);
}
CIMGUI_API ImGuiID ImGuiWindow_GetIDFromPos(ImGuiWindow* self,const ImVec2 p_abs)
{
return self->GetIDFromPos(p_abs);
}
CIMGUI_API ImGuiID ImGuiWindow_GetIDFromRectangle(ImGuiWindow* self,const ImRect r_abs)
{
return self->GetIDFromRectangle(r_abs);
@@ -3702,6 +3846,10 @@ CIMGUI_API ImGuiTableColumnSettings* ImGuiTableSettings_GetColumnSettings(ImGuiT
{
return self->GetColumnSettings();
}
CIMGUI_API ImGuiIO* igGetIOEx(ImGuiContext* ctx)
{
return &ImGui::GetIOEx(ctx);
}
CIMGUI_API ImGuiWindow* igGetCurrentWindowRead()
{
return ImGui::GetCurrentWindowRead();
@@ -3778,6 +3926,10 @@ CIMGUI_API void igWindowRectRelToAbs(ImRect *pOut,ImGuiWindow* window,const ImRe
{
*pOut = ImGui::WindowRectRelToAbs(window,r);
}
CIMGUI_API void igWindowPosAbsToRel(ImVec2 *pOut,ImGuiWindow* window,const ImVec2 p)
{
*pOut = ImGui::WindowPosAbsToRel(window,p);
}
CIMGUI_API void igWindowPosRelToAbs(ImVec2 *pOut,ImGuiWindow* window,const ImVec2 p)
{
*pOut = ImGui::WindowPosRelToAbs(window,p);
@@ -4066,26 +4218,10 @@ 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);
@@ -4098,9 +4234,9 @@ CIMGUI_API void igEndDisabledOverrideReenable()
{
return ImGui::EndDisabledOverrideReenable();
}
CIMGUI_API void igLogBegin(ImGuiLogType type,int auto_open_depth)
CIMGUI_API void igLogBegin(ImGuiLogFlags flags,int auto_open_depth)
{
return ImGui::LogBegin(type,auto_open_depth);
return ImGui::LogBegin(flags,auto_open_depth);
}
CIMGUI_API void igLogToBuffer(int auto_open_depth)
{
@@ -4118,6 +4254,10 @@ CIMGUI_API bool igBeginChildEx(const char* name,ImGuiID id,const ImVec2 size_arg
{
return ImGui::BeginChildEx(name,id,size_arg,child_flags,window_flags);
}
CIMGUI_API bool igBeginPopupEx(ImGuiID id,ImGuiWindowFlags extra_window_flags)
{
return ImGui::BeginPopupEx(id,extra_window_flags);
}
CIMGUI_API void igOpenPopupEx(ImGuiID id,ImGuiPopupFlags popup_flags)
{
return ImGui::OpenPopupEx(id,popup_flags);
@@ -4138,18 +4278,6 @@ 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);
@@ -4174,6 +4302,14 @@ CIMGUI_API void igFindBestWindowPosForPopupEx(ImVec2 *pOut,const ImVec2 ref_pos,
{
*pOut = ImGui::FindBestWindowPosForPopupEx(ref_pos,size,last_dir,r_outer,r_avoid,policy);
}
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 bool igBeginViewportSideBar(const char* name,ImGuiViewport* viewport,ImGuiDir dir,float size,ImGuiWindowFlags window_flags)
{
return ImGui::BeginViewportSideBar(name,viewport,dir,size,window_flags);
@@ -4222,7 +4358,7 @@ CIMGUI_API void igNavMoveRequestResolveWithLastItem(ImGuiNavItemData* result)
{
return ImGui::NavMoveRequestResolveWithLastItem(result);
}
CIMGUI_API void igNavMoveRequestResolveWithPastTreeNode(ImGuiNavItemData* result,ImGuiNavTreeNodeData* tree_node_data)
CIMGUI_API void igNavMoveRequestResolveWithPastTreeNode(ImGuiNavItemData* result,ImGuiTreeNodeStackData* tree_node_data)
{
return ImGui::NavMoveRequestResolveWithPastTreeNode(result,tree_node_data);
}
@@ -4246,9 +4382,9 @@ CIMGUI_API void igNavClearPreferredPosForAxis(ImGuiAxis axis)
{
return ImGui::NavClearPreferredPosForAxis(axis);
}
CIMGUI_API void igNavRestoreHighlightAfterMove()
CIMGUI_API void igSetNavCursorVisibleAfterMove()
{
return ImGui::NavRestoreHighlightAfterMove();
return ImGui::SetNavCursorVisibleAfterMove();
}
CIMGUI_API void igNavUpdateCurrentWindowIsScrollPushableX()
{
@@ -4302,9 +4438,9 @@ CIMGUI_API bool igIsAliasKey(ImGuiKey key)
{
return ImGui::IsAliasKey(key);
}
CIMGUI_API bool igIsModKey(ImGuiKey key)
CIMGUI_API bool igIsLRModKey(ImGuiKey key)
{
return ImGui::IsModKey(key);
return ImGui::IsLRModKey(key);
}
CIMGUI_API ImGuiKeyChord igFixupKeyChord(ImGuiKeyChord key_chord)
{
@@ -4374,7 +4510,7 @@ CIMGUI_API void igSetKeyOwnersForKeyChord(ImGuiKeyChord key,ImGuiID owner_id,ImG
{
return ImGui::SetKeyOwnersForKeyChord(key,owner_id,flags);
}
CIMGUI_API void igSetItemKeyOwner(ImGuiKey key,ImGuiInputFlags flags)
CIMGUI_API void igSetItemKeyOwner_InputFlags(ImGuiKey key,ImGuiInputFlags flags)
{
return ImGui::SetItemKeyOwner(key,flags);
}
@@ -4482,6 +4618,38 @@ CIMGUI_API int igTypingSelectFindBestLeadingMatch(ImGuiTypingSelectRequest* req,
{
return ImGui::TypingSelectFindBestLeadingMatch(req,items_count,get_item_name_func,user_data);
}
CIMGUI_API bool igBeginBoxSelect(const ImRect scope_rect,ImGuiWindow* window,ImGuiID box_select_id,ImGuiMultiSelectFlags ms_flags)
{
return ImGui::BeginBoxSelect(scope_rect,window,box_select_id,ms_flags);
}
CIMGUI_API void igEndBoxSelect(const ImRect scope_rect,ImGuiMultiSelectFlags ms_flags)
{
return ImGui::EndBoxSelect(scope_rect,ms_flags);
}
CIMGUI_API void igMultiSelectItemHeader(ImGuiID id,bool* p_selected,ImGuiButtonFlags* p_button_flags)
{
return ImGui::MultiSelectItemHeader(id,p_selected,p_button_flags);
}
CIMGUI_API void igMultiSelectItemFooter(ImGuiID id,bool* p_selected,bool* p_pressed)
{
return ImGui::MultiSelectItemFooter(id,p_selected,p_pressed);
}
CIMGUI_API void igMultiSelectAddSetAll(ImGuiMultiSelectTempData* ms,bool selected)
{
return ImGui::MultiSelectAddSetAll(ms,selected);
}
CIMGUI_API void igMultiSelectAddSetRange(ImGuiMultiSelectTempData* ms,bool selected,int range_dir,ImGuiSelectionUserData first_item,ImGuiSelectionUserData last_item)
{
return ImGui::MultiSelectAddSetRange(ms,selected,range_dir,first_item,last_item);
}
CIMGUI_API ImGuiBoxSelectState* igGetBoxSelectState(ImGuiID id)
{
return ImGui::GetBoxSelectState(id);
}
CIMGUI_API ImGuiMultiSelectState* igGetMultiSelectState(ImGuiID id)
{
return ImGui::GetMultiSelectState(id);
}
CIMGUI_API void igSetWindowClipRectBeforeSetChannel(ImGuiWindow* window,const ImRect clip_rect)
{
return ImGui::SetWindowClipRectBeforeSetChannel(window,clip_rect);
@@ -4534,10 +4702,6 @@ CIMGUI_API void igTableSetColumnSortDirection(int column_n,ImGuiSortDirection so
{
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();
@@ -4670,9 +4834,9 @@ CIMGUI_API ImGuiID igTableGetColumnResizeID(ImGuiTable* table,int column_n,int i
{
return ImGui::TableGetColumnResizeID(table,column_n,instance_no);
}
CIMGUI_API float igTableGetMaxColumnWidth(const ImGuiTable* table,int column_n)
CIMGUI_API float igTableCalcMaxColumnWidth(const ImGuiTable* table,int column_n)
{
return ImGui::TableGetMaxColumnWidth(table,column_n);
return ImGui::TableCalcMaxColumnWidth(table,column_n);
}
CIMGUI_API void igTableSetColumnWidthAutoSingle(ImGuiTable* table,int column_n)
{
@@ -4762,10 +4926,14 @@ CIMGUI_API void igTabBarCloseTab(ImGuiTabBar* tab_bar,ImGuiTabItem* tab)
{
return ImGui::TabBarCloseTab(tab_bar,tab);
}
CIMGUI_API void igTabBarQueueFocus(ImGuiTabBar* tab_bar,ImGuiTabItem* tab)
CIMGUI_API void igTabBarQueueFocus_TabItemPtr(ImGuiTabBar* tab_bar,ImGuiTabItem* tab)
{
return ImGui::TabBarQueueFocus(tab_bar,tab);
}
CIMGUI_API void igTabBarQueueFocus_Str(ImGuiTabBar* tab_bar,const char* tab_name)
{
return ImGui::TabBarQueueFocus(tab_bar,tab_name);
}
CIMGUI_API void igTabBarQueueReorder(ImGuiTabBar* tab_bar,ImGuiTabItem* tab,int offset)
{
return ImGui::TabBarQueueReorder(tab_bar,tab,offset);
@@ -4818,9 +4986,9 @@ CIMGUI_API void igRenderTextEllipsis(ImDrawList* draw_list,const ImVec2 pos_min,
{
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)
CIMGUI_API void igRenderFrame(ImVec2 p_min,ImVec2 p_max,ImU32 fill_col,bool borders,float rounding)
{
return ImGui::RenderFrame(p_min,p_max,fill_col,border,rounding);
return ImGui::RenderFrame(p_min,p_max,fill_col,borders,rounding);
}
CIMGUI_API void igRenderFrameBorder(ImVec2 p_min,ImVec2 p_max,float rounding)
{
@@ -4830,9 +4998,9 @@ CIMGUI_API void igRenderColorRectWithAlphaCheckerboard(ImDrawList* draw_list,ImV
{
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)
CIMGUI_API void igRenderNavCursor(const ImRect bb,ImGuiID id,ImGuiNavRenderCursorFlags flags)
{
return ImGui::RenderNavHighlight(bb,id,flags);
return ImGui::RenderNavCursor(bb,id,flags);
}
CIMGUI_API const char* igFindRenderedTextEnd(const char* text,const char* text_end)
{
@@ -4878,9 +5046,9 @@ CIMGUI_API bool igArrowButtonEx(const char* str_id,ImGuiDir dir,ImVec2 size_arg,
{
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)
CIMGUI_API bool igImageButtonEx(ImGuiID id,ImTextureID user_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);
return ImGui::ImageButtonEx(id,user_texture_id,image_size,uv0,uv1,bg_col,tint_col,flags);
}
CIMGUI_API void igSeparatorEx(ImGuiSeparatorFlags flags,float thickness)
{
@@ -4910,9 +5078,9 @@ 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)
CIMGUI_API bool igScrollbarEx(const ImRect bb,ImGuiID id,ImGuiAxis axis,ImS64* p_scroll_v,ImS64 avail_v,ImS64 contents_v,ImDrawFlags draw_rounding_flags)
{
return ImGui::ScrollbarEx(bb,id,axis,p_scroll_v,avail_v,contents_v,flags);
return ImGui::ScrollbarEx(bb,id,axis,p_scroll_v,avail_v,contents_v,draw_rounding_flags);
}
CIMGUI_API void igGetWindowScrollbarRect(ImRect *pOut,ImGuiWindow* window,ImGuiAxis axis)
{
@@ -4954,17 +5122,17 @@ CIMGUI_API void igTreePushOverrideID(ImGuiID id)
{
return ImGui::TreePushOverrideID(id);
}
CIMGUI_API void igTreeNodeSetOpen(ImGuiID id,bool open)
CIMGUI_API bool igTreeNodeGetOpen(ImGuiID storage_id)
{
return ImGui::TreeNodeSetOpen(id,open);
return ImGui::TreeNodeGetOpen(storage_id);
}
CIMGUI_API bool igTreeNodeUpdateNextOpen(ImGuiID id,ImGuiTreeNodeFlags flags)
CIMGUI_API void igTreeNodeSetOpen(ImGuiID storage_id,bool open)
{
return ImGui::TreeNodeUpdateNextOpen(id,flags);
return ImGui::TreeNodeSetOpen(storage_id,open);
}
CIMGUI_API void igSetNextItemSelectionUserData(ImGuiSelectionUserData selection_user_data)
CIMGUI_API bool igTreeNodeUpdateNextOpen(ImGuiID storage_id,ImGuiTreeNodeFlags flags)
{
return ImGui::SetNextItemSelectionUserData(selection_user_data);
return ImGui::TreeNodeUpdateNextOpen(storage_id,flags);
}
CIMGUI_API const ImGuiDataTypeInfo* igDataTypeGetInfo(ImGuiDataType data_type)
{
@@ -4990,6 +5158,10 @@ CIMGUI_API bool igDataTypeClamp(ImGuiDataType data_type,void* p_data,const void*
{
return ImGui::DataTypeClamp(data_type,p_data,p_min,p_max);
}
CIMGUI_API bool igDataTypeIsZero(ImGuiDataType data_type,const void* p_data)
{
return ImGui::DataTypeIsZero(data_type,p_data);
}
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);
@@ -5058,33 +5230,42 @@ CIMGUI_API void igGcAwakeTransientWindowBuffers(ImGuiWindow* window)
{
return ImGui::GcAwakeTransientWindowBuffers(window);
}
CIMGUI_API void igDebugLog(const char* fmt,...)
CIMGUI_API bool igErrorLog(const char* msg)
{
va_list args;
va_start(args, fmt);
ImGui::DebugLogV(fmt,args);
va_end(args);
return ImGui::ErrorLog(msg);
}
CIMGUI_API void igDebugLogV(const char* fmt,va_list args)
CIMGUI_API void igErrorRecoveryStoreState(ImGuiErrorRecoveryState* state_out)
{
return ImGui::DebugLogV(fmt,args);
return ImGui::ErrorRecoveryStoreState(state_out);
}
CIMGUI_API void igDebugAllocHook(ImGuiDebugAllocInfo* info,int frame_count,void* ptr,size_t size)
CIMGUI_API void igErrorRecoveryTryToRecoverState(const ImGuiErrorRecoveryState* state_in)
{
return ImGui::DebugAllocHook(info,frame_count,ptr,size);
return ImGui::ErrorRecoveryTryToRecoverState(state_in);
}
CIMGUI_API void igErrorCheckEndFrameRecover(ImGuiErrorLogCallback log_callback,void* user_data)
CIMGUI_API void igErrorRecoveryTryToRecoverWindowState(const ImGuiErrorRecoveryState* state_in)
{
return ImGui::ErrorCheckEndFrameRecover(log_callback,user_data);
}
CIMGUI_API void igErrorCheckEndWindowRecover(ImGuiErrorLogCallback log_callback,void* user_data)
{
return ImGui::ErrorCheckEndWindowRecover(log_callback,user_data);
return ImGui::ErrorRecoveryTryToRecoverWindowState(state_in);
}
CIMGUI_API void igErrorCheckUsingSetCursorPosToExtendParentBoundaries()
{
return ImGui::ErrorCheckUsingSetCursorPosToExtendParentBoundaries();
}
CIMGUI_API void igErrorCheckEndFrameFinalizeErrorTooltip()
{
return ImGui::ErrorCheckEndFrameFinalizeErrorTooltip();
}
CIMGUI_API bool igBeginErrorTooltip()
{
return ImGui::BeginErrorTooltip();
}
CIMGUI_API void igEndErrorTooltip()
{
return ImGui::EndErrorTooltip();
}
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 igDebugDrawCursorPos(ImU32 col)
{
return ImGui::DebugDrawCursorPos(col);
@@ -5177,6 +5358,10 @@ CIMGUI_API void igDebugNodeTypingSelectState(ImGuiTypingSelectState* state)
{
return ImGui::DebugNodeTypingSelectState(state);
}
CIMGUI_API void igDebugNodeMultiSelectState(ImGuiMultiSelectState* state)
{
return ImGui::DebugNodeMultiSelectState(state);
}
CIMGUI_API void igDebugNodeWindow(ImGuiWindow* window,const char* label)
{
return ImGui::DebugNodeWindow(window,label);
@@ -5245,6 +5430,18 @@ CIMGUI_API void igImFontAtlasBuildMultiplyRectAlpha8(const unsigned char table[2
{
return ImFontAtlasBuildMultiplyRectAlpha8(table,pixels,x,y,w,h,stride);
}
#ifdef IMGUI_ENABLE_FREETYPE
CIMGUI_API const ImFontBuilderIO* ImGuiFreeType_GetBuilderForFreeType()
{
return ImGuiFreeType::GetBuilderForFreeType();
}
CIMGUI_API void ImGuiFreeType_SetAllocatorFunctions(void*(*alloc_func)(size_t sz,void* user_data),void(*free_func)(void* ptr,void* user_data),void* user_data)
{
return ImGuiFreeType::SetAllocatorFunctions(alloc_func,free_func,user_data);
}
#endif
@@ -5318,7 +5515,7 @@ CimguiStorage& GetCimguiStorage()
ImGuiIO& io = ImGui::GetIO();
if (io.BackendLanguageUserData == NULL)
{
io.BackendLanguageUserData = new CimguiStorage();
io.BackendLanguageUserData = IM_NEW(CimguiStorage)();
}
return *(CimguiStorage*)io.BackendLanguageUserData;

707
cimgui.h

File diff suppressed because it is too large Load Diff

View File

@@ -1,12 +1,4 @@
#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/imgui.h"
#ifdef IMGUI_ENABLE_FREETYPE
#include "./imgui/misc/freetype/imgui_freetype.h"
@@ -89,7 +81,7 @@ CimguiStorage& GetCimguiStorage()
ImGuiIO& io = ImGui::GetIO();
if (io.BackendLanguageUserData == NULL)
{
io.BackendLanguageUserData = new CimguiStorage();
io.BackendLanguageUserData = IM_NEW(CimguiStorage)();
}
return *(CimguiStorage*)io.BackendLanguageUserData;

View File

@@ -47,7 +47,7 @@ typedef union SDL_Event SDL_Event;
/////////////////////////hand written functions
//no LogTextV
CIMGUI_API void igLogText(CONST char *fmt, ...);
CIMGUI_API void igLogText(const char *fmt, ...);
//no appendfV
CIMGUI_API void ImGuiTextBuffer_appendf(struct ImGuiTextBuffer *buffer, const char *fmt, ...);
//for getting FLT_MAX in bindings

View File

@@ -175,6 +175,7 @@ local function check_template(code)
te = te:gsub("%-","less")
te = te:gsub("%s","_")
te = te:gsub("%*","Ptr")
te = te:gsub("::","_")
code2 = code:gsub("(<[%w_%*%s]+>)([^%s%*])","%1 %2")
code2 = code2:gsub("<([^<>]-)>","_"..te)
@@ -202,6 +203,8 @@ local function parse_enum_value(value, allenums,dontpost)
if allenums[clean(value)] then return allenums[clean(value)] end
--must be several and operators
------------precedence order (hope not ())
--delete (int)
value = value:gsub("%(int%)","")
--first drop outer ()
value = value:gsub("^(%()",""):gsub("(%))$","")
assert(not value:match("[%(%)]"),value)
@@ -429,20 +432,15 @@ local function parseItems(txt,linenumdict, itparent, dumpit)
loca = table.remove(loca,1)
end
if not loca then
print("not loca",string.format("%q , %q ",itemold,itemfirstline),#itemfirstline)
-- for k,v in pairs(linenumdict) do
-- if k:match(itemfirstline) then
-- print(string.format("%q",k),#k)
-- end
-- end
--error"no entry in linenumdict"
--take locat from parent
if itparent and itparent.locat then
loca = itparent.locat
print("parent loca",string.format("%q , %q ",itemold,itemfirstline),#itemfirstline,loca)
else
loca = 0
--error"no entry in linenumdict"
print("not loca",string.format("%q , %q ",itemold,itemfirstline),#itemfirstline,loca)
end
end
else
error"no linenumdict"
@@ -478,7 +476,7 @@ local function parseItems(txt,linenumdict, itparent, dumpit)
end
return itemarr,items
end
M.parseItems = parseItems
--M.parseItems = parseItems
local function name_overloadsAlgo(v)
local aa = {} -- args
@@ -670,14 +668,18 @@ local function CleanImU32(def)
for i=1,#bb do res = res + bb[i] end
return res
end
local function moveptr(line)
line = line:gsub("%s*%*","%*")
line = line:gsub("%*([%w_])","%* %1")
line = line:gsub("(%(%*)%s","%1")
return line
end
local function parseFunction(self,stname,itt,namespace,locat)
local lineorig,comment = split_comment(itt.item)
line = clean_spaces(lineorig)
--move *
line = line:gsub("%s*%*","%*")
line = line:gsub("%*([%w_])","%* %1")
line = line:gsub("(%(%*)%s","%1")
line = moveptr(line)
--print(line)
--clean implemetation
@@ -716,6 +718,21 @@ local function parseFunction(self,stname,itt,namespace,locat)
error"parseFunction not getting args"
end
--get manuals args and ret
local cname = self.getCname(stname,funcname, namespace) --cimguiname
local manpars = self.manuals[cname]
local ismanual
if manpars then
if type(manpars) == "boolean" then
print("warning: unable to get args and ret from "..cname)
print("did you forgot to use set_manuals? ")
else
ismanual = true
args, ret = manpars.args, manpars.ret
args = moveptr(args)
ret = moveptr(ret)
end
end
local argsp = args:sub(2,-2)..","
local argsTa = {}
@@ -731,6 +748,8 @@ local function parseFunction(self,stname,itt,namespace,locat)
argsTa[#argsTa+1] = tynam
end
end
--- templates in args
for i,ar in ipairs(argsTa) do
--TODO several diferent templates
@@ -744,7 +763,7 @@ local function parseFunction(self,stname,itt,namespace,locat)
end
argsTa[i] = te and code2 or ar --ar:gsub("<([%w_%*%s]+)>",te) --ImVector
end
--get typ, name and defaults
local functype_re = "^%s*[%w%s%*]+%(%*%s*[%w_]+%)%([^%(%)]*%)"
local functype_reex = "^(%s*[%w%s%*]+)%(%*%s*([%w_]+)%)(%([^%(%)]*%))"
@@ -752,7 +771,7 @@ local function parseFunction(self,stname,itt,namespace,locat)
local noname_counter = 0
for i,ar in ipairs(argsTa) do
--avoid var name without space type&name -> type& name
ar = ar:gsub("&(%S)","& %1")
ar = ar:gsub("(%S)&(%S)","%1& %2")
local typ,name,retf,sigf,reftoptr,defa,ar1
local has_cdecl = ar:match"__cdecl"
if has_cdecl then ar = ar:gsub("__cdecl","") end
@@ -804,6 +823,7 @@ local function parseFunction(self,stname,itt,namespace,locat)
end
end
local argsArr = argsTa2
--recreate argscsinpars, call_args and signature from argsArr
@@ -835,7 +855,7 @@ local function parseFunction(self,stname,itt,namespace,locat)
caar = "()"
signat = "()" .. (extraconst or "")
end
--if ismanual then print("manual",asp, caar, signat) end
------------------------------
if not ret and stname then --must be constructors
@@ -868,6 +888,9 @@ local function parseFunction(self,stname,itt,namespace,locat)
ar.default = nil
end
end
--if ismanual then M.prtable(argsArr) end
defT.templated = self.typenames[stname] and true
defT.namespace = namespace
defT.cimguiname = cimguiname
@@ -898,6 +921,7 @@ local function parseFunction(self,stname,itt,namespace,locat)
-- end
end
defsT[cimguiname][signat] = defT
end
local function itemsCount(items)
print"------------items"
@@ -910,8 +934,8 @@ end
local function AdjustArguments(FP)
for fun,defs in pairs(FP.defsT) do
--struct function but no constructors or static functions
if defs[1].stname~="" and defs[1].ret and not defs[1].is_static_function then
--struct function but no constructors or static functions or manuals
if defs[1].stname~="" and defs[1].ret and not defs[1].is_static_function and not defs[1].manual then
--print("adjusting",fun)
for i,def in ipairs(defs) do
local empty = def.args:match("^%(%)") --no args
@@ -1108,14 +1132,15 @@ local function ADDdestructors(FP)
error"names should be equal"
end
local def = {}
local isrealdestructor = keep_dest_locat[defT[1].stname] and true
def.stname = defT[1].stname
def.templated = defT[1].templated
def.location = keep_dest_locat[defT[1].stname]
def.location = keep_dest_locat[defT[1].stname] or defT[1].location
def.ret = "void"
def.ov_cimguiname = def.stname.."_destroy"
def.cimguiname = def.ov_cimguiname
def.destructor = true
def.realdestructor = def.location and true
def.realdestructor = isrealdestructor
def.args = "("..def.stname.."* self)"
def.call_args = "(self)"
def.signature = "("..def.stname.."*)"
@@ -1267,7 +1292,7 @@ function M.Parser()
self.typedefs_dict[key] = linet
elseif not line:match"typedef%s*struct" then --discard typedef struct
print("typedef not found")
print(key,value,line)
print(key,value,line,cdef[1],cdef[2])
end
end
end
@@ -1287,6 +1312,15 @@ function M.Parser()
function par:parseItemsR2(txt, itparent)
local itsarr,its = parseItems(txt,self.linenumdict,itparent)
for i,it in ipairs(itsarr) do
--clean class
if it.re_name == "class_re" then
it.name = it.item:match("class%s+(%S+)")
print("cleaning class",it.name)
it.item = it.item:gsub("private:.+};$","};")
--it.item = it.item:gsub("private:","")
it.item = it.item:gsub("public:","")
it.item = it.item:gsub("enum%s*class","enum")
end
if not isLeaf(it.re_name) then
local inner = strip_end(it.item:match("%b{}"):sub(2,-2))
it.childs = par:parseItemsR2(inner, it)
@@ -1309,6 +1343,8 @@ function M.Parser()
end
elseif it.re_name == "namespace_re" then
it.name = it.item:match("namespace%s+(%S+)")
elseif it.re_name == "class_re" then
--it.name = it.item:match("class%s+(%S+)")
end
end
end
@@ -1330,11 +1366,12 @@ function M.Parser()
return table.concat(txtclean)
end
function par:parseItems()
self:initTypedefsDict()
--self:initTypedefsDict()
self.linenumdict = {}
local cdefs2 = {}
for i,cdef in ipairs(cdefs) do
cdef[1] = cdef[1]:gsub("enum%s*class","enum") --clean class
local cdef1 = clean_comments(cdef[1])
if self.linenumdict[cdef1] then
--print("linenumdict already defined for", cdef[1],type(self.linenumdict[cdef[1]]))
@@ -1344,7 +1381,6 @@ function M.Parser()
table.insert(self.linenumdict[cdef1],cdef[2])
end
else
--print("nuevo linenumdict es",cdef[1],cdef[2])
self.linenumdict[cdef1]=cdef[2]
end
table.insert(cdefs2,cdef[1])
@@ -1395,6 +1431,20 @@ function M.Parser()
function par:printItems()
printItems(items)
end
function par:set_manuals(manuals, modulen, erase)
erase = erase or {"CIMGUI_API"}
local moddata = read_data("./"..modulen.."_template.h")
for k,v in pairs(manuals) do
local ret = moddata:match("([^%(%):,\n;]+[%*%s])%s?~?"..k.."%b()")
for i,ww in ipairs(erase) do
ret = ret:gsub(ww,"")
end
local args = moddata:match(k.."%s*(%b())")
manuals[k] = {args = args, ret = ret}
--print(k,args,ret)
end
self.manuals = manuals
end
par.parseFunction = parseFunction
local uniques = {}
local function check_unique_typedefs(l,uniques)
@@ -1427,7 +1477,11 @@ function M.Parser()
stname,derived = inistruct:match"struct%s*([^%s:]+):(.+)"
derived = derived:match"(%S+)$"
else
stname = inistruct:match"struct%s(%S+)"
if itst.re_name == "struct_re" then
stname = inistruct:match"struct%s(%S+)"
elseif itst.re_name == "class_re" then
stname = inistruct:match"class%s(%S+)"
end
end
if derived then print(stname,"derived from",derived) end
@@ -1437,6 +1491,7 @@ function M.Parser()
stname = stru:match("%b{}%s*(%S+)%s*;")
end
local is_nested
if not stname then
is_nested = itst.parent and (itst.parent.re_name == "struct_re")
@@ -1564,8 +1619,9 @@ function M.Parser()
if parnam~="" then parnam = parnam:sub(1,-3) end
return parnam
end
function par:header_text_insert(tab,txt,it)
table.insert(tab, txt)
end
function par:gen_structs_and_enums()
print"--------------gen_structs_and_enums"
--M.prtable(self.typenames)
@@ -1593,6 +1649,9 @@ function M.Parser()
local tdt = self:gentemplatetypedef(ttype,template,te)
it2 = tdt..code2
elseif it2:match"%w+::" then
print("clean namespace typedef",it2)
it2 = it2:gsub("%w+::","")
end
elseif it.re_name == "functypedef_re" then
it2 = clean_functypedef(it2)
@@ -1604,14 +1663,16 @@ function M.Parser()
end
end
--table.insert(outtabpre,it2)
table.insert(outtab,it2)
--table.insert(outtab,it2)
self:header_text_insert(outtab, it2, it)
-- add typedef after struct name
if it.re_name == "vardef_re" and it.item:match"^%s*struct" then
local stname = it.item:match("struct%s*(%S+)%s*;")
--table.insert(typedefs_table,"typedef struct "..stname.." "..stname..";\n")
local tst = "\ntypedef struct "..stname.." "..stname..";"
if check_unique_typedefs(tst,uniques) then
table.insert(outtabpre,tst)
--table.insert(outtabpre,tst)
self:header_text_insert(outtabpre ,tst, it)
end
self.typedefs_dict[stname]="struct "..stname
if it.parent then --must be struct name; inside namespace
@@ -1637,24 +1698,31 @@ function M.Parser()
end
end
enumbody = "{"..enumbody.."\n}"
table.insert(outtab,"\ntypedef enum ".. enumbody..enumname..";"..extraenums)
--table.insert(outtab,"\ntypedef enum ".. enumbody..enumname..";"..extraenums)
local it2 = "\ntypedef enum ".. enumbody..enumname..";"..extraenums
self:header_text_insert(outtab, it2, it)
else
local enumbody = it.item:match"(%b{})"
enumbody = clean_comments(enumbody)
table.insert(outtab,"\ntypedef enum ".. enumbody..enumname..";")
--table.insert(outtab,"\ntypedef enum ".. enumbody..enumname..";")
local it2 = "\ntypedef enum ".. enumbody..enumname..";"
self:header_text_insert(outtab, it2, it)
end
if it.parent then
if it.parent.re_name == "namespace_re" then
local namespace = it.parent.item:match("namespace%s+(%S+)")
self.embeded_enums[enumname] = namespace.."::"..enumname
else
self.embeded_enums[enumname] = it.parent.name.."::"..enumname
end
end
else --unamed enum just repeat declaration
local cl_item = clean_comments(it.item)
table.insert(outtab,cl_item)
--table.insert(outtab,cl_item)
self:header_text_insert(outtab, cl_item, it)
print("unnamed enum",cl_item)
end
elseif it.re_name == "struct_re" or it.re_name == "typedef_st_re" then
elseif it.re_name == "struct_re" or it.re_name == "typedef_st_re" or it.re_name == "class_re" then
local cleanst,structname,strtab,comstab,predec = self:clean_structR1(it,true)
if not structname then print("NO NAME",cleanst,it.item) end
--if not void stname or templated
@@ -1663,12 +1731,14 @@ function M.Parser()
--table.insert(typedefs_table,"typedef struct "..structname.." "..structname..";\n")
local tst = "\ntypedef struct "..structname.." "..structname..";"
if check_unique_typedefs(tst,uniques) then
table.insert(outtab,tst)
--table.insert(outtab,tst)
self:header_text_insert(outtab, tst, it)
end
self.typedefs_dict[structname]="struct "..structname
--dont insert child structs as they are inserted before parent struct
if not (it.parent and it.parent.re_name == "struct_re") then
table.insert(outtab,predec .. cleanst)
--table.insert(outtab,predec .. cleanst)
self:header_text_insert(outtab, predec .. cleanst, it)
end
end
if it.parent then --and (it.parent.re_name == "struct_re" or it.parent.re_name == "typedef_st_re" then
@@ -1691,7 +1761,7 @@ function M.Parser()
local stname = ""
local namespace
if it.parent then
if it.parent.re_name == "struct_re" or it.parent.re_name == "typedef_st_re" then
if it.parent.re_name == "struct_re" or it.parent.re_name == "typedef_st_re" or it.parent.re_name == "class_re" then
stname = it.parent.name
elseif it.parent.re_name == "namespace_re" then
namespace = get_parents_nameC(it) --it.parent.name
@@ -1777,7 +1847,8 @@ function M.Parser()
end
local unnamed_enum_counter = 0
local function enums_for_table(it, outtab, enumsordered)
local enumname = it.item:match"^%s*enum%s+([^%s;{}]+)"
--local enumname = it.item:match"^%s*enum%s+([^%s;{}]+)"
local enumname = it.item:match"^[^;{}]-enum%s+([^%s;{}]+)"
if not enumname then
unnamed_enum_counter = unnamed_enum_counter + 1
enumname = "unnamed"..unnamed_enum_counter
@@ -1840,7 +1911,7 @@ function M.Parser()
function par:gen_structs_and_enums_table()
print"--------------gen_structs_and_enums_table"
local outtab = {enums={},structs={},locations={},enumtypes={},struct_comments={},enum_comments={}}
self.typedefs_table = {}
--self.typedefs_table = {}
local enumsordered = {}
unnamed_enum_counter = 0
self.templated_structs = {}
@@ -1863,11 +1934,35 @@ function M.Parser()
if it.re_name == "typedef_re" and not it.parent then
local typedefdef,typedefname = it.item:match"typedef(.+)%s([^%s;]+);$"
typedefname = strip(typedefname)
self.typedefs_table[typedefname] = strip(typedefdef)
--self.typedefs_table[typedefname] = strip(typedefdef)
self.typedefs_dict[typedefname] = strip(typedefdef)
elseif it.re_name == "functypedef_re" then
-- "^\n*%s*(typedef[%w%s%*_]+%([^*]*%*?%s*[%w_]+%s*%)%s*%b()%s*;)"
local key = it.item:match("%(%*([%w_]+)%)%([^%(%)]*%)")
if key then
local linet = it.item
linet = linet:gsub("[\n%s]+typedef ","")
linet = linet:gsub("%(%*("..key..")%)","(*)")
self.typedefs_dict[key] = linet
--print("functypedef_re",1,linet)--,clean_functypedef(line))
else
--try function typedef
key = it.item:match("%(([%w_]+)%)%([^%(%)]*%)")
if key then
local linet = it.item
linet = linet:gsub("typedef ","")
linet = linet:gsub("%(("..key..")%)","()")
self.typedefs_dict[key] = linet
print("functypedef_re",2, it.item)
else
print("func typedef not found")
print(it.item)
end
end
end
elseif it.re_name == "enum_re" then
enums_for_table(it, outtab, enumsordered)
elseif it.re_name == "struct_re" or it.re_name == "typedef_st_re" then
elseif it.re_name == "struct_re" or it.re_name == "typedef_st_re" or it.re_name == "class_re" then
local cleanst,structname,strtab,comstab = self:clean_structR1(it)
--if not void stname or templated
if not structname then print("NO NAME",cleanst,it.item) end
@@ -2334,7 +2429,8 @@ local function location(file,locpathT,defines,COMPILER,keepemptylines)
end
M.location = location
---------------------- C writing functions
local function ImGui_f_implementation(outtab,def)
local function ImGui_f_implementation(def)
local outtab = {}
local ptret = def.retref and "&" or ""
table.insert(outtab,"CIMGUI_API".." "..def.ret.." "..def.ov_cimguiname..def.args.."\n")
table.insert(outtab,"{\n")
@@ -2361,8 +2457,10 @@ local function ImGui_f_implementation(outtab,def)
table.insert(outtab," return "..ptret..namespace..def.funcname..def.call_args..";\n")
end
table.insert(outtab,"}\n")
return table.concat(outtab, "")
end
local function struct_f_implementation(outtab,def)
local function struct_f_implementation(def)
local outtab = {}
local empty = def.args:match("^%(%)") --no args
local ptret = def.retref and "&" or ""
@@ -2391,6 +2489,7 @@ local function struct_f_implementation(outtab,def)
table.insert(outtab," return "..ptret.."self->"..def.funcname..def.call_args..";\n")
end
table.insert(outtab,"}\n")
return table.concat(outtab, "")
end
local function func_implementation(FP)
@@ -2408,25 +2507,38 @@ local function func_implementation(FP)
local manual = FP.get_manuals(def)
if not custom and not manual and not def.templated and not FP.get_skipped(def) then
if def.constructor then
local tab = {}
assert(def.stname ~= "","constructor without struct")
local empty = def.args:match("^%(%)") --no args
table.insert(outtab,"CIMGUI_API "..def.stname.."* "..def.ov_cimguiname..(empty and "(void)" or def.args).."\n")
table.insert(outtab,"{\n")
table.insert(outtab," return IM_NEW("..def.stname..")"..def.call_args..";\n")
table.insert(outtab,"}\n")
table.insert(tab,"CIMGUI_API "..def.stname.."* "..def.ov_cimguiname..(empty and "(void)" or def.args).."\n")
table.insert(tab,"{\n")
table.insert(tab," return IM_NEW("..def.stname..")"..def.call_args..";\n")
table.insert(tab,"}\n")
if FP.CONSTRUCTORS_GENERATION then
table.insert(tab,"CIMGUI_API void "..def.ov_cimguiname.."_Construct("..def.stname.."* self"..(empty and "" or ","..def.args:sub(2,-2))..")\n")
table.insert(tab,"{\n")
table.insert(tab," IM_PLACEMENT_NEW(self)"..def.stname..def.call_args..";\n")
table.insert(tab,"}\n")
end
table.insert(outtab, table.concat(tab, ""))
elseif def.destructor then
local tab = {}
local args = "("..def.stname.."* self)"
local fname = def.stname.."_destroy"
table.insert(outtab,"CIMGUI_API void "..fname..args.."\n")
table.insert(outtab,"{\n")
table.insert(outtab," IM_DELETE(self);\n")
table.insert(outtab,"}\n")
table.insert(tab,"CIMGUI_API void "..fname..args.."\n")
table.insert(tab,"{\n")
table.insert(tab," IM_DELETE(self);\n")
table.insert(tab,"}\n")
table.insert(outtab, table.concat(tab, ""))
elseif def.stname == "" or def.is_static_function then
ImGui_f_implementation(outtab,def)
table.insert(outtab, ImGui_f_implementation(def))
else -- stname
struct_f_implementation(outtab,def)
table.insert(outtab, struct_f_implementation(def))
end
end
if FP.custom_function_post then
FP:custom_function_post(outtab, def)
end
until true
end
return table.concat(outtab)
@@ -2449,13 +2561,16 @@ local function func_header_generate_structs(FP)
local outtab = {}
table_do_sorted(FP.embeded_structs,function(k,v) table.insert(outtab,"typedef "..v.." "..k..";\n") end)
table_do_sorted(FP.embeded_structs,function(k,v)
table.insert(outtab,"typedef "..v.." "..k..";\n")
end)
table_do_sorted(FP.embeded_enums,function(k,v) table.insert(outtab,"typedef "..v.." "..k..";\n") end)
table_do_sorted(FP.templates,function(ttype,v)
table_do_sorted(v,function(ttypein,te)
table.insert(outtab,"typedef "..ttype.."<"..ttypein.."> "..ttype.."_"..te..";\n")
local ttype2 = ttype:gsub("::","_") --std::string
table.insert(outtab,"typedef "..ttype.."<"..ttypein.."> "..ttype2.."_"..te..";\n")
end)
end)
return outtab
@@ -2484,6 +2599,9 @@ local function func_header_generate_funcs(FP)
if def.constructor then
assert(def.stname ~= "","constructor without struct")
table.insert(outtab,"CIMGUI_API "..def.stname.."* "..def.ov_cimguiname ..(empty and "(void)" or def.args)..";"..addcoment.."\n")
if FP.CONSTRUCTORS_GENERATION then
outtab[#outtab] = outtab[#outtab].."\nCIMGUI_API void "..def.ov_cimguiname.."_Construct("..def.stname.."* self"..(empty and "" or ","..def.args:sub(2,-2))..");\n"
end
elseif def.destructor then
table.insert(outtab,"CIMGUI_API void "..def.ov_cimguiname..def.args..";"..addcoment.."\n")
else --not constructor
@@ -2495,9 +2613,13 @@ local function func_header_generate_funcs(FP)
end
end
end
if FP.custom_function_post then
FP:custom_function_post(outtab, def)
end
else --not cimguiname
table.insert(outtab,t.comment:gsub("%%","%%%%").."\n")-- %% substitution for gsub
end
end
return outtab

View File

@@ -15,10 +15,12 @@ set PATH=%PATH%;C:\anima;C:\mingws\i686-7.2.0-release-posix-dwarf-rt_v5-rev1\min
:: set PATH=%PATH%;C:\luaGL\sources\luajit-master\luajit-master\bin\mingw32;C:\mingw32\bin;
::process files
:: arg[1] compiler name gcc, clang or cl
:: arg[2] options as words in one string: internal for imgui_internal generation, freetype for freetype generation, comments for comments generation, nochar to skip char* function version, noimstrv to skip imstrv
:: examples: "" "internal" "internal freetype comments"
:: arg[3..n] name of implementations to generate and/or CFLAGS (e.g. -DIMGUI_USER_CONFIG or -DIMGUI_USE_WCHAR32)
luajit ./generator.lua gcc "internal noimstrv" glfw opengl3 opengl2 sdl2 %*
:: arg[2] options as words in one string: internal for imgui_internal generation, comments for comments generation, nochar to skip char* function version, noimstrv to skip imstrv
:: "constructors" adds the _Construct version of constructors
:: examples: "" "internal" "internal comments"
:: arg[3..n] name of implementations to generate and/or CFLAGS (e.g. -DIMGUI_USER_CONFIG)
::-DIMGUI_USE_WCHAR32 should not be used (is discarded)
luajit ./generator.lua gcc "internal noimstrv" glfw opengl3 opengl2 sdl2 sdl3 -DIMGUI_USE_WCHAR32 %*
::leave console open
cmd /k

View File

@@ -7,8 +7,9 @@ assert(bit,"Must use LuaJIT")
local script_args = {...}
local COMPILER = script_args[1]
local INTERNAL_GENERATION = script_args[2]:match("internal") and true or false
local FREETYPE_GENERATION = script_args[2]:match("freetype") and true or false
local FREETYPE_GENERATION = true --script_args[2]:match("freetype") and true or false
local COMMENTS_GENERATION = script_args[2]:match("comments") and true or false
local CONSTRUCTORS_GENERATION = script_args[2]:match("constructors") and true or false
local NOCHAR = script_args[2]:match("nochar") and true or false
local NOIMSTRV = script_args[2]:match("noimstrv") and true or false
local IMGUI_PATH = os.getenv"IMGUI_PATH" or "../imgui"
@@ -18,6 +19,9 @@ local CPRE,CTEST
local implementations = {}
for i=3,#script_args do
if script_args[i]:match(COMPILER == "cl" and "^/" or "^%-") then
if script_args[i]:match("IMGUI_USE_WCHAR32") then
script_args[i] = "" --dont use this define
end
local key, value = script_args[i]:match("^(.+)=(.+)$")
if key and value then
CFLAGS = CFLAGS .. " " .. key .. "=\"" .. value:gsub("\"", "\\\"") .. "\"";
@@ -30,11 +34,11 @@ for i=3,#script_args do
end
if FREETYPE_GENERATION then
CFLAGS = CFLAGS .. " -DIMGUI_ENABLE_FREETYPE "
CFLAGS = CFLAGS .. " -DIMGUI_ENABLE_FREETYPE -DIMGUI_ENABLE_STB_TRUETYPE" --both builders
end
if COMPILER == "gcc" or COMPILER == "clang" or COMPILER == "zig cc" then
CPRE = COMPILER..[[ -E -DIMGUI_DISABLE_OBSOLETE_FUNCTIONS -DIMGUI_API="" -DIMGUI_IMPL_API="" ]] .. CFLAGS
CPRE = COMPILER..[[ -E -DIMGUI_DISABLE_OBSOLETE_FUNCTIONS -DIMGUI_API="" -DIMGUI_IMPL_API="" ]] .. CFLAGS
CTEST = COMPILER.." --version"
elseif COMPILER == "cl" then
CPRE = COMPILER..[[ /E /DIMGUI_DISABLE_OBSOLETE_FUNCTIONS /DIMGUI_DEBUG_PARANOID /DIMGUI_API="" /DIMGUI_IMPL_API="" ]] .. CFLAGS
@@ -67,6 +71,7 @@ print("HAVE_COMPILER",HAVE_COMPILER)
print("INTERNAL_GENERATION",INTERNAL_GENERATION)
print("FREETYPE_GENERATION",FREETYPE_GENERATION)
print("COMMENTS_GENERATION",COMMENTS_GENERATION)
print("CONSTRUCTORS_GENERATION",CONSTRUCTORS_GENERATION)
print("CPRE",CPRE)
--------------------------------------------------------------------------
--this table has the functions to be skipped in generation
@@ -212,6 +217,27 @@ local function DefsByStruct(FP)
FP.defsBystruct = structs
end
local function colapse_defines(str, define)
local num = 1
while num > 0 do
str,num = str:gsub("(#ifdef "..define..".+)".."(#endif\n+#ifdef "..define.."\n)", "%1")
end
return str
end
local wchardefine =
[[
#ifdef IMGUI_USE_WCHAR32
typedef ImWchar32 ImWchar;
#else
typedef ImWchar16 ImWchar;
#endif
#ifdef IMGUI_USE_WCHAR32
#define IM_UNICODE_CODEPOINT_MAX 0x10FFFF
#else
#define IM_UNICODE_CODEPOINT_MAX 0xFFFF
#endif
]]
--generate cimgui.cpp cimgui.h
local function cimgui_generation(parser)
@@ -259,18 +285,27 @@ local function cimgui_generation(parser)
end
end
cstructsstr = colapse_defines(cstructsstr, "IMGUI_ENABLE_FREETYPE")
hstrfile = hstrfile:gsub([[#include "imgui_structs%.h"]],cstructsstr)
local cfuncsstr = func_header_generate(parser)
cfuncsstr = colapse_defines(cfuncsstr, "IMGUI_ENABLE_FREETYPE")
hstrfile = hstrfile:gsub([[#include "auto_funcs%.h"]],cfuncsstr)
--patch hstrfile for ImWchar
local num
hstrfile, num = hstrfile:gsub("typedef ImWchar16 ImWchar;", wchardefine)
assert(num == 1)
hstrfile, num = hstrfile:gsub("Used4kPagesMap%[%(0xFFFF", "Used4kPagesMap[(IM_UNICODE_CODEPOINT_MAX")
assert(num == 1)
save_data("./output/cimgui.h",cimgui_header,hstrfile)
--merge it in cimgui_template.cpp to cimgui.cpp
local cimplem = func_implementation(parser)
cimplem = colapse_defines(cimplem, "IMGUI_ENABLE_FREETYPE")
local hstrfile = read_data"./cimgui_template.cpp"
hstrfile = hstrfile:gsub([[#include "auto_funcs%.cpp"]],cimplem)
local ftdef = FREETYPE_GENERATION and "#define IMGUI_ENABLE_FREETYPE\n" or ""
local ftdef = "" --FREETYPE_GENERATION and "#define IMGUI_ENABLE_FREETYPE\n" or ""
save_data("./output/cimgui.cpp",cimgui_header, ftdef, hstrfile)
end
@@ -305,6 +340,20 @@ print("NOIMSTRV",NOIMSTRV)
print("IMGUI_HAS_DOCK",gdefines.IMGUI_HAS_DOCK)
print("IMGUI_VERSION",gdefines.IMGUI_VERSION)
local function custom_function_post(self, outtab, def)
assert(def.location)
if def.location:match("imgui_freetype") then
outtab[#outtab] = "#ifdef IMGUI_ENABLE_FREETYPE\n"..outtab[#outtab].."\n#endif\n"
end
end
local function header_text_insert(self, outtab, txt, it)
assert(it.locat)
if it.locat:match("imgui_freetype") then
table.insert(outtab, "\n#ifdef IMGUI_ENABLE_FREETYPE"..txt.."\n#endif")
else
table.insert(outtab, txt)
end
end
--funtion for parsing imgui headers
local function parseImGuiHeader(header,names)
@@ -316,13 +365,17 @@ local function parseImGuiHeader(header,names)
return pre..funcname
end
parser.cname_overloads = cimgui_overloads
parser.manuals = cimgui_manuals
--parser.manuals = cimgui_manuals
parser:set_manuals(cimgui_manuals, "cimgui")
parser.skipped = cimgui_skipped
parser.UDTs = {"ImVec2","ImVec4","ImColor","ImRect"}
--parser.gen_template_typedef = gen_template_typedef --use auto
parser.COMMENTS_GENERATION = COMMENTS_GENERATION
parser.CONSTRUCTORS_GENERATION = CONSTRUCTORS_GENERATION
parser.NOCHAR = NOCHAR
parser.NOIMSTRV = NOIMSTRV
parser.custom_function_post = custom_function_post
parser.header_text_insert = header_text_insert
local defines = parser:take_lines(CPRE..header,names,COMPILER)
return parser

View File

@@ -13,9 +13,11 @@
#process files
# arg[1] compiler name gcc, clang, or cl
# arg[2] options as words in one string: internal for imgui_internal generation, freetype for freetype generation, comments for comments generation, nochar to skip char* function version, noimstrv to skip imstrv
# 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)
# arg[2] options as words in one string: internal for imgui_internal generation, comments for comments generation, nochar to skip char* function version, noimstrv to skip imstrv
# "constructors" adds the _Construct version of constructors
# examples: "" "internal" "comments internal"
# arg[3..n] name of implementations to generate and/or CLFLAGS (e.g. -DIMGUI_USER_CONFIG)
# -DIMGUI_USE_WCHAR32 should not be used as it is generated for both ImWchar
#
# parse command line arguments
@@ -23,7 +25,7 @@
POSITIONAL_ARGS=()
TARGETS="internal noimstrv"
CFLAGS="glfw opengl3 opengl2 sdl2"
CFLAGS="glfw opengl3 opengl2 sdl2 sdl3"
help() {
cat <<EOF

View File

@@ -19,6 +19,7 @@ CIMGUI_API void ImGui_ImplGlfw_ScrollCallback(GLFWwindow* window,double xoffset,
CIMGUI_API void ImGui_ImplGlfw_KeyCallback(GLFWwindow* window,int key,int scancode,int action,int mods);
CIMGUI_API void ImGui_ImplGlfw_CharCallback(GLFWwindow* window,unsigned int c);
CIMGUI_API void ImGui_ImplGlfw_MonitorCallback(GLFWmonitor* monitor,int event);
CIMGUI_API void ImGui_ImplGlfw_Sleep(int milliseconds);
#endif
#ifdef CIMGUI_USE_OPENGL3
@@ -64,3 +65,24 @@ CIMGUI_API bool ImGui_ImplSDL2_ProcessEvent(const SDL_Event* event);
CIMGUI_API void ImGui_ImplSDL2_SetGamepadMode(ImGui_ImplSDL2_GamepadMode mode,struct _SDL_GameController** manual_gamepads_array,int manual_gamepads_count);
#endif
#ifdef CIMGUI_USE_SDL3
typedef struct SDL_Window SDL_Window;
typedef struct SDL_Renderer SDL_Renderer;
typedef struct SDL_Gamepad SDL_Gamepad;
struct SDL_Window;
struct SDL_Renderer;
struct SDL_Gamepad;
typedef union SDL_Event SDL_Event;
typedef enum { ImGui_ImplSDL3_GamepadMode_AutoFirst, ImGui_ImplSDL3_GamepadMode_AutoAll, ImGui_ImplSDL3_GamepadMode_Manual }ImGui_ImplSDL3_GamepadMode;CIMGUI_API bool ImGui_ImplSDL3_InitForOpenGL(SDL_Window* window,void* sdl_gl_context);
CIMGUI_API bool ImGui_ImplSDL3_InitForVulkan(SDL_Window* window);
CIMGUI_API bool ImGui_ImplSDL3_InitForD3D(SDL_Window* window);
CIMGUI_API bool ImGui_ImplSDL3_InitForMetal(SDL_Window* window);
CIMGUI_API bool ImGui_ImplSDL3_InitForSDLRenderer(SDL_Window* window,SDL_Renderer* renderer);
CIMGUI_API bool ImGui_ImplSDL3_InitForOther(SDL_Window* window);
CIMGUI_API void ImGui_ImplSDL3_Shutdown(void);
CIMGUI_API void ImGui_ImplSDL3_NewFrame(void);
CIMGUI_API bool ImGui_ImplSDL3_ProcessEvent(const SDL_Event* event);
CIMGUI_API void ImGui_ImplSDL3_SetGamepadMode(ImGui_ImplSDL3_GamepadMode mode,SDL_Gamepad** manual_gamepads_array,int manual_gamepads_count);
#endif

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -17,7 +17,7 @@
"cimguiname": "ImGui_ImplGlfw_CharCallback",
"defaults": {},
"funcname": "ImGui_ImplGlfw_CharCallback",
"location": "imgui_impl_glfw:55",
"location": "imgui_impl_glfw:57",
"ov_cimguiname": "ImGui_ImplGlfw_CharCallback",
"ret": "void",
"signature": "(GLFWwindow*,unsigned int)",
@@ -42,7 +42,7 @@
"cimguiname": "ImGui_ImplGlfw_CursorEnterCallback",
"defaults": {},
"funcname": "ImGui_ImplGlfw_CursorEnterCallback",
"location": "imgui_impl_glfw:50",
"location": "imgui_impl_glfw:52",
"ov_cimguiname": "ImGui_ImplGlfw_CursorEnterCallback",
"ret": "void",
"signature": "(GLFWwindow*,int)",
@@ -71,7 +71,7 @@
"cimguiname": "ImGui_ImplGlfw_CursorPosCallback",
"defaults": {},
"funcname": "ImGui_ImplGlfw_CursorPosCallback",
"location": "imgui_impl_glfw:51",
"location": "imgui_impl_glfw:53",
"ov_cimguiname": "ImGui_ImplGlfw_CursorPosCallback",
"ret": "void",
"signature": "(GLFWwindow*,double,double)",
@@ -96,7 +96,7 @@
"cimguiname": "ImGui_ImplGlfw_InitForOpenGL",
"defaults": {},
"funcname": "ImGui_ImplGlfw_InitForOpenGL",
"location": "imgui_impl_glfw:27",
"location": "imgui_impl_glfw:28",
"ov_cimguiname": "ImGui_ImplGlfw_InitForOpenGL",
"ret": "bool",
"signature": "(GLFWwindow*,bool)",
@@ -121,7 +121,7 @@
"cimguiname": "ImGui_ImplGlfw_InitForOther",
"defaults": {},
"funcname": "ImGui_ImplGlfw_InitForOther",
"location": "imgui_impl_glfw:29",
"location": "imgui_impl_glfw:30",
"ov_cimguiname": "ImGui_ImplGlfw_InitForOther",
"ret": "bool",
"signature": "(GLFWwindow*,bool)",
@@ -146,7 +146,7 @@
"cimguiname": "ImGui_ImplGlfw_InitForVulkan",
"defaults": {},
"funcname": "ImGui_ImplGlfw_InitForVulkan",
"location": "imgui_impl_glfw:28",
"location": "imgui_impl_glfw:29",
"ov_cimguiname": "ImGui_ImplGlfw_InitForVulkan",
"ret": "bool",
"signature": "(GLFWwindow*,bool)",
@@ -167,7 +167,7 @@
"cimguiname": "ImGui_ImplGlfw_InstallCallbacks",
"defaults": {},
"funcname": "ImGui_ImplGlfw_InstallCallbacks",
"location": "imgui_impl_glfw:41",
"location": "imgui_impl_glfw:43",
"ov_cimguiname": "ImGui_ImplGlfw_InstallCallbacks",
"ret": "void",
"signature": "(GLFWwindow*)",
@@ -204,7 +204,7 @@
"cimguiname": "ImGui_ImplGlfw_KeyCallback",
"defaults": {},
"funcname": "ImGui_ImplGlfw_KeyCallback",
"location": "imgui_impl_glfw:54",
"location": "imgui_impl_glfw:56",
"ov_cimguiname": "ImGui_ImplGlfw_KeyCallback",
"ret": "void",
"signature": "(GLFWwindow*,int,int,int,int)",
@@ -229,7 +229,7 @@
"cimguiname": "ImGui_ImplGlfw_MonitorCallback",
"defaults": {},
"funcname": "ImGui_ImplGlfw_MonitorCallback",
"location": "imgui_impl_glfw:56",
"location": "imgui_impl_glfw:58",
"ov_cimguiname": "ImGui_ImplGlfw_MonitorCallback",
"ret": "void",
"signature": "(GLFWmonitor*,int)",
@@ -262,7 +262,7 @@
"cimguiname": "ImGui_ImplGlfw_MouseButtonCallback",
"defaults": {},
"funcname": "ImGui_ImplGlfw_MouseButtonCallback",
"location": "imgui_impl_glfw:52",
"location": "imgui_impl_glfw:54",
"ov_cimguiname": "ImGui_ImplGlfw_MouseButtonCallback",
"ret": "void",
"signature": "(GLFWwindow*,int,int,int)",
@@ -278,7 +278,7 @@
"cimguiname": "ImGui_ImplGlfw_NewFrame",
"defaults": {},
"funcname": "ImGui_ImplGlfw_NewFrame",
"location": "imgui_impl_glfw:31",
"location": "imgui_impl_glfw:32",
"ov_cimguiname": "ImGui_ImplGlfw_NewFrame",
"ret": "void",
"signature": "()",
@@ -299,7 +299,7 @@
"cimguiname": "ImGui_ImplGlfw_RestoreCallbacks",
"defaults": {},
"funcname": "ImGui_ImplGlfw_RestoreCallbacks",
"location": "imgui_impl_glfw:42",
"location": "imgui_impl_glfw:44",
"ov_cimguiname": "ImGui_ImplGlfw_RestoreCallbacks",
"ret": "void",
"signature": "(GLFWwindow*)",
@@ -328,7 +328,7 @@
"cimguiname": "ImGui_ImplGlfw_ScrollCallback",
"defaults": {},
"funcname": "ImGui_ImplGlfw_ScrollCallback",
"location": "imgui_impl_glfw:53",
"location": "imgui_impl_glfw:55",
"ov_cimguiname": "ImGui_ImplGlfw_ScrollCallback",
"ret": "void",
"signature": "(GLFWwindow*,double,double)",
@@ -349,7 +349,7 @@
"cimguiname": "ImGui_ImplGlfw_SetCallbacksChainForAllWindows",
"defaults": {},
"funcname": "ImGui_ImplGlfw_SetCallbacksChainForAllWindows",
"location": "imgui_impl_glfw:46",
"location": "imgui_impl_glfw:48",
"ov_cimguiname": "ImGui_ImplGlfw_SetCallbacksChainForAllWindows",
"ret": "void",
"signature": "(bool)",
@@ -365,13 +365,34 @@
"cimguiname": "ImGui_ImplGlfw_Shutdown",
"defaults": {},
"funcname": "ImGui_ImplGlfw_Shutdown",
"location": "imgui_impl_glfw:30",
"location": "imgui_impl_glfw:31",
"ov_cimguiname": "ImGui_ImplGlfw_Shutdown",
"ret": "void",
"signature": "()",
"stname": ""
}
],
"ImGui_ImplGlfw_Sleep": [
{
"args": "(int milliseconds)",
"argsT": [
{
"name": "milliseconds",
"type": "int"
}
],
"argsoriginal": "(int milliseconds)",
"call_args": "(milliseconds)",
"cimguiname": "ImGui_ImplGlfw_Sleep",
"defaults": {},
"funcname": "ImGui_ImplGlfw_Sleep",
"location": "imgui_impl_glfw:61",
"ov_cimguiname": "ImGui_ImplGlfw_Sleep",
"ret": "void",
"signature": "(int)",
"stname": ""
}
],
"ImGui_ImplGlfw_WindowFocusCallback": [
{
"args": "(GLFWwindow* window,int focused)",
@@ -390,7 +411,7 @@
"cimguiname": "ImGui_ImplGlfw_WindowFocusCallback",
"defaults": {},
"funcname": "ImGui_ImplGlfw_WindowFocusCallback",
"location": "imgui_impl_glfw:49",
"location": "imgui_impl_glfw:51",
"ov_cimguiname": "ImGui_ImplGlfw_WindowFocusCallback",
"ret": "void",
"signature": "(GLFWwindow*,int)",
@@ -406,7 +427,7 @@
"cimguiname": "ImGui_ImplOpenGL2_CreateDeviceObjects",
"defaults": {},
"funcname": "ImGui_ImplOpenGL2_CreateDeviceObjects",
"location": "imgui_impl_opengl2:35",
"location": "imgui_impl_opengl2:38",
"ov_cimguiname": "ImGui_ImplOpenGL2_CreateDeviceObjects",
"ret": "bool",
"signature": "()",
@@ -422,7 +443,7 @@
"cimguiname": "ImGui_ImplOpenGL2_CreateFontsTexture",
"defaults": {},
"funcname": "ImGui_ImplOpenGL2_CreateFontsTexture",
"location": "imgui_impl_opengl2:33",
"location": "imgui_impl_opengl2:36",
"ov_cimguiname": "ImGui_ImplOpenGL2_CreateFontsTexture",
"ret": "bool",
"signature": "()",
@@ -438,7 +459,7 @@
"cimguiname": "ImGui_ImplOpenGL2_DestroyDeviceObjects",
"defaults": {},
"funcname": "ImGui_ImplOpenGL2_DestroyDeviceObjects",
"location": "imgui_impl_opengl2:36",
"location": "imgui_impl_opengl2:39",
"ov_cimguiname": "ImGui_ImplOpenGL2_DestroyDeviceObjects",
"ret": "void",
"signature": "()",
@@ -454,7 +475,7 @@
"cimguiname": "ImGui_ImplOpenGL2_DestroyFontsTexture",
"defaults": {},
"funcname": "ImGui_ImplOpenGL2_DestroyFontsTexture",
"location": "imgui_impl_opengl2:34",
"location": "imgui_impl_opengl2:37",
"ov_cimguiname": "ImGui_ImplOpenGL2_DestroyFontsTexture",
"ret": "void",
"signature": "()",
@@ -470,7 +491,7 @@
"cimguiname": "ImGui_ImplOpenGL2_Init",
"defaults": {},
"funcname": "ImGui_ImplOpenGL2_Init",
"location": "imgui_impl_opengl2:27",
"location": "imgui_impl_opengl2:30",
"ov_cimguiname": "ImGui_ImplOpenGL2_Init",
"ret": "bool",
"signature": "()",
@@ -486,7 +507,7 @@
"cimguiname": "ImGui_ImplOpenGL2_NewFrame",
"defaults": {},
"funcname": "ImGui_ImplOpenGL2_NewFrame",
"location": "imgui_impl_opengl2:29",
"location": "imgui_impl_opengl2:32",
"ov_cimguiname": "ImGui_ImplOpenGL2_NewFrame",
"ret": "void",
"signature": "()",
@@ -507,7 +528,7 @@
"cimguiname": "ImGui_ImplOpenGL2_RenderDrawData",
"defaults": {},
"funcname": "ImGui_ImplOpenGL2_RenderDrawData",
"location": "imgui_impl_opengl2:30",
"location": "imgui_impl_opengl2:33",
"ov_cimguiname": "ImGui_ImplOpenGL2_RenderDrawData",
"ret": "void",
"signature": "(ImDrawData*)",
@@ -523,7 +544,7 @@
"cimguiname": "ImGui_ImplOpenGL2_Shutdown",
"defaults": {},
"funcname": "ImGui_ImplOpenGL2_Shutdown",
"location": "imgui_impl_opengl2:28",
"location": "imgui_impl_opengl2:31",
"ov_cimguiname": "ImGui_ImplOpenGL2_Shutdown",
"ret": "void",
"signature": "()",
@@ -684,7 +705,7 @@
"cimguiname": "ImGui_ImplSDL2_InitForD3D",
"defaults": {},
"funcname": "ImGui_ImplSDL2_InitForD3D",
"location": "imgui_impl_sdl2:32",
"location": "imgui_impl_sdl2:33",
"ov_cimguiname": "ImGui_ImplSDL2_InitForD3D",
"ret": "bool",
"signature": "(SDL_Window*)",
@@ -705,7 +726,7 @@
"cimguiname": "ImGui_ImplSDL2_InitForMetal",
"defaults": {},
"funcname": "ImGui_ImplSDL2_InitForMetal",
"location": "imgui_impl_sdl2:33",
"location": "imgui_impl_sdl2:34",
"ov_cimguiname": "ImGui_ImplSDL2_InitForMetal",
"ret": "bool",
"signature": "(SDL_Window*)",
@@ -730,7 +751,7 @@
"cimguiname": "ImGui_ImplSDL2_InitForOpenGL",
"defaults": {},
"funcname": "ImGui_ImplSDL2_InitForOpenGL",
"location": "imgui_impl_sdl2:30",
"location": "imgui_impl_sdl2:31",
"ov_cimguiname": "ImGui_ImplSDL2_InitForOpenGL",
"ret": "bool",
"signature": "(SDL_Window*,void*)",
@@ -751,7 +772,7 @@
"cimguiname": "ImGui_ImplSDL2_InitForOther",
"defaults": {},
"funcname": "ImGui_ImplSDL2_InitForOther",
"location": "imgui_impl_sdl2:35",
"location": "imgui_impl_sdl2:36",
"ov_cimguiname": "ImGui_ImplSDL2_InitForOther",
"ret": "bool",
"signature": "(SDL_Window*)",
@@ -776,7 +797,7 @@
"cimguiname": "ImGui_ImplSDL2_InitForSDLRenderer",
"defaults": {},
"funcname": "ImGui_ImplSDL2_InitForSDLRenderer",
"location": "imgui_impl_sdl2:34",
"location": "imgui_impl_sdl2:35",
"ov_cimguiname": "ImGui_ImplSDL2_InitForSDLRenderer",
"ret": "bool",
"signature": "(SDL_Window*,SDL_Renderer*)",
@@ -797,7 +818,7 @@
"cimguiname": "ImGui_ImplSDL2_InitForVulkan",
"defaults": {},
"funcname": "ImGui_ImplSDL2_InitForVulkan",
"location": "imgui_impl_sdl2:31",
"location": "imgui_impl_sdl2:32",
"ov_cimguiname": "ImGui_ImplSDL2_InitForVulkan",
"ret": "bool",
"signature": "(SDL_Window*)",
@@ -813,7 +834,7 @@
"cimguiname": "ImGui_ImplSDL2_NewFrame",
"defaults": {},
"funcname": "ImGui_ImplSDL2_NewFrame",
"location": "imgui_impl_sdl2:37",
"location": "imgui_impl_sdl2:38",
"ov_cimguiname": "ImGui_ImplSDL2_NewFrame",
"ret": "void",
"signature": "()",
@@ -834,7 +855,7 @@
"cimguiname": "ImGui_ImplSDL2_ProcessEvent",
"defaults": {},
"funcname": "ImGui_ImplSDL2_ProcessEvent",
"location": "imgui_impl_sdl2:38",
"location": "imgui_impl_sdl2:39",
"ov_cimguiname": "ImGui_ImplSDL2_ProcessEvent",
"ret": "bool",
"signature": "(const SDL_Event*)",
@@ -858,15 +879,15 @@
"type": "int"
}
],
"argsoriginal": "(ImGui_ImplSDL2_GamepadMode mode,struct _SDL_GameController** manual_gamepads_array=((void*)0),int manual_gamepads_count=-1)",
"argsoriginal": "(ImGui_ImplSDL2_GamepadMode mode,struct _SDL_GameController** manual_gamepads_array=nullptr,int manual_gamepads_count=-1)",
"call_args": "(mode,manual_gamepads_array,manual_gamepads_count)",
"cimguiname": "ImGui_ImplSDL2_SetGamepadMode",
"defaults": {
"manual_gamepads_array": "NULL",
"manual_gamepads_array": "nullptr",
"manual_gamepads_count": "-1"
},
"funcname": "ImGui_ImplSDL2_SetGamepadMode",
"location": "imgui_impl_sdl2:43",
"location": "imgui_impl_sdl2:44",
"ov_cimguiname": "ImGui_ImplSDL2_SetGamepadMode",
"ret": "void",
"signature": "(ImGui_ImplSDL2_GamepadMode,struct _SDL_GameController**,int)",
@@ -882,11 +903,230 @@
"cimguiname": "ImGui_ImplSDL2_Shutdown",
"defaults": {},
"funcname": "ImGui_ImplSDL2_Shutdown",
"location": "imgui_impl_sdl2:36",
"location": "imgui_impl_sdl2:37",
"ov_cimguiname": "ImGui_ImplSDL2_Shutdown",
"ret": "void",
"signature": "()",
"stname": ""
}
],
"ImGui_ImplSDL3_InitForD3D": [
{
"args": "(SDL_Window* window)",
"argsT": [
{
"name": "window",
"type": "SDL_Window*"
}
],
"argsoriginal": "(SDL_Window* window)",
"call_args": "(window)",
"cimguiname": "ImGui_ImplSDL3_InitForD3D",
"defaults": {},
"funcname": "ImGui_ImplSDL3_InitForD3D",
"location": "imgui_impl_sdl3:35",
"ov_cimguiname": "ImGui_ImplSDL3_InitForD3D",
"ret": "bool",
"signature": "(SDL_Window*)",
"stname": ""
}
],
"ImGui_ImplSDL3_InitForMetal": [
{
"args": "(SDL_Window* window)",
"argsT": [
{
"name": "window",
"type": "SDL_Window*"
}
],
"argsoriginal": "(SDL_Window* window)",
"call_args": "(window)",
"cimguiname": "ImGui_ImplSDL3_InitForMetal",
"defaults": {},
"funcname": "ImGui_ImplSDL3_InitForMetal",
"location": "imgui_impl_sdl3:36",
"ov_cimguiname": "ImGui_ImplSDL3_InitForMetal",
"ret": "bool",
"signature": "(SDL_Window*)",
"stname": ""
}
],
"ImGui_ImplSDL3_InitForOpenGL": [
{
"args": "(SDL_Window* window,void* sdl_gl_context)",
"argsT": [
{
"name": "window",
"type": "SDL_Window*"
},
{
"name": "sdl_gl_context",
"type": "void*"
}
],
"argsoriginal": "(SDL_Window* window,void* sdl_gl_context)",
"call_args": "(window,sdl_gl_context)",
"cimguiname": "ImGui_ImplSDL3_InitForOpenGL",
"defaults": {},
"funcname": "ImGui_ImplSDL3_InitForOpenGL",
"location": "imgui_impl_sdl3:33",
"ov_cimguiname": "ImGui_ImplSDL3_InitForOpenGL",
"ret": "bool",
"signature": "(SDL_Window*,void*)",
"stname": ""
}
],
"ImGui_ImplSDL3_InitForOther": [
{
"args": "(SDL_Window* window)",
"argsT": [
{
"name": "window",
"type": "SDL_Window*"
}
],
"argsoriginal": "(SDL_Window* window)",
"call_args": "(window)",
"cimguiname": "ImGui_ImplSDL3_InitForOther",
"defaults": {},
"funcname": "ImGui_ImplSDL3_InitForOther",
"location": "imgui_impl_sdl3:38",
"ov_cimguiname": "ImGui_ImplSDL3_InitForOther",
"ret": "bool",
"signature": "(SDL_Window*)",
"stname": ""
}
],
"ImGui_ImplSDL3_InitForSDLRenderer": [
{
"args": "(SDL_Window* window,SDL_Renderer* renderer)",
"argsT": [
{
"name": "window",
"type": "SDL_Window*"
},
{
"name": "renderer",
"type": "SDL_Renderer*"
}
],
"argsoriginal": "(SDL_Window* window,SDL_Renderer* renderer)",
"call_args": "(window,renderer)",
"cimguiname": "ImGui_ImplSDL3_InitForSDLRenderer",
"defaults": {},
"funcname": "ImGui_ImplSDL3_InitForSDLRenderer",
"location": "imgui_impl_sdl3:37",
"ov_cimguiname": "ImGui_ImplSDL3_InitForSDLRenderer",
"ret": "bool",
"signature": "(SDL_Window*,SDL_Renderer*)",
"stname": ""
}
],
"ImGui_ImplSDL3_InitForVulkan": [
{
"args": "(SDL_Window* window)",
"argsT": [
{
"name": "window",
"type": "SDL_Window*"
}
],
"argsoriginal": "(SDL_Window* window)",
"call_args": "(window)",
"cimguiname": "ImGui_ImplSDL3_InitForVulkan",
"defaults": {},
"funcname": "ImGui_ImplSDL3_InitForVulkan",
"location": "imgui_impl_sdl3:34",
"ov_cimguiname": "ImGui_ImplSDL3_InitForVulkan",
"ret": "bool",
"signature": "(SDL_Window*)",
"stname": ""
}
],
"ImGui_ImplSDL3_NewFrame": [
{
"args": "()",
"argsT": [],
"argsoriginal": "()",
"call_args": "()",
"cimguiname": "ImGui_ImplSDL3_NewFrame",
"defaults": {},
"funcname": "ImGui_ImplSDL3_NewFrame",
"location": "imgui_impl_sdl3:40",
"ov_cimguiname": "ImGui_ImplSDL3_NewFrame",
"ret": "void",
"signature": "()",
"stname": ""
}
],
"ImGui_ImplSDL3_ProcessEvent": [
{
"args": "(const SDL_Event* event)",
"argsT": [
{
"name": "event",
"type": "const SDL_Event*"
}
],
"argsoriginal": "(const SDL_Event* event)",
"call_args": "(event)",
"cimguiname": "ImGui_ImplSDL3_ProcessEvent",
"defaults": {},
"funcname": "ImGui_ImplSDL3_ProcessEvent",
"location": "imgui_impl_sdl3:41",
"ov_cimguiname": "ImGui_ImplSDL3_ProcessEvent",
"ret": "bool",
"signature": "(const SDL_Event*)",
"stname": ""
}
],
"ImGui_ImplSDL3_SetGamepadMode": [
{
"args": "(ImGui_ImplSDL3_GamepadMode mode,SDL_Gamepad** manual_gamepads_array,int manual_gamepads_count)",
"argsT": [
{
"name": "mode",
"type": "ImGui_ImplSDL3_GamepadMode"
},
{
"name": "manual_gamepads_array",
"type": "SDL_Gamepad**"
},
{
"name": "manual_gamepads_count",
"type": "int"
}
],
"argsoriginal": "(ImGui_ImplSDL3_GamepadMode mode,SDL_Gamepad** manual_gamepads_array=nullptr,int manual_gamepads_count=-1)",
"call_args": "(mode,manual_gamepads_array,manual_gamepads_count)",
"cimguiname": "ImGui_ImplSDL3_SetGamepadMode",
"defaults": {
"manual_gamepads_array": "nullptr",
"manual_gamepads_count": "-1"
},
"funcname": "ImGui_ImplSDL3_SetGamepadMode",
"location": "imgui_impl_sdl3:46",
"ov_cimguiname": "ImGui_ImplSDL3_SetGamepadMode",
"ret": "void",
"signature": "(ImGui_ImplSDL3_GamepadMode,SDL_Gamepad**,int)",
"stname": ""
}
],
"ImGui_ImplSDL3_Shutdown": [
{
"args": "()",
"argsT": [],
"argsoriginal": "()",
"call_args": "()",
"cimguiname": "ImGui_ImplSDL3_Shutdown",
"defaults": {},
"funcname": "ImGui_ImplSDL3_Shutdown",
"location": "imgui_impl_sdl3:39",
"ov_cimguiname": "ImGui_ImplSDL3_Shutdown",
"ret": "void",
"signature": "()",
"stname": ""
}
]
}

View File

@@ -14,7 +14,7 @@ defs["ImGui_ImplGlfw_CharCallback"][1]["call_args"] = "(window,c)"
defs["ImGui_ImplGlfw_CharCallback"][1]["cimguiname"] = "ImGui_ImplGlfw_CharCallback"
defs["ImGui_ImplGlfw_CharCallback"][1]["defaults"] = {}
defs["ImGui_ImplGlfw_CharCallback"][1]["funcname"] = "ImGui_ImplGlfw_CharCallback"
defs["ImGui_ImplGlfw_CharCallback"][1]["location"] = "imgui_impl_glfw:55"
defs["ImGui_ImplGlfw_CharCallback"][1]["location"] = "imgui_impl_glfw:57"
defs["ImGui_ImplGlfw_CharCallback"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_CharCallback"
defs["ImGui_ImplGlfw_CharCallback"][1]["ret"] = "void"
defs["ImGui_ImplGlfw_CharCallback"][1]["signature"] = "(GLFWwindow*,unsigned int)"
@@ -35,7 +35,7 @@ defs["ImGui_ImplGlfw_CursorEnterCallback"][1]["call_args"] = "(window,entered)"
defs["ImGui_ImplGlfw_CursorEnterCallback"][1]["cimguiname"] = "ImGui_ImplGlfw_CursorEnterCallback"
defs["ImGui_ImplGlfw_CursorEnterCallback"][1]["defaults"] = {}
defs["ImGui_ImplGlfw_CursorEnterCallback"][1]["funcname"] = "ImGui_ImplGlfw_CursorEnterCallback"
defs["ImGui_ImplGlfw_CursorEnterCallback"][1]["location"] = "imgui_impl_glfw:50"
defs["ImGui_ImplGlfw_CursorEnterCallback"][1]["location"] = "imgui_impl_glfw:52"
defs["ImGui_ImplGlfw_CursorEnterCallback"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_CursorEnterCallback"
defs["ImGui_ImplGlfw_CursorEnterCallback"][1]["ret"] = "void"
defs["ImGui_ImplGlfw_CursorEnterCallback"][1]["signature"] = "(GLFWwindow*,int)"
@@ -59,7 +59,7 @@ defs["ImGui_ImplGlfw_CursorPosCallback"][1]["call_args"] = "(window,x,y)"
defs["ImGui_ImplGlfw_CursorPosCallback"][1]["cimguiname"] = "ImGui_ImplGlfw_CursorPosCallback"
defs["ImGui_ImplGlfw_CursorPosCallback"][1]["defaults"] = {}
defs["ImGui_ImplGlfw_CursorPosCallback"][1]["funcname"] = "ImGui_ImplGlfw_CursorPosCallback"
defs["ImGui_ImplGlfw_CursorPosCallback"][1]["location"] = "imgui_impl_glfw:51"
defs["ImGui_ImplGlfw_CursorPosCallback"][1]["location"] = "imgui_impl_glfw:53"
defs["ImGui_ImplGlfw_CursorPosCallback"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_CursorPosCallback"
defs["ImGui_ImplGlfw_CursorPosCallback"][1]["ret"] = "void"
defs["ImGui_ImplGlfw_CursorPosCallback"][1]["signature"] = "(GLFWwindow*,double,double)"
@@ -80,7 +80,7 @@ defs["ImGui_ImplGlfw_InitForOpenGL"][1]["call_args"] = "(window,install_callback
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["cimguiname"] = "ImGui_ImplGlfw_InitForOpenGL"
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["defaults"] = {}
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["funcname"] = "ImGui_ImplGlfw_InitForOpenGL"
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["location"] = "imgui_impl_glfw:27"
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["location"] = "imgui_impl_glfw:28"
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_InitForOpenGL"
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["ret"] = "bool"
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["signature"] = "(GLFWwindow*,bool)"
@@ -101,7 +101,7 @@ defs["ImGui_ImplGlfw_InitForOther"][1]["call_args"] = "(window,install_callbacks
defs["ImGui_ImplGlfw_InitForOther"][1]["cimguiname"] = "ImGui_ImplGlfw_InitForOther"
defs["ImGui_ImplGlfw_InitForOther"][1]["defaults"] = {}
defs["ImGui_ImplGlfw_InitForOther"][1]["funcname"] = "ImGui_ImplGlfw_InitForOther"
defs["ImGui_ImplGlfw_InitForOther"][1]["location"] = "imgui_impl_glfw:29"
defs["ImGui_ImplGlfw_InitForOther"][1]["location"] = "imgui_impl_glfw:30"
defs["ImGui_ImplGlfw_InitForOther"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_InitForOther"
defs["ImGui_ImplGlfw_InitForOther"][1]["ret"] = "bool"
defs["ImGui_ImplGlfw_InitForOther"][1]["signature"] = "(GLFWwindow*,bool)"
@@ -122,7 +122,7 @@ defs["ImGui_ImplGlfw_InitForVulkan"][1]["call_args"] = "(window,install_callback
defs["ImGui_ImplGlfw_InitForVulkan"][1]["cimguiname"] = "ImGui_ImplGlfw_InitForVulkan"
defs["ImGui_ImplGlfw_InitForVulkan"][1]["defaults"] = {}
defs["ImGui_ImplGlfw_InitForVulkan"][1]["funcname"] = "ImGui_ImplGlfw_InitForVulkan"
defs["ImGui_ImplGlfw_InitForVulkan"][1]["location"] = "imgui_impl_glfw:28"
defs["ImGui_ImplGlfw_InitForVulkan"][1]["location"] = "imgui_impl_glfw:29"
defs["ImGui_ImplGlfw_InitForVulkan"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_InitForVulkan"
defs["ImGui_ImplGlfw_InitForVulkan"][1]["ret"] = "bool"
defs["ImGui_ImplGlfw_InitForVulkan"][1]["signature"] = "(GLFWwindow*,bool)"
@@ -140,7 +140,7 @@ defs["ImGui_ImplGlfw_InstallCallbacks"][1]["call_args"] = "(window)"
defs["ImGui_ImplGlfw_InstallCallbacks"][1]["cimguiname"] = "ImGui_ImplGlfw_InstallCallbacks"
defs["ImGui_ImplGlfw_InstallCallbacks"][1]["defaults"] = {}
defs["ImGui_ImplGlfw_InstallCallbacks"][1]["funcname"] = "ImGui_ImplGlfw_InstallCallbacks"
defs["ImGui_ImplGlfw_InstallCallbacks"][1]["location"] = "imgui_impl_glfw:41"
defs["ImGui_ImplGlfw_InstallCallbacks"][1]["location"] = "imgui_impl_glfw:43"
defs["ImGui_ImplGlfw_InstallCallbacks"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_InstallCallbacks"
defs["ImGui_ImplGlfw_InstallCallbacks"][1]["ret"] = "void"
defs["ImGui_ImplGlfw_InstallCallbacks"][1]["signature"] = "(GLFWwindow*)"
@@ -170,7 +170,7 @@ defs["ImGui_ImplGlfw_KeyCallback"][1]["call_args"] = "(window,key,scancode,actio
defs["ImGui_ImplGlfw_KeyCallback"][1]["cimguiname"] = "ImGui_ImplGlfw_KeyCallback"
defs["ImGui_ImplGlfw_KeyCallback"][1]["defaults"] = {}
defs["ImGui_ImplGlfw_KeyCallback"][1]["funcname"] = "ImGui_ImplGlfw_KeyCallback"
defs["ImGui_ImplGlfw_KeyCallback"][1]["location"] = "imgui_impl_glfw:54"
defs["ImGui_ImplGlfw_KeyCallback"][1]["location"] = "imgui_impl_glfw:56"
defs["ImGui_ImplGlfw_KeyCallback"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_KeyCallback"
defs["ImGui_ImplGlfw_KeyCallback"][1]["ret"] = "void"
defs["ImGui_ImplGlfw_KeyCallback"][1]["signature"] = "(GLFWwindow*,int,int,int,int)"
@@ -191,7 +191,7 @@ defs["ImGui_ImplGlfw_MonitorCallback"][1]["call_args"] = "(monitor,event)"
defs["ImGui_ImplGlfw_MonitorCallback"][1]["cimguiname"] = "ImGui_ImplGlfw_MonitorCallback"
defs["ImGui_ImplGlfw_MonitorCallback"][1]["defaults"] = {}
defs["ImGui_ImplGlfw_MonitorCallback"][1]["funcname"] = "ImGui_ImplGlfw_MonitorCallback"
defs["ImGui_ImplGlfw_MonitorCallback"][1]["location"] = "imgui_impl_glfw:56"
defs["ImGui_ImplGlfw_MonitorCallback"][1]["location"] = "imgui_impl_glfw:58"
defs["ImGui_ImplGlfw_MonitorCallback"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_MonitorCallback"
defs["ImGui_ImplGlfw_MonitorCallback"][1]["ret"] = "void"
defs["ImGui_ImplGlfw_MonitorCallback"][1]["signature"] = "(GLFWmonitor*,int)"
@@ -218,7 +218,7 @@ defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["call_args"] = "(window,button,act
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["cimguiname"] = "ImGui_ImplGlfw_MouseButtonCallback"
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["defaults"] = {}
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["funcname"] = "ImGui_ImplGlfw_MouseButtonCallback"
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["location"] = "imgui_impl_glfw:52"
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["location"] = "imgui_impl_glfw:54"
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_MouseButtonCallback"
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["ret"] = "void"
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["signature"] = "(GLFWwindow*,int,int,int)"
@@ -233,7 +233,7 @@ defs["ImGui_ImplGlfw_NewFrame"][1]["call_args"] = "()"
defs["ImGui_ImplGlfw_NewFrame"][1]["cimguiname"] = "ImGui_ImplGlfw_NewFrame"
defs["ImGui_ImplGlfw_NewFrame"][1]["defaults"] = {}
defs["ImGui_ImplGlfw_NewFrame"][1]["funcname"] = "ImGui_ImplGlfw_NewFrame"
defs["ImGui_ImplGlfw_NewFrame"][1]["location"] = "imgui_impl_glfw:31"
defs["ImGui_ImplGlfw_NewFrame"][1]["location"] = "imgui_impl_glfw:32"
defs["ImGui_ImplGlfw_NewFrame"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_NewFrame"
defs["ImGui_ImplGlfw_NewFrame"][1]["ret"] = "void"
defs["ImGui_ImplGlfw_NewFrame"][1]["signature"] = "()"
@@ -251,7 +251,7 @@ defs["ImGui_ImplGlfw_RestoreCallbacks"][1]["call_args"] = "(window)"
defs["ImGui_ImplGlfw_RestoreCallbacks"][1]["cimguiname"] = "ImGui_ImplGlfw_RestoreCallbacks"
defs["ImGui_ImplGlfw_RestoreCallbacks"][1]["defaults"] = {}
defs["ImGui_ImplGlfw_RestoreCallbacks"][1]["funcname"] = "ImGui_ImplGlfw_RestoreCallbacks"
defs["ImGui_ImplGlfw_RestoreCallbacks"][1]["location"] = "imgui_impl_glfw:42"
defs["ImGui_ImplGlfw_RestoreCallbacks"][1]["location"] = "imgui_impl_glfw:44"
defs["ImGui_ImplGlfw_RestoreCallbacks"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_RestoreCallbacks"
defs["ImGui_ImplGlfw_RestoreCallbacks"][1]["ret"] = "void"
defs["ImGui_ImplGlfw_RestoreCallbacks"][1]["signature"] = "(GLFWwindow*)"
@@ -275,7 +275,7 @@ defs["ImGui_ImplGlfw_ScrollCallback"][1]["call_args"] = "(window,xoffset,yoffset
defs["ImGui_ImplGlfw_ScrollCallback"][1]["cimguiname"] = "ImGui_ImplGlfw_ScrollCallback"
defs["ImGui_ImplGlfw_ScrollCallback"][1]["defaults"] = {}
defs["ImGui_ImplGlfw_ScrollCallback"][1]["funcname"] = "ImGui_ImplGlfw_ScrollCallback"
defs["ImGui_ImplGlfw_ScrollCallback"][1]["location"] = "imgui_impl_glfw:53"
defs["ImGui_ImplGlfw_ScrollCallback"][1]["location"] = "imgui_impl_glfw:55"
defs["ImGui_ImplGlfw_ScrollCallback"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_ScrollCallback"
defs["ImGui_ImplGlfw_ScrollCallback"][1]["ret"] = "void"
defs["ImGui_ImplGlfw_ScrollCallback"][1]["signature"] = "(GLFWwindow*,double,double)"
@@ -293,7 +293,7 @@ defs["ImGui_ImplGlfw_SetCallbacksChainForAllWindows"][1]["call_args"] = "(chain_
defs["ImGui_ImplGlfw_SetCallbacksChainForAllWindows"][1]["cimguiname"] = "ImGui_ImplGlfw_SetCallbacksChainForAllWindows"
defs["ImGui_ImplGlfw_SetCallbacksChainForAllWindows"][1]["defaults"] = {}
defs["ImGui_ImplGlfw_SetCallbacksChainForAllWindows"][1]["funcname"] = "ImGui_ImplGlfw_SetCallbacksChainForAllWindows"
defs["ImGui_ImplGlfw_SetCallbacksChainForAllWindows"][1]["location"] = "imgui_impl_glfw:46"
defs["ImGui_ImplGlfw_SetCallbacksChainForAllWindows"][1]["location"] = "imgui_impl_glfw:48"
defs["ImGui_ImplGlfw_SetCallbacksChainForAllWindows"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_SetCallbacksChainForAllWindows"
defs["ImGui_ImplGlfw_SetCallbacksChainForAllWindows"][1]["ret"] = "void"
defs["ImGui_ImplGlfw_SetCallbacksChainForAllWindows"][1]["signature"] = "(bool)"
@@ -308,12 +308,30 @@ defs["ImGui_ImplGlfw_Shutdown"][1]["call_args"] = "()"
defs["ImGui_ImplGlfw_Shutdown"][1]["cimguiname"] = "ImGui_ImplGlfw_Shutdown"
defs["ImGui_ImplGlfw_Shutdown"][1]["defaults"] = {}
defs["ImGui_ImplGlfw_Shutdown"][1]["funcname"] = "ImGui_ImplGlfw_Shutdown"
defs["ImGui_ImplGlfw_Shutdown"][1]["location"] = "imgui_impl_glfw:30"
defs["ImGui_ImplGlfw_Shutdown"][1]["location"] = "imgui_impl_glfw:31"
defs["ImGui_ImplGlfw_Shutdown"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_Shutdown"
defs["ImGui_ImplGlfw_Shutdown"][1]["ret"] = "void"
defs["ImGui_ImplGlfw_Shutdown"][1]["signature"] = "()"
defs["ImGui_ImplGlfw_Shutdown"][1]["stname"] = ""
defs["ImGui_ImplGlfw_Shutdown"]["()"] = defs["ImGui_ImplGlfw_Shutdown"][1]
defs["ImGui_ImplGlfw_Sleep"] = {}
defs["ImGui_ImplGlfw_Sleep"][1] = {}
defs["ImGui_ImplGlfw_Sleep"][1]["args"] = "(int milliseconds)"
defs["ImGui_ImplGlfw_Sleep"][1]["argsT"] = {}
defs["ImGui_ImplGlfw_Sleep"][1]["argsT"][1] = {}
defs["ImGui_ImplGlfw_Sleep"][1]["argsT"][1]["name"] = "milliseconds"
defs["ImGui_ImplGlfw_Sleep"][1]["argsT"][1]["type"] = "int"
defs["ImGui_ImplGlfw_Sleep"][1]["argsoriginal"] = "(int milliseconds)"
defs["ImGui_ImplGlfw_Sleep"][1]["call_args"] = "(milliseconds)"
defs["ImGui_ImplGlfw_Sleep"][1]["cimguiname"] = "ImGui_ImplGlfw_Sleep"
defs["ImGui_ImplGlfw_Sleep"][1]["defaults"] = {}
defs["ImGui_ImplGlfw_Sleep"][1]["funcname"] = "ImGui_ImplGlfw_Sleep"
defs["ImGui_ImplGlfw_Sleep"][1]["location"] = "imgui_impl_glfw:61"
defs["ImGui_ImplGlfw_Sleep"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_Sleep"
defs["ImGui_ImplGlfw_Sleep"][1]["ret"] = "void"
defs["ImGui_ImplGlfw_Sleep"][1]["signature"] = "(int)"
defs["ImGui_ImplGlfw_Sleep"][1]["stname"] = ""
defs["ImGui_ImplGlfw_Sleep"]["(int)"] = defs["ImGui_ImplGlfw_Sleep"][1]
defs["ImGui_ImplGlfw_WindowFocusCallback"] = {}
defs["ImGui_ImplGlfw_WindowFocusCallback"][1] = {}
defs["ImGui_ImplGlfw_WindowFocusCallback"][1]["args"] = "(GLFWwindow* window,int focused)"
@@ -329,7 +347,7 @@ defs["ImGui_ImplGlfw_WindowFocusCallback"][1]["call_args"] = "(window,focused)"
defs["ImGui_ImplGlfw_WindowFocusCallback"][1]["cimguiname"] = "ImGui_ImplGlfw_WindowFocusCallback"
defs["ImGui_ImplGlfw_WindowFocusCallback"][1]["defaults"] = {}
defs["ImGui_ImplGlfw_WindowFocusCallback"][1]["funcname"] = "ImGui_ImplGlfw_WindowFocusCallback"
defs["ImGui_ImplGlfw_WindowFocusCallback"][1]["location"] = "imgui_impl_glfw:49"
defs["ImGui_ImplGlfw_WindowFocusCallback"][1]["location"] = "imgui_impl_glfw:51"
defs["ImGui_ImplGlfw_WindowFocusCallback"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_WindowFocusCallback"
defs["ImGui_ImplGlfw_WindowFocusCallback"][1]["ret"] = "void"
defs["ImGui_ImplGlfw_WindowFocusCallback"][1]["signature"] = "(GLFWwindow*,int)"
@@ -344,7 +362,7 @@ defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]["call_args"] = "()"
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]["cimguiname"] = "ImGui_ImplOpenGL2_CreateDeviceObjects"
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]["defaults"] = {}
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]["funcname"] = "ImGui_ImplOpenGL2_CreateDeviceObjects"
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]["location"] = "imgui_impl_opengl2:35"
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]["location"] = "imgui_impl_opengl2:38"
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL2_CreateDeviceObjects"
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]["ret"] = "bool"
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]["signature"] = "()"
@@ -359,7 +377,7 @@ defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]["call_args"] = "()"
defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]["cimguiname"] = "ImGui_ImplOpenGL2_CreateFontsTexture"
defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]["defaults"] = {}
defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]["funcname"] = "ImGui_ImplOpenGL2_CreateFontsTexture"
defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]["location"] = "imgui_impl_opengl2:33"
defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]["location"] = "imgui_impl_opengl2:36"
defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL2_CreateFontsTexture"
defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]["ret"] = "bool"
defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]["signature"] = "()"
@@ -374,7 +392,7 @@ defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]["call_args"] = "()"
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]["cimguiname"] = "ImGui_ImplOpenGL2_DestroyDeviceObjects"
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]["defaults"] = {}
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]["funcname"] = "ImGui_ImplOpenGL2_DestroyDeviceObjects"
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]["location"] = "imgui_impl_opengl2:36"
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]["location"] = "imgui_impl_opengl2:39"
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL2_DestroyDeviceObjects"
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]["ret"] = "void"
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]["signature"] = "()"
@@ -389,7 +407,7 @@ defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]["call_args"] = "()"
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]["cimguiname"] = "ImGui_ImplOpenGL2_DestroyFontsTexture"
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]["defaults"] = {}
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]["funcname"] = "ImGui_ImplOpenGL2_DestroyFontsTexture"
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]["location"] = "imgui_impl_opengl2:34"
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]["location"] = "imgui_impl_opengl2:37"
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL2_DestroyFontsTexture"
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]["ret"] = "void"
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]["signature"] = "()"
@@ -404,7 +422,7 @@ defs["ImGui_ImplOpenGL2_Init"][1]["call_args"] = "()"
defs["ImGui_ImplOpenGL2_Init"][1]["cimguiname"] = "ImGui_ImplOpenGL2_Init"
defs["ImGui_ImplOpenGL2_Init"][1]["defaults"] = {}
defs["ImGui_ImplOpenGL2_Init"][1]["funcname"] = "ImGui_ImplOpenGL2_Init"
defs["ImGui_ImplOpenGL2_Init"][1]["location"] = "imgui_impl_opengl2:27"
defs["ImGui_ImplOpenGL2_Init"][1]["location"] = "imgui_impl_opengl2:30"
defs["ImGui_ImplOpenGL2_Init"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL2_Init"
defs["ImGui_ImplOpenGL2_Init"][1]["ret"] = "bool"
defs["ImGui_ImplOpenGL2_Init"][1]["signature"] = "()"
@@ -419,7 +437,7 @@ defs["ImGui_ImplOpenGL2_NewFrame"][1]["call_args"] = "()"
defs["ImGui_ImplOpenGL2_NewFrame"][1]["cimguiname"] = "ImGui_ImplOpenGL2_NewFrame"
defs["ImGui_ImplOpenGL2_NewFrame"][1]["defaults"] = {}
defs["ImGui_ImplOpenGL2_NewFrame"][1]["funcname"] = "ImGui_ImplOpenGL2_NewFrame"
defs["ImGui_ImplOpenGL2_NewFrame"][1]["location"] = "imgui_impl_opengl2:29"
defs["ImGui_ImplOpenGL2_NewFrame"][1]["location"] = "imgui_impl_opengl2:32"
defs["ImGui_ImplOpenGL2_NewFrame"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL2_NewFrame"
defs["ImGui_ImplOpenGL2_NewFrame"][1]["ret"] = "void"
defs["ImGui_ImplOpenGL2_NewFrame"][1]["signature"] = "()"
@@ -437,7 +455,7 @@ defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["call_args"] = "(draw_data)"
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["cimguiname"] = "ImGui_ImplOpenGL2_RenderDrawData"
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["defaults"] = {}
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["funcname"] = "ImGui_ImplOpenGL2_RenderDrawData"
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["location"] = "imgui_impl_opengl2:30"
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["location"] = "imgui_impl_opengl2:33"
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL2_RenderDrawData"
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["ret"] = "void"
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["signature"] = "(ImDrawData*)"
@@ -452,7 +470,7 @@ defs["ImGui_ImplOpenGL2_Shutdown"][1]["call_args"] = "()"
defs["ImGui_ImplOpenGL2_Shutdown"][1]["cimguiname"] = "ImGui_ImplOpenGL2_Shutdown"
defs["ImGui_ImplOpenGL2_Shutdown"][1]["defaults"] = {}
defs["ImGui_ImplOpenGL2_Shutdown"][1]["funcname"] = "ImGui_ImplOpenGL2_Shutdown"
defs["ImGui_ImplOpenGL2_Shutdown"][1]["location"] = "imgui_impl_opengl2:28"
defs["ImGui_ImplOpenGL2_Shutdown"][1]["location"] = "imgui_impl_opengl2:31"
defs["ImGui_ImplOpenGL2_Shutdown"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL2_Shutdown"
defs["ImGui_ImplOpenGL2_Shutdown"][1]["ret"] = "void"
defs["ImGui_ImplOpenGL2_Shutdown"][1]["signature"] = "()"
@@ -597,7 +615,7 @@ defs["ImGui_ImplSDL2_InitForD3D"][1]["call_args"] = "(window)"
defs["ImGui_ImplSDL2_InitForD3D"][1]["cimguiname"] = "ImGui_ImplSDL2_InitForD3D"
defs["ImGui_ImplSDL2_InitForD3D"][1]["defaults"] = {}
defs["ImGui_ImplSDL2_InitForD3D"][1]["funcname"] = "ImGui_ImplSDL2_InitForD3D"
defs["ImGui_ImplSDL2_InitForD3D"][1]["location"] = "imgui_impl_sdl2:32"
defs["ImGui_ImplSDL2_InitForD3D"][1]["location"] = "imgui_impl_sdl2:33"
defs["ImGui_ImplSDL2_InitForD3D"][1]["ov_cimguiname"] = "ImGui_ImplSDL2_InitForD3D"
defs["ImGui_ImplSDL2_InitForD3D"][1]["ret"] = "bool"
defs["ImGui_ImplSDL2_InitForD3D"][1]["signature"] = "(SDL_Window*)"
@@ -615,7 +633,7 @@ defs["ImGui_ImplSDL2_InitForMetal"][1]["call_args"] = "(window)"
defs["ImGui_ImplSDL2_InitForMetal"][1]["cimguiname"] = "ImGui_ImplSDL2_InitForMetal"
defs["ImGui_ImplSDL2_InitForMetal"][1]["defaults"] = {}
defs["ImGui_ImplSDL2_InitForMetal"][1]["funcname"] = "ImGui_ImplSDL2_InitForMetal"
defs["ImGui_ImplSDL2_InitForMetal"][1]["location"] = "imgui_impl_sdl2:33"
defs["ImGui_ImplSDL2_InitForMetal"][1]["location"] = "imgui_impl_sdl2:34"
defs["ImGui_ImplSDL2_InitForMetal"][1]["ov_cimguiname"] = "ImGui_ImplSDL2_InitForMetal"
defs["ImGui_ImplSDL2_InitForMetal"][1]["ret"] = "bool"
defs["ImGui_ImplSDL2_InitForMetal"][1]["signature"] = "(SDL_Window*)"
@@ -636,7 +654,7 @@ defs["ImGui_ImplSDL2_InitForOpenGL"][1]["call_args"] = "(window,sdl_gl_context)"
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["cimguiname"] = "ImGui_ImplSDL2_InitForOpenGL"
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["defaults"] = {}
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["funcname"] = "ImGui_ImplSDL2_InitForOpenGL"
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["location"] = "imgui_impl_sdl2:30"
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["location"] = "imgui_impl_sdl2:31"
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["ov_cimguiname"] = "ImGui_ImplSDL2_InitForOpenGL"
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["ret"] = "bool"
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["signature"] = "(SDL_Window*,void*)"
@@ -654,7 +672,7 @@ defs["ImGui_ImplSDL2_InitForOther"][1]["call_args"] = "(window)"
defs["ImGui_ImplSDL2_InitForOther"][1]["cimguiname"] = "ImGui_ImplSDL2_InitForOther"
defs["ImGui_ImplSDL2_InitForOther"][1]["defaults"] = {}
defs["ImGui_ImplSDL2_InitForOther"][1]["funcname"] = "ImGui_ImplSDL2_InitForOther"
defs["ImGui_ImplSDL2_InitForOther"][1]["location"] = "imgui_impl_sdl2:35"
defs["ImGui_ImplSDL2_InitForOther"][1]["location"] = "imgui_impl_sdl2:36"
defs["ImGui_ImplSDL2_InitForOther"][1]["ov_cimguiname"] = "ImGui_ImplSDL2_InitForOther"
defs["ImGui_ImplSDL2_InitForOther"][1]["ret"] = "bool"
defs["ImGui_ImplSDL2_InitForOther"][1]["signature"] = "(SDL_Window*)"
@@ -675,7 +693,7 @@ defs["ImGui_ImplSDL2_InitForSDLRenderer"][1]["call_args"] = "(window,renderer)"
defs["ImGui_ImplSDL2_InitForSDLRenderer"][1]["cimguiname"] = "ImGui_ImplSDL2_InitForSDLRenderer"
defs["ImGui_ImplSDL2_InitForSDLRenderer"][1]["defaults"] = {}
defs["ImGui_ImplSDL2_InitForSDLRenderer"][1]["funcname"] = "ImGui_ImplSDL2_InitForSDLRenderer"
defs["ImGui_ImplSDL2_InitForSDLRenderer"][1]["location"] = "imgui_impl_sdl2:34"
defs["ImGui_ImplSDL2_InitForSDLRenderer"][1]["location"] = "imgui_impl_sdl2:35"
defs["ImGui_ImplSDL2_InitForSDLRenderer"][1]["ov_cimguiname"] = "ImGui_ImplSDL2_InitForSDLRenderer"
defs["ImGui_ImplSDL2_InitForSDLRenderer"][1]["ret"] = "bool"
defs["ImGui_ImplSDL2_InitForSDLRenderer"][1]["signature"] = "(SDL_Window*,SDL_Renderer*)"
@@ -693,7 +711,7 @@ defs["ImGui_ImplSDL2_InitForVulkan"][1]["call_args"] = "(window)"
defs["ImGui_ImplSDL2_InitForVulkan"][1]["cimguiname"] = "ImGui_ImplSDL2_InitForVulkan"
defs["ImGui_ImplSDL2_InitForVulkan"][1]["defaults"] = {}
defs["ImGui_ImplSDL2_InitForVulkan"][1]["funcname"] = "ImGui_ImplSDL2_InitForVulkan"
defs["ImGui_ImplSDL2_InitForVulkan"][1]["location"] = "imgui_impl_sdl2:31"
defs["ImGui_ImplSDL2_InitForVulkan"][1]["location"] = "imgui_impl_sdl2:32"
defs["ImGui_ImplSDL2_InitForVulkan"][1]["ov_cimguiname"] = "ImGui_ImplSDL2_InitForVulkan"
defs["ImGui_ImplSDL2_InitForVulkan"][1]["ret"] = "bool"
defs["ImGui_ImplSDL2_InitForVulkan"][1]["signature"] = "(SDL_Window*)"
@@ -708,7 +726,7 @@ defs["ImGui_ImplSDL2_NewFrame"][1]["call_args"] = "()"
defs["ImGui_ImplSDL2_NewFrame"][1]["cimguiname"] = "ImGui_ImplSDL2_NewFrame"
defs["ImGui_ImplSDL2_NewFrame"][1]["defaults"] = {}
defs["ImGui_ImplSDL2_NewFrame"][1]["funcname"] = "ImGui_ImplSDL2_NewFrame"
defs["ImGui_ImplSDL2_NewFrame"][1]["location"] = "imgui_impl_sdl2:37"
defs["ImGui_ImplSDL2_NewFrame"][1]["location"] = "imgui_impl_sdl2:38"
defs["ImGui_ImplSDL2_NewFrame"][1]["ov_cimguiname"] = "ImGui_ImplSDL2_NewFrame"
defs["ImGui_ImplSDL2_NewFrame"][1]["ret"] = "void"
defs["ImGui_ImplSDL2_NewFrame"][1]["signature"] = "()"
@@ -726,7 +744,7 @@ defs["ImGui_ImplSDL2_ProcessEvent"][1]["call_args"] = "(event)"
defs["ImGui_ImplSDL2_ProcessEvent"][1]["cimguiname"] = "ImGui_ImplSDL2_ProcessEvent"
defs["ImGui_ImplSDL2_ProcessEvent"][1]["defaults"] = {}
defs["ImGui_ImplSDL2_ProcessEvent"][1]["funcname"] = "ImGui_ImplSDL2_ProcessEvent"
defs["ImGui_ImplSDL2_ProcessEvent"][1]["location"] = "imgui_impl_sdl2:38"
defs["ImGui_ImplSDL2_ProcessEvent"][1]["location"] = "imgui_impl_sdl2:39"
defs["ImGui_ImplSDL2_ProcessEvent"][1]["ov_cimguiname"] = "ImGui_ImplSDL2_ProcessEvent"
defs["ImGui_ImplSDL2_ProcessEvent"][1]["ret"] = "bool"
defs["ImGui_ImplSDL2_ProcessEvent"][1]["signature"] = "(const SDL_Event*)"
@@ -745,14 +763,14 @@ defs["ImGui_ImplSDL2_SetGamepadMode"][1]["argsT"][2]["type"] = "struct _SDL_Game
defs["ImGui_ImplSDL2_SetGamepadMode"][1]["argsT"][3] = {}
defs["ImGui_ImplSDL2_SetGamepadMode"][1]["argsT"][3]["name"] = "manual_gamepads_count"
defs["ImGui_ImplSDL2_SetGamepadMode"][1]["argsT"][3]["type"] = "int"
defs["ImGui_ImplSDL2_SetGamepadMode"][1]["argsoriginal"] = "(ImGui_ImplSDL2_GamepadMode mode,struct _SDL_GameController** manual_gamepads_array=((void*)0),int manual_gamepads_count=-1)"
defs["ImGui_ImplSDL2_SetGamepadMode"][1]["argsoriginal"] = "(ImGui_ImplSDL2_GamepadMode mode,struct _SDL_GameController** manual_gamepads_array=nullptr,int manual_gamepads_count=-1)"
defs["ImGui_ImplSDL2_SetGamepadMode"][1]["call_args"] = "(mode,manual_gamepads_array,manual_gamepads_count)"
defs["ImGui_ImplSDL2_SetGamepadMode"][1]["cimguiname"] = "ImGui_ImplSDL2_SetGamepadMode"
defs["ImGui_ImplSDL2_SetGamepadMode"][1]["defaults"] = {}
defs["ImGui_ImplSDL2_SetGamepadMode"][1]["defaults"]["manual_gamepads_array"] = "NULL"
defs["ImGui_ImplSDL2_SetGamepadMode"][1]["defaults"]["manual_gamepads_array"] = "nullptr"
defs["ImGui_ImplSDL2_SetGamepadMode"][1]["defaults"]["manual_gamepads_count"] = "-1"
defs["ImGui_ImplSDL2_SetGamepadMode"][1]["funcname"] = "ImGui_ImplSDL2_SetGamepadMode"
defs["ImGui_ImplSDL2_SetGamepadMode"][1]["location"] = "imgui_impl_sdl2:43"
defs["ImGui_ImplSDL2_SetGamepadMode"][1]["location"] = "imgui_impl_sdl2:44"
defs["ImGui_ImplSDL2_SetGamepadMode"][1]["ov_cimguiname"] = "ImGui_ImplSDL2_SetGamepadMode"
defs["ImGui_ImplSDL2_SetGamepadMode"][1]["ret"] = "void"
defs["ImGui_ImplSDL2_SetGamepadMode"][1]["signature"] = "(ImGui_ImplSDL2_GamepadMode,struct _SDL_GameController**,int)"
@@ -767,11 +785,199 @@ defs["ImGui_ImplSDL2_Shutdown"][1]["call_args"] = "()"
defs["ImGui_ImplSDL2_Shutdown"][1]["cimguiname"] = "ImGui_ImplSDL2_Shutdown"
defs["ImGui_ImplSDL2_Shutdown"][1]["defaults"] = {}
defs["ImGui_ImplSDL2_Shutdown"][1]["funcname"] = "ImGui_ImplSDL2_Shutdown"
defs["ImGui_ImplSDL2_Shutdown"][1]["location"] = "imgui_impl_sdl2:36"
defs["ImGui_ImplSDL2_Shutdown"][1]["location"] = "imgui_impl_sdl2:37"
defs["ImGui_ImplSDL2_Shutdown"][1]["ov_cimguiname"] = "ImGui_ImplSDL2_Shutdown"
defs["ImGui_ImplSDL2_Shutdown"][1]["ret"] = "void"
defs["ImGui_ImplSDL2_Shutdown"][1]["signature"] = "()"
defs["ImGui_ImplSDL2_Shutdown"][1]["stname"] = ""
defs["ImGui_ImplSDL2_Shutdown"]["()"] = defs["ImGui_ImplSDL2_Shutdown"][1]
defs["ImGui_ImplSDL3_InitForD3D"] = {}
defs["ImGui_ImplSDL3_InitForD3D"][1] = {}
defs["ImGui_ImplSDL3_InitForD3D"][1]["args"] = "(SDL_Window* window)"
defs["ImGui_ImplSDL3_InitForD3D"][1]["argsT"] = {}
defs["ImGui_ImplSDL3_InitForD3D"][1]["argsT"][1] = {}
defs["ImGui_ImplSDL3_InitForD3D"][1]["argsT"][1]["name"] = "window"
defs["ImGui_ImplSDL3_InitForD3D"][1]["argsT"][1]["type"] = "SDL_Window*"
defs["ImGui_ImplSDL3_InitForD3D"][1]["argsoriginal"] = "(SDL_Window* window)"
defs["ImGui_ImplSDL3_InitForD3D"][1]["call_args"] = "(window)"
defs["ImGui_ImplSDL3_InitForD3D"][1]["cimguiname"] = "ImGui_ImplSDL3_InitForD3D"
defs["ImGui_ImplSDL3_InitForD3D"][1]["defaults"] = {}
defs["ImGui_ImplSDL3_InitForD3D"][1]["funcname"] = "ImGui_ImplSDL3_InitForD3D"
defs["ImGui_ImplSDL3_InitForD3D"][1]["location"] = "imgui_impl_sdl3:35"
defs["ImGui_ImplSDL3_InitForD3D"][1]["ov_cimguiname"] = "ImGui_ImplSDL3_InitForD3D"
defs["ImGui_ImplSDL3_InitForD3D"][1]["ret"] = "bool"
defs["ImGui_ImplSDL3_InitForD3D"][1]["signature"] = "(SDL_Window*)"
defs["ImGui_ImplSDL3_InitForD3D"][1]["stname"] = ""
defs["ImGui_ImplSDL3_InitForD3D"]["(SDL_Window*)"] = defs["ImGui_ImplSDL3_InitForD3D"][1]
defs["ImGui_ImplSDL3_InitForMetal"] = {}
defs["ImGui_ImplSDL3_InitForMetal"][1] = {}
defs["ImGui_ImplSDL3_InitForMetal"][1]["args"] = "(SDL_Window* window)"
defs["ImGui_ImplSDL3_InitForMetal"][1]["argsT"] = {}
defs["ImGui_ImplSDL3_InitForMetal"][1]["argsT"][1] = {}
defs["ImGui_ImplSDL3_InitForMetal"][1]["argsT"][1]["name"] = "window"
defs["ImGui_ImplSDL3_InitForMetal"][1]["argsT"][1]["type"] = "SDL_Window*"
defs["ImGui_ImplSDL3_InitForMetal"][1]["argsoriginal"] = "(SDL_Window* window)"
defs["ImGui_ImplSDL3_InitForMetal"][1]["call_args"] = "(window)"
defs["ImGui_ImplSDL3_InitForMetal"][1]["cimguiname"] = "ImGui_ImplSDL3_InitForMetal"
defs["ImGui_ImplSDL3_InitForMetal"][1]["defaults"] = {}
defs["ImGui_ImplSDL3_InitForMetal"][1]["funcname"] = "ImGui_ImplSDL3_InitForMetal"
defs["ImGui_ImplSDL3_InitForMetal"][1]["location"] = "imgui_impl_sdl3:36"
defs["ImGui_ImplSDL3_InitForMetal"][1]["ov_cimguiname"] = "ImGui_ImplSDL3_InitForMetal"
defs["ImGui_ImplSDL3_InitForMetal"][1]["ret"] = "bool"
defs["ImGui_ImplSDL3_InitForMetal"][1]["signature"] = "(SDL_Window*)"
defs["ImGui_ImplSDL3_InitForMetal"][1]["stname"] = ""
defs["ImGui_ImplSDL3_InitForMetal"]["(SDL_Window*)"] = defs["ImGui_ImplSDL3_InitForMetal"][1]
defs["ImGui_ImplSDL3_InitForOpenGL"] = {}
defs["ImGui_ImplSDL3_InitForOpenGL"][1] = {}
defs["ImGui_ImplSDL3_InitForOpenGL"][1]["args"] = "(SDL_Window* window,void* sdl_gl_context)"
defs["ImGui_ImplSDL3_InitForOpenGL"][1]["argsT"] = {}
defs["ImGui_ImplSDL3_InitForOpenGL"][1]["argsT"][1] = {}
defs["ImGui_ImplSDL3_InitForOpenGL"][1]["argsT"][1]["name"] = "window"
defs["ImGui_ImplSDL3_InitForOpenGL"][1]["argsT"][1]["type"] = "SDL_Window*"
defs["ImGui_ImplSDL3_InitForOpenGL"][1]["argsT"][2] = {}
defs["ImGui_ImplSDL3_InitForOpenGL"][1]["argsT"][2]["name"] = "sdl_gl_context"
defs["ImGui_ImplSDL3_InitForOpenGL"][1]["argsT"][2]["type"] = "void*"
defs["ImGui_ImplSDL3_InitForOpenGL"][1]["argsoriginal"] = "(SDL_Window* window,void* sdl_gl_context)"
defs["ImGui_ImplSDL3_InitForOpenGL"][1]["call_args"] = "(window,sdl_gl_context)"
defs["ImGui_ImplSDL3_InitForOpenGL"][1]["cimguiname"] = "ImGui_ImplSDL3_InitForOpenGL"
defs["ImGui_ImplSDL3_InitForOpenGL"][1]["defaults"] = {}
defs["ImGui_ImplSDL3_InitForOpenGL"][1]["funcname"] = "ImGui_ImplSDL3_InitForOpenGL"
defs["ImGui_ImplSDL3_InitForOpenGL"][1]["location"] = "imgui_impl_sdl3:33"
defs["ImGui_ImplSDL3_InitForOpenGL"][1]["ov_cimguiname"] = "ImGui_ImplSDL3_InitForOpenGL"
defs["ImGui_ImplSDL3_InitForOpenGL"][1]["ret"] = "bool"
defs["ImGui_ImplSDL3_InitForOpenGL"][1]["signature"] = "(SDL_Window*,void*)"
defs["ImGui_ImplSDL3_InitForOpenGL"][1]["stname"] = ""
defs["ImGui_ImplSDL3_InitForOpenGL"]["(SDL_Window*,void*)"] = defs["ImGui_ImplSDL3_InitForOpenGL"][1]
defs["ImGui_ImplSDL3_InitForOther"] = {}
defs["ImGui_ImplSDL3_InitForOther"][1] = {}
defs["ImGui_ImplSDL3_InitForOther"][1]["args"] = "(SDL_Window* window)"
defs["ImGui_ImplSDL3_InitForOther"][1]["argsT"] = {}
defs["ImGui_ImplSDL3_InitForOther"][1]["argsT"][1] = {}
defs["ImGui_ImplSDL3_InitForOther"][1]["argsT"][1]["name"] = "window"
defs["ImGui_ImplSDL3_InitForOther"][1]["argsT"][1]["type"] = "SDL_Window*"
defs["ImGui_ImplSDL3_InitForOther"][1]["argsoriginal"] = "(SDL_Window* window)"
defs["ImGui_ImplSDL3_InitForOther"][1]["call_args"] = "(window)"
defs["ImGui_ImplSDL3_InitForOther"][1]["cimguiname"] = "ImGui_ImplSDL3_InitForOther"
defs["ImGui_ImplSDL3_InitForOther"][1]["defaults"] = {}
defs["ImGui_ImplSDL3_InitForOther"][1]["funcname"] = "ImGui_ImplSDL3_InitForOther"
defs["ImGui_ImplSDL3_InitForOther"][1]["location"] = "imgui_impl_sdl3:38"
defs["ImGui_ImplSDL3_InitForOther"][1]["ov_cimguiname"] = "ImGui_ImplSDL3_InitForOther"
defs["ImGui_ImplSDL3_InitForOther"][1]["ret"] = "bool"
defs["ImGui_ImplSDL3_InitForOther"][1]["signature"] = "(SDL_Window*)"
defs["ImGui_ImplSDL3_InitForOther"][1]["stname"] = ""
defs["ImGui_ImplSDL3_InitForOther"]["(SDL_Window*)"] = defs["ImGui_ImplSDL3_InitForOther"][1]
defs["ImGui_ImplSDL3_InitForSDLRenderer"] = {}
defs["ImGui_ImplSDL3_InitForSDLRenderer"][1] = {}
defs["ImGui_ImplSDL3_InitForSDLRenderer"][1]["args"] = "(SDL_Window* window,SDL_Renderer* renderer)"
defs["ImGui_ImplSDL3_InitForSDLRenderer"][1]["argsT"] = {}
defs["ImGui_ImplSDL3_InitForSDLRenderer"][1]["argsT"][1] = {}
defs["ImGui_ImplSDL3_InitForSDLRenderer"][1]["argsT"][1]["name"] = "window"
defs["ImGui_ImplSDL3_InitForSDLRenderer"][1]["argsT"][1]["type"] = "SDL_Window*"
defs["ImGui_ImplSDL3_InitForSDLRenderer"][1]["argsT"][2] = {}
defs["ImGui_ImplSDL3_InitForSDLRenderer"][1]["argsT"][2]["name"] = "renderer"
defs["ImGui_ImplSDL3_InitForSDLRenderer"][1]["argsT"][2]["type"] = "SDL_Renderer*"
defs["ImGui_ImplSDL3_InitForSDLRenderer"][1]["argsoriginal"] = "(SDL_Window* window,SDL_Renderer* renderer)"
defs["ImGui_ImplSDL3_InitForSDLRenderer"][1]["call_args"] = "(window,renderer)"
defs["ImGui_ImplSDL3_InitForSDLRenderer"][1]["cimguiname"] = "ImGui_ImplSDL3_InitForSDLRenderer"
defs["ImGui_ImplSDL3_InitForSDLRenderer"][1]["defaults"] = {}
defs["ImGui_ImplSDL3_InitForSDLRenderer"][1]["funcname"] = "ImGui_ImplSDL3_InitForSDLRenderer"
defs["ImGui_ImplSDL3_InitForSDLRenderer"][1]["location"] = "imgui_impl_sdl3:37"
defs["ImGui_ImplSDL3_InitForSDLRenderer"][1]["ov_cimguiname"] = "ImGui_ImplSDL3_InitForSDLRenderer"
defs["ImGui_ImplSDL3_InitForSDLRenderer"][1]["ret"] = "bool"
defs["ImGui_ImplSDL3_InitForSDLRenderer"][1]["signature"] = "(SDL_Window*,SDL_Renderer*)"
defs["ImGui_ImplSDL3_InitForSDLRenderer"][1]["stname"] = ""
defs["ImGui_ImplSDL3_InitForSDLRenderer"]["(SDL_Window*,SDL_Renderer*)"] = defs["ImGui_ImplSDL3_InitForSDLRenderer"][1]
defs["ImGui_ImplSDL3_InitForVulkan"] = {}
defs["ImGui_ImplSDL3_InitForVulkan"][1] = {}
defs["ImGui_ImplSDL3_InitForVulkan"][1]["args"] = "(SDL_Window* window)"
defs["ImGui_ImplSDL3_InitForVulkan"][1]["argsT"] = {}
defs["ImGui_ImplSDL3_InitForVulkan"][1]["argsT"][1] = {}
defs["ImGui_ImplSDL3_InitForVulkan"][1]["argsT"][1]["name"] = "window"
defs["ImGui_ImplSDL3_InitForVulkan"][1]["argsT"][1]["type"] = "SDL_Window*"
defs["ImGui_ImplSDL3_InitForVulkan"][1]["argsoriginal"] = "(SDL_Window* window)"
defs["ImGui_ImplSDL3_InitForVulkan"][1]["call_args"] = "(window)"
defs["ImGui_ImplSDL3_InitForVulkan"][1]["cimguiname"] = "ImGui_ImplSDL3_InitForVulkan"
defs["ImGui_ImplSDL3_InitForVulkan"][1]["defaults"] = {}
defs["ImGui_ImplSDL3_InitForVulkan"][1]["funcname"] = "ImGui_ImplSDL3_InitForVulkan"
defs["ImGui_ImplSDL3_InitForVulkan"][1]["location"] = "imgui_impl_sdl3:34"
defs["ImGui_ImplSDL3_InitForVulkan"][1]["ov_cimguiname"] = "ImGui_ImplSDL3_InitForVulkan"
defs["ImGui_ImplSDL3_InitForVulkan"][1]["ret"] = "bool"
defs["ImGui_ImplSDL3_InitForVulkan"][1]["signature"] = "(SDL_Window*)"
defs["ImGui_ImplSDL3_InitForVulkan"][1]["stname"] = ""
defs["ImGui_ImplSDL3_InitForVulkan"]["(SDL_Window*)"] = defs["ImGui_ImplSDL3_InitForVulkan"][1]
defs["ImGui_ImplSDL3_NewFrame"] = {}
defs["ImGui_ImplSDL3_NewFrame"][1] = {}
defs["ImGui_ImplSDL3_NewFrame"][1]["args"] = "()"
defs["ImGui_ImplSDL3_NewFrame"][1]["argsT"] = {}
defs["ImGui_ImplSDL3_NewFrame"][1]["argsoriginal"] = "()"
defs["ImGui_ImplSDL3_NewFrame"][1]["call_args"] = "()"
defs["ImGui_ImplSDL3_NewFrame"][1]["cimguiname"] = "ImGui_ImplSDL3_NewFrame"
defs["ImGui_ImplSDL3_NewFrame"][1]["defaults"] = {}
defs["ImGui_ImplSDL3_NewFrame"][1]["funcname"] = "ImGui_ImplSDL3_NewFrame"
defs["ImGui_ImplSDL3_NewFrame"][1]["location"] = "imgui_impl_sdl3:40"
defs["ImGui_ImplSDL3_NewFrame"][1]["ov_cimguiname"] = "ImGui_ImplSDL3_NewFrame"
defs["ImGui_ImplSDL3_NewFrame"][1]["ret"] = "void"
defs["ImGui_ImplSDL3_NewFrame"][1]["signature"] = "()"
defs["ImGui_ImplSDL3_NewFrame"][1]["stname"] = ""
defs["ImGui_ImplSDL3_NewFrame"]["()"] = defs["ImGui_ImplSDL3_NewFrame"][1]
defs["ImGui_ImplSDL3_ProcessEvent"] = {}
defs["ImGui_ImplSDL3_ProcessEvent"][1] = {}
defs["ImGui_ImplSDL3_ProcessEvent"][1]["args"] = "(const SDL_Event* event)"
defs["ImGui_ImplSDL3_ProcessEvent"][1]["argsT"] = {}
defs["ImGui_ImplSDL3_ProcessEvent"][1]["argsT"][1] = {}
defs["ImGui_ImplSDL3_ProcessEvent"][1]["argsT"][1]["name"] = "event"
defs["ImGui_ImplSDL3_ProcessEvent"][1]["argsT"][1]["type"] = "const SDL_Event*"
defs["ImGui_ImplSDL3_ProcessEvent"][1]["argsoriginal"] = "(const SDL_Event* event)"
defs["ImGui_ImplSDL3_ProcessEvent"][1]["call_args"] = "(event)"
defs["ImGui_ImplSDL3_ProcessEvent"][1]["cimguiname"] = "ImGui_ImplSDL3_ProcessEvent"
defs["ImGui_ImplSDL3_ProcessEvent"][1]["defaults"] = {}
defs["ImGui_ImplSDL3_ProcessEvent"][1]["funcname"] = "ImGui_ImplSDL3_ProcessEvent"
defs["ImGui_ImplSDL3_ProcessEvent"][1]["location"] = "imgui_impl_sdl3:41"
defs["ImGui_ImplSDL3_ProcessEvent"][1]["ov_cimguiname"] = "ImGui_ImplSDL3_ProcessEvent"
defs["ImGui_ImplSDL3_ProcessEvent"][1]["ret"] = "bool"
defs["ImGui_ImplSDL3_ProcessEvent"][1]["signature"] = "(const SDL_Event*)"
defs["ImGui_ImplSDL3_ProcessEvent"][1]["stname"] = ""
defs["ImGui_ImplSDL3_ProcessEvent"]["(const SDL_Event*)"] = defs["ImGui_ImplSDL3_ProcessEvent"][1]
defs["ImGui_ImplSDL3_SetGamepadMode"] = {}
defs["ImGui_ImplSDL3_SetGamepadMode"][1] = {}
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["args"] = "(ImGui_ImplSDL3_GamepadMode mode,SDL_Gamepad** manual_gamepads_array,int manual_gamepads_count)"
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["argsT"] = {}
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["argsT"][1] = {}
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["argsT"][1]["name"] = "mode"
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["argsT"][1]["type"] = "ImGui_ImplSDL3_GamepadMode"
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["argsT"][2] = {}
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["argsT"][2]["name"] = "manual_gamepads_array"
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["argsT"][2]["type"] = "SDL_Gamepad**"
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["argsT"][3] = {}
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["argsT"][3]["name"] = "manual_gamepads_count"
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["argsT"][3]["type"] = "int"
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["argsoriginal"] = "(ImGui_ImplSDL3_GamepadMode mode,SDL_Gamepad** manual_gamepads_array=nullptr,int manual_gamepads_count=-1)"
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["call_args"] = "(mode,manual_gamepads_array,manual_gamepads_count)"
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["cimguiname"] = "ImGui_ImplSDL3_SetGamepadMode"
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["defaults"] = {}
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["defaults"]["manual_gamepads_array"] = "nullptr"
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["defaults"]["manual_gamepads_count"] = "-1"
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["funcname"] = "ImGui_ImplSDL3_SetGamepadMode"
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["location"] = "imgui_impl_sdl3:46"
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["ov_cimguiname"] = "ImGui_ImplSDL3_SetGamepadMode"
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["ret"] = "void"
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["signature"] = "(ImGui_ImplSDL3_GamepadMode,SDL_Gamepad**,int)"
defs["ImGui_ImplSDL3_SetGamepadMode"][1]["stname"] = ""
defs["ImGui_ImplSDL3_SetGamepadMode"]["(ImGui_ImplSDL3_GamepadMode,SDL_Gamepad**,int)"] = defs["ImGui_ImplSDL3_SetGamepadMode"][1]
defs["ImGui_ImplSDL3_Shutdown"] = {}
defs["ImGui_ImplSDL3_Shutdown"][1] = {}
defs["ImGui_ImplSDL3_Shutdown"][1]["args"] = "()"
defs["ImGui_ImplSDL3_Shutdown"][1]["argsT"] = {}
defs["ImGui_ImplSDL3_Shutdown"][1]["argsoriginal"] = "()"
defs["ImGui_ImplSDL3_Shutdown"][1]["call_args"] = "()"
defs["ImGui_ImplSDL3_Shutdown"][1]["cimguiname"] = "ImGui_ImplSDL3_Shutdown"
defs["ImGui_ImplSDL3_Shutdown"][1]["defaults"] = {}
defs["ImGui_ImplSDL3_Shutdown"][1]["funcname"] = "ImGui_ImplSDL3_Shutdown"
defs["ImGui_ImplSDL3_Shutdown"][1]["location"] = "imgui_impl_sdl3:39"
defs["ImGui_ImplSDL3_Shutdown"][1]["ov_cimguiname"] = "ImGui_ImplSDL3_Shutdown"
defs["ImGui_ImplSDL3_Shutdown"][1]["ret"] = "void"
defs["ImGui_ImplSDL3_Shutdown"][1]["signature"] = "()"
defs["ImGui_ImplSDL3_Shutdown"][1]["stname"] = ""
defs["ImGui_ImplSDL3_Shutdown"]["()"] = defs["ImGui_ImplSDL3_Shutdown"][1]
return defs

View File

@@ -7,7 +7,7 @@ ImColor_ImColor 5
5 nil ImColor_ImColor_U32 (ImU32)
ImDrawList_AddText 2
1 void ImDrawList_AddText_Vec2 (const ImVec2,ImU32,const char*,const char*)
2 void ImDrawList_AddText_FontPtr (const ImFont*,float,const ImVec2,ImU32,const char*,const char*,float,const ImVec4*)
2 void ImDrawList_AddText_FontPtr (ImFont*,float,const ImVec2,ImU32,const char*,const char*,float,const ImVec4*)
ImGuiPtrOrIndex_ImGuiPtrOrIndex 2
1 nil ImGuiPtrOrIndex_ImGuiPtrOrIndex_Ptr (void*)
2 nil ImGuiPtrOrIndex_ImGuiPtrOrIndex_Int (int)
@@ -119,10 +119,11 @@ igGetForegroundDrawList 3
1 ImDrawList* igGetForegroundDrawList_Nil ()
2 ImDrawList* igGetForegroundDrawList_WindowPtr (ImGuiWindow*)
3 ImDrawList* igGetForegroundDrawList_ViewportPtr (ImGuiViewport*)
igGetID 3
igGetID 4
1 ImGuiID igGetID_Str (const char*)
2 ImGuiID igGetID_StrStr (const char*,const char*)
3 ImGuiID igGetID_Ptr (const void*)
4 ImGuiID igGetID_Int (int)
igGetIDWithSeed 2
1 ImGuiID igGetIDWithSeed_Str (const char*,const char*,ImGuiID)
2 ImGuiID igGetIDWithSeed_Int (int,ImGuiID)
@@ -229,6 +230,9 @@ igRadioButton 2
igSelectable 2
1 bool igSelectable_Bool (const char*,bool,ImGuiSelectableFlags,const ImVec2)
2 bool igSelectable_BoolPtr (const char*,bool*,ImGuiSelectableFlags,const ImVec2)
igSetItemKeyOwner 2
1 void igSetItemKeyOwner_Nil (ImGuiKey)
2 void igSetItemKeyOwner_InputFlags (ImGuiKey,ImGuiInputFlags)
igSetScrollFromPosX 2
1 void igSetScrollFromPosX_Float (float,float)
2 void igSetScrollFromPosX_WindowPtr (ImGuiWindow*,float,float)
@@ -259,6 +263,9 @@ igSetWindowSize 3
igShortcut 2
1 bool igShortcut_Nil (ImGuiKeyChord,ImGuiInputFlags)
2 bool igShortcut_ID (ImGuiKeyChord,ImGuiInputFlags,ImGuiID)
igTabBarQueueFocus 2
1 void igTabBarQueueFocus_TabItemPtr (ImGuiTabBar*,ImGuiTabItem*)
2 void igTabBarQueueFocus_Str (ImGuiTabBar*,const char*)
igTabItemCalcSize 2
1 ImVec2 igTabItemCalcSize_Str (const char*,bool)
2 ImVec2 igTabItemCalcSize_WindowPtr (ImGuiWindow*)
@@ -290,4 +297,4 @@ igValue 4
2 void igValue_Int (const char*,int)
3 void igValue_Uint (const char*,unsigned int)
4 void igValue_Float (const char*,float,const char*)
203 overloaded
208 overloaded

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,9 +1,9 @@
{
"ImBitArrayForNamedKeys": "ImBitArray<ImGuiKey_NamedKey_COUNT,-ImGuiKey_NamedKey_BEGIN>",
"ImBitArrayForNamedKeys": "ImBitArray<ImGuiKey_NamedKey_COUNT, -ImGuiKey_NamedKey_BEGIN>",
"ImBitArrayPtr": "ImU32*",
"ImBitVector": "struct ImBitVector",
"ImColor": "struct ImColor",
"ImDrawCallback": "void(*)(const ImDrawList* parent_list,const ImDrawCmd* cmd);",
"ImDrawCallback": "void (*)(const ImDrawList* parent_list, const ImDrawCmd* cmd);",
"ImDrawChannel": "struct ImDrawChannel",
"ImDrawCmd": "struct ImDrawCmd",
"ImDrawCmdHeader": "struct ImDrawCmdHeader",
@@ -27,6 +27,7 @@
"ImFontGlyphRangesBuilder": "struct ImFontGlyphRangesBuilder",
"ImGuiActivateFlags": "int",
"ImGuiBackendFlags": "int",
"ImGuiBoxSelectState": "struct ImGuiBoxSelectState",
"ImGuiButtonFlags": "int",
"ImGuiChildFlags": "int",
"ImGuiCol": "int",
@@ -38,7 +39,7 @@
"ImGuiConfigFlags": "int",
"ImGuiContext": "struct ImGuiContext",
"ImGuiContextHook": "struct ImGuiContextHook",
"ImGuiContextHookCallback": "void(*)(ImGuiContext* ctx,ImGuiContextHook* hook);",
"ImGuiContextHookCallback": "void (*)(ImGuiContext* ctx, ImGuiContextHook* hook);",
"ImGuiDataType": "int",
"ImGuiDataTypeInfo": "struct ImGuiDataTypeInfo",
"ImGuiDataTypeStorage": "struct ImGuiDataTypeStorage",
@@ -47,7 +48,8 @@
"ImGuiDebugAllocInfo": "struct ImGuiDebugAllocInfo",
"ImGuiDebugLogFlags": "int",
"ImGuiDragDropFlags": "int",
"ImGuiErrorLogCallback": "void(*)(void* user_data,const char* fmt,...);",
"ImGuiErrorCallback": "void (*)(ImGuiContext* ctx, void* user_data, const char* msg);",
"ImGuiErrorRecoveryState": "struct ImGuiErrorRecoveryState",
"ImGuiFocusRequestFlags": "int",
"ImGuiFocusScopeData": "struct ImGuiFocusScopeData",
"ImGuiFocusedFlags": "int",
@@ -64,7 +66,7 @@
"ImGuiInputEventMouseWheel": "struct ImGuiInputEventMouseWheel",
"ImGuiInputEventText": "struct ImGuiInputEventText",
"ImGuiInputFlags": "int",
"ImGuiInputTextCallback": "int(*)(ImGuiInputTextCallbackData* data);",
"ImGuiInputTextCallback": "int (*)(ImGuiInputTextCallbackData* data);",
"ImGuiInputTextCallbackData": "struct ImGuiInputTextCallbackData",
"ImGuiInputTextDeactivateData": "struct ImGuiInputTextDeactivateData",
"ImGuiInputTextDeactivatedState": "struct ImGuiInputTextDeactivatedState",
@@ -84,16 +86,20 @@
"ImGuiListClipperData": "struct ImGuiListClipperData",
"ImGuiListClipperRange": "struct ImGuiListClipperRange",
"ImGuiLocEntry": "struct ImGuiLocEntry",
"ImGuiMemAllocFunc": "void*(*)(size_t sz,void* user_data);",
"ImGuiMemFreeFunc": "void(*)(void* ptr,void* user_data);",
"ImGuiLogFlags": "int",
"ImGuiMemAllocFunc": "void* (*)(size_t sz, void* user_data);",
"ImGuiMemFreeFunc": "void (*)(void* ptr, void* user_data);",
"ImGuiMenuColumns": "struct ImGuiMenuColumns",
"ImGuiMetricsConfig": "struct ImGuiMetricsConfig",
"ImGuiMouseButton": "int",
"ImGuiMouseCursor": "int",
"ImGuiNavHighlightFlags": "int",
"ImGuiMultiSelectFlags": "int",
"ImGuiMultiSelectIO": "struct ImGuiMultiSelectIO",
"ImGuiMultiSelectState": "struct ImGuiMultiSelectState",
"ImGuiMultiSelectTempData": "struct ImGuiMultiSelectTempData",
"ImGuiNavItemData": "struct ImGuiNavItemData",
"ImGuiNavMoveFlags": "int",
"ImGuiNavTreeNodeData": "struct ImGuiNavTreeNodeData",
"ImGuiNavRenderCursorFlags": "int",
"ImGuiNextItemData": "struct ImGuiNextItemData",
"ImGuiNextItemDataFlags": "int",
"ImGuiNextWindowData": "struct ImGuiNextWindowData",
@@ -103,21 +109,24 @@
"ImGuiOldColumns": "struct ImGuiOldColumns",
"ImGuiOnceUponAFrame": "struct ImGuiOnceUponAFrame",
"ImGuiPayload": "struct ImGuiPayload",
"ImGuiPlatformIO": "struct ImGuiPlatformIO",
"ImGuiPlatformImeData": "struct ImGuiPlatformImeData",
"ImGuiPopupData": "struct ImGuiPopupData",
"ImGuiPopupFlags": "int",
"ImGuiPtrOrIndex": "struct ImGuiPtrOrIndex",
"ImGuiScrollFlags": "int",
"ImGuiSelectableFlags": "int",
"ImGuiSelectionBasicStorage": "struct ImGuiSelectionBasicStorage",
"ImGuiSelectionExternalStorage": "struct ImGuiSelectionExternalStorage",
"ImGuiSelectionRequest": "struct ImGuiSelectionRequest",
"ImGuiSelectionUserData": "ImS64",
"ImGuiSeparatorFlags": "int",
"ImGuiSettingsHandler": "struct ImGuiSettingsHandler",
"ImGuiShrinkWidthItem": "struct ImGuiShrinkWidthItem",
"ImGuiSizeCallback": "void(*)(ImGuiSizeCallbackData* data);",
"ImGuiSizeCallback": "void (*)(ImGuiSizeCallbackData* data);",
"ImGuiSizeCallbackData": "struct ImGuiSizeCallbackData",
"ImGuiSliderFlags": "int",
"ImGuiStackLevelInfo": "struct ImGuiStackLevelInfo",
"ImGuiStackSizes": "struct ImGuiStackSizes",
"ImGuiStorage": "struct ImGuiStorage",
"ImGuiStoragePair": "struct ImGuiStoragePair",
"ImGuiStyle": "struct ImGuiStyle",
@@ -151,6 +160,7 @@
"ImGuiTextRange": "struct ImGuiTextRange",
"ImGuiTooltipFlags": "int",
"ImGuiTreeNodeFlags": "int",
"ImGuiTreeNodeStackData": "struct ImGuiTreeNodeStackData",
"ImGuiTypingSelectFlags": "int",
"ImGuiTypingSelectRequest": "struct ImGuiTypingSelectRequest",
"ImGuiTypingSelectState": "struct ImGuiTypingSelectState",
@@ -169,7 +179,8 @@
"ImS32": "signed int",
"ImS64": "signed long long",
"ImS8": "signed char",
"ImTextureID": "void*",
"ImStbTexteditState": "ImStb::STB_TexteditState",
"ImTextureID": "ImU64",
"ImU16": "unsigned short",
"ImU32": "unsigned int",
"ImU64": "unsigned long long",
@@ -181,11 +192,5 @@
"ImWchar": "ImWchar16",
"ImWchar16": "unsigned short",
"ImWchar32": "unsigned int",
"STB_TexteditState": "struct STB_TexteditState",
"StbTexteditRow": "struct StbTexteditRow",
"StbUndoRecord": "struct StbUndoRecord",
"StbUndoState": "struct StbUndoState",
"const_iterator": "const value_type*",
"iterator": "value_type*",
"value_type": "T"
"STB_TexteditState": "struct STB_TexteditState"
}

View File

@@ -1,9 +1,9 @@
local defs = {}
defs["ImBitArrayForNamedKeys"] = "ImBitArray<ImGuiKey_NamedKey_COUNT,-ImGuiKey_NamedKey_BEGIN>"
defs["ImBitArrayForNamedKeys"] = "ImBitArray<ImGuiKey_NamedKey_COUNT, -ImGuiKey_NamedKey_BEGIN>"
defs["ImBitArrayPtr"] = "ImU32*"
defs["ImBitVector"] = "struct ImBitVector"
defs["ImColor"] = "struct ImColor"
defs["ImDrawCallback"] = "void(*)(const ImDrawList* parent_list,const ImDrawCmd* cmd);"
defs["ImDrawCallback"] = "void (*)(const ImDrawList* parent_list, const ImDrawCmd* cmd);"
defs["ImDrawChannel"] = "struct ImDrawChannel"
defs["ImDrawCmd"] = "struct ImDrawCmd"
defs["ImDrawCmdHeader"] = "struct ImDrawCmdHeader"
@@ -27,6 +27,7 @@ defs["ImFontGlyph"] = "struct ImFontGlyph"
defs["ImFontGlyphRangesBuilder"] = "struct ImFontGlyphRangesBuilder"
defs["ImGuiActivateFlags"] = "int"
defs["ImGuiBackendFlags"] = "int"
defs["ImGuiBoxSelectState"] = "struct ImGuiBoxSelectState"
defs["ImGuiButtonFlags"] = "int"
defs["ImGuiChildFlags"] = "int"
defs["ImGuiCol"] = "int"
@@ -38,7 +39,7 @@ defs["ImGuiCond"] = "int"
defs["ImGuiConfigFlags"] = "int"
defs["ImGuiContext"] = "struct ImGuiContext"
defs["ImGuiContextHook"] = "struct ImGuiContextHook"
defs["ImGuiContextHookCallback"] = "void(*)(ImGuiContext* ctx,ImGuiContextHook* hook);"
defs["ImGuiContextHookCallback"] = "void (*)(ImGuiContext* ctx, ImGuiContextHook* hook);"
defs["ImGuiDataType"] = "int"
defs["ImGuiDataTypeInfo"] = "struct ImGuiDataTypeInfo"
defs["ImGuiDataTypeStorage"] = "struct ImGuiDataTypeStorage"
@@ -47,7 +48,8 @@ defs["ImGuiDebugAllocEntry"] = "struct ImGuiDebugAllocEntry"
defs["ImGuiDebugAllocInfo"] = "struct ImGuiDebugAllocInfo"
defs["ImGuiDebugLogFlags"] = "int"
defs["ImGuiDragDropFlags"] = "int"
defs["ImGuiErrorLogCallback"] = "void(*)(void* user_data,const char* fmt,...);"
defs["ImGuiErrorCallback"] = "void (*)(ImGuiContext* ctx, void* user_data, const char* msg);"
defs["ImGuiErrorRecoveryState"] = "struct ImGuiErrorRecoveryState"
defs["ImGuiFocusRequestFlags"] = "int"
defs["ImGuiFocusScopeData"] = "struct ImGuiFocusScopeData"
defs["ImGuiFocusedFlags"] = "int"
@@ -64,7 +66,7 @@ defs["ImGuiInputEventMousePos"] = "struct ImGuiInputEventMousePos"
defs["ImGuiInputEventMouseWheel"] = "struct ImGuiInputEventMouseWheel"
defs["ImGuiInputEventText"] = "struct ImGuiInputEventText"
defs["ImGuiInputFlags"] = "int"
defs["ImGuiInputTextCallback"] = "int(*)(ImGuiInputTextCallbackData* data);"
defs["ImGuiInputTextCallback"] = "int (*)(ImGuiInputTextCallbackData* data);"
defs["ImGuiInputTextCallbackData"] = "struct ImGuiInputTextCallbackData"
defs["ImGuiInputTextDeactivateData"] = "struct ImGuiInputTextDeactivateData"
defs["ImGuiInputTextDeactivatedState"] = "struct ImGuiInputTextDeactivatedState"
@@ -84,16 +86,20 @@ 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["ImGuiLogFlags"] = "int"
defs["ImGuiMemAllocFunc"] = "void* (*)(size_t sz, void* user_data);"
defs["ImGuiMemFreeFunc"] = "void (*)(void* ptr, void* user_data);"
defs["ImGuiMenuColumns"] = "struct ImGuiMenuColumns"
defs["ImGuiMetricsConfig"] = "struct ImGuiMetricsConfig"
defs["ImGuiMouseButton"] = "int"
defs["ImGuiMouseCursor"] = "int"
defs["ImGuiNavHighlightFlags"] = "int"
defs["ImGuiMultiSelectFlags"] = "int"
defs["ImGuiMultiSelectIO"] = "struct ImGuiMultiSelectIO"
defs["ImGuiMultiSelectState"] = "struct ImGuiMultiSelectState"
defs["ImGuiMultiSelectTempData"] = "struct ImGuiMultiSelectTempData"
defs["ImGuiNavItemData"] = "struct ImGuiNavItemData"
defs["ImGuiNavMoveFlags"] = "int"
defs["ImGuiNavTreeNodeData"] = "struct ImGuiNavTreeNodeData"
defs["ImGuiNavRenderCursorFlags"] = "int"
defs["ImGuiNextItemData"] = "struct ImGuiNextItemData"
defs["ImGuiNextItemDataFlags"] = "int"
defs["ImGuiNextWindowData"] = "struct ImGuiNextWindowData"
@@ -103,21 +109,24 @@ defs["ImGuiOldColumnFlags"] = "int"
defs["ImGuiOldColumns"] = "struct ImGuiOldColumns"
defs["ImGuiOnceUponAFrame"] = "struct ImGuiOnceUponAFrame"
defs["ImGuiPayload"] = "struct ImGuiPayload"
defs["ImGuiPlatformIO"] = "struct ImGuiPlatformIO"
defs["ImGuiPlatformImeData"] = "struct ImGuiPlatformImeData"
defs["ImGuiPopupData"] = "struct ImGuiPopupData"
defs["ImGuiPopupFlags"] = "int"
defs["ImGuiPtrOrIndex"] = "struct ImGuiPtrOrIndex"
defs["ImGuiScrollFlags"] = "int"
defs["ImGuiSelectableFlags"] = "int"
defs["ImGuiSelectionBasicStorage"] = "struct ImGuiSelectionBasicStorage"
defs["ImGuiSelectionExternalStorage"] = "struct ImGuiSelectionExternalStorage"
defs["ImGuiSelectionRequest"] = "struct ImGuiSelectionRequest"
defs["ImGuiSelectionUserData"] = "ImS64"
defs["ImGuiSeparatorFlags"] = "int"
defs["ImGuiSettingsHandler"] = "struct ImGuiSettingsHandler"
defs["ImGuiShrinkWidthItem"] = "struct ImGuiShrinkWidthItem"
defs["ImGuiSizeCallback"] = "void(*)(ImGuiSizeCallbackData* data);"
defs["ImGuiSizeCallback"] = "void (*)(ImGuiSizeCallbackData* data);"
defs["ImGuiSizeCallbackData"] = "struct ImGuiSizeCallbackData"
defs["ImGuiSliderFlags"] = "int"
defs["ImGuiStackLevelInfo"] = "struct ImGuiStackLevelInfo"
defs["ImGuiStackSizes"] = "struct ImGuiStackSizes"
defs["ImGuiStorage"] = "struct ImGuiStorage"
defs["ImGuiStoragePair"] = "struct ImGuiStoragePair"
defs["ImGuiStyle"] = "struct ImGuiStyle"
@@ -151,6 +160,7 @@ defs["ImGuiTextIndex"] = "struct ImGuiTextIndex"
defs["ImGuiTextRange"] = "struct ImGuiTextRange"
defs["ImGuiTooltipFlags"] = "int"
defs["ImGuiTreeNodeFlags"] = "int"
defs["ImGuiTreeNodeStackData"] = "struct ImGuiTreeNodeStackData"
defs["ImGuiTypingSelectFlags"] = "int"
defs["ImGuiTypingSelectRequest"] = "struct ImGuiTypingSelectRequest"
defs["ImGuiTypingSelectState"] = "struct ImGuiTypingSelectState"
@@ -169,7 +179,8 @@ defs["ImS16"] = "signed short"
defs["ImS32"] = "signed int"
defs["ImS64"] = "signed long long"
defs["ImS8"] = "signed char"
defs["ImTextureID"] = "void*"
defs["ImStbTexteditState"] = "ImStb::STB_TexteditState"
defs["ImTextureID"] = "ImU64"
defs["ImU16"] = "unsigned short"
defs["ImU32"] = "unsigned int"
defs["ImU64"] = "unsigned long long"
@@ -182,11 +193,5 @@ defs["ImWchar"] = "ImWchar16"
defs["ImWchar16"] = "unsigned short"
defs["ImWchar32"] = "unsigned int"
defs["STB_TexteditState"] = "struct STB_TexteditState"
defs["StbTexteditRow"] = "struct StbTexteditRow"
defs["StbUndoRecord"] = "struct StbUndoRecord"
defs["StbUndoState"] = "struct StbUndoState"
defs["const_iterator"] = "const value_type*"
defs["iterator"] = "value_type*"
defs["value_type"] = "T"
return defs

2
imgui

Submodule imgui updated: 6f7b5d0ee2...993fa34749