mirror of
https://github.com/cimgui/cimgui.git
synced 2025-08-11 04:18:29 +01:00
Compare commits
33 Commits
1.91.4dock
...
1.91.9dock
Author | SHA1 | Date | |
---|---|---|---|
![]() |
de213c9105 | ||
![]() |
4bd8b6dbbd | ||
![]() |
a1dbf23597 | ||
![]() |
f2e203b05a | ||
![]() |
429ffc930d | ||
![]() |
95dec01325 | ||
![]() |
79504e6f7c | ||
![]() |
4edec25945 | ||
![]() |
daac7262b3 | ||
![]() |
2e5db87e99 | ||
![]() |
387e5e0d8b | ||
![]() |
10a7a9f3f3 | ||
![]() |
9bc279c4d8 | ||
![]() |
46c47d5703 | ||
![]() |
e5facd9083 | ||
![]() |
7d50243c50 | ||
![]() |
7715efaa41 | ||
![]() |
9cc8f27f61 | ||
![]() |
df65595422 | ||
![]() |
2a0af76f16 | ||
![]() |
1053d1584f | ||
![]() |
d83e8c5892 | ||
![]() |
98b667f601 | ||
![]() |
d9982af929 | ||
![]() |
58763282f8 | ||
![]() |
970c614802 | ||
![]() |
3d5b2e7650 | ||
![]() |
4e89eac938 | ||
![]() |
bd2ea2acbb | ||
![]() |
69d3b29392 | ||
![]() |
1c3d694f36 | ||
![]() |
be19fd11eb | ||
![]() |
fdd07821bb |
@@ -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\))
|
||||
|
12
README.md
12
README.md
@@ -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.91.4 of Dear ImGui with internal api]
|
||||
* currently this wrapper is based on version [1.91.9 of Dear ImGui with internal api]
|
||||
* only functions, structs and enums from imgui.h (an optionally imgui_internal.h) are wrapped.
|
||||
* if you are interested in imgui backends you should look [LuaJIT-ImGui](https://github.com/sonoro1234/LuaJIT-ImGui) project.
|
||||
* All naming is algorithmic except for those names that were coded in cimgui_overloads table (https://github.com/cimgui/cimgui/blob/master/generator/generator.lua#L60). In the official version this table is empty.
|
||||
@@ -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 and if constructors are generated also with versions performing just initialization of structs provided by yourself (_Construct is added to the constructor names)
|
||||
* 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
|
||||
@@ -92,10 +92,10 @@ Notes:
|
||||
* methods have the same parameter list and return values (where possible)
|
||||
* functions that belong to a struct have an extra first argument with a pointer to the struct.
|
||||
* where a function returns UDT (user defined type) by value some compilers complain so the function is generated accepting a pointer to the UDT type as the first argument (or second if belongs to a struct).
|
||||
|
||||
* constructors return pointer to struct and has been named Struct_name_Struct_name
|
||||
# usage with backends
|
||||
|
||||
* look at backend_test folder for a cmake module building with SDL and opengl3, glfw and opengl3, SDL and Vulkan
|
||||
* look at backend_test folder for a cmake module building with SDL and opengl3, glfw and opengl3, SDL and Vulkan, glfw and dx11
|
||||
* read [How can cimgui backends be used](https://github.com/cimgui/cimgui/issues/157)
|
||||
|
||||
# example bindings based on cimgui
|
||||
|
@@ -23,6 +23,7 @@ else()
|
||||
endif()
|
||||
|
||||
include_directories(../../imgui)
|
||||
add_definitions("-DIMGUI_USER_CONFIG=\"../cimconfig.h\"")
|
||||
add_definitions("-DIMGUI_DISABLE_OBSOLETE_FUNCTIONS=1")
|
||||
|
||||
include_directories(../../)
|
||||
@@ -101,7 +102,6 @@ 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)
|
||||
|
@@ -23,6 +23,7 @@ else()
|
||||
endif()
|
||||
|
||||
include_directories(../../imgui)
|
||||
add_definitions("-DIMGUI_USER_CONFIG=\"../cimconfig.h\"")
|
||||
add_definitions("-DIMGUI_DISABLE_OBSOLETE_FUNCTIONS=1")
|
||||
|
||||
include_directories(../../)
|
||||
@@ -105,7 +106,6 @@ target_link_libraries(cimgui ${IMGUI_LIBRARIES} glfw)
|
||||
|
||||
|
||||
# using library
|
||||
include_directories(../../generator/output/)
|
||||
add_executable(${PROJECT_NAME} main.c)
|
||||
target_compile_definitions(${PROJECT_NAME} PUBLIC -DCIMGUI_USE_OPENGL3 -DCIMGUI_USE_GLFW)
|
||||
target_link_libraries(${PROJECT_NAME} cimgui)
|
||||
|
@@ -22,7 +22,6 @@ else()
|
||||
endif()
|
||||
|
||||
include_directories(../../imgui)
|
||||
add_definitions("-DIMGUI_DISABLE_OBSOLETE_FUNCTIONS=1")
|
||||
|
||||
include_directories(../../)
|
||||
set(IMGUI_SOURCES
|
||||
@@ -37,11 +36,7 @@ ${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,47 +60,46 @@ else(WIN32)#Unix
|
||||
endif(WIN32)
|
||||
|
||||
|
||||
#sdl2
|
||||
list(APPEND IMGUI_SOURCES ${BAKENDS_FOLDER}imgui_impl_sdl2.cpp)
|
||||
if(DEFINED SDL_PATH)
|
||||
message(STATUS "SDL_PATH defined as " ${SDL_PATH})
|
||||
FIND_PACKAGE(SDL2 PATHS ${SDL_PATH})
|
||||
else(DEFINED SDL_PATH)
|
||||
# If SDL_PATH is not set, fallback and attempt to find SDL cmake script at a default location
|
||||
find_package(SDL2)
|
||||
endif(DEFINED SDL_PATH)
|
||||
include(FetchContent)
|
||||
Set(FETCHCONTENT_QUIET FALSE)
|
||||
|
||||
if(SDL2_FOUND)
|
||||
get_target_property(SDL_INCLUDE SDL2::SDL2 INTERFACE_INCLUDE_DIRECTORIES)
|
||||
message(STATUS "sdlinclude is " ${SDL_INCLUDE})
|
||||
if ("${SDL_INCLUDE}" STREQUAL "" OR "${SDL_INCLUDE}" STREQUAL "SDL_INCLUDE-NOTFOUND") #if not found latest SDL2 cmake config use older
|
||||
message(STATUS "sdlinclude2 is " ${SDL2_INCLUDE_DIRS})
|
||||
include_directories(${SDL2_INCLUDE_DIRS})
|
||||
set(IMGUI_SDL_LIBRARY ${SDL2_LIBRARIES})
|
||||
message(STATUS IMGUI_SDL_LIBRARY ${SDL2_LIBRARIES})
|
||||
else()#use new one SDL2 config
|
||||
include_directories(${SDL_INCLUDE})
|
||||
set(IMGUI_SDL_LIBRARY SDL2::SDL2)
|
||||
set(SDL_MAIN SDL2::SDL2main)
|
||||
message(STATUS ${SDL_MAIN} ${IMGUI_SDL_LIBRARY})
|
||||
endif()
|
||||
else(SDL2_FOUND)
|
||||
if(DEFINED SDL_PATH)
|
||||
message(FATAL_ERROR "Cannot find SDL at SDL_PATH")
|
||||
else(DEFINED SDL_PATH)
|
||||
message(FATAL_ERROR "Cannot find SDL. Maybe try specifying SDL_PATH?")
|
||||
endif(DEFINED SDL_PATH)
|
||||
endif(SDL2_FOUND)
|
||||
FetchContent_Declare(
|
||||
SDL2
|
||||
GIT_REPOSITORY https://github.com/libsdl-org/SDL.git
|
||||
GIT_TAG release-2.30.12
|
||||
#GIT_SHALLOW TRUE
|
||||
GIT_PROGRESS TRUE
|
||||
)
|
||||
#FetchContent_MakeAvailable(SDL2)
|
||||
FetchContent_GetProperties(SDL2)
|
||||
if (NOT sdl2_POPULATED)
|
||||
set(FETCHCONTENT_QUIET NO)
|
||||
FetchContent_Populate(SDL2)
|
||||
set(SDL_TEST OFF CACHE BOOL "" FORCE)
|
||||
set(BUILD_SHARED_LIBS ON CACHE BOOL "" FORCE)
|
||||
add_subdirectory(${sdl2_SOURCE_DIR} ${sdl2_BINARY_DIR})
|
||||
endif()
|
||||
include_directories(${SDL2_SOURCE_DIR}/include})
|
||||
|
||||
#if dynamic SDL2 then install
|
||||
install(TARGETS SDL2 RUNTIME DESTINATION ${CMAKE_CURRENT_BINARY_DIR}
|
||||
LIBRARY DESTINATION ${CMAKE_CURRENT_BINARY_DIR}
|
||||
)
|
||||
|
||||
add_library(cimgui_sdl SHARED ${IMGUI_SOURCES})
|
||||
target_link_libraries(cimgui_sdl ${IMGUI_LIBRARIES} ${IMGUI_SDL_LIBRARY})
|
||||
target_compile_definitions(cimgui_sdl PUBLIC "-DIMGUI_DISABLE_OBSOLETE_FUNCTIONS=1")
|
||||
if (WIN32)
|
||||
target_compile_definitions(cimgui_sdl PUBLIC "-DIMGUI_IMPL_API=extern \"C\" __declspec\(dllexport\)")
|
||||
else(WIN32)
|
||||
target_compile_definitions(cimgui_sdl PUBLIC "-DIMGUI_IMPL_API=extern \"C\" ")
|
||||
endif(WIN32)
|
||||
target_link_libraries(cimgui_sdl ${IMGUI_LIBRARIES} SDL2)
|
||||
|
||||
#using library
|
||||
include_directories(../../generator/output/)
|
||||
add_executable(test_sdl main.c)
|
||||
target_compile_definitions(test_sdl PUBLIC -DCIMGUI_USE_OPENGL3 -DCIMGUI_USE_SDL2)
|
||||
if (MINGW)
|
||||
target_link_options(test_sdl PRIVATE "-mconsole")
|
||||
endif()
|
||||
target_link_libraries(test_sdl ${IMGUI_SDL_LIBRARY} cimgui_sdl)
|
||||
|
||||
target_link_libraries(test_sdl SDL2 cimgui_sdl)
|
||||
|
2
backend_test/example_sdl_opengl3/README.md
Normal file
2
backend_test/example_sdl_opengl3/README.md
Normal file
@@ -0,0 +1,2 @@
|
||||
|
||||
To build use `cmake path_to_example_sdl_opengl3` and then `make install`
|
@@ -18,11 +18,12 @@ else()
|
||||
set(TABLES_SOURCE "")
|
||||
endif()
|
||||
|
||||
include_directories(../../imgui)
|
||||
add_definitions("-DIMGUI_DISABLE_OBSOLETE_FUNCTIONS=1")
|
||||
include_directories(../../imgui ../../imgui/backends)
|
||||
|
||||
|
||||
include_directories(../../)
|
||||
set(IMGUI_SOURCES ../../cimgui.cpp
|
||||
../../cimgui_impl.cpp
|
||||
../../imgui/imgui.cpp
|
||||
../../imgui/imgui_draw.cpp
|
||||
../../imgui/imgui_demo.cpp
|
||||
@@ -33,11 +34,6 @@ ${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)
|
||||
|
||||
#optional adding freetype
|
||||
option(IMGUI_FREETYPE "add Freetype2" OFF)
|
||||
@@ -53,48 +49,52 @@ endif(IMGUI_FREETYPE)
|
||||
find_package(Vulkan REQUIRED FATAL_ERROR)
|
||||
list(APPEND IMGUI_LIBRARIES Vulkan::Vulkan)
|
||||
list(APPEND IMGUI_SOURCES ${BACKENDS_FOLDER}imgui_impl_vulkan.cpp)
|
||||
include_directories(${Vulkan_INCLUDE_DIRS})
|
||||
|
||||
#sdl2
|
||||
list(APPEND IMGUI_SOURCES ${BACKENDS_FOLDER}imgui_impl_sdl2.cpp)
|
||||
if(DEFINED SDL_PATH)
|
||||
message(STATUS "SDL_PATH defined as " ${SDL_PATH})
|
||||
FIND_PACKAGE(SDL2 PATHS ${SDL_PATH})
|
||||
else(DEFINED SDL_PATH)
|
||||
# If SDL_PATH is not set, fallback and attempt to find SDL cmake script at a default location
|
||||
find_package(SDL2)
|
||||
endif(DEFINED SDL_PATH)
|
||||
include(FetchContent)
|
||||
Set(FETCHCONTENT_QUIET FALSE)
|
||||
|
||||
if(SDL2_FOUND)
|
||||
get_target_property(SDL_INCLUDE SDL2::SDL2 INTERFACE_INCLUDE_DIRECTORIES)
|
||||
message(STATUS "sdlinclude is " ${SDL_INCLUDE})
|
||||
if ("${SDL_INCLUDE}" STREQUAL "" OR "${SDL_INCLUDE}" STREQUAL "SDL_INCLUDE-NOTFOUND") #if not found latest SDL2 cmake config use older
|
||||
message(STATUS "sdlinclude2 is " ${SDL2_INCLUDE_DIRS})
|
||||
include_directories(${SDL2_INCLUDE_DIRS})
|
||||
set(IMGUI_SDL_LIBRARY ${SDL2_LIBRARIES})
|
||||
message(STATUS IMGUI_SDL_LIBRARY ${SDL2_LIBRARIES})
|
||||
else()#use new one SDL2 config
|
||||
include_directories(${SDL_INCLUDE})
|
||||
set(IMGUI_SDL_LIBRARY SDL2::SDL2)
|
||||
set(SDL_MAIN SDL2::SDL2main)
|
||||
message(STATUS ${SDL_MAIN} ${IMGUI_SDL_LIBRARY})
|
||||
endif()
|
||||
else(SDL2_FOUND)
|
||||
if(DEFINED SDL_PATH)
|
||||
message(FATAL_ERROR "Cannot find SDL at SDL_PATH")
|
||||
else(DEFINED SDL_PATH)
|
||||
message(FATAL_ERROR "Cannot find SDL. Maybe try specifying SDL_PATH?")
|
||||
endif(DEFINED SDL_PATH)
|
||||
endif(SDL2_FOUND)
|
||||
FetchContent_Declare(
|
||||
SDL2
|
||||
GIT_REPOSITORY https://github.com/libsdl-org/SDL.git
|
||||
GIT_TAG release-2.30.12
|
||||
#GIT_SHALLOW TRUE
|
||||
GIT_PROGRESS TRUE
|
||||
)
|
||||
FetchContent_GetProperties(SDL2)
|
||||
if (NOT sdl2_POPULATED)
|
||||
set(FETCHCONTENT_QUIET NO)
|
||||
FetchContent_Populate(SDL2)
|
||||
set(SDL_TEST OFF CACHE BOOL "" FORCE)
|
||||
set(BUILD_SHARED_LIBS OFF CACHE BOOL "" FORCE)
|
||||
add_subdirectory(${sdl2_SOURCE_DIR} ${sdl2_BINARY_DIR})
|
||||
endif()
|
||||
include_directories(${SDL2_SOURCE_DIR}/include)
|
||||
|
||||
add_library(cimgui_sdl SHARED ${IMGUI_SOURCES})
|
||||
target_link_libraries(cimgui_sdl ${IMGUI_LIBRARIES} ${IMGUI_SDL_LIBRARY})
|
||||
|
||||
#if dynamic SDL2 then install
|
||||
# install(TARGETS SDL2 RUNTIME DESTINATION ${CMAKE_CURRENT_BINARY_DIR}
|
||||
# LIBRARY DESTINATION ${CMAKE_CURRENT_BINARY_DIR}
|
||||
# )
|
||||
|
||||
add_library(cimgui_sdl STATIC ${IMGUI_SOURCES})
|
||||
target_compile_definitions(cimgui_sdl PUBLIC "-DIMGUI_USER_CONFIG=\"../cimconfig.h\"")
|
||||
target_compile_definitions(cimgui_sdl PUBLIC "-DIMGUI_DISABLE_OBSOLETE_FUNCTIONS=1")
|
||||
target_compile_definitions(cimgui_sdl PUBLIC -DCIMGUI_USE_VULKAN -DCIMGUI_USE_SDL2)
|
||||
if (WIN32)
|
||||
target_compile_definitions(cimgui_sdl PUBLIC "-DIMGUI_IMPL_API=extern \"C\" __declspec\(dllexport\)")
|
||||
else(WIN32)
|
||||
target_compile_definitions(cimgui_sdl PUBLIC "-DIMGUI_IMPL_API=extern \"C\" ")
|
||||
endif(WIN32)
|
||||
#target_link_libraries(cimgui_sdl ${IMGUI_LIBRARIES} SDL2-static)
|
||||
|
||||
#using library
|
||||
include_directories(../../generator/output/)
|
||||
add_executable(test_sdl main.c)
|
||||
target_compile_definitions(test_sdl PUBLIC -DCIMGUI_USE_VULKAN -DCIMGUI_USE_SDL2)
|
||||
if (MINGW)
|
||||
target_link_options(test_sdl PRIVATE "-mconsole")
|
||||
endif()
|
||||
target_link_libraries(test_sdl ${IMGUI_SDL_LIBRARY} cimgui_sdl)
|
||||
target_link_libraries(test_sdl SDL2-static cimgui_sdl ${IMGUI_LIBRARIES})
|
||||
|
||||
|
3
backend_test/example_sdl_vulkan/README.md
Normal file
3
backend_test/example_sdl_vulkan/README.md
Normal file
@@ -0,0 +1,3 @@
|
||||
This example needs vulkan generation before compilation: Vulkan SDK should be installed and then add "vulkan" to generator.bat and generate.
|
||||
|
||||
To build use `cmake path_to_example_sdl_vulkan` and then `make install`
|
File diff suppressed because it is too large
Load Diff
1
cimconfig.h
Normal file
1
cimconfig.h
Normal file
@@ -0,0 +1 @@
|
||||
#undef NDEBUG
|
135
cimgui.cpp
135
cimgui.cpp
@@ -1,16 +1,9 @@
|
||||
//This file is automatically generated by generator.lua from https://github.com/cimgui/cimgui
|
||||
//based on imgui.h file version "1.91.4" 19140 from Dear ImGui https://github.com/ocornut/imgui
|
||||
//based on imgui.h file version "1.91.9" 19190 from Dear ImGui https://github.com/ocornut/imgui
|
||||
//with imgui_internal.h api
|
||||
//with imgui_freetype.h api
|
||||
//docking branch
|
||||
#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"
|
||||
@@ -64,7 +57,7 @@ CIMGUI_API ImGuiIO* igGetIO()
|
||||
{
|
||||
return &ImGui::GetIO();
|
||||
}
|
||||
CIMGUI_API ImGuiPlatformIO* igGetPlatformIO()
|
||||
CIMGUI_API ImGuiPlatformIO* igGetPlatformIO_Nil()
|
||||
{
|
||||
return &ImGui::GetPlatformIO();
|
||||
}
|
||||
@@ -674,9 +667,13 @@ 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)
|
||||
CIMGUI_API void igImage(ImTextureID user_texture_id,const ImVec2 image_size,const ImVec2 uv0,const ImVec2 uv1)
|
||||
{
|
||||
return ImGui::Image(user_texture_id,image_size,uv0,uv1,tint_col,border_col);
|
||||
return ImGui::Image(user_texture_id,image_size,uv0,uv1);
|
||||
}
|
||||
CIMGUI_API void igImageWithBg(ImTextureID user_texture_id,const ImVec2 image_size,const ImVec2 uv0,const ImVec2 uv1,const ImVec4 bg_col,const ImVec4 tint_col)
|
||||
{
|
||||
return ImGui::ImageWithBg(user_texture_id,image_size,uv0,uv1,bg_col,tint_col);
|
||||
}
|
||||
CIMGUI_API bool igImageButton(const char* str_id,ImTextureID user_texture_id,const ImVec2 image_size,const ImVec2 uv0,const ImVec2 uv1,const ImVec4 bg_col,const ImVec4 tint_col)
|
||||
{
|
||||
@@ -1584,6 +1581,10 @@ CIMGUI_API bool igIsMouseDoubleClicked_Nil(ImGuiMouseButton button)
|
||||
{
|
||||
return ImGui::IsMouseDoubleClicked(button);
|
||||
}
|
||||
CIMGUI_API bool igIsMouseReleasedWithDelay(ImGuiMouseButton button,float delay)
|
||||
{
|
||||
return ImGui::IsMouseReleasedWithDelay(button,delay);
|
||||
}
|
||||
CIMGUI_API int igGetMouseClickedCount(ImGuiMouseButton button)
|
||||
{
|
||||
return ImGui::GetMouseClickedCount(button);
|
||||
@@ -1963,6 +1964,10 @@ CIMGUI_API void ImGuiTextBuffer_clear(ImGuiTextBuffer* self)
|
||||
{
|
||||
return self->clear();
|
||||
}
|
||||
CIMGUI_API void ImGuiTextBuffer_resize(ImGuiTextBuffer* self,int size)
|
||||
{
|
||||
return self->resize(size);
|
||||
}
|
||||
CIMGUI_API void ImGuiTextBuffer_reserve(ImGuiTextBuffer* self,int capacity)
|
||||
{
|
||||
return self->reserve(capacity);
|
||||
@@ -2303,7 +2308,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);
|
||||
}
|
||||
@@ -2603,14 +2608,14 @@ CIMGUI_API void ImFontAtlas_ClearInputData(ImFontAtlas* self)
|
||||
{
|
||||
return self->ClearInputData();
|
||||
}
|
||||
CIMGUI_API void ImFontAtlas_ClearTexData(ImFontAtlas* self)
|
||||
{
|
||||
return self->ClearTexData();
|
||||
}
|
||||
CIMGUI_API void ImFontAtlas_ClearFonts(ImFontAtlas* self)
|
||||
{
|
||||
return self->ClearFonts();
|
||||
}
|
||||
CIMGUI_API void ImFontAtlas_ClearTexData(ImFontAtlas* self)
|
||||
{
|
||||
return self->ClearTexData();
|
||||
}
|
||||
CIMGUI_API void ImFontAtlas_Clear(ImFontAtlas* self)
|
||||
{
|
||||
return self->Clear();
|
||||
@@ -2687,10 +2692,6 @@ CIMGUI_API void ImFontAtlas_CalcCustomRectUV(ImFontAtlas* self,const ImFontAtlas
|
||||
{
|
||||
return self->CalcCustomRectUV(rect,out_uv_min,out_uv_max);
|
||||
}
|
||||
CIMGUI_API bool ImFontAtlas_GetMouseCursorTexData(ImFontAtlas* self,ImGuiMouseCursor cursor,ImVec2* out_offset,ImVec2* out_size,ImVec2 out_uv_border[2],ImVec2 out_uv_fill[2])
|
||||
{
|
||||
return self->GetMouseCursorTexData(cursor,out_offset,out_size,out_uv_border,out_uv_fill);
|
||||
}
|
||||
CIMGUI_API ImFont* ImFont_ImFont(void)
|
||||
{
|
||||
return IM_NEW(ImFont)();
|
||||
@@ -2699,11 +2700,11 @@ CIMGUI_API void ImFont_destroy(ImFont* self)
|
||||
{
|
||||
IM_DELETE(self);
|
||||
}
|
||||
CIMGUI_API const ImFontGlyph* ImFont_FindGlyph(ImFont* self,ImWchar c)
|
||||
CIMGUI_API ImFontGlyph* ImFont_FindGlyph(ImFont* self,ImWchar c)
|
||||
{
|
||||
return self->FindGlyph(c);
|
||||
}
|
||||
CIMGUI_API const ImFontGlyph* ImFont_FindGlyphNoFallback(ImFont* self,ImWchar c)
|
||||
CIMGUI_API ImFontGlyph* ImFont_FindGlyphNoFallback(ImFont* self,ImWchar c)
|
||||
{
|
||||
return self->FindGlyphNoFallback(c);
|
||||
}
|
||||
@@ -2755,10 +2756,6 @@ CIMGUI_API void ImFont_AddRemapChar(ImFont* self,ImWchar dst,ImWchar src,bool ov
|
||||
{
|
||||
return self->AddRemapChar(dst,src,overwrite_dst);
|
||||
}
|
||||
CIMGUI_API void ImFont_SetGlyphVisible(ImFont* self,ImWchar c,bool visible)
|
||||
{
|
||||
return self->SetGlyphVisible(c,visible);
|
||||
}
|
||||
CIMGUI_API bool ImFont_IsGlyphRangeUnused(ImFont* self,unsigned int c_begin,unsigned int c_last)
|
||||
{
|
||||
return self->IsGlyphRangeUnused(c_begin,c_last);
|
||||
@@ -2831,6 +2828,10 @@ CIMGUI_API int igImUpperPowerOfTwo(int v)
|
||||
{
|
||||
return ImUpperPowerOfTwo(v);
|
||||
}
|
||||
CIMGUI_API unsigned int igImCountSetBits(unsigned int v)
|
||||
{
|
||||
return ImCountSetBits(v);
|
||||
}
|
||||
CIMGUI_API int igImStricmp(const char* str1,const char* str2)
|
||||
{
|
||||
return ImStricmp(str1,str2);
|
||||
@@ -3410,7 +3411,7 @@ CIMGUI_API void ImDrawDataBuilder_destroy(ImDrawDataBuilder* self)
|
||||
{
|
||||
IM_DELETE(self);
|
||||
}
|
||||
CIMGUI_API void* ImGuiDataVarInfo_GetVarPtr(ImGuiDataVarInfo* self,void* parent)
|
||||
CIMGUI_API void* ImGuiStyleVarInfo_GetVarPtr(ImGuiStyleVarInfo* self,void* parent)
|
||||
{
|
||||
return self->GetVarPtr(parent);
|
||||
}
|
||||
@@ -3998,6 +3999,14 @@ CIMGUI_API ImGuiTableColumnSettings* ImGuiTableSettings_GetColumnSettings(ImGuiT
|
||||
{
|
||||
return self->GetColumnSettings();
|
||||
}
|
||||
CIMGUI_API ImGuiIO* igGetIOEx(ImGuiContext* ctx)
|
||||
{
|
||||
return &ImGui::GetIO(ctx);
|
||||
}
|
||||
CIMGUI_API ImGuiPlatformIO* igGetPlatformIO_ContextPtr(ImGuiContext* ctx)
|
||||
{
|
||||
return &ImGui::GetPlatformIO(ctx);
|
||||
}
|
||||
CIMGUI_API ImGuiWindow* igGetCurrentWindowRead()
|
||||
{
|
||||
return ImGui::GetCurrentWindowRead();
|
||||
@@ -4126,6 +4135,10 @@ CIMGUI_API ImFont* igGetDefaultFont()
|
||||
{
|
||||
return ImGui::GetDefaultFont();
|
||||
}
|
||||
CIMGUI_API void igPushPasswordFont()
|
||||
{
|
||||
return ImGui::PushPasswordFont();
|
||||
}
|
||||
CIMGUI_API ImDrawList* igGetForegroundDrawList_WindowPtr(ImGuiWindow* window)
|
||||
{
|
||||
return ImGui::GetForegroundDrawList(window);
|
||||
@@ -4370,9 +4383,9 @@ CIMGUI_API bool igIsClippedEx(const ImRect bb,ImGuiID id)
|
||||
{
|
||||
return ImGui::IsClippedEx(bb,id);
|
||||
}
|
||||
CIMGUI_API void igSetLastItemData(ImGuiID item_id,ImGuiItemFlags in_flags,ImGuiItemStatusFlags status_flags,const ImRect item_rect)
|
||||
CIMGUI_API void igSetLastItemData(ImGuiID item_id,ImGuiItemFlags item_flags,ImGuiItemStatusFlags status_flags,const ImRect item_rect)
|
||||
{
|
||||
return ImGui::SetLastItemData(item_id,in_flags,status_flags,item_rect);
|
||||
return ImGui::SetLastItemData(item_id,item_flags,status_flags,item_rect);
|
||||
}
|
||||
CIMGUI_API void igCalcItemSize(ImVec2 *pOut,ImVec2 size,float default_w,float default_h)
|
||||
{
|
||||
@@ -4390,7 +4403,7 @@ CIMGUI_API void igShrinkWidths(ImGuiShrinkWidthItem* items,int count,float width
|
||||
{
|
||||
return ImGui::ShrinkWidths(items,count,width_excess);
|
||||
}
|
||||
CIMGUI_API const ImGuiDataVarInfo* igGetStyleVarInfo(ImGuiStyleVar idx)
|
||||
CIMGUI_API const ImGuiStyleVarInfo* igGetStyleVarInfo(ImGuiStyleVar idx)
|
||||
{
|
||||
return ImGui::GetStyleVarInfo(idx);
|
||||
}
|
||||
@@ -4402,9 +4415,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)
|
||||
{
|
||||
@@ -4426,6 +4439,10 @@ CIMGUI_API bool igBeginPopupEx(ImGuiID id,ImGuiWindowFlags extra_window_flags)
|
||||
{
|
||||
return ImGui::BeginPopupEx(id,extra_window_flags);
|
||||
}
|
||||
CIMGUI_API bool igBeginPopupMenuEx(ImGuiID id,const char* label,ImGuiWindowFlags extra_window_flags)
|
||||
{
|
||||
return ImGui::BeginPopupMenuEx(id,label,extra_window_flags);
|
||||
}
|
||||
CIMGUI_API void igOpenPopupEx(ImGuiID id,ImGuiPopupFlags popup_flags)
|
||||
{
|
||||
return ImGui::OpenPopupEx(id,popup_flags);
|
||||
@@ -5294,6 +5311,10 @@ CIMGUI_API bool igTabItemEx(ImGuiTabBar* tab_bar,const char* label,bool* p_open,
|
||||
{
|
||||
return ImGui::TabItemEx(tab_bar,label,p_open,flags,docked_window);
|
||||
}
|
||||
CIMGUI_API void igTabItemSpacing(const char* str_id,ImGuiTabItemFlags flags,float width)
|
||||
{
|
||||
return ImGui::TabItemSpacing(str_id,flags,width);
|
||||
}
|
||||
CIMGUI_API void igTabItemCalcSize_Str(ImVec2 *pOut,const char* label,bool has_close_button_or_unsaved_marker)
|
||||
{
|
||||
*pOut = ImGui::TabItemCalcSize(label,has_close_button_or_unsaved_marker);
|
||||
@@ -5398,9 +5419,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)
|
||||
{
|
||||
@@ -5430,9 +5451,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)
|
||||
{
|
||||
@@ -5542,6 +5563,10 @@ CIMGUI_API void igSetNextItemRefVal(ImGuiDataType data_type,void* p_data)
|
||||
{
|
||||
return ImGui::SetNextItemRefVal(data_type,p_data);
|
||||
}
|
||||
CIMGUI_API bool igIsItemActiveAsInputText()
|
||||
{
|
||||
return ImGui::IsItemActiveAsInputText();
|
||||
}
|
||||
CIMGUI_API void igColorTooltip(const char* text,const float* col,ImGuiColorEditFlags flags)
|
||||
{
|
||||
return ImGui::ColorTooltip(text,col,flags);
|
||||
@@ -5754,17 +5779,17 @@ CIMGUI_API const ImFontBuilderIO* igImFontAtlasGetBuilderForStbTruetype()
|
||||
{
|
||||
return ImFontAtlasGetBuilderForStbTruetype();
|
||||
}
|
||||
CIMGUI_API void igImFontAtlasUpdateConfigDataPointers(ImFontAtlas* atlas)
|
||||
CIMGUI_API void igImFontAtlasUpdateSourcesPointers(ImFontAtlas* atlas)
|
||||
{
|
||||
return ImFontAtlasUpdateConfigDataPointers(atlas);
|
||||
return ImFontAtlasUpdateSourcesPointers(atlas);
|
||||
}
|
||||
CIMGUI_API void igImFontAtlasBuildInit(ImFontAtlas* atlas)
|
||||
{
|
||||
return ImFontAtlasBuildInit(atlas);
|
||||
}
|
||||
CIMGUI_API void igImFontAtlasBuildSetupFont(ImFontAtlas* atlas,ImFont* font,ImFontConfig* font_config,float ascent,float descent)
|
||||
CIMGUI_API void igImFontAtlasBuildSetupFont(ImFontAtlas* atlas,ImFont* font,ImFontConfig* src,float ascent,float descent)
|
||||
{
|
||||
return ImFontAtlasBuildSetupFont(atlas,font,font_config,ascent,descent);
|
||||
return ImFontAtlasBuildSetupFont(atlas,font,src,ascent,descent);
|
||||
}
|
||||
CIMGUI_API void igImFontAtlasBuildPackCustomRects(ImFontAtlas* atlas,void* stbrp_context_opaque)
|
||||
{
|
||||
@@ -5790,11 +5815,31 @@ CIMGUI_API void igImFontAtlasBuildMultiplyRectAlpha8(const unsigned char table[2
|
||||
{
|
||||
return ImFontAtlasBuildMultiplyRectAlpha8(table,pixels,x,y,w,h,stride);
|
||||
}
|
||||
CIMGUI_API void igImFontAtlasBuildGetOversampleFactors(const ImFontConfig* src,int* out_oversample_h,int* out_oversample_v)
|
||||
{
|
||||
return ImFontAtlasBuildGetOversampleFactors(src,out_oversample_h,out_oversample_v);
|
||||
}
|
||||
CIMGUI_API bool igImFontAtlasGetMouseCursorTexData(ImFontAtlas* atlas,ImGuiMouseCursor cursor_type,ImVec2* out_offset,ImVec2* out_size,ImVec2 out_uv_border[2],ImVec2 out_uv_fill[2])
|
||||
{
|
||||
return ImFontAtlasGetMouseCursorTexData(atlas,cursor_type,out_offset,out_size,out_uv_border,out_uv_fill);
|
||||
}
|
||||
#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
|
||||
|
||||
|
||||
|
||||
/////////////////////////////manual written functions
|
||||
CIMGUI_API void igLogText(CONST char *fmt, ...)
|
||||
CIMGUI_API void igLogText(const char *fmt, ...)
|
||||
{
|
||||
char buffer[256];
|
||||
va_list args;
|
||||
@@ -5804,11 +5849,11 @@ CIMGUI_API void igLogText(CONST char *fmt, ...)
|
||||
|
||||
ImGui::LogText("%s", buffer);
|
||||
}
|
||||
CIMGUI_API void ImGuiTextBuffer_appendf(struct ImGuiTextBuffer *buffer, const char *fmt, ...)
|
||||
CIMGUI_API void ImGuiTextBuffer_appendf(ImGuiTextBuffer *self, const char *fmt, ...)
|
||||
{
|
||||
va_list args;
|
||||
va_start(args, fmt);
|
||||
buffer->appendfv(fmt, args);
|
||||
self->appendfv(fmt, args);
|
||||
va_end(args);
|
||||
}
|
||||
|
||||
|
372
cimgui.h
372
cimgui.h
@@ -1,6 +1,7 @@
|
||||
//This file is automatically generated by generator.lua from https://github.com/cimgui/cimgui
|
||||
//based on imgui.h file version "1.91.4" 19140 from Dear ImGui https://github.com/ocornut/imgui
|
||||
//based on imgui.h file version "1.91.9" 19190 from Dear ImGui https://github.com/ocornut/imgui
|
||||
//with imgui_internal.h api
|
||||
//with imgui_freetype.h api
|
||||
//docking branch
|
||||
#ifndef CIMGUI_INCLUDED
|
||||
#define CIMGUI_INCLUDED
|
||||
@@ -81,12 +82,13 @@ typedef struct ImGuiViewport ImGuiViewport;
|
||||
typedef struct ImGuiWindowClass ImGuiWindowClass;
|
||||
typedef struct ImBitVector ImBitVector;
|
||||
typedef struct ImRect ImRect;
|
||||
typedef struct ImGuiTextIndex ImGuiTextIndex;
|
||||
typedef struct ImDrawDataBuilder ImDrawDataBuilder;
|
||||
typedef struct ImGuiBoxSelectState ImGuiBoxSelectState;
|
||||
typedef struct ImGuiColorMod ImGuiColorMod;
|
||||
typedef struct ImGuiContextHook ImGuiContextHook;
|
||||
typedef struct ImGuiDataVarInfo ImGuiDataVarInfo;
|
||||
typedef struct ImGuiDataTypeInfo ImGuiDataTypeInfo;
|
||||
typedef struct ImGuiDeactivatedItemData ImGuiDeactivatedItemData;
|
||||
typedef struct ImGuiDockContext ImGuiDockContext;
|
||||
typedef struct ImGuiDockRequest ImGuiDockRequest;
|
||||
typedef struct ImGuiDockNode ImGuiDockNode;
|
||||
@@ -109,6 +111,7 @@ typedef struct ImGuiOldColumns ImGuiOldColumns;
|
||||
typedef struct ImGuiPopupData ImGuiPopupData;
|
||||
typedef struct ImGuiSettingsHandler ImGuiSettingsHandler;
|
||||
typedef struct ImGuiStyleMod ImGuiStyleMod;
|
||||
typedef struct ImGuiStyleVarInfo ImGuiStyleVarInfo;
|
||||
typedef struct ImGuiTabBar ImGuiTabBar;
|
||||
typedef struct ImGuiTabItem ImGuiTabItem;
|
||||
typedef struct ImGuiTable ImGuiTable;
|
||||
@@ -215,7 +218,18 @@ typedef ImU64 ImTextureID;
|
||||
typedef unsigned short ImDrawIdx;
|
||||
typedef unsigned int ImWchar32;
|
||||
typedef unsigned short ImWchar16;
|
||||
|
||||
#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
|
||||
|
||||
typedef ImS64 ImGuiSelectionUserData;
|
||||
typedef int (*ImGuiInputTextCallback)(ImGuiInputTextCallbackData* data);
|
||||
typedef void (*ImGuiSizeCallback)(ImGuiSizeCallbackData* data);
|
||||
@@ -256,12 +270,12 @@ typedef enum {
|
||||
ImGuiWindowFlags_NoNav = ImGuiWindowFlags_NoNavInputs | ImGuiWindowFlags_NoNavFocus,
|
||||
ImGuiWindowFlags_NoDecoration = ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoScrollbar | ImGuiWindowFlags_NoCollapse,
|
||||
ImGuiWindowFlags_NoInputs = ImGuiWindowFlags_NoMouseInputs | ImGuiWindowFlags_NoNavInputs | ImGuiWindowFlags_NoNavFocus,
|
||||
ImGuiWindowFlags_DockNodeHost = 1 << 23,
|
||||
ImGuiWindowFlags_ChildWindow = 1 << 24,
|
||||
ImGuiWindowFlags_Tooltip = 1 << 25,
|
||||
ImGuiWindowFlags_Popup = 1 << 26,
|
||||
ImGuiWindowFlags_Modal = 1 << 27,
|
||||
ImGuiWindowFlags_ChildMenu = 1 << 28,
|
||||
ImGuiWindowFlags_DockNodeHost = 1 << 29,
|
||||
}ImGuiWindowFlags_;
|
||||
typedef enum {
|
||||
ImGuiChildFlags_None = 0,
|
||||
@@ -303,12 +317,13 @@ typedef enum {
|
||||
ImGuiInputTextFlags_DisplayEmptyRefVal = 1 << 14,
|
||||
ImGuiInputTextFlags_NoHorizontalScroll = 1 << 15,
|
||||
ImGuiInputTextFlags_NoUndoRedo = 1 << 16,
|
||||
ImGuiInputTextFlags_CallbackCompletion = 1 << 17,
|
||||
ImGuiInputTextFlags_CallbackHistory = 1 << 18,
|
||||
ImGuiInputTextFlags_CallbackAlways = 1 << 19,
|
||||
ImGuiInputTextFlags_CallbackCharFilter = 1 << 20,
|
||||
ImGuiInputTextFlags_CallbackResize = 1 << 21,
|
||||
ImGuiInputTextFlags_CallbackEdit = 1 << 22,
|
||||
ImGuiInputTextFlags_ElideLeft = 1 << 17,
|
||||
ImGuiInputTextFlags_CallbackCompletion = 1 << 18,
|
||||
ImGuiInputTextFlags_CallbackHistory = 1 << 19,
|
||||
ImGuiInputTextFlags_CallbackAlways = 1 << 20,
|
||||
ImGuiInputTextFlags_CallbackCharFilter = 1 << 21,
|
||||
ImGuiInputTextFlags_CallbackResize = 1 << 22,
|
||||
ImGuiInputTextFlags_CallbackEdit = 1 << 23,
|
||||
}ImGuiInputTextFlags_;
|
||||
typedef enum {
|
||||
ImGuiTreeNodeFlags_None = 0,
|
||||
@@ -325,9 +340,10 @@ typedef enum {
|
||||
ImGuiTreeNodeFlags_FramePadding = 1 << 10,
|
||||
ImGuiTreeNodeFlags_SpanAvailWidth = 1 << 11,
|
||||
ImGuiTreeNodeFlags_SpanFullWidth = 1 << 12,
|
||||
ImGuiTreeNodeFlags_SpanTextWidth = 1 << 13,
|
||||
ImGuiTreeNodeFlags_SpanLabelWidth = 1 << 13,
|
||||
ImGuiTreeNodeFlags_SpanAllColumns = 1 << 14,
|
||||
ImGuiTreeNodeFlags_NavLeftJumpsBackHere = 1 << 15,
|
||||
ImGuiTreeNodeFlags_LabelSpanAllColumns = 1 << 15,
|
||||
ImGuiTreeNodeFlags_NavLeftJumpsBackHere = 1 << 17,
|
||||
ImGuiTreeNodeFlags_CollapsingHeader = ImGuiTreeNodeFlags_Framed | ImGuiTreeNodeFlags_NoTreePushOnOpen | ImGuiTreeNodeFlags_NoAutoOpenOnLog,
|
||||
}ImGuiTreeNodeFlags_;
|
||||
typedef enum {
|
||||
@@ -460,6 +476,7 @@ typedef enum {
|
||||
ImGuiDataType_Float,
|
||||
ImGuiDataType_Double,
|
||||
ImGuiDataType_Bool,
|
||||
ImGuiDataType_String,
|
||||
ImGuiDataType_COUNT
|
||||
}ImGuiDataType_;
|
||||
typedef enum {
|
||||
@@ -477,6 +494,7 @@ ImGuiSortDirection_Descending=2,
|
||||
}ImGuiSortDirection;
|
||||
typedef enum {
|
||||
ImGuiKey_None=0,
|
||||
ImGuiKey_NamedKey_BEGIN=512,
|
||||
ImGuiKey_Tab=512,
|
||||
ImGuiKey_LeftArrow=513,
|
||||
ImGuiKey_RightArrow=514,
|
||||
@@ -596,53 +614,50 @@ ImGuiKey_KeypadEnter=627,
|
||||
ImGuiKey_KeypadEqual=628,
|
||||
ImGuiKey_AppBack=629,
|
||||
ImGuiKey_AppForward=630,
|
||||
ImGuiKey_GamepadStart=631,
|
||||
ImGuiKey_GamepadBack=632,
|
||||
ImGuiKey_GamepadFaceLeft=633,
|
||||
ImGuiKey_GamepadFaceRight=634,
|
||||
ImGuiKey_GamepadFaceUp=635,
|
||||
ImGuiKey_GamepadFaceDown=636,
|
||||
ImGuiKey_GamepadDpadLeft=637,
|
||||
ImGuiKey_GamepadDpadRight=638,
|
||||
ImGuiKey_GamepadDpadUp=639,
|
||||
ImGuiKey_GamepadDpadDown=640,
|
||||
ImGuiKey_GamepadL1=641,
|
||||
ImGuiKey_GamepadR1=642,
|
||||
ImGuiKey_GamepadL2=643,
|
||||
ImGuiKey_GamepadR2=644,
|
||||
ImGuiKey_GamepadL3=645,
|
||||
ImGuiKey_GamepadR3=646,
|
||||
ImGuiKey_GamepadLStickLeft=647,
|
||||
ImGuiKey_GamepadLStickRight=648,
|
||||
ImGuiKey_GamepadLStickUp=649,
|
||||
ImGuiKey_GamepadLStickDown=650,
|
||||
ImGuiKey_GamepadRStickLeft=651,
|
||||
ImGuiKey_GamepadRStickRight=652,
|
||||
ImGuiKey_GamepadRStickUp=653,
|
||||
ImGuiKey_GamepadRStickDown=654,
|
||||
ImGuiKey_MouseLeft=655,
|
||||
ImGuiKey_MouseRight=656,
|
||||
ImGuiKey_MouseMiddle=657,
|
||||
ImGuiKey_MouseX1=658,
|
||||
ImGuiKey_MouseX2=659,
|
||||
ImGuiKey_MouseWheelX=660,
|
||||
ImGuiKey_MouseWheelY=661,
|
||||
ImGuiKey_ReservedForModCtrl=662,
|
||||
ImGuiKey_ReservedForModShift=663,
|
||||
ImGuiKey_ReservedForModAlt=664,
|
||||
ImGuiKey_ReservedForModSuper=665,
|
||||
ImGuiKey_COUNT=666,
|
||||
ImGuiKey_Oem102=631,
|
||||
ImGuiKey_GamepadStart=632,
|
||||
ImGuiKey_GamepadBack=633,
|
||||
ImGuiKey_GamepadFaceLeft=634,
|
||||
ImGuiKey_GamepadFaceRight=635,
|
||||
ImGuiKey_GamepadFaceUp=636,
|
||||
ImGuiKey_GamepadFaceDown=637,
|
||||
ImGuiKey_GamepadDpadLeft=638,
|
||||
ImGuiKey_GamepadDpadRight=639,
|
||||
ImGuiKey_GamepadDpadUp=640,
|
||||
ImGuiKey_GamepadDpadDown=641,
|
||||
ImGuiKey_GamepadL1=642,
|
||||
ImGuiKey_GamepadR1=643,
|
||||
ImGuiKey_GamepadL2=644,
|
||||
ImGuiKey_GamepadR2=645,
|
||||
ImGuiKey_GamepadL3=646,
|
||||
ImGuiKey_GamepadR3=647,
|
||||
ImGuiKey_GamepadLStickLeft=648,
|
||||
ImGuiKey_GamepadLStickRight=649,
|
||||
ImGuiKey_GamepadLStickUp=650,
|
||||
ImGuiKey_GamepadLStickDown=651,
|
||||
ImGuiKey_GamepadRStickLeft=652,
|
||||
ImGuiKey_GamepadRStickRight=653,
|
||||
ImGuiKey_GamepadRStickUp=654,
|
||||
ImGuiKey_GamepadRStickDown=655,
|
||||
ImGuiKey_MouseLeft=656,
|
||||
ImGuiKey_MouseRight=657,
|
||||
ImGuiKey_MouseMiddle=658,
|
||||
ImGuiKey_MouseX1=659,
|
||||
ImGuiKey_MouseX2=660,
|
||||
ImGuiKey_MouseWheelX=661,
|
||||
ImGuiKey_MouseWheelY=662,
|
||||
ImGuiKey_ReservedForModCtrl=663,
|
||||
ImGuiKey_ReservedForModShift=664,
|
||||
ImGuiKey_ReservedForModAlt=665,
|
||||
ImGuiKey_ReservedForModSuper=666,
|
||||
ImGuiKey_NamedKey_END=667,
|
||||
ImGuiMod_None=0,
|
||||
ImGuiMod_Ctrl=1 << 12,
|
||||
ImGuiMod_Shift=1 << 13,
|
||||
ImGuiMod_Alt=1 << 14,
|
||||
ImGuiMod_Super=1 << 15,
|
||||
ImGuiMod_Mask_=0xF000,
|
||||
ImGuiKey_NamedKey_BEGIN=512,
|
||||
ImGuiKey_NamedKey_END=ImGuiKey_COUNT,
|
||||
ImGuiKey_NamedKey_COUNT=ImGuiKey_NamedKey_END - ImGuiKey_NamedKey_BEGIN,
|
||||
ImGuiKey_KeysData_SIZE=ImGuiKey_NamedKey_COUNT,
|
||||
ImGuiKey_KeysData_OFFSET=ImGuiKey_NamedKey_BEGIN,
|
||||
}ImGuiKey;
|
||||
typedef enum {
|
||||
ImGuiInputFlags_None = 0,
|
||||
@@ -765,6 +780,7 @@ typedef enum {
|
||||
ImGuiStyleVar_ScrollbarRounding,
|
||||
ImGuiStyleVar_GrabMinSize,
|
||||
ImGuiStyleVar_GrabRounding,
|
||||
ImGuiStyleVar_ImageBorderSize,
|
||||
ImGuiStyleVar_TabRounding,
|
||||
ImGuiStyleVar_TabBorderSize,
|
||||
ImGuiStyleVar_TabBarBorderSize,
|
||||
@@ -799,9 +815,10 @@ typedef enum {
|
||||
ImGuiColorEditFlags_NoSidePreview = 1 << 8,
|
||||
ImGuiColorEditFlags_NoDragDrop = 1 << 9,
|
||||
ImGuiColorEditFlags_NoBorder = 1 << 10,
|
||||
ImGuiColorEditFlags_AlphaOpaque = 1 << 11,
|
||||
ImGuiColorEditFlags_AlphaNoBg = 1 << 12,
|
||||
ImGuiColorEditFlags_AlphaPreviewHalf= 1 << 13,
|
||||
ImGuiColorEditFlags_AlphaBar = 1 << 16,
|
||||
ImGuiColorEditFlags_AlphaPreview = 1 << 17,
|
||||
ImGuiColorEditFlags_AlphaPreviewHalf= 1 << 18,
|
||||
ImGuiColorEditFlags_HDR = 1 << 19,
|
||||
ImGuiColorEditFlags_DisplayRGB = 1 << 20,
|
||||
ImGuiColorEditFlags_DisplayHSV = 1 << 21,
|
||||
@@ -813,6 +830,7 @@ typedef enum {
|
||||
ImGuiColorEditFlags_InputRGB = 1 << 27,
|
||||
ImGuiColorEditFlags_InputHSV = 1 << 28,
|
||||
ImGuiColorEditFlags_DefaultOptions_ = ImGuiColorEditFlags_Uint8 | ImGuiColorEditFlags_DisplayRGB | ImGuiColorEditFlags_InputRGB | ImGuiColorEditFlags_PickerHueBar,
|
||||
ImGuiColorEditFlags_AlphaMask_ = ImGuiColorEditFlags_NoAlpha | ImGuiColorEditFlags_AlphaOpaque | ImGuiColorEditFlags_AlphaNoBg | ImGuiColorEditFlags_AlphaPreviewHalf,
|
||||
ImGuiColorEditFlags_DisplayMask_ = ImGuiColorEditFlags_DisplayRGB | ImGuiColorEditFlags_DisplayHSV | ImGuiColorEditFlags_DisplayHex,
|
||||
ImGuiColorEditFlags_DataTypeMask_ = ImGuiColorEditFlags_Uint8 | ImGuiColorEditFlags_Float,
|
||||
ImGuiColorEditFlags_PickerMask_ = ImGuiColorEditFlags_PickerHueWheel | ImGuiColorEditFlags_PickerHueBar,
|
||||
@@ -826,6 +844,7 @@ typedef enum {
|
||||
ImGuiSliderFlags_WrapAround = 1 << 8,
|
||||
ImGuiSliderFlags_ClampOnInput = 1 << 9,
|
||||
ImGuiSliderFlags_ClampZeroRange = 1 << 10,
|
||||
ImGuiSliderFlags_NoSpeedTweaks = 1 << 11,
|
||||
ImGuiSliderFlags_AlwaysClamp = ImGuiSliderFlags_ClampOnInput | ImGuiSliderFlags_ClampZeroRange,
|
||||
ImGuiSliderFlags_InvalidMask_ = 0x7000000F,
|
||||
}ImGuiSliderFlags_;
|
||||
@@ -845,6 +864,8 @@ typedef enum {
|
||||
ImGuiMouseCursor_ResizeNESW,
|
||||
ImGuiMouseCursor_ResizeNWSE,
|
||||
ImGuiMouseCursor_Hand,
|
||||
ImGuiMouseCursor_Wait,
|
||||
ImGuiMouseCursor_Progress,
|
||||
ImGuiMouseCursor_NotAllowed,
|
||||
ImGuiMouseCursor_COUNT
|
||||
}ImGuiMouseCursor_;
|
||||
@@ -960,6 +981,7 @@ struct ImGuiStyle
|
||||
ImVec2 WindowPadding;
|
||||
float WindowRounding;
|
||||
float WindowBorderSize;
|
||||
float WindowBorderHoverPadding;
|
||||
ImVec2 WindowMinSize;
|
||||
ImVec2 WindowTitleAlign;
|
||||
ImGuiDir WindowMenuButtonPosition;
|
||||
@@ -981,9 +1003,11 @@ struct ImGuiStyle
|
||||
float GrabMinSize;
|
||||
float GrabRounding;
|
||||
float LogSliderDeadzone;
|
||||
float ImageBorderSize;
|
||||
float TabRounding;
|
||||
float TabBorderSize;
|
||||
float TabMinWidthForCloseButton;
|
||||
float TabCloseButtonMinWidthSelected;
|
||||
float TabCloseButtonMinWidthUnselected;
|
||||
float TabBarBorderSize;
|
||||
float TabBarOverlineSize;
|
||||
float TableAngledHeadersAngle;
|
||||
@@ -1057,6 +1081,7 @@ struct ImGuiIO
|
||||
bool ConfigDragClickToInputText;
|
||||
bool ConfigWindowsResizeFromEdges;
|
||||
bool ConfigWindowsMoveFromTitleBarOnly;
|
||||
bool ConfigWindowsCopyContentsWithCtrlC;
|
||||
bool ConfigScrollbarScrollByPage;
|
||||
float ConfigMemoryCompactTimer;
|
||||
float MouseDoubleClickTime;
|
||||
@@ -1070,6 +1095,7 @@ struct ImGuiIO
|
||||
bool ConfigErrorRecoveryEnableTooltip;
|
||||
bool ConfigDebugIsDebuggerPresent;
|
||||
bool ConfigDebugHighlightIdConflicts;
|
||||
bool ConfigDebugHighlightIdConflictsShowItemPicker;
|
||||
bool ConfigDebugBeginReturnValueOnce;
|
||||
bool ConfigDebugBeginReturnValueLoop;
|
||||
bool ConfigDebugIgnoreFocusLoss;
|
||||
@@ -1104,7 +1130,7 @@ struct ImGuiIO
|
||||
bool KeyAlt;
|
||||
bool KeySuper;
|
||||
ImGuiKeyChord KeyMods;
|
||||
ImGuiKeyData KeysData[ImGuiKey_KeysData_SIZE];
|
||||
ImGuiKeyData KeysData[ImGuiKey_NamedKey_COUNT];
|
||||
bool WantCaptureMouseUnlessPopupClose;
|
||||
ImVec2 MousePosPrev;
|
||||
ImVec2 MouseClickedPos[5];
|
||||
@@ -1114,6 +1140,7 @@ struct ImGuiIO
|
||||
ImU16 MouseClickedCount[5];
|
||||
ImU16 MouseClickedLastCount[5];
|
||||
bool MouseReleased[5];
|
||||
double MouseReleasedTime[5];
|
||||
bool MouseDownOwned[5];
|
||||
bool MouseDownOwnedUnlessPopupClose[5];
|
||||
bool MouseWheelRequestAxisSwap;
|
||||
@@ -1125,8 +1152,6 @@ struct ImGuiIO
|
||||
float PenPressure;
|
||||
bool AppFocusLost;
|
||||
bool AppAcceptingEvents;
|
||||
ImS8 BackendUsingLegacyKeyArrays;
|
||||
bool BackendUsingLegacyNavInputArray;
|
||||
ImWchar16 InputQueueSurrogate;
|
||||
ImVector_ImWchar InputQueueCharacters;
|
||||
};
|
||||
@@ -1399,17 +1424,17 @@ struct ImFontConfig
|
||||
void* FontData;
|
||||
int FontDataSize;
|
||||
bool FontDataOwnedByAtlas;
|
||||
bool MergeMode;
|
||||
bool PixelSnapH;
|
||||
int FontNo;
|
||||
float SizePixels;
|
||||
int OversampleH;
|
||||
int OversampleV;
|
||||
bool PixelSnapH;
|
||||
ImVec2 GlyphExtraSpacing;
|
||||
float SizePixels;
|
||||
ImVec2 GlyphOffset;
|
||||
const ImWchar* GlyphRanges;
|
||||
float GlyphMinAdvanceX;
|
||||
float GlyphMaxAdvanceX;
|
||||
bool MergeMode;
|
||||
float GlyphExtraAdvanceX;
|
||||
unsigned int FontBuilderFlags;
|
||||
float RasterizerMultiply;
|
||||
float RasterizerDensity;
|
||||
@@ -1435,9 +1460,10 @@ struct ImFontGlyphRangesBuilder
|
||||
typedef struct ImFontAtlasCustomRect ImFontAtlasCustomRect;
|
||||
struct ImFontAtlasCustomRect
|
||||
{
|
||||
unsigned short Width, Height;
|
||||
unsigned short X, Y;
|
||||
unsigned int GlyphID;
|
||||
unsigned short Width, Height;
|
||||
unsigned int GlyphID : 31;
|
||||
unsigned int GlyphColored : 1;
|
||||
float GlyphAdvanceX;
|
||||
ImVec2 GlyphOffset;
|
||||
ImFont* Font;
|
||||
@@ -1460,8 +1486,8 @@ struct ImFontAtlas
|
||||
ImTextureID TexID;
|
||||
int TexDesiredWidth;
|
||||
int TexGlyphPadding;
|
||||
bool Locked;
|
||||
void* UserData;
|
||||
bool Locked;
|
||||
bool TexReady;
|
||||
bool TexPixelsUseColors;
|
||||
unsigned char* TexPixelsAlpha8;
|
||||
@@ -1472,8 +1498,8 @@ struct ImFontAtlas
|
||||
ImVec2 TexUvWhitePixel;
|
||||
ImVector_ImFontPtr Fonts;
|
||||
ImVector_ImFontAtlasCustomRect CustomRects;
|
||||
ImVector_ImFontConfig ConfigData;
|
||||
ImVec4 TexUvLines[(63) + 1];
|
||||
ImVector_ImFontConfig Sources;
|
||||
ImVec4 TexUvLines[(32) + 1];
|
||||
const ImFontBuilderIO* FontBuilderIO;
|
||||
unsigned int FontBuilderFlags;
|
||||
int PackIdMouseCursors;
|
||||
@@ -1481,6 +1507,8 @@ struct ImFontAtlas
|
||||
};
|
||||
typedef struct ImVector_float {int Size;int Capacity;float* Data;} ImVector_float;
|
||||
|
||||
typedef struct ImVector_ImU16 {int Size;int Capacity;ImU16* Data;} ImVector_ImU16;
|
||||
|
||||
typedef struct ImVector_ImFontGlyph {int Size;int Capacity;ImFontGlyph* Data;} ImVector_ImFontGlyph;
|
||||
|
||||
struct ImFont
|
||||
@@ -1488,22 +1516,22 @@ struct ImFont
|
||||
ImVector_float IndexAdvanceX;
|
||||
float FallbackAdvanceX;
|
||||
float FontSize;
|
||||
ImVector_ImWchar IndexLookup;
|
||||
ImVector_ImU16 IndexLookup;
|
||||
ImVector_ImFontGlyph Glyphs;
|
||||
const ImFontGlyph* FallbackGlyph;
|
||||
ImFontGlyph* FallbackGlyph;
|
||||
ImFontAtlas* ContainerAtlas;
|
||||
const ImFontConfig* ConfigData;
|
||||
short ConfigDataCount;
|
||||
ImWchar FallbackChar;
|
||||
ImWchar EllipsisChar;
|
||||
ImFontConfig* Sources;
|
||||
short SourcesCount;
|
||||
short EllipsisCharCount;
|
||||
ImWchar EllipsisChar;
|
||||
ImWchar FallbackChar;
|
||||
float EllipsisWidth;
|
||||
float EllipsisCharStep;
|
||||
bool DirtyLookupTables;
|
||||
float Scale;
|
||||
float Ascent, Descent;
|
||||
int MetricsTotalSurface;
|
||||
ImU8 Used4kPagesMap[(0xFFFF +1)/4096/8];
|
||||
bool DirtyLookupTables;
|
||||
ImU8 Used8kPagesMap[(IM_UNICODE_CODEPOINT_MAX +1)/8192/8];
|
||||
};
|
||||
typedef enum {
|
||||
ImGuiViewportFlags_None = 0,
|
||||
@@ -1599,14 +1627,15 @@ struct ImGuiPlatformImeData
|
||||
};
|
||||
struct ImBitVector;
|
||||
struct ImRect;
|
||||
struct ImGuiTextIndex;
|
||||
struct ImDrawDataBuilder;
|
||||
struct ImDrawListSharedData;
|
||||
struct ImGuiBoxSelectState;
|
||||
struct ImGuiColorMod;
|
||||
struct ImGuiContext;
|
||||
struct ImGuiContextHook;
|
||||
struct ImGuiDataVarInfo;
|
||||
struct ImGuiDataTypeInfo;
|
||||
struct ImGuiDeactivatedItemData;
|
||||
struct ImGuiDockContext;
|
||||
struct ImGuiDockRequest;
|
||||
struct ImGuiDockNode;
|
||||
@@ -1629,6 +1658,7 @@ struct ImGuiOldColumns;
|
||||
struct ImGuiPopupData;
|
||||
struct ImGuiSettingsHandler;
|
||||
struct ImGuiStyleMod;
|
||||
struct ImGuiStyleVarInfo;
|
||||
struct ImGuiTabBar;
|
||||
struct ImGuiTabItem;
|
||||
struct ImGuiTable;
|
||||
@@ -1652,6 +1682,7 @@ typedef int ImGuiDebugLogFlags;
|
||||
typedef int ImGuiFocusRequestFlags;
|
||||
typedef int ImGuiItemStatusFlags;
|
||||
typedef int ImGuiOldColumnFlags;
|
||||
typedef int ImGuiLogFlags;
|
||||
typedef int ImGuiNavRenderCursorFlags;
|
||||
typedef int ImGuiNavMoveFlags;
|
||||
typedef int ImGuiNextItemDataFlags;
|
||||
@@ -1685,7 +1716,6 @@ struct ImBitVector
|
||||
ImVector_ImU32 Storage;
|
||||
};
|
||||
typedef int ImPoolIdx;
|
||||
typedef struct ImGuiTextIndex ImGuiTextIndex;
|
||||
typedef struct ImVector_int {int Size;int Capacity;int* Data;} ImVector_int;
|
||||
|
||||
struct ImGuiTextIndex
|
||||
@@ -1696,29 +1726,40 @@ struct ImGuiTextIndex
|
||||
struct ImDrawListSharedData
|
||||
{
|
||||
ImVec2 TexUvWhitePixel;
|
||||
const ImVec4* TexUvLines;
|
||||
ImFont* Font;
|
||||
float FontSize;
|
||||
float FontScale;
|
||||
float CurveTessellationTol;
|
||||
float CircleSegmentMaxError;
|
||||
ImVec4 ClipRectFullscreen;
|
||||
float InitialFringeScale;
|
||||
ImDrawListFlags InitialFlags;
|
||||
ImVec4 ClipRectFullscreen;
|
||||
ImVector_ImVec2 TempBuffer;
|
||||
ImVec2 ArcFastVtx[48];
|
||||
float ArcFastRadiusCutoff;
|
||||
ImU8 CircleSegmentCounts[64];
|
||||
const ImVec4* TexUvLines;
|
||||
};
|
||||
struct ImDrawDataBuilder
|
||||
{
|
||||
ImVector_ImDrawListPtr* Layers[2];
|
||||
ImVector_ImDrawListPtr LayerData1;
|
||||
};
|
||||
struct ImGuiDataVarInfo
|
||||
struct ImGuiStyleVarInfo
|
||||
{
|
||||
ImGuiDataType Type;
|
||||
ImU32 Count;
|
||||
ImU32 Offset;
|
||||
ImU32 Count : 8;
|
||||
ImGuiDataType DataType : 8;
|
||||
ImU32 Offset : 16;
|
||||
};
|
||||
struct ImGuiColorMod
|
||||
{
|
||||
ImGuiCol Col;
|
||||
ImVec4 BackupValue;
|
||||
};
|
||||
struct ImGuiStyleMod
|
||||
{
|
||||
ImGuiStyleVar VarIdx;
|
||||
union { int BackupInt[2]; float BackupFloat[2]; };
|
||||
};
|
||||
typedef struct ImGuiDataTypeStorage ImGuiDataTypeStorage;
|
||||
struct ImGuiDataTypeStorage
|
||||
@@ -1733,8 +1774,7 @@ struct ImGuiDataTypeInfo
|
||||
const char* ScanFmt;
|
||||
};
|
||||
typedef enum {
|
||||
ImGuiDataType_String = ImGuiDataType_COUNT + 1,
|
||||
ImGuiDataType_Pointer,
|
||||
ImGuiDataType_Pointer = ImGuiDataType_COUNT,
|
||||
ImGuiDataType_ID,
|
||||
}ImGuiDataTypePrivate_;
|
||||
typedef enum {
|
||||
@@ -1839,12 +1879,13 @@ typedef enum {
|
||||
ImGuiLayoutType_Vertical = 1
|
||||
}ImGuiLayoutType_;
|
||||
typedef enum {
|
||||
ImGuiLogType_None = 0,
|
||||
ImGuiLogType_TTY,
|
||||
ImGuiLogType_File,
|
||||
ImGuiLogType_Buffer,
|
||||
ImGuiLogType_Clipboard,
|
||||
}ImGuiLogType;
|
||||
ImGuiLogFlags_None = 0,
|
||||
ImGuiLogFlags_OutputTTY = 1 << 0,
|
||||
ImGuiLogFlags_OutputFile = 1 << 1,
|
||||
ImGuiLogFlags_OutputBuffer = 1 << 2,
|
||||
ImGuiLogFlags_OutputClipboard = 1 << 3,
|
||||
ImGuiLogFlags_OutputMask_ = ImGuiLogFlags_OutputTTY | ImGuiLogFlags_OutputFile | ImGuiLogFlags_OutputBuffer | ImGuiLogFlags_OutputClipboard,
|
||||
}ImGuiLogFlags_;
|
||||
typedef enum {
|
||||
ImGuiAxis_None = -1,
|
||||
ImGuiAxis_X = 0,
|
||||
@@ -1854,16 +1895,6 @@ typedef enum {
|
||||
ImGuiPlotType_Lines,
|
||||
ImGuiPlotType_Histogram,
|
||||
}ImGuiPlotType;
|
||||
struct ImGuiColorMod
|
||||
{
|
||||
ImGuiCol Col;
|
||||
ImVec4 BackupValue;
|
||||
};
|
||||
struct ImGuiStyleMod
|
||||
{
|
||||
ImGuiStyleVar VarIdx;
|
||||
union { int BackupInt[2]; float BackupFloat[2]; };
|
||||
};
|
||||
typedef struct ImGuiComboPreviewData ImGuiComboPreviewData;
|
||||
struct ImGuiComboPreviewData
|
||||
{
|
||||
@@ -1885,7 +1916,7 @@ struct ImGuiGroupData
|
||||
ImVec2 BackupCurrLineSize;
|
||||
float BackupCurrLineTextBaseOffset;
|
||||
ImGuiID BackupActiveIdIsAlive;
|
||||
bool BackupActiveIdPreviousFrameIsAlive;
|
||||
bool BackupDeactivatedIdIsAlive;
|
||||
bool BackupHoveredIdIsAlive;
|
||||
bool BackupIsSameLine;
|
||||
bool EmitItem;
|
||||
@@ -1912,19 +1943,20 @@ struct ImGuiInputTextState
|
||||
{
|
||||
ImGuiContext* Ctx;
|
||||
ImStbTexteditState* Stb;
|
||||
ImGuiInputTextFlags Flags;
|
||||
ImGuiID ID;
|
||||
int CurLenA;
|
||||
int TextLen;
|
||||
const char* TextSrc;
|
||||
ImVector_char TextA;
|
||||
ImVector_char InitialTextA;
|
||||
ImVector_char TextToRevertTo;
|
||||
ImVector_char CallbackTextBackup;
|
||||
int BufCapacityA;
|
||||
int BufCapacity;
|
||||
ImVec2 Scroll;
|
||||
float CursorAnim;
|
||||
bool CursorFollow;
|
||||
bool SelectedAllMouseLock;
|
||||
bool Edited;
|
||||
ImGuiInputTextFlags Flags;
|
||||
bool ReloadUserBuf;
|
||||
bool WantReloadUserBuf;
|
||||
int ReloadSelectionStart;
|
||||
int ReloadSelectionEnd;
|
||||
};
|
||||
@@ -1944,15 +1976,16 @@ typedef enum {
|
||||
ImGuiNextWindowDataFlags_HasFocus = 1 << 5,
|
||||
ImGuiNextWindowDataFlags_HasBgAlpha = 1 << 6,
|
||||
ImGuiNextWindowDataFlags_HasScroll = 1 << 7,
|
||||
ImGuiNextWindowDataFlags_HasChildFlags = 1 << 8,
|
||||
ImGuiNextWindowDataFlags_HasRefreshPolicy = 1 << 9,
|
||||
ImGuiNextWindowDataFlags_HasViewport = 1 << 10,
|
||||
ImGuiNextWindowDataFlags_HasDock = 1 << 11,
|
||||
ImGuiNextWindowDataFlags_HasWindowClass = 1 << 12,
|
||||
ImGuiNextWindowDataFlags_HasWindowFlags = 1 << 8,
|
||||
ImGuiNextWindowDataFlags_HasChildFlags = 1 << 9,
|
||||
ImGuiNextWindowDataFlags_HasRefreshPolicy = 1 << 10,
|
||||
ImGuiNextWindowDataFlags_HasViewport = 1 << 11,
|
||||
ImGuiNextWindowDataFlags_HasDock = 1 << 12,
|
||||
ImGuiNextWindowDataFlags_HasWindowClass = 1 << 13,
|
||||
}ImGuiNextWindowDataFlags_;
|
||||
struct ImGuiNextWindowData
|
||||
{
|
||||
ImGuiNextWindowDataFlags Flags;
|
||||
ImGuiNextWindowDataFlags HasFlags;
|
||||
ImGuiCond PosCond;
|
||||
ImGuiCond SizeCond;
|
||||
ImGuiCond CollapsedCond;
|
||||
@@ -1962,6 +1995,7 @@ struct ImGuiNextWindowData
|
||||
ImVec2 SizeVal;
|
||||
ImVec2 ContentSizeVal;
|
||||
ImVec2 ScrollVal;
|
||||
ImGuiWindowFlags WindowFlags;
|
||||
ImGuiChildFlags ChildFlags;
|
||||
bool PosUndock;
|
||||
bool CollapsedVal;
|
||||
@@ -2036,6 +2070,7 @@ struct ImGuiWindowStackData
|
||||
ImGuiLastItemData ParentLastItemDataBackup;
|
||||
ImGuiErrorRecoveryState StackSizesInBegin;
|
||||
bool DisabledOverrideReenable;
|
||||
float DisabledOverrideReenableAlphaBackup;
|
||||
};
|
||||
typedef struct ImGuiShrinkWidthItem ImGuiShrinkWidthItem;
|
||||
struct ImGuiShrinkWidthItem
|
||||
@@ -2050,6 +2085,13 @@ struct ImGuiPtrOrIndex
|
||||
void* Ptr;
|
||||
int Index;
|
||||
};
|
||||
struct ImGuiDeactivatedItemData
|
||||
{
|
||||
ImGuiID ID;
|
||||
int ElapseFrame;
|
||||
bool HasBeenEditedBefore;
|
||||
bool IsAlive;
|
||||
};
|
||||
typedef enum {
|
||||
ImGuiPopupPositionPolicy_Default,
|
||||
ImGuiPopupPositionPolicy_ComboBox,
|
||||
@@ -2572,10 +2614,11 @@ typedef enum {
|
||||
ImGuiDebugLogFlags_EventClipper = 1 << 5,
|
||||
ImGuiDebugLogFlags_EventSelection = 1 << 6,
|
||||
ImGuiDebugLogFlags_EventIO = 1 << 7,
|
||||
ImGuiDebugLogFlags_EventInputRouting = 1 << 8,
|
||||
ImGuiDebugLogFlags_EventDocking = 1 << 9,
|
||||
ImGuiDebugLogFlags_EventViewport = 1 << 10,
|
||||
ImGuiDebugLogFlags_EventMask_ = ImGuiDebugLogFlags_EventError | ImGuiDebugLogFlags_EventActiveId | ImGuiDebugLogFlags_EventFocus | ImGuiDebugLogFlags_EventPopup | ImGuiDebugLogFlags_EventNav | ImGuiDebugLogFlags_EventClipper | ImGuiDebugLogFlags_EventSelection | ImGuiDebugLogFlags_EventIO | ImGuiDebugLogFlags_EventInputRouting | ImGuiDebugLogFlags_EventDocking | ImGuiDebugLogFlags_EventViewport,
|
||||
ImGuiDebugLogFlags_EventFont = 1 << 8,
|
||||
ImGuiDebugLogFlags_EventInputRouting = 1 << 9,
|
||||
ImGuiDebugLogFlags_EventDocking = 1 << 10,
|
||||
ImGuiDebugLogFlags_EventViewport = 1 << 11,
|
||||
ImGuiDebugLogFlags_EventMask_ = ImGuiDebugLogFlags_EventError | ImGuiDebugLogFlags_EventActiveId | ImGuiDebugLogFlags_EventFocus | ImGuiDebugLogFlags_EventPopup | ImGuiDebugLogFlags_EventNav | ImGuiDebugLogFlags_EventClipper | ImGuiDebugLogFlags_EventSelection | ImGuiDebugLogFlags_EventIO | ImGuiDebugLogFlags_EventFont | ImGuiDebugLogFlags_EventInputRouting | ImGuiDebugLogFlags_EventDocking | ImGuiDebugLogFlags_EventViewport,
|
||||
ImGuiDebugLogFlags_OutputToTTY = 1 << 20,
|
||||
ImGuiDebugLogFlags_OutputToTestEngine = 1 << 21,
|
||||
}ImGuiDebugLogFlags_;
|
||||
@@ -2604,7 +2647,6 @@ struct ImGuiMetricsConfig
|
||||
bool ShowDrawCmdMesh;
|
||||
bool ShowDrawCmdBoundingBoxes;
|
||||
bool ShowTextEncodingViewer;
|
||||
bool ShowAtlasTintedWithTextColor;
|
||||
bool ShowDockingNodes;
|
||||
int ShowWindowsRectsType;
|
||||
int ShowTablesRectsType;
|
||||
@@ -2631,6 +2673,7 @@ struct ImGuiIDStackTool
|
||||
ImVector_ImGuiStackLevelInfo Results;
|
||||
bool CopyToClipboardOnCtrlC;
|
||||
float CopyToClipboardLastTime;
|
||||
ImGuiTextBuffer ResultPathBuf;
|
||||
};
|
||||
typedef void (*ImGuiContextHookCallback)(ImGuiContext* ctx, ImGuiContextHook* hook);
|
||||
typedef enum { ImGuiContextHookType_NewFramePre, ImGuiContextHookType_NewFramePost, ImGuiContextHookType_EndFramePre, ImGuiContextHookType_EndFramePost, ImGuiContextHookType_RenderPre, ImGuiContextHookType_RenderPost, ImGuiContextHookType_Shutdown, ImGuiContextHookType_PendingRemoval_ }ImGuiContextHookType;
|
||||
@@ -2716,9 +2759,9 @@ struct ImGuiContext
|
||||
int FrameCountEnded;
|
||||
int FrameCountPlatformEnded;
|
||||
int FrameCountRendered;
|
||||
ImGuiID WithinEndChildID;
|
||||
bool WithinFrameScope;
|
||||
bool WithinFrameScopeWithImplicitWindow;
|
||||
bool WithinEndChild;
|
||||
bool GcCompactAll;
|
||||
bool TestEngineHookItems;
|
||||
void* TestEngine;
|
||||
@@ -2733,7 +2776,7 @@ struct ImGuiContext
|
||||
ImVector_ImGuiWindowStackData CurrentWindowStack;
|
||||
ImGuiStorage WindowsById;
|
||||
int WindowsActiveCount;
|
||||
ImVec2 WindowsHoverPadding;
|
||||
float WindowsBorderHoverPadding;
|
||||
ImGuiID DebugBreakInWindow;
|
||||
ImGuiWindow* CurrentWindow;
|
||||
ImGuiWindow* HoveredWindow;
|
||||
@@ -2772,9 +2815,8 @@ struct ImGuiContext
|
||||
ImGuiWindow* ActiveIdWindow;
|
||||
ImGuiInputSource ActiveIdSource;
|
||||
ImGuiID ActiveIdPreviousFrame;
|
||||
bool ActiveIdPreviousFrameIsAlive;
|
||||
bool ActiveIdPreviousFrameHasBeenEditedBefore;
|
||||
ImGuiWindow* ActiveIdPreviousFrameWindow;
|
||||
ImGuiDeactivatedItemData DeactivatedItemData;
|
||||
ImGuiDataTypeStorage ActiveIdValueOnActivation;
|
||||
ImGuiID LastActiveId;
|
||||
float LastActiveIdTimer;
|
||||
double LastKeyModsChangeTime;
|
||||
@@ -2965,7 +3007,8 @@ struct ImGuiContext
|
||||
ImGuiID HookIdNext;
|
||||
const char* LocalizationTable[ImGuiLocKey_COUNT];
|
||||
bool LogEnabled;
|
||||
ImGuiLogType LogType;
|
||||
ImGuiLogFlags LogFlags;
|
||||
ImGuiWindow* LogWindow;
|
||||
ImFileHandle LogFile;
|
||||
ImGuiTextBuffer LogBuffer;
|
||||
const char* LogNextPrefix;
|
||||
@@ -3047,6 +3090,10 @@ struct ImGuiWindowTempData
|
||||
ImGuiLayoutType LayoutType;
|
||||
ImGuiLayoutType ParentLayoutType;
|
||||
ImU32 ModalDimBgColor;
|
||||
ImGuiItemStatusFlags WindowItemStatusFlags;
|
||||
ImGuiItemStatusFlags ChildItemStatusFlags;
|
||||
ImGuiItemStatusFlags DockTabItemStatusFlags;
|
||||
ImRect DockTabItemRect;
|
||||
float ItemWidth;
|
||||
float TextWrapPos;
|
||||
ImVector_float ItemWidthStack;
|
||||
@@ -3091,6 +3138,8 @@ struct ImGuiWindow
|
||||
ImVec2 ScrollTargetEdgeSnapDist;
|
||||
ImVec2 ScrollbarSizes;
|
||||
bool ScrollbarX, ScrollbarY;
|
||||
bool ScrollbarXStabilizeEnabled;
|
||||
ImU8 ScrollbarXStabilizeToggledHistory;
|
||||
bool ViewportOwned;
|
||||
bool Active;
|
||||
bool WasActive;
|
||||
@@ -3142,7 +3191,9 @@ struct ImGuiWindow
|
||||
ImGuiStorage StateStorage;
|
||||
ImVector_ImGuiOldColumns ColumnsStorage;
|
||||
float FontWindowScale;
|
||||
float FontWindowScaleParents;
|
||||
float FontDpiScale;
|
||||
float FontRefSize;
|
||||
int SettingsOffset;
|
||||
ImDrawList* DrawList;
|
||||
ImDrawList DrawListInst;
|
||||
@@ -3171,8 +3222,6 @@ struct ImGuiWindow
|
||||
ImGuiDockNode* DockNode;
|
||||
ImGuiDockNode* DockNodeAsHost;
|
||||
ImGuiID DockId;
|
||||
ImGuiItemStatusFlags DockTabItemStatusFlags;
|
||||
ImRect DockTabItemRect;
|
||||
};
|
||||
typedef enum {
|
||||
ImGuiTabBarFlags_DockNode = 1 << 20,
|
||||
@@ -3183,7 +3232,8 @@ typedef enum {
|
||||
ImGuiTabItemFlags_SectionMask_ = ImGuiTabItemFlags_Leading | ImGuiTabItemFlags_Trailing,
|
||||
ImGuiTabItemFlags_NoCloseButton = 1 << 20,
|
||||
ImGuiTabItemFlags_Button = 1 << 21,
|
||||
ImGuiTabItemFlags_Unsorted = 1 << 22,
|
||||
ImGuiTabItemFlags_Invisible = 1 << 22,
|
||||
ImGuiTabItemFlags_Unsorted = 1 << 23,
|
||||
}ImGuiTabItemFlagsPrivate_;
|
||||
struct ImGuiTabItem
|
||||
{
|
||||
@@ -3413,6 +3463,7 @@ struct ImGuiTable
|
||||
ImGuiTableDrawChannelIdx DummyDrawChannel;
|
||||
ImGuiTableDrawChannelIdx Bg2DrawChannelCurrent;
|
||||
ImGuiTableDrawChannelIdx Bg2DrawChannelUnfrozen;
|
||||
ImS8 NavLayer;
|
||||
bool IsLayoutLocked;
|
||||
bool IsInsideRow;
|
||||
bool IsInitializing;
|
||||
@@ -3462,7 +3513,7 @@ struct ImGuiTableColumnSettings
|
||||
ImGuiTableColumnIdx DisplayOrder;
|
||||
ImGuiTableColumnIdx SortOrder;
|
||||
ImU8 SortDirection : 2;
|
||||
ImU8 IsEnabled : 1;
|
||||
ImS8 IsEnabled : 2;
|
||||
ImU8 IsStretch : 1;
|
||||
};
|
||||
struct ImGuiTableSettings
|
||||
@@ -3478,6 +3529,22 @@ struct ImFontBuilderIO
|
||||
{
|
||||
bool (*FontBuilder_Build)(ImFontAtlas* atlas);
|
||||
};
|
||||
#ifdef IMGUI_ENABLE_FREETYPE
|
||||
struct ImFontAtlas;
|
||||
struct ImFontBuilderIO;
|
||||
typedef enum {
|
||||
ImGuiFreeTypeBuilderFlags_NoHinting = 1 << 0,
|
||||
ImGuiFreeTypeBuilderFlags_NoAutoHint = 1 << 1,
|
||||
ImGuiFreeTypeBuilderFlags_ForceAutoHint = 1 << 2,
|
||||
ImGuiFreeTypeBuilderFlags_LightHinting = 1 << 3,
|
||||
ImGuiFreeTypeBuilderFlags_MonoHinting = 1 << 4,
|
||||
ImGuiFreeTypeBuilderFlags_Bold = 1 << 5,
|
||||
ImGuiFreeTypeBuilderFlags_Oblique = 1 << 6,
|
||||
ImGuiFreeTypeBuilderFlags_Monochrome = 1 << 7,
|
||||
ImGuiFreeTypeBuilderFlags_LoadColor = 1 << 8,
|
||||
ImGuiFreeTypeBuilderFlags_Bitmap = 1 << 9
|
||||
}ImGuiFreeTypeBuilderFlags;
|
||||
#endif
|
||||
#define IMGUI_HAS_DOCK 1
|
||||
|
||||
#define ImDrawCallback_ResetRenderState (ImDrawCallback)(-8)
|
||||
@@ -3544,6 +3611,7 @@ typedef ImVector<ImGuiViewportP*> ImVector_ImGuiViewportPPtr;
|
||||
typedef ImVector<ImGuiWindow*> ImVector_ImGuiWindowPtr;
|
||||
typedef ImVector<ImGuiWindowStackData> ImVector_ImGuiWindowStackData;
|
||||
typedef ImVector<ImTextureID> ImVector_ImTextureID;
|
||||
typedef ImVector<ImU16> ImVector_ImU16;
|
||||
typedef ImVector<ImU32> ImVector_ImU32;
|
||||
typedef ImVector<ImU8> ImVector_ImU8;
|
||||
typedef ImVector<ImVec2> ImVector_ImVec2;
|
||||
@@ -3566,7 +3634,7 @@ CIMGUI_API void igDestroyContext(ImGuiContext* ctx);
|
||||
CIMGUI_API ImGuiContext* igGetCurrentContext(void);
|
||||
CIMGUI_API void igSetCurrentContext(ImGuiContext* ctx);
|
||||
CIMGUI_API ImGuiIO* igGetIO(void);
|
||||
CIMGUI_API ImGuiPlatformIO* igGetPlatformIO(void);
|
||||
CIMGUI_API ImGuiPlatformIO* igGetPlatformIO_Nil(void);
|
||||
CIMGUI_API ImGuiStyle* igGetStyle(void);
|
||||
CIMGUI_API void igNewFrame(void);
|
||||
CIMGUI_API void igEndFrame(void);
|
||||
@@ -3714,7 +3782,8 @@ CIMGUI_API void igProgressBar(float fraction,const ImVec2 size_arg,const char* o
|
||||
CIMGUI_API void igBullet(void);
|
||||
CIMGUI_API bool igTextLink(const char* label);
|
||||
CIMGUI_API void igTextLinkOpenURL(const char* label,const char* 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);
|
||||
CIMGUI_API void igImage(ImTextureID user_texture_id,const ImVec2 image_size,const ImVec2 uv0,const ImVec2 uv1);
|
||||
CIMGUI_API void igImageWithBg(ImTextureID user_texture_id,const ImVec2 image_size,const ImVec2 uv0,const ImVec2 uv1,const ImVec4 bg_col,const ImVec4 tint_col);
|
||||
CIMGUI_API bool igImageButton(const char* str_id,ImTextureID user_texture_id,const ImVec2 image_size,const ImVec2 uv0,const ImVec2 uv1,const ImVec4 bg_col,const ImVec4 tint_col);
|
||||
CIMGUI_API bool igBeginCombo(const char* label,const char* preview_value,ImGuiComboFlags flags);
|
||||
CIMGUI_API void igEndCombo(void);
|
||||
@@ -3936,6 +4005,7 @@ CIMGUI_API bool igIsMouseDown_Nil(ImGuiMouseButton button);
|
||||
CIMGUI_API bool igIsMouseClicked_Bool(ImGuiMouseButton button,bool repeat);
|
||||
CIMGUI_API bool igIsMouseReleased_Nil(ImGuiMouseButton button);
|
||||
CIMGUI_API bool igIsMouseDoubleClicked_Nil(ImGuiMouseButton button);
|
||||
CIMGUI_API bool igIsMouseReleasedWithDelay(ImGuiMouseButton button,float delay);
|
||||
CIMGUI_API int igGetMouseClickedCount(ImGuiMouseButton button);
|
||||
CIMGUI_API bool igIsMouseHoveringRect(const ImVec2 r_min,const ImVec2 r_max,bool clip);
|
||||
CIMGUI_API bool igIsMousePosValid(const ImVec2* mouse_pos);
|
||||
@@ -4030,6 +4100,7 @@ CIMGUI_API const char* ImGuiTextBuffer_end(ImGuiTextBuffer* self);
|
||||
CIMGUI_API int ImGuiTextBuffer_size(ImGuiTextBuffer* self);
|
||||
CIMGUI_API bool ImGuiTextBuffer_empty(ImGuiTextBuffer* self);
|
||||
CIMGUI_API void ImGuiTextBuffer_clear(ImGuiTextBuffer* self);
|
||||
CIMGUI_API void ImGuiTextBuffer_resize(ImGuiTextBuffer* self,int size);
|
||||
CIMGUI_API void ImGuiTextBuffer_reserve(ImGuiTextBuffer* self,int capacity);
|
||||
CIMGUI_API const char* ImGuiTextBuffer_c_str(ImGuiTextBuffer* self);
|
||||
CIMGUI_API void ImGuiTextBuffer_append(ImGuiTextBuffer* self,const char* str,const char* str_end);
|
||||
@@ -4115,7 +4186,7 @@ CIMGUI_API void ImDrawList_AddNgonFilled(ImDrawList* self,const ImVec2 center,fl
|
||||
CIMGUI_API void ImDrawList_AddEllipse(ImDrawList* self,const ImVec2 center,const ImVec2 radius,ImU32 col,float rot,int num_segments,float thickness);
|
||||
CIMGUI_API void ImDrawList_AddEllipseFilled(ImDrawList* self,const ImVec2 center,const ImVec2 radius,ImU32 col,float rot,int num_segments);
|
||||
CIMGUI_API void ImDrawList_AddText_Vec2(ImDrawList* self,const ImVec2 pos,ImU32 col,const char* text_begin,const char* text_end);
|
||||
CIMGUI_API void ImDrawList_AddText_FontPtr(ImDrawList* self,const ImFont* font,float font_size,const ImVec2 pos,ImU32 col,const char* text_begin,const char* text_end,float wrap_width,const ImVec4* cpu_fine_clip_rect);
|
||||
CIMGUI_API void ImDrawList_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);
|
||||
CIMGUI_API void ImDrawList_AddBezierCubic(ImDrawList* self,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,const ImVec2 p4,ImU32 col,float thickness,int num_segments);
|
||||
CIMGUI_API void ImDrawList_AddBezierQuadratic(ImDrawList* self,const ImVec2 p1,const ImVec2 p2,const ImVec2 p3,ImU32 col,float thickness,int num_segments);
|
||||
CIMGUI_API void ImDrawList_AddPolyline(ImDrawList* self,const ImVec2* points,int num_points,ImU32 col,ImDrawFlags flags,float thickness);
|
||||
@@ -4190,8 +4261,8 @@ CIMGUI_API ImFont* ImFontAtlas_AddFontFromMemoryTTF(ImFontAtlas* self,void* font
|
||||
CIMGUI_API ImFont* ImFontAtlas_AddFontFromMemoryCompressedTTF(ImFontAtlas* self,const void* compressed_font_data,int compressed_font_data_size,float size_pixels,const ImFontConfig* font_cfg,const ImWchar* glyph_ranges);
|
||||
CIMGUI_API ImFont* ImFontAtlas_AddFontFromMemoryCompressedBase85TTF(ImFontAtlas* self,const char* compressed_font_data_base85,float size_pixels,const ImFontConfig* font_cfg,const ImWchar* glyph_ranges);
|
||||
CIMGUI_API void ImFontAtlas_ClearInputData(ImFontAtlas* self);
|
||||
CIMGUI_API void ImFontAtlas_ClearTexData(ImFontAtlas* self);
|
||||
CIMGUI_API void ImFontAtlas_ClearFonts(ImFontAtlas* self);
|
||||
CIMGUI_API void ImFontAtlas_ClearTexData(ImFontAtlas* self);
|
||||
CIMGUI_API void ImFontAtlas_Clear(ImFontAtlas* self);
|
||||
CIMGUI_API bool ImFontAtlas_Build(ImFontAtlas* self);
|
||||
CIMGUI_API void ImFontAtlas_GetTexDataAsAlpha8(ImFontAtlas* self,unsigned char** out_pixels,int* out_width,int* out_height,int* out_bytes_per_pixel);
|
||||
@@ -4211,11 +4282,10 @@ CIMGUI_API int ImFontAtlas_AddCustomRectRegular(ImFontAtlas* self,int width,int
|
||||
CIMGUI_API int ImFontAtlas_AddCustomRectFontGlyph(ImFontAtlas* self,ImFont* font,ImWchar id,int width,int height,float advance_x,const ImVec2 offset);
|
||||
CIMGUI_API ImFontAtlasCustomRect* ImFontAtlas_GetCustomRectByIndex(ImFontAtlas* self,int index);
|
||||
CIMGUI_API void ImFontAtlas_CalcCustomRectUV(ImFontAtlas* self,const ImFontAtlasCustomRect* rect,ImVec2* out_uv_min,ImVec2* out_uv_max);
|
||||
CIMGUI_API bool ImFontAtlas_GetMouseCursorTexData(ImFontAtlas* self,ImGuiMouseCursor cursor,ImVec2* out_offset,ImVec2* out_size,ImVec2 out_uv_border[2],ImVec2 out_uv_fill[2]);
|
||||
CIMGUI_API ImFont* ImFont_ImFont(void);
|
||||
CIMGUI_API void ImFont_destroy(ImFont* self);
|
||||
CIMGUI_API const ImFontGlyph* ImFont_FindGlyph(ImFont* self,ImWchar c);
|
||||
CIMGUI_API const ImFontGlyph* ImFont_FindGlyphNoFallback(ImFont* self,ImWchar c);
|
||||
CIMGUI_API ImFontGlyph* ImFont_FindGlyph(ImFont* self,ImWchar c);
|
||||
CIMGUI_API ImFontGlyph* ImFont_FindGlyphNoFallback(ImFont* self,ImWchar c);
|
||||
CIMGUI_API float ImFont_GetCharAdvance(ImFont* self,ImWchar c);
|
||||
CIMGUI_API bool ImFont_IsLoaded(ImFont* self);
|
||||
CIMGUI_API const char* ImFont_GetDebugName(ImFont* self);
|
||||
@@ -4228,7 +4298,6 @@ CIMGUI_API void ImFont_ClearOutputData(ImFont* self);
|
||||
CIMGUI_API void ImFont_GrowIndex(ImFont* self,int new_size);
|
||||
CIMGUI_API void ImFont_AddGlyph(ImFont* self,const ImFontConfig* src_cfg,ImWchar c,float x0,float y0,float x1,float y1,float u0,float v0,float u1,float v1,float advance_x);
|
||||
CIMGUI_API void ImFont_AddRemapChar(ImFont* self,ImWchar dst,ImWchar src,bool overwrite_dst);
|
||||
CIMGUI_API void ImFont_SetGlyphVisible(ImFont* self,ImWchar c,bool visible);
|
||||
CIMGUI_API bool ImFont_IsGlyphRangeUnused(ImFont* self,unsigned int c_begin,unsigned int c_last);
|
||||
CIMGUI_API ImGuiViewport* ImGuiViewport_ImGuiViewport(void);
|
||||
CIMGUI_API void ImGuiViewport_destroy(ImGuiViewport* self);
|
||||
@@ -4247,6 +4316,7 @@ CIMGUI_API ImU32 igImAlphaBlendColors(ImU32 col_a,ImU32 col_b);
|
||||
CIMGUI_API bool igImIsPowerOfTwo_Int(int v);
|
||||
CIMGUI_API bool igImIsPowerOfTwo_U64(ImU64 v);
|
||||
CIMGUI_API int igImUpperPowerOfTwo(int v);
|
||||
CIMGUI_API unsigned int igImCountSetBits(unsigned int v);
|
||||
CIMGUI_API int igImStricmp(const char* str1,const char* str2);
|
||||
CIMGUI_API int igImStrnicmp(const char* str1,const char* str2,size_t count);
|
||||
CIMGUI_API void igImStrncpy(char* dst,const char* src,size_t count);
|
||||
@@ -4390,7 +4460,7 @@ CIMGUI_API void ImDrawListSharedData_destroy(ImDrawListSharedData* self);
|
||||
CIMGUI_API void ImDrawListSharedData_SetCircleTessellationMaxError(ImDrawListSharedData* self,float max_error);
|
||||
CIMGUI_API ImDrawDataBuilder* ImDrawDataBuilder_ImDrawDataBuilder(void);
|
||||
CIMGUI_API void ImDrawDataBuilder_destroy(ImDrawDataBuilder* self);
|
||||
CIMGUI_API void* ImGuiDataVarInfo_GetVarPtr(ImGuiDataVarInfo* self,void* parent);
|
||||
CIMGUI_API void* ImGuiStyleVarInfo_GetVarPtr(ImGuiStyleVarInfo* self,void* parent);
|
||||
CIMGUI_API ImGuiStyleMod* ImGuiStyleMod_ImGuiStyleMod_Int(ImGuiStyleVar idx,int v);
|
||||
CIMGUI_API void ImGuiStyleMod_destroy(ImGuiStyleMod* self);
|
||||
CIMGUI_API ImGuiStyleMod* ImGuiStyleMod_ImGuiStyleMod_Float(ImGuiStyleVar idx,float v);
|
||||
@@ -4537,6 +4607,8 @@ CIMGUI_API void ImGuiTableColumnSettings_destroy(ImGuiTableColumnSettings* self)
|
||||
CIMGUI_API ImGuiTableSettings* ImGuiTableSettings_ImGuiTableSettings(void);
|
||||
CIMGUI_API void ImGuiTableSettings_destroy(ImGuiTableSettings* self);
|
||||
CIMGUI_API ImGuiTableColumnSettings* ImGuiTableSettings_GetColumnSettings(ImGuiTableSettings* self);
|
||||
CIMGUI_API ImGuiIO* igGetIOEx(ImGuiContext* ctx);
|
||||
CIMGUI_API ImGuiPlatformIO* igGetPlatformIO_ContextPtr(ImGuiContext* ctx);
|
||||
CIMGUI_API ImGuiWindow* igGetCurrentWindowRead(void);
|
||||
CIMGUI_API ImGuiWindow* igGetCurrentWindow(void);
|
||||
CIMGUI_API ImGuiWindow* igFindWindowByID(ImGuiID id);
|
||||
@@ -4569,6 +4641,7 @@ CIMGUI_API ImGuiWindow* igFindBottomMostVisibleWindowWithinBeginStack(ImGuiWindo
|
||||
CIMGUI_API void igSetNextWindowRefreshPolicy(ImGuiWindowRefreshFlags flags);
|
||||
CIMGUI_API void igSetCurrentFont(ImFont* font);
|
||||
CIMGUI_API ImFont* igGetDefaultFont(void);
|
||||
CIMGUI_API void igPushPasswordFont(void);
|
||||
CIMGUI_API ImDrawList* igGetForegroundDrawList_WindowPtr(ImGuiWindow* window);
|
||||
CIMGUI_API void igAddDrawListToDrawDataEx(ImDrawData* draw_data,ImVector_ImDrawListPtr* out_list,ImDrawList* draw_list);
|
||||
CIMGUI_API void igInitialize(void);
|
||||
@@ -4630,20 +4703,21 @@ CIMGUI_API bool igItemAdd(const ImRect bb,ImGuiID id,const ImRect* nav_bb,ImGuiI
|
||||
CIMGUI_API bool igItemHoverable(const ImRect bb,ImGuiID id,ImGuiItemFlags item_flags);
|
||||
CIMGUI_API bool igIsWindowContentHoverable(ImGuiWindow* window,ImGuiHoveredFlags flags);
|
||||
CIMGUI_API bool igIsClippedEx(const ImRect bb,ImGuiID id);
|
||||
CIMGUI_API void igSetLastItemData(ImGuiID item_id,ImGuiItemFlags in_flags,ImGuiItemStatusFlags status_flags,const ImRect item_rect);
|
||||
CIMGUI_API void igSetLastItemData(ImGuiID item_id,ImGuiItemFlags item_flags,ImGuiItemStatusFlags status_flags,const ImRect item_rect);
|
||||
CIMGUI_API void igCalcItemSize(ImVec2 *pOut,ImVec2 size,float default_w,float default_h);
|
||||
CIMGUI_API float igCalcWrapWidthForPos(const ImVec2 pos,float wrap_pos_x);
|
||||
CIMGUI_API void igPushMultiItemsWidths(int components,float width_full);
|
||||
CIMGUI_API void igShrinkWidths(ImGuiShrinkWidthItem* items,int count,float width_excess);
|
||||
CIMGUI_API const ImGuiDataVarInfo* igGetStyleVarInfo(ImGuiStyleVar idx);
|
||||
CIMGUI_API const ImGuiStyleVarInfo* igGetStyleVarInfo(ImGuiStyleVar idx);
|
||||
CIMGUI_API void igBeginDisabledOverrideReenable(void);
|
||||
CIMGUI_API void igEndDisabledOverrideReenable(void);
|
||||
CIMGUI_API void igLogBegin(ImGuiLogType type,int auto_open_depth);
|
||||
CIMGUI_API void igLogBegin(ImGuiLogFlags flags,int auto_open_depth);
|
||||
CIMGUI_API void igLogToBuffer(int auto_open_depth);
|
||||
CIMGUI_API void igLogRenderedText(const ImVec2* ref_pos,const char* text,const char* text_end);
|
||||
CIMGUI_API void igLogSetNextTextDecoration(const char* prefix,const char* suffix);
|
||||
CIMGUI_API bool igBeginChildEx(const char* name,ImGuiID id,const ImVec2 size_arg,ImGuiChildFlags child_flags,ImGuiWindowFlags window_flags);
|
||||
CIMGUI_API bool igBeginPopupEx(ImGuiID id,ImGuiWindowFlags extra_window_flags);
|
||||
CIMGUI_API bool igBeginPopupMenuEx(ImGuiID id,const char* label,ImGuiWindowFlags extra_window_flags);
|
||||
CIMGUI_API void igOpenPopupEx(ImGuiID id,ImGuiPopupFlags popup_flags);
|
||||
CIMGUI_API void igClosePopupToLevel(int remaining,bool restore_focus_to_window_under_popup);
|
||||
CIMGUI_API void igClosePopupsOverWindow(ImGuiWindow* ref_window,bool restore_focus_to_window_under_popup);
|
||||
@@ -4861,6 +4935,7 @@ CIMGUI_API void igTabBarQueueReorder(ImGuiTabBar* tab_bar,ImGuiTabItem* tab,int
|
||||
CIMGUI_API void igTabBarQueueReorderFromMousePos(ImGuiTabBar* tab_bar,ImGuiTabItem* tab,ImVec2 mouse_pos);
|
||||
CIMGUI_API bool igTabBarProcessReorder(ImGuiTabBar* tab_bar);
|
||||
CIMGUI_API bool igTabItemEx(ImGuiTabBar* tab_bar,const char* label,bool* p_open,ImGuiTabItemFlags flags,ImGuiWindow* docked_window);
|
||||
CIMGUI_API void igTabItemSpacing(const char* str_id,ImGuiTabItemFlags flags,float width);
|
||||
CIMGUI_API void igTabItemCalcSize_Str(ImVec2 *pOut,const char* label,bool has_close_button_or_unsaved_marker);
|
||||
CIMGUI_API void igTabItemCalcSize_WindowPtr(ImVec2 *pOut,ImGuiWindow* window);
|
||||
CIMGUI_API void igTabItemBackground(ImDrawList* draw_list,const ImRect bb,ImGuiTabItemFlags flags,ImU32 col);
|
||||
@@ -4887,7 +4962,7 @@ CIMGUI_API ImDrawFlags igCalcRoundingFlagsForRectInRect(const ImRect r_in,const
|
||||
CIMGUI_API void igTextEx(const char* text,const char* text_end,ImGuiTextFlags flags);
|
||||
CIMGUI_API bool igButtonEx(const char* label,const ImVec2 size_arg,ImGuiButtonFlags flags);
|
||||
CIMGUI_API bool igArrowButtonEx(const char* str_id,ImGuiDir dir,ImVec2 size_arg,ImGuiButtonFlags flags);
|
||||
CIMGUI_API bool igImageButtonEx(ImGuiID id,ImTextureID texture_id,const ImVec2 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);
|
||||
CIMGUI_API void igSeparatorEx(ImGuiSeparatorFlags flags,float thickness);
|
||||
CIMGUI_API void igSeparatorTextEx(ImGuiID id,const char* label,const char* label_end,float extra_width);
|
||||
CIMGUI_API bool igCheckboxFlags_S64Ptr(const char* label,ImS64* flags,ImS64 flags_value);
|
||||
@@ -4895,7 +4970,7 @@ CIMGUI_API bool igCheckboxFlags_U64Ptr(const char* label,ImU64* flags,ImU64 flag
|
||||
CIMGUI_API bool igCloseButton(ImGuiID id,const ImVec2 pos);
|
||||
CIMGUI_API bool igCollapseButton(ImGuiID id,const ImVec2 pos,ImGuiDockNode* dock_node);
|
||||
CIMGUI_API void igScrollbar(ImGuiAxis axis);
|
||||
CIMGUI_API bool igScrollbarEx(const ImRect bb,ImGuiID id,ImGuiAxis axis,ImS64* p_scroll_v,ImS64 avail_v,ImS64 contents_v,ImDrawFlags flags);
|
||||
CIMGUI_API bool igScrollbarEx(const ImRect bb,ImGuiID id,ImGuiAxis axis,ImS64* p_scroll_v,ImS64 avail_v,ImS64 contents_v,ImDrawFlags draw_rounding_flags);
|
||||
CIMGUI_API void igGetWindowScrollbarRect(ImRect *pOut,ImGuiWindow* window,ImGuiAxis axis);
|
||||
CIMGUI_API ImGuiID igGetWindowScrollbarID(ImGuiWindow* window,ImGuiAxis axis);
|
||||
CIMGUI_API ImGuiID igGetWindowResizeCornerID(ImGuiWindow* window,int n);
|
||||
@@ -4923,6 +4998,7 @@ CIMGUI_API bool igTempInputScalar(const ImRect bb,ImGuiID id,const char* label,I
|
||||
CIMGUI_API bool igTempInputIsActive(ImGuiID id);
|
||||
CIMGUI_API ImGuiInputTextState* igGetInputTextState(ImGuiID id);
|
||||
CIMGUI_API void igSetNextItemRefVal(ImGuiDataType data_type,void* p_data);
|
||||
CIMGUI_API bool igIsItemActiveAsInputText(void);
|
||||
CIMGUI_API void igColorTooltip(const char* text,const float* col,ImGuiColorEditFlags flags);
|
||||
CIMGUI_API void igColorEditOptionsPopup(const float* col,ImGuiColorEditFlags flags);
|
||||
CIMGUI_API void igColorPickerOptionsPopup(const float* ref_col,ImGuiColorEditFlags flags);
|
||||
@@ -4976,22 +5052,28 @@ CIMGUI_API void igDebugNodePlatformMonitor(ImGuiPlatformMonitor* monitor,const c
|
||||
CIMGUI_API void igDebugRenderKeyboardPreview(ImDrawList* draw_list);
|
||||
CIMGUI_API void igDebugRenderViewportThumbnail(ImDrawList* draw_list,ImGuiViewportP* viewport,const ImRect bb);
|
||||
CIMGUI_API const ImFontBuilderIO* igImFontAtlasGetBuilderForStbTruetype(void);
|
||||
CIMGUI_API void igImFontAtlasUpdateConfigDataPointers(ImFontAtlas* atlas);
|
||||
CIMGUI_API void igImFontAtlasUpdateSourcesPointers(ImFontAtlas* atlas);
|
||||
CIMGUI_API void igImFontAtlasBuildInit(ImFontAtlas* atlas);
|
||||
CIMGUI_API void igImFontAtlasBuildSetupFont(ImFontAtlas* atlas,ImFont* font,ImFontConfig* font_config,float ascent,float descent);
|
||||
CIMGUI_API void igImFontAtlasBuildSetupFont(ImFontAtlas* atlas,ImFont* font,ImFontConfig* src,float ascent,float descent);
|
||||
CIMGUI_API void igImFontAtlasBuildPackCustomRects(ImFontAtlas* atlas,void* stbrp_context_opaque);
|
||||
CIMGUI_API void igImFontAtlasBuildFinish(ImFontAtlas* atlas);
|
||||
CIMGUI_API void igImFontAtlasBuildRender8bppRectFromString(ImFontAtlas* atlas,int x,int y,int w,int h,const char* in_str,char in_marker_char,unsigned char in_marker_pixel_value);
|
||||
CIMGUI_API void igImFontAtlasBuildRender32bppRectFromString(ImFontAtlas* atlas,int x,int y,int w,int h,const char* in_str,char in_marker_char,unsigned int in_marker_pixel_value);
|
||||
CIMGUI_API void igImFontAtlasBuildMultiplyCalcLookupTable(unsigned char out_table[256],float in_multiply_factor);
|
||||
CIMGUI_API void igImFontAtlasBuildMultiplyRectAlpha8(const unsigned char table[256],unsigned char* pixels,int x,int y,int w,int h,int stride);
|
||||
CIMGUI_API void igImFontAtlasBuildGetOversampleFactors(const ImFontConfig* src,int* out_oversample_h,int* out_oversample_v);
|
||||
CIMGUI_API bool igImFontAtlasGetMouseCursorTexData(ImFontAtlas* atlas,ImGuiMouseCursor cursor_type,ImVec2* out_offset,ImVec2* out_size,ImVec2 out_uv_border[2],ImVec2 out_uv_fill[2]);
|
||||
#ifdef IMGUI_ENABLE_FREETYPE
|
||||
CIMGUI_API const ImFontBuilderIO* ImGuiFreeType_GetBuilderForFreeType(void);
|
||||
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);
|
||||
#endif
|
||||
|
||||
|
||||
/////////////////////////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, ...);
|
||||
CIMGUI_API void ImGuiTextBuffer_appendf(ImGuiTextBuffer *self, const char *fmt, ...);
|
||||
//for getting FLT_MAX in bindings
|
||||
CIMGUI_API float igGET_FLT_MAX(void);
|
||||
//for getting FLT_MIN in bindings
|
||||
|
65
cimgui_impl.cpp
Normal file
65
cimgui_impl.cpp
Normal file
@@ -0,0 +1,65 @@
|
||||
#include "./imgui/imgui.h"
|
||||
#ifdef IMGUI_ENABLE_FREETYPE
|
||||
#include "./imgui/misc/freetype/imgui_freetype.h"
|
||||
#endif
|
||||
#include "./imgui/imgui_internal.h"
|
||||
#include "cimgui.h"
|
||||
|
||||
#ifdef CIMGUI_USE_DX9
|
||||
#include "imgui_impl_dx9.h"
|
||||
#endif
|
||||
|
||||
#ifdef CIMGUI_USE_DX10
|
||||
#include "imgui_impl_dx10.h"
|
||||
#endif
|
||||
|
||||
#ifdef CIMGUI_USE_DX11
|
||||
#include "imgui_impl_dx11.h"
|
||||
#endif
|
||||
|
||||
#ifdef CIMGUI_USE_DX12
|
||||
#include "imgui_impl_dx12.h"
|
||||
#endif
|
||||
|
||||
#ifdef CIMGUI_USE_GLFW
|
||||
#include "imgui_impl_glfw.h"
|
||||
#endif
|
||||
|
||||
#ifdef CIMGUI_USE_OPENGL2
|
||||
#include "imgui_impl_opengl2.h"
|
||||
#endif
|
||||
|
||||
#ifdef CIMGUI_USE_OPENGL3
|
||||
#include "imgui_impl_opengl3.h"
|
||||
#endif
|
||||
|
||||
#ifdef CIMGUI_USE_SDL2
|
||||
#include "imgui_impl_sdl2.h"
|
||||
#endif
|
||||
|
||||
#ifdef CIMGUI_USE_SDL3
|
||||
#include "imgui_impl_sdl3.h"
|
||||
#endif
|
||||
|
||||
#ifdef CIMGUI_USE_VULKAN
|
||||
#include "imgui_impl_vulkan.h"
|
||||
#endif
|
||||
|
||||
#ifdef CIMGUI_USE_WIN32
|
||||
#include "imgui_impl_win32.h"
|
||||
#endif
|
||||
|
||||
#include "cimgui_impl.h"
|
||||
|
||||
#ifdef CIMGUI_USE_VULKAN
|
||||
|
||||
CIMGUI_API ImGui_ImplVulkanH_Window* ImGui_ImplVulkanH_Window_ImGui_ImplVulkanH_Window()
|
||||
{
|
||||
return IM_NEW(ImGui_ImplVulkanH_Window)();
|
||||
}
|
||||
CIMGUI_API void ImGui_ImplVulkanH_Window_Construct(ImGui_ImplVulkanH_Window* self)
|
||||
{
|
||||
IM_PLACEMENT_NEW(self) ImGui_ImplVulkanH_Window();
|
||||
}
|
||||
|
||||
#endif
|
198
cimgui_impl.h
Normal file
198
cimgui_impl.h
Normal file
@@ -0,0 +1,198 @@
|
||||
#ifdef CIMGUI_USE_GLFW
|
||||
#ifdef CIMGUI_DEFINE_ENUMS_AND_STRUCTS
|
||||
|
||||
typedef struct GLFWwindow GLFWwindow;
|
||||
typedef struct GLFWmonitor GLFWmonitor;
|
||||
struct GLFWwindow;
|
||||
struct GLFWmonitor;
|
||||
#endif //CIMGUI_DEFINE_ENUMS_AND_STRUCTS
|
||||
CIMGUI_API bool ImGui_ImplGlfw_InitForOpenGL(GLFWwindow* window,bool install_callbacks);
|
||||
CIMGUI_API bool ImGui_ImplGlfw_InitForVulkan(GLFWwindow* window,bool install_callbacks);
|
||||
CIMGUI_API bool ImGui_ImplGlfw_InitForOther(GLFWwindow* window,bool install_callbacks);
|
||||
CIMGUI_API void ImGui_ImplGlfw_Shutdown(void);
|
||||
CIMGUI_API void ImGui_ImplGlfw_NewFrame(void);
|
||||
CIMGUI_API void ImGui_ImplGlfw_InstallCallbacks(GLFWwindow* window);
|
||||
CIMGUI_API void ImGui_ImplGlfw_RestoreCallbacks(GLFWwindow* window);
|
||||
CIMGUI_API void ImGui_ImplGlfw_SetCallbacksChainForAllWindows(bool chain_for_all_windows);
|
||||
CIMGUI_API void ImGui_ImplGlfw_WindowFocusCallback(GLFWwindow* window,int focused);
|
||||
CIMGUI_API void ImGui_ImplGlfw_CursorEnterCallback(GLFWwindow* window,int entered);
|
||||
CIMGUI_API void ImGui_ImplGlfw_CursorPosCallback(GLFWwindow* window,double x,double y);
|
||||
CIMGUI_API void ImGui_ImplGlfw_MouseButtonCallback(GLFWwindow* window,int button,int action,int mods);
|
||||
CIMGUI_API void ImGui_ImplGlfw_ScrollCallback(GLFWwindow* window,double xoffset,double yoffset);
|
||||
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
|
||||
CIMGUI_API bool ImGui_ImplOpenGL3_Init(const char* glsl_version);
|
||||
CIMGUI_API void ImGui_ImplOpenGL3_Shutdown(void);
|
||||
CIMGUI_API void ImGui_ImplOpenGL3_NewFrame(void);
|
||||
CIMGUI_API void ImGui_ImplOpenGL3_RenderDrawData(ImDrawData* draw_data);
|
||||
CIMGUI_API bool ImGui_ImplOpenGL3_CreateFontsTexture(void);
|
||||
CIMGUI_API void ImGui_ImplOpenGL3_DestroyFontsTexture(void);
|
||||
CIMGUI_API bool ImGui_ImplOpenGL3_CreateDeviceObjects(void);
|
||||
CIMGUI_API void ImGui_ImplOpenGL3_DestroyDeviceObjects(void);
|
||||
|
||||
#endif
|
||||
#ifdef CIMGUI_USE_OPENGL2
|
||||
CIMGUI_API bool ImGui_ImplOpenGL2_Init(void);
|
||||
CIMGUI_API void ImGui_ImplOpenGL2_Shutdown(void);
|
||||
CIMGUI_API void ImGui_ImplOpenGL2_NewFrame(void);
|
||||
CIMGUI_API void ImGui_ImplOpenGL2_RenderDrawData(ImDrawData* draw_data);
|
||||
CIMGUI_API bool ImGui_ImplOpenGL2_CreateFontsTexture(void);
|
||||
CIMGUI_API void ImGui_ImplOpenGL2_DestroyFontsTexture(void);
|
||||
CIMGUI_API bool ImGui_ImplOpenGL2_CreateDeviceObjects(void);
|
||||
CIMGUI_API void ImGui_ImplOpenGL2_DestroyDeviceObjects(void);
|
||||
|
||||
#endif
|
||||
#ifdef CIMGUI_USE_SDL2
|
||||
#ifdef CIMGUI_DEFINE_ENUMS_AND_STRUCTS
|
||||
|
||||
typedef struct SDL_Window SDL_Window;
|
||||
typedef struct SDL_Renderer SDL_Renderer;
|
||||
typedef struct _SDL_GameController _SDL_GameController;
|
||||
struct SDL_Window;
|
||||
struct SDL_Renderer;
|
||||
struct _SDL_GameController;
|
||||
typedef union SDL_Event SDL_Event;
|
||||
typedef enum { ImGui_ImplSDL2_GamepadMode_AutoFirst, ImGui_ImplSDL2_GamepadMode_AutoAll, ImGui_ImplSDL2_GamepadMode_Manual }ImGui_ImplSDL2_GamepadMode;
|
||||
#endif //CIMGUI_DEFINE_ENUMS_AND_STRUCTS
|
||||
CIMGUI_API bool ImGui_ImplSDL2_InitForOpenGL(SDL_Window* window,void* sdl_gl_context);
|
||||
CIMGUI_API bool ImGui_ImplSDL2_InitForVulkan(SDL_Window* window);
|
||||
CIMGUI_API bool ImGui_ImplSDL2_InitForD3D(SDL_Window* window);
|
||||
CIMGUI_API bool ImGui_ImplSDL2_InitForMetal(SDL_Window* window);
|
||||
CIMGUI_API bool ImGui_ImplSDL2_InitForSDLRenderer(SDL_Window* window,SDL_Renderer* renderer);
|
||||
CIMGUI_API bool ImGui_ImplSDL2_InitForOther(SDL_Window* window);
|
||||
CIMGUI_API void ImGui_ImplSDL2_Shutdown(void);
|
||||
CIMGUI_API void ImGui_ImplSDL2_NewFrame(void);
|
||||
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
|
||||
#ifdef CIMGUI_DEFINE_ENUMS_AND_STRUCTS
|
||||
|
||||
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;
|
||||
#endif //CIMGUI_DEFINE_ENUMS_AND_STRUCTS
|
||||
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_InitForSDLGPU(SDL_Window* window);
|
||||
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
|
||||
#ifdef CIMGUI_USE_VULKAN
|
||||
#ifdef CIMGUI_DEFINE_ENUMS_AND_STRUCTS
|
||||
|
||||
typedef struct ImGui_ImplVulkanH_Frame ImGui_ImplVulkanH_Frame;
|
||||
typedef struct ImGui_ImplVulkanH_Window ImGui_ImplVulkanH_Window;
|
||||
typedef struct ImGui_ImplVulkan_InitInfo ImGui_ImplVulkan_InitInfo;
|
||||
struct ImGui_ImplVulkan_InitInfo
|
||||
{
|
||||
uint32_t ApiVersion;
|
||||
VkInstance Instance;
|
||||
VkPhysicalDevice PhysicalDevice;
|
||||
VkDevice Device;
|
||||
uint32_t QueueFamily;
|
||||
VkQueue Queue;
|
||||
VkDescriptorPool DescriptorPool;
|
||||
VkRenderPass RenderPass;
|
||||
uint32_t MinImageCount;
|
||||
uint32_t ImageCount;
|
||||
VkSampleCountFlagBits MSAASamples;
|
||||
VkPipelineCache PipelineCache;
|
||||
uint32_t Subpass;
|
||||
uint32_t DescriptorPoolSize;
|
||||
bool UseDynamicRendering;
|
||||
VkPipelineRenderingCreateInfoKHR PipelineRenderingCreateInfo;
|
||||
const VkAllocationCallbacks* Allocator;
|
||||
void (*CheckVkResultFn)(VkResult err);
|
||||
VkDeviceSize MinAllocationSize;
|
||||
};
|
||||
typedef struct ImGui_ImplVulkan_RenderState ImGui_ImplVulkan_RenderState;
|
||||
struct ImGui_ImplVulkan_RenderState
|
||||
{
|
||||
VkCommandBuffer CommandBuffer;
|
||||
VkPipeline Pipeline;
|
||||
VkPipelineLayout PipelineLayout;
|
||||
};
|
||||
struct ImGui_ImplVulkanH_Frame;
|
||||
struct ImGui_ImplVulkanH_Window;
|
||||
struct ImGui_ImplVulkanH_Frame
|
||||
{
|
||||
VkCommandPool CommandPool;
|
||||
VkCommandBuffer CommandBuffer;
|
||||
VkFence Fence;
|
||||
VkImage Backbuffer;
|
||||
VkImageView BackbufferView;
|
||||
VkFramebuffer Framebuffer;
|
||||
};
|
||||
typedef struct ImGui_ImplVulkanH_FrameSemaphores ImGui_ImplVulkanH_FrameSemaphores;
|
||||
struct ImGui_ImplVulkanH_FrameSemaphores
|
||||
{
|
||||
VkSemaphore ImageAcquiredSemaphore;
|
||||
VkSemaphore RenderCompleteSemaphore;
|
||||
};
|
||||
typedef struct ImVector_ImGui_ImplVulkanH_Frame {int Size;int Capacity;ImGui_ImplVulkanH_Frame* Data;} ImVector_ImGui_ImplVulkanH_Frame;
|
||||
|
||||
typedef struct ImVector_ImGui_ImplVulkanH_FrameSemaphores {int Size;int Capacity;ImGui_ImplVulkanH_FrameSemaphores* Data;} ImVector_ImGui_ImplVulkanH_FrameSemaphores;
|
||||
|
||||
struct ImGui_ImplVulkanH_Window
|
||||
{
|
||||
int Width;
|
||||
int Height;
|
||||
VkSwapchainKHR Swapchain;
|
||||
VkSurfaceKHR Surface;
|
||||
VkSurfaceFormatKHR SurfaceFormat;
|
||||
VkPresentModeKHR PresentMode;
|
||||
VkRenderPass RenderPass;
|
||||
bool UseDynamicRendering;
|
||||
bool ClearEnable;
|
||||
VkClearValue ClearValue;
|
||||
uint32_t FrameIndex;
|
||||
uint32_t ImageCount;
|
||||
uint32_t SemaphoreCount;
|
||||
uint32_t SemaphoreIndex;
|
||||
ImVector_ImGui_ImplVulkanH_Frame Frames;
|
||||
ImVector_ImGui_ImplVulkanH_FrameSemaphores FrameSemaphores;
|
||||
};
|
||||
#endif //CIMGUI_DEFINE_ENUMS_AND_STRUCTS
|
||||
#ifndef CIMGUI_DEFINE_ENUMS_AND_STRUCTS
|
||||
typedef ImVector<ImGui_ImplVulkanH_Frame> ImVector_ImGui_ImplVulkanH_Frame;
|
||||
typedef ImVector<ImGui_ImplVulkanH_FrameSemaphores> ImVector_ImGui_ImplVulkanH_FrameSemaphores;
|
||||
#endif //CIMGUI_DEFINE_ENUMS_AND_STRUCTS
|
||||
CIMGUI_API bool ImGui_ImplVulkan_Init(ImGui_ImplVulkan_InitInfo* info);
|
||||
CIMGUI_API void ImGui_ImplVulkan_Shutdown(void);
|
||||
CIMGUI_API void ImGui_ImplVulkan_NewFrame(void);
|
||||
CIMGUI_API void ImGui_ImplVulkan_RenderDrawData(ImDrawData* draw_data,VkCommandBuffer command_buffer,VkPipeline pipeline);
|
||||
CIMGUI_API bool ImGui_ImplVulkan_CreateFontsTexture(void);
|
||||
CIMGUI_API void ImGui_ImplVulkan_DestroyFontsTexture(void);
|
||||
CIMGUI_API void ImGui_ImplVulkan_SetMinImageCount(uint32_t min_image_count);
|
||||
CIMGUI_API VkDescriptorSet ImGui_ImplVulkan_AddTexture(VkSampler sampler,VkImageView image_view,VkImageLayout image_layout);
|
||||
CIMGUI_API void ImGui_ImplVulkan_RemoveTexture(VkDescriptorSet descriptor_set);
|
||||
CIMGUI_API bool ImGui_ImplVulkan_LoadFunctions(uint32_t api_version,PFN_vkVoidFunction(*loader_func)(const char* function_name,void* user_data),void* user_data);
|
||||
CIMGUI_API void ImGui_ImplVulkanH_CreateOrResizeWindow(VkInstance instance,VkPhysicalDevice physical_device,VkDevice device,ImGui_ImplVulkanH_Window* wd,uint32_t queue_family,const VkAllocationCallbacks* allocator,int w,int h,uint32_t min_image_count);
|
||||
CIMGUI_API void ImGui_ImplVulkanH_DestroyWindow(VkInstance instance,VkDevice device,ImGui_ImplVulkanH_Window* wd,const VkAllocationCallbacks* allocator);
|
||||
CIMGUI_API VkSurfaceFormatKHR ImGui_ImplVulkanH_SelectSurfaceFormat(VkPhysicalDevice physical_device,VkSurfaceKHR surface,const VkFormat* request_formats,int request_formats_count,VkColorSpaceKHR request_color_space);
|
||||
CIMGUI_API VkPresentModeKHR ImGui_ImplVulkanH_SelectPresentMode(VkPhysicalDevice physical_device,VkSurfaceKHR surface,const VkPresentModeKHR* request_modes,int request_modes_count);
|
||||
CIMGUI_API VkPhysicalDevice ImGui_ImplVulkanH_SelectPhysicalDevice(VkInstance instance);
|
||||
CIMGUI_API uint32_t ImGui_ImplVulkanH_SelectQueueFamilyIndex(VkPhysicalDevice physical_device);
|
||||
CIMGUI_API int ImGui_ImplVulkanH_GetMinImageCountFromPresentMode(VkPresentModeKHR present_mode);
|
||||
CIMGUI_API ImGui_ImplVulkanH_Window* ImGui_ImplVulkanH_Window_ImGui_ImplVulkanH_Window();
|
||||
|
||||
#endif
|
@@ -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"
|
||||
@@ -20,7 +12,7 @@
|
||||
|
||||
|
||||
/////////////////////////////manual written functions
|
||||
CIMGUI_API void igLogText(CONST char *fmt, ...)
|
||||
CIMGUI_API void igLogText(const char *fmt, ...)
|
||||
{
|
||||
char buffer[256];
|
||||
va_list args;
|
||||
@@ -30,11 +22,11 @@ CIMGUI_API void igLogText(CONST char *fmt, ...)
|
||||
|
||||
ImGui::LogText("%s", buffer);
|
||||
}
|
||||
CIMGUI_API void ImGuiTextBuffer_appendf(struct ImGuiTextBuffer *buffer, const char *fmt, ...)
|
||||
CIMGUI_API void ImGuiTextBuffer_appendf(ImGuiTextBuffer *self, const char *fmt, ...)
|
||||
{
|
||||
va_list args;
|
||||
va_start(args, fmt);
|
||||
buffer->appendfv(fmt, args);
|
||||
self->appendfv(fmt, args);
|
||||
va_end(args);
|
||||
}
|
||||
|
||||
|
@@ -47,9 +47,9 @@ 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, ...);
|
||||
CIMGUI_API void ImGuiTextBuffer_appendf(ImGuiTextBuffer *self, const char *fmt, ...);
|
||||
//for getting FLT_MAX in bindings
|
||||
CIMGUI_API float igGET_FLT_MAX(void);
|
||||
//for getting FLT_MIN in bindings
|
||||
|
@@ -320,6 +320,9 @@ local function getRE()
|
||||
function_re = "^([^;{}]+%b()[\n%s]*;)%s*",
|
||||
function_re = "^([^;{}=]+%b()[\n%s%w]*;)", --const at the end
|
||||
function_re = "^([^;{}=]+%b()[\n%s%w%(%)_]*;)", --attribute(deprecated)
|
||||
--we need to skip = as function because of "var = f()" initialization in struct fields
|
||||
-- but we don want operator== to appear as a var and as we should skip this kind of function solution is:
|
||||
operator_re = "^([^;{}]+operator[^;{}]+%b()[\n%s%w%(%)_]*;)",
|
||||
struct_re = "^([^;{}]-struct[^;{}]-%b{}[%s%w_%(%)]*;)",
|
||||
enum_re = "^([^;{}]-enum[^;{}]-%b{}[%s%w_%(%)]*;)",
|
||||
union_re = "^([^;{}]-union[^;{}]-%b{}[%s%w_%(%)]*;)",
|
||||
@@ -344,7 +347,7 @@ local function getRE()
|
||||
}
|
||||
|
||||
local resN = {"comment2_re","comment_re","emptyline_re",
|
||||
"functypedef_re","functype_re","function_re","functionD_re","typedef_st_re","struct_re","enum_re","union_re","namespace_re","class_re","typedef_re","vardef_re"}
|
||||
"functypedef_re","functype_re","function_re","functionD_re","operator_re","typedef_st_re","struct_re","enum_re","union_re","namespace_re","class_re","typedef_re","vardef_re"}
|
||||
|
||||
return res,resN
|
||||
end
|
||||
@@ -432,20 +435,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"
|
||||
@@ -481,7 +479,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
|
||||
@@ -605,7 +603,7 @@ local function clean_names_from_signature(self,signat)
|
||||
return result
|
||||
end
|
||||
local function clean_functypedef(line)
|
||||
local first, args = line:match("(typedef .-%(%*[_%w]+%))%s*(%b())")
|
||||
local first, args = line:match("(typedef .-%(%*%s*[_%w]+%))%s*(%b())")
|
||||
|
||||
if not args then
|
||||
print"not getting args in"
|
||||
@@ -673,14 +671,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
|
||||
@@ -719,6 +721,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 = {}
|
||||
@@ -734,6 +751,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
|
||||
@@ -747,7 +766,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_]+)%)(%([^%(%)]*%))"
|
||||
@@ -807,6 +826,7 @@ local function parseFunction(self,stname,itt,namespace,locat)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
local argsArr = argsTa2
|
||||
|
||||
--recreate argscsinpars, call_args and signature from argsArr
|
||||
@@ -838,7 +858,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
|
||||
@@ -871,6 +891,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
|
||||
@@ -901,6 +924,7 @@ local function parseFunction(self,stname,itt,namespace,locat)
|
||||
-- end
|
||||
end
|
||||
defsT[cimguiname][signat] = defT
|
||||
|
||||
end
|
||||
local function itemsCount(items)
|
||||
print"------------items"
|
||||
@@ -913,8 +937,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
|
||||
@@ -925,6 +949,31 @@ local function AdjustArguments(FP)
|
||||
end
|
||||
end
|
||||
end
|
||||
local function REPLACE_TEXTUREID(FP)
|
||||
local defsT = FP.defsT
|
||||
for numcdef,t in ipairs(FP.funcdefs) do
|
||||
assert(t.cimguiname)
|
||||
local cimf = defsT[t.cimguiname]
|
||||
local defT = cimf[t.signature]
|
||||
local hasTextureID = false
|
||||
for i,arg in ipairs(defT.argsT) do
|
||||
if arg.type == "ImTextureID" then print(t.cimguiname,t.signature);hasTextureID = true; break end
|
||||
end
|
||||
if hasTextureID then
|
||||
for i,v in ipairs(defT.argsT) do
|
||||
v.type = (v.type == "ImTextureID") and "ImTextureUserID" or v.type
|
||||
end
|
||||
--defaults table
|
||||
for k,v in pairs(defT.defaults) do
|
||||
if v:match"ImTextureID" then
|
||||
error"default ImTextureID not implemented"
|
||||
end
|
||||
end
|
||||
defT.args = defT.args:gsub("ImTextureID","ImTextureUserID")
|
||||
defT.signature = defT.signature:gsub("ImTextureID","ImTextureUserID")
|
||||
end
|
||||
end
|
||||
end
|
||||
local function ADDIMSTR_S(FP)
|
||||
local defsT = FP.defsT
|
||||
local newcdefs = {}
|
||||
@@ -1021,7 +1070,39 @@ local function ADDIMSTR_S(FP)
|
||||
end
|
||||
FP.funcdefs = newcdefs
|
||||
end
|
||||
--this creates defsBystruct in case you need to list by struct container
|
||||
local function DefsByStruct(FP)
|
||||
local structs = {}
|
||||
for fun,defs in pairs(FP.defsT) do
|
||||
local stname = defs[1].stname
|
||||
structs[stname] = structs[stname] or {}
|
||||
table.insert(structs[stname],defs)--fun)
|
||||
end
|
||||
return structs
|
||||
end
|
||||
local function get_nonPOD(FP)
|
||||
local defbystruct = DefsByStruct(FP)
|
||||
--M.prtable(defbystruct)
|
||||
local nonPOD = {}
|
||||
for k,defs in pairs(defbystruct) do
|
||||
if k~="" then
|
||||
for i, ww in ipairs(defs) do
|
||||
-- print(k,i,ww)
|
||||
-- M.prtable(ww)
|
||||
if not ww[1].ret then --constructor
|
||||
nonPOD[k] = true
|
||||
break;
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
FP.structs_and_enums_table.nonPOD = nonPOD
|
||||
return nonPOD
|
||||
end
|
||||
local function ADDnonUDT(FP)
|
||||
local nonPOD = get_nonPOD(FP)
|
||||
--print"nonPOD"
|
||||
--M.prtable(nonPOD)
|
||||
local defsT = FP.defsT
|
||||
--local newcdefs = {}
|
||||
for numcdef,t in ipairs(FP.funcdefs) do
|
||||
@@ -1035,10 +1116,17 @@ local function ADDnonUDT(FP)
|
||||
end
|
||||
--if UDT return generate nonUDT version
|
||||
local isUDT = false
|
||||
for _,udt_ret in ipairs(FP.UDTs) do
|
||||
if udt_ret == defT.ret then isUDT=true;break end
|
||||
--isUDT = FP.structs_and_enums_table.structs[defT.ret] and true or false
|
||||
isUDT = nonPOD[defT.ret] and true or false
|
||||
--inherited
|
||||
if (not isUDT) and FP.cimgui_inherited and FP.cimgui_inherited.nonPOD[defT.ret] then
|
||||
isUDT = true
|
||||
end
|
||||
--if defT.ret=="ImVec2" or defT.ret=="ImVec4" or defT.ret=="ImColor" then
|
||||
for _,udt_ret in ipairs(FP.UDTs) do
|
||||
if udt_ret == defT.ret then isUDT=true; break end
|
||||
end
|
||||
|
||||
|
||||
if isUDT then
|
||||
--passing as a pointer arg
|
||||
local defT2 = {}
|
||||
@@ -1111,14 +1199,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.."*)"
|
||||
@@ -1270,7 +1359,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
|
||||
@@ -1295,6 +1384,7 @@ function M.Parser()
|
||||
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
|
||||
@@ -1343,7 +1433,7 @@ function M.Parser()
|
||||
return table.concat(txtclean)
|
||||
end
|
||||
function par:parseItems()
|
||||
self:initTypedefsDict()
|
||||
--self:initTypedefsDict()
|
||||
|
||||
self.linenumdict = {}
|
||||
local cdefs2 = {}
|
||||
@@ -1402,12 +1492,27 @@ function M.Parser()
|
||||
--save_data("./preparse"..tostring(self):gsub("table: ","")..".c",txt)
|
||||
--]]
|
||||
self.itemsarr = par:parseItemsR2(txt)
|
||||
--save_data("./itemsarr.lua",ToStr(self.itemsarr))
|
||||
itemsarr = self.itemsarr
|
||||
end
|
||||
|
||||
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)
|
||||
@@ -1434,10 +1539,13 @@ function M.Parser()
|
||||
local predeclare = ""
|
||||
--local iner = strip_end(stru:match("%b{}"):sub(2,-2))
|
||||
local inistruct = clean_spaces(stru:match("(.-)%b{}"))
|
||||
--clean final:
|
||||
inistruct = inistruct:gsub("%s*final%s*:",":")
|
||||
--local stname = stru:match("struct%s*(%S+)%s*%b{}")
|
||||
local stname, derived
|
||||
if inistruct:match":" then
|
||||
stname,derived = inistruct:match"struct%s*([^%s:]+):(.+)"
|
||||
--print(inistruct,stname,derived)
|
||||
derived = derived:match"(%S+)$"
|
||||
else
|
||||
if itst.re_name == "struct_re" then
|
||||
@@ -1492,12 +1600,14 @@ function M.Parser()
|
||||
--local ttype,template = it.item:match("([^%s,%(%)]+)%s*<(.+)>")
|
||||
local ttype,template,te,code2 = check_template(it2) --it.item:match"([^%s,%(%)]+)%s*<(.+)>"
|
||||
if template then
|
||||
if self.typenames[ttype] ~= template then --rule out T (template typename)
|
||||
--print("not doheader",ttype,template,te, self.typenames[ttype])
|
||||
if self.typenames[ttype] ~= template and self.typenames[ttype].."*" ~= template then --rule out T (template typename)
|
||||
self.templates[ttype] = self.templates[ttype] or {}
|
||||
self.templates[ttype][template] = te
|
||||
it2=code2
|
||||
end
|
||||
if doheader then
|
||||
|
||||
local templatetypedef = self:gentemplatetypedef(ttype, template,self.templates[ttype][template])
|
||||
predeclare = predeclare .. templatetypedef
|
||||
end
|
||||
@@ -1553,7 +1663,7 @@ function M.Parser()
|
||||
end
|
||||
elseif it.re_name == "enum_re" then
|
||||
--nop
|
||||
elseif it.re_name ~= "functionD_re" and it.re_name ~= "function_re" then
|
||||
elseif it.re_name ~= "functionD_re" and it.re_name ~= "function_re" and it.re_name ~= "operator_re" then
|
||||
print(it.re_name,"not processed clean_struct in",stname,it.item:sub(1,24))
|
||||
--M.prtable(it)
|
||||
end
|
||||
@@ -1582,8 +1692,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)
|
||||
@@ -1619,20 +1730,23 @@ function M.Parser()
|
||||
it2 = clean_functypedef(it2)
|
||||
else
|
||||
assert(it.re_name == "vardef_re")
|
||||
it2 = it2:gsub("constexpr","static const")
|
||||
if it2:match"enum" then
|
||||
print("--skip enum forward declaration:",it2)
|
||||
it2 = ""
|
||||
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
|
||||
@@ -1658,11 +1772,15 @@ 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
|
||||
@@ -1674,7 +1792,8 @@ function M.Parser()
|
||||
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" or it.re_name == "class_re" then
|
||||
@@ -1686,12 +1805,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
|
||||
@@ -1724,7 +1845,9 @@ function M.Parser()
|
||||
local ttype,fun = it.item:match"^%s*template%s+<%s*typename%s+([^>]+)%s*>%s*(.+)$"
|
||||
if self.ftemplate_list and self.ftemplate_list[ttype] then
|
||||
for iT,vT in ipairs(self.ftemplate_list[ttype]) do
|
||||
local funT = fun:gsub(ttype,vT)
|
||||
local funT = fun:gsub("([< %(])"..ttype,"%1"..vT)
|
||||
--funT = funT:gsub("sizeof%("..ttype.."%)","sizeof("..vT..")")
|
||||
--local funT = fun:gsub(ttype,vT)
|
||||
self:parseFunction(stname,{item=funT},namespace,it.locat)
|
||||
end
|
||||
end
|
||||
@@ -1732,7 +1855,9 @@ function M.Parser()
|
||||
self:parseFunction(stname,it,namespace,it.locat)
|
||||
end
|
||||
else
|
||||
if it.re_name~="operator_re" then
|
||||
print("not processed gen",it.re_name,it.item:sub(1,20))
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1864,7 +1989,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 = {}
|
||||
@@ -1887,7 +2012,31 @@ 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("%(%*%s*([%w_]+)%)%s*%([^%(%)]*%)")
|
||||
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)
|
||||
@@ -1918,7 +2067,7 @@ function M.Parser()
|
||||
end
|
||||
elseif it.re_name == "namespace_re" or it.re_name == "union_re" or it.re_name == "functype_re" then
|
||||
--nop
|
||||
elseif it.re_name ~= "functionD_re" and it.re_name ~= "function_re" then
|
||||
elseif it.re_name ~= "functionD_re" and it.re_name ~= "function_re" and it.re_name ~= "operator_re" then
|
||||
print("not processed gen table",it.re_name)
|
||||
end
|
||||
end
|
||||
@@ -1991,6 +2140,11 @@ function M.Parser()
|
||||
for k,v in pairs(self.alltypes) do print(k, typetoStr(k) ) end
|
||||
end
|
||||
function par:compute_overloads()
|
||||
if self.IMGUI_HAS_TEXTURES then
|
||||
print"----------replacing ImTextureID with ImTextureUserID"
|
||||
REPLACE_TEXTUREID(self)
|
||||
print"----------end replacing ImTextureID with ImTextureUserID"
|
||||
end
|
||||
ADDIMSTR_S(self)
|
||||
local strt = {}
|
||||
local numoverloaded = 0
|
||||
@@ -2163,6 +2317,7 @@ function M.Parser()
|
||||
return self:gen_template_typedef_auto(ttype,te,newte)
|
||||
end
|
||||
function par:gen_template_typedef_auto(ttype,te,newte)
|
||||
--M.prtable(self.templated_structs)
|
||||
assert(self.templated_structs[ttype],ttype)
|
||||
local defi = self.templated_structs[ttype]
|
||||
local Targ = strsplit(self.typenames[ttype],",")
|
||||
@@ -2206,7 +2361,111 @@ function M.Parser()
|
||||
end
|
||||
return par
|
||||
end
|
||||
-- more compact serialization
|
||||
local function basicSerialize (o)
|
||||
if type(o) == "number" then
|
||||
return string.format("%.17g", o)
|
||||
elseif type(o)=="boolean" then
|
||||
return tostring(o)
|
||||
elseif type(o) == "string" then
|
||||
return string.format("%q", o)
|
||||
elseif pcall(function() return o.__serialize end) then
|
||||
return o.__serialize(o)
|
||||
elseif type(o)=="cdata" then
|
||||
return cdataSerialize(o)
|
||||
else
|
||||
return tostring(o) --"nil"
|
||||
end
|
||||
end
|
||||
-- very readable and now suited for cyclic tables
|
||||
local kw = {['and'] = true, ['break'] = true, ['do'] = true, ['else'] = true,
|
||||
['elseif'] = true, ['end'] = true, ['false'] = true, ['for'] = true,
|
||||
['function'] = true, ['goto'] = true, ['if'] = true, ['in'] = true,
|
||||
['local'] = true, ['nil'] = true, ['not'] = true, ['or'] = true,
|
||||
['repeat'] = true, ['return'] = true, ['then'] = true, ['true'] = true,
|
||||
['until'] = true, ['while'] = true}
|
||||
function tb2st_serialize(t,options)
|
||||
options = options or {}
|
||||
local function sorter(a,b)
|
||||
if type(a)==type(b) then
|
||||
return a<b
|
||||
elseif type(a)=="number" then
|
||||
return true
|
||||
else
|
||||
assert(type(b)=="number")
|
||||
return false
|
||||
end
|
||||
end
|
||||
local function serialize_key(val, dodot, pretty)
|
||||
local dot = dodot and "." or ""
|
||||
if type(val)=="string" then
|
||||
if val:match '^[_%a][_%w]*$' and not kw[val] then
|
||||
return dot..tostring(val)
|
||||
else
|
||||
return "[\""..tostring(val).."\"]"
|
||||
end
|
||||
elseif (not pretty) and (not dodot) and (type(val) == "number") and (math.floor(val)==val) then
|
||||
return --array index
|
||||
else
|
||||
return "["..tostring(val).."]"
|
||||
end
|
||||
end
|
||||
local function serialize_key_name(val)
|
||||
return serialize_key(val, true)
|
||||
end
|
||||
local insert = table.insert
|
||||
local function _tb2st(t,saved,sref,level,name)
|
||||
saved = saved or {} -- initial value
|
||||
level = level or 0
|
||||
sref = sref or {}
|
||||
name = name or "t"
|
||||
if type(t)=="table" then
|
||||
if saved[t] then
|
||||
sref[#sref+1] = {saved[t],name}
|
||||
return"nil"
|
||||
else
|
||||
saved[t] = name
|
||||
|
||||
local ordered_keys = {}
|
||||
for k,v in pairs(t) do
|
||||
insert(ordered_keys,k)
|
||||
end
|
||||
table.sort(ordered_keys,sorter)
|
||||
|
||||
local str2 = {}
|
||||
insert(str2,"{")
|
||||
if options.pretty then insert(str2,"\n") end
|
||||
for _,k in ipairs(ordered_keys) do
|
||||
if options.pretty then insert(str2,(" "):rep(level+1)) end
|
||||
local v = t[k]
|
||||
local kser = serialize_key(k, nil, options.pretty)
|
||||
insert(str2, (kser and (kser .."=") or ""))
|
||||
if type(v)~="table" then
|
||||
insert(str2, basicSerialize(v))
|
||||
else
|
||||
local name2 = name .. serialize_key_name(k)
|
||||
insert(str2,_tb2st(v,saved,sref,level+1,name2))
|
||||
end
|
||||
if options.pretty then insert(str2,",\n") else insert(str2, ",") end
|
||||
end
|
||||
str2[#str2] = "}"
|
||||
if level == 0 then
|
||||
--insert(str2, 1,"local ffi = require'ffi'\nlocal t=")
|
||||
insert(str2, 1,"local t=")
|
||||
for i,v in ipairs(sref) do
|
||||
insert(str2, "\n"..v[2].."="..v[1])
|
||||
end
|
||||
insert(str2,"\n return t")
|
||||
end
|
||||
return table.concat(str2)
|
||||
end
|
||||
else
|
||||
return basicSerialize(t)
|
||||
end
|
||||
end
|
||||
return(_tb2st(t))
|
||||
end
|
||||
M.tb2st_serialize = tb2st_serialize
|
||||
------serializeTable("anyname",table) gives a string that recreates the table with dofile(generated_string)
|
||||
local function serializeTable(name, value, saved)
|
||||
|
||||
@@ -2268,10 +2527,11 @@ local function serializeTable(name, value, saved)
|
||||
|
||||
return table.concat(string_table)
|
||||
end
|
||||
M.serializeTable = serializeTable
|
||||
M.serializeTableF = function(t)
|
||||
return M.serializeTable("defs",t).."\nreturn defs"
|
||||
end
|
||||
-- M.serializeTable = serializeTable
|
||||
-- M.serializeTableF = function(t)
|
||||
-- return M.serializeTable("defs",t).."\nreturn defs"
|
||||
-- end
|
||||
M.serializeTableF = function(t) return tb2st_serialize(t,{pretty=true}) end --new serialization more compact
|
||||
--iterates lines from a gcc/clang -E in a specific location
|
||||
local function location(file,locpathT,defines,COMPILER,keepemptylines)
|
||||
local define_re = "^#define%s+([^%s]+)%s+(.+)$"
|
||||
@@ -2358,7 +2618,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")
|
||||
@@ -2385,8 +2646,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 ""
|
||||
|
||||
@@ -2415,6 +2678,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)
|
||||
|
||||
@@ -2432,31 +2696,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(outtab,"CIMGUI_API void "..def.ov_cimguiname.."_Construct("..def.stname.."* self"..(empty and "" or ","..def.args:sub(2,-2))..")\n")
|
||||
table.insert(outtab,"{\n")
|
||||
table.insert(outtab," IM_PLACEMENT_NEW(self)"..def.stname..def.call_args..";\n")
|
||||
table.insert(outtab,"}\n")
|
||||
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)
|
||||
@@ -2479,7 +2750,9 @@ 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)
|
||||
|
||||
@@ -2516,7 +2789,7 @@ local function func_header_generate_funcs(FP)
|
||||
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
|
||||
table.insert(outtab,"CIMGUI_API void "..def.ov_cimguiname.."_Construct("..def.stname.."* self"..(empty and "" or ","..def.args:sub(2,-2))..");\n")
|
||||
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")
|
||||
@@ -2529,9 +2802,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
|
||||
|
@@ -15,11 +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
|
||||
:: 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 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 sdl3 %*
|
||||
:: 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 vulkan -DIMGUI_USE_WCHAR32 %*
|
||||
|
||||
::leave console open
|
||||
cmd /k
|
||||
|
@@ -7,7 +7,7 @@ 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
|
||||
@@ -19,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("\"", "\\\"") .. "\"";
|
||||
@@ -31,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
|
||||
@@ -88,6 +91,10 @@ local cimgui_skipped = {
|
||||
--desired name
|
||||
---------------------------------------------------------------------------
|
||||
local cimgui_overloads = {
|
||||
igGetIO = {
|
||||
["()"] = "igGetIO",
|
||||
["(ImGuiContext*)"] = "igGetIOEx",
|
||||
},
|
||||
--igPushID = {
|
||||
--["(const char*)"] = "igPushIDStr",
|
||||
--["(const char*,const char*)"] = "igPushIDRange",
|
||||
@@ -122,9 +129,11 @@ local function func_header_impl_generate(FP)
|
||||
local def = cimf[t.signature]
|
||||
local addcoment = def.comment or ""
|
||||
if def.constructor then
|
||||
-- it happens with vulkan impl but constructor ImGui_ImplVulkanH_Window is not needed
|
||||
--assert(def.stname ~= "","constructor without struct")
|
||||
--table.insert(outtab,"CIMGUI_API "..def.stname.."* "..def.ov_cimguiname ..(empty and "(void)" or --def.args)..";"..addcoment.."\n")
|
||||
-- only vulkan is manually created
|
||||
assert(def.ov_cimguiname=="ImGui_ImplVulkanH_Window_ImGui_ImplVulkanH_Window" or
|
||||
def.ov_cimguiname=="ImGui_ImplVulkanH_Window_Construct", "not cpp for "..def.ov_cimguiname)
|
||||
assert(def.stname ~= "","constructor without struct")
|
||||
table.insert(outtab,"CIMGUI_API "..def.stname.."* "..def.ov_cimguiname ..(empty and "(void)" or def.args)..";"..addcoment.."\n")
|
||||
elseif def.destructor then
|
||||
--table.insert(outtab,"CIMGUI_API void "..def.ov_cimguiname..def.args..";"..addcoment.."\n")
|
||||
else
|
||||
@@ -214,6 +223,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)
|
||||
@@ -261,18 +291,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("kPagesMap%[%(0xFFFF", "kPagesMap[(IM_UNICODE_CODEPOINT_MAX")
|
||||
assert(num == 1, "kPagesMap[(IM_UNICODE_CODEPOINT_MAX not found or found more than once")
|
||||
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
|
||||
@@ -281,8 +320,8 @@ end
|
||||
--------------------------------------------------------
|
||||
--get imgui.h version and IMGUI_HAS_DOCK--------------------------
|
||||
--defines for the cl compiler must be present in the print_defines.cpp file
|
||||
gdefines = get_defines{"IMGUI_VERSION","IMGUI_VERSION_NUM","FLT_MAX","FLT_MIN","IMGUI_HAS_DOCK","IMGUI_HAS_IMSTR","ImDrawCallback_ResetRenderState"}
|
||||
--cpp2ffi.prtable(gdefines)
|
||||
gdefines = get_defines{"IMGUI_VERSION","IMGUI_VERSION_NUM","FLT_MAX","FLT_MIN","IMGUI_HAS_DOCK","IMGUI_HAS_IMSTR","ImDrawCallback_ResetRenderState","IMGUI_HAS_TEXTURES"}
|
||||
cpp2ffi.prtable(gdefines)
|
||||
if gdefines.IMGUI_HAS_DOCK then gdefines.IMGUI_HAS_DOCK = true end
|
||||
if gdefines.IMGUI_HAS_IMSTR then gdefines.IMGUI_HAS_IMSTR = true end
|
||||
|
||||
@@ -302,11 +341,26 @@ if gdefines.IMGUI_HAS_DOCK then
|
||||
end
|
||||
assert(not NOCHAR or not NOIMSTRV,"nochar and noimstrv cant be set at the same time")
|
||||
print("IMGUI_HAS_IMSTR",gdefines.IMGUI_HAS_IMSTR)
|
||||
print("IMGUI_HAS_TEXTURES",gdefines.IMGUI_HAS_TEXTURES and true)
|
||||
print("NOCHAR",NOCHAR)
|
||||
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)
|
||||
@@ -318,7 +372,8 @@ 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
|
||||
@@ -326,6 +381,9 @@ local function parseImGuiHeader(header,names)
|
||||
parser.CONSTRUCTORS_GENERATION = CONSTRUCTORS_GENERATION
|
||||
parser.NOCHAR = NOCHAR
|
||||
parser.NOIMSTRV = NOIMSTRV
|
||||
parser.IMGUI_HAS_TEXTURES = gdefines.IMGUI_HAS_TEXTURES
|
||||
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
|
||||
@@ -414,15 +472,26 @@ if #implementations > 0 then
|
||||
extra_includes = extra_includes .. include_cmd .. inc .. " "
|
||||
end
|
||||
end
|
||||
|
||||
parser2.cimgui_inherited = dofile([[../../cimgui/generator/output/structs_and_enums.lua]])
|
||||
local defines = parser2:take_lines(CPRE..extra_defines..extra_includes..source, {locati}, COMPILER)
|
||||
|
||||
local parser3 = cpp2ffi.Parser()
|
||||
parser3.cimgui_inherited = dofile([[../../cimgui/generator/output/structs_and_enums.lua]])
|
||||
parser3:take_lines(CPRE..extra_defines..extra_includes..source, {locati}, COMPILER)
|
||||
parser3:do_parse()
|
||||
local cfuncsstr = func_header_impl_generate(parser3)
|
||||
local cstructstr1,cstructstr2 = parser3.structs_and_enums[1], parser3.structs_and_enums[2]
|
||||
impl_str = impl_str .. "#ifdef CIMGUI_USE_".. string.upper(impl).."\n" .. cstructstr1 .. cstructstr2 .. cfuncsstr .. "\n#endif\n"
|
||||
local cstru = cstructstr1 .. cstructstr2
|
||||
if cstru ~="" then
|
||||
cstru = "#ifdef CIMGUI_DEFINE_ENUMS_AND_STRUCTS\n"..cstru .."\n#endif //CIMGUI_DEFINE_ENUMS_AND_STRUCTS\n"
|
||||
end
|
||||
impl_str = impl_str .. "#ifdef CIMGUI_USE_".. string.upper(impl).."\n".. cstru
|
||||
local outtab = cpp2ffi.func_header_generate_structs(parser3)
|
||||
if #outtab > 0 then
|
||||
table.insert(outtab, 1, "#ifndef CIMGUI_DEFINE_ENUMS_AND_STRUCTS\n")
|
||||
table.insert(outtab,"#endif //CIMGUI_DEFINE_ENUMS_AND_STRUCTS\n")
|
||||
end
|
||||
impl_str = impl_str.. table.concat(outtab)..cfuncsstr .. "\n#endif\n"
|
||||
end
|
||||
|
||||
parser2:do_parse()
|
||||
@@ -466,7 +535,9 @@ end
|
||||
--]]
|
||||
-------------------copy C files to repo root
|
||||
copyfile("./output/cimgui.h", "../cimgui.h")
|
||||
copyfile("./output/cimgui_impl.h", "../cimgui_impl.h")
|
||||
copyfile("./output/cimgui.cpp", "../cimgui.cpp")
|
||||
os.remove("./output/cimgui.h")
|
||||
os.remove("./output/cimgui_impl.h")
|
||||
os.remove("./output/cimgui.cpp")
|
||||
print"all done!!"
|
||||
|
@@ -13,10 +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
|
||||
# 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 freetype" "comments internal"
|
||||
# arg[3..n] name of implementations to generate and/or CLFLAGS (e.g. -DIMGUI_USER_CONFIG or -DIMGUI_USE_WCHAR32)
|
||||
# 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
|
||||
@@ -24,7 +25,7 @@
|
||||
POSITIONAL_ARGS=()
|
||||
|
||||
TARGETS="internal noimstrv"
|
||||
CFLAGS="glfw opengl3 opengl2 sdl2"
|
||||
CFLAGS="glfw opengl3 opengl2 sdl2 sdl3"
|
||||
|
||||
help() {
|
||||
cat <<EOF
|
||||
|
@@ -1,88 +0,0 @@
|
||||
#ifdef CIMGUI_USE_GLFW
|
||||
|
||||
typedef struct GLFWwindow GLFWwindow;
|
||||
typedef struct GLFWmonitor GLFWmonitor;
|
||||
struct GLFWwindow;
|
||||
struct GLFWmonitor;CIMGUI_API bool ImGui_ImplGlfw_InitForOpenGL(GLFWwindow* window,bool install_callbacks);
|
||||
CIMGUI_API bool ImGui_ImplGlfw_InitForVulkan(GLFWwindow* window,bool install_callbacks);
|
||||
CIMGUI_API bool ImGui_ImplGlfw_InitForOther(GLFWwindow* window,bool install_callbacks);
|
||||
CIMGUI_API void ImGui_ImplGlfw_Shutdown(void);
|
||||
CIMGUI_API void ImGui_ImplGlfw_NewFrame(void);
|
||||
CIMGUI_API void ImGui_ImplGlfw_InstallCallbacks(GLFWwindow* window);
|
||||
CIMGUI_API void ImGui_ImplGlfw_RestoreCallbacks(GLFWwindow* window);
|
||||
CIMGUI_API void ImGui_ImplGlfw_SetCallbacksChainForAllWindows(bool chain_for_all_windows);
|
||||
CIMGUI_API void ImGui_ImplGlfw_WindowFocusCallback(GLFWwindow* window,int focused);
|
||||
CIMGUI_API void ImGui_ImplGlfw_CursorEnterCallback(GLFWwindow* window,int entered);
|
||||
CIMGUI_API void ImGui_ImplGlfw_CursorPosCallback(GLFWwindow* window,double x,double y);
|
||||
CIMGUI_API void ImGui_ImplGlfw_MouseButtonCallback(GLFWwindow* window,int button,int action,int mods);
|
||||
CIMGUI_API void ImGui_ImplGlfw_ScrollCallback(GLFWwindow* window,double xoffset,double yoffset);
|
||||
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
|
||||
CIMGUI_API bool ImGui_ImplOpenGL3_Init(const char* glsl_version);
|
||||
CIMGUI_API void ImGui_ImplOpenGL3_Shutdown(void);
|
||||
CIMGUI_API void ImGui_ImplOpenGL3_NewFrame(void);
|
||||
CIMGUI_API void ImGui_ImplOpenGL3_RenderDrawData(ImDrawData* draw_data);
|
||||
CIMGUI_API bool ImGui_ImplOpenGL3_CreateFontsTexture(void);
|
||||
CIMGUI_API void ImGui_ImplOpenGL3_DestroyFontsTexture(void);
|
||||
CIMGUI_API bool ImGui_ImplOpenGL3_CreateDeviceObjects(void);
|
||||
CIMGUI_API void ImGui_ImplOpenGL3_DestroyDeviceObjects(void);
|
||||
|
||||
#endif
|
||||
#ifdef CIMGUI_USE_OPENGL2
|
||||
CIMGUI_API bool ImGui_ImplOpenGL2_Init(void);
|
||||
CIMGUI_API void ImGui_ImplOpenGL2_Shutdown(void);
|
||||
CIMGUI_API void ImGui_ImplOpenGL2_NewFrame(void);
|
||||
CIMGUI_API void ImGui_ImplOpenGL2_RenderDrawData(ImDrawData* draw_data);
|
||||
CIMGUI_API bool ImGui_ImplOpenGL2_CreateFontsTexture(void);
|
||||
CIMGUI_API void ImGui_ImplOpenGL2_DestroyFontsTexture(void);
|
||||
CIMGUI_API bool ImGui_ImplOpenGL2_CreateDeviceObjects(void);
|
||||
CIMGUI_API void ImGui_ImplOpenGL2_DestroyDeviceObjects(void);
|
||||
|
||||
#endif
|
||||
#ifdef CIMGUI_USE_SDL2
|
||||
|
||||
typedef struct SDL_Window SDL_Window;
|
||||
typedef struct SDL_Renderer SDL_Renderer;
|
||||
typedef struct _SDL_GameController _SDL_GameController;
|
||||
struct SDL_Window;
|
||||
struct SDL_Renderer;
|
||||
struct _SDL_GameController;
|
||||
typedef union SDL_Event SDL_Event;
|
||||
typedef enum { ImGui_ImplSDL2_GamepadMode_AutoFirst, ImGui_ImplSDL2_GamepadMode_AutoAll, ImGui_ImplSDL2_GamepadMode_Manual }ImGui_ImplSDL2_GamepadMode;CIMGUI_API bool ImGui_ImplSDL2_InitForOpenGL(SDL_Window* window,void* sdl_gl_context);
|
||||
CIMGUI_API bool ImGui_ImplSDL2_InitForVulkan(SDL_Window* window);
|
||||
CIMGUI_API bool ImGui_ImplSDL2_InitForD3D(SDL_Window* window);
|
||||
CIMGUI_API bool ImGui_ImplSDL2_InitForMetal(SDL_Window* window);
|
||||
CIMGUI_API bool ImGui_ImplSDL2_InitForSDLRenderer(SDL_Window* window,SDL_Renderer* renderer);
|
||||
CIMGUI_API bool ImGui_ImplSDL2_InitForOther(SDL_Window* window);
|
||||
CIMGUI_API void ImGui_ImplSDL2_Shutdown(void);
|
||||
CIMGUI_API void ImGui_ImplSDL2_NewFrame(void);
|
||||
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
@@ -17,7 +17,7 @@
|
||||
"cimguiname": "ImGui_ImplGlfw_CharCallback",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplGlfw_CharCallback",
|
||||
"location": "imgui_impl_glfw:61",
|
||||
"location": "imgui_impl_glfw:63",
|
||||
"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:56",
|
||||
"location": "imgui_impl_glfw:58",
|
||||
"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:57",
|
||||
"location": "imgui_impl_glfw:59",
|
||||
"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:32",
|
||||
"location": "imgui_impl_glfw:34",
|
||||
"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:34",
|
||||
"location": "imgui_impl_glfw:36",
|
||||
"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:33",
|
||||
"location": "imgui_impl_glfw:35",
|
||||
"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:47",
|
||||
"location": "imgui_impl_glfw:49",
|
||||
"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:60",
|
||||
"location": "imgui_impl_glfw:62",
|
||||
"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:62",
|
||||
"location": "imgui_impl_glfw:64",
|
||||
"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:58",
|
||||
"location": "imgui_impl_glfw:60",
|
||||
"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:36",
|
||||
"location": "imgui_impl_glfw:38",
|
||||
"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:48",
|
||||
"location": "imgui_impl_glfw:50",
|
||||
"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:59",
|
||||
"location": "imgui_impl_glfw:61",
|
||||
"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:52",
|
||||
"location": "imgui_impl_glfw:54",
|
||||
"ov_cimguiname": "ImGui_ImplGlfw_SetCallbacksChainForAllWindows",
|
||||
"ret": "void",
|
||||
"signature": "(bool)",
|
||||
@@ -365,7 +365,7 @@
|
||||
"cimguiname": "ImGui_ImplGlfw_Shutdown",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplGlfw_Shutdown",
|
||||
"location": "imgui_impl_glfw:35",
|
||||
"location": "imgui_impl_glfw:37",
|
||||
"ov_cimguiname": "ImGui_ImplGlfw_Shutdown",
|
||||
"ret": "void",
|
||||
"signature": "()",
|
||||
@@ -386,7 +386,7 @@
|
||||
"cimguiname": "ImGui_ImplGlfw_Sleep",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplGlfw_Sleep",
|
||||
"location": "imgui_impl_glfw:65",
|
||||
"location": "imgui_impl_glfw:67",
|
||||
"ov_cimguiname": "ImGui_ImplGlfw_Sleep",
|
||||
"ret": "void",
|
||||
"signature": "(int)",
|
||||
@@ -411,7 +411,7 @@
|
||||
"cimguiname": "ImGui_ImplGlfw_WindowFocusCallback",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplGlfw_WindowFocusCallback",
|
||||
"location": "imgui_impl_glfw:55",
|
||||
"location": "imgui_impl_glfw:57",
|
||||
"ov_cimguiname": "ImGui_ImplGlfw_WindowFocusCallback",
|
||||
"ret": "void",
|
||||
"signature": "(GLFWwindow*,int)",
|
||||
@@ -427,7 +427,7 @@
|
||||
"cimguiname": "ImGui_ImplOpenGL2_CreateDeviceObjects",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL2_CreateDeviceObjects",
|
||||
"location": "imgui_impl_opengl2:37",
|
||||
"location": "imgui_impl_opengl2:39",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL2_CreateDeviceObjects",
|
||||
"ret": "bool",
|
||||
"signature": "()",
|
||||
@@ -443,7 +443,7 @@
|
||||
"cimguiname": "ImGui_ImplOpenGL2_CreateFontsTexture",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL2_CreateFontsTexture",
|
||||
"location": "imgui_impl_opengl2:35",
|
||||
"location": "imgui_impl_opengl2:37",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL2_CreateFontsTexture",
|
||||
"ret": "bool",
|
||||
"signature": "()",
|
||||
@@ -459,7 +459,7 @@
|
||||
"cimguiname": "ImGui_ImplOpenGL2_DestroyDeviceObjects",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL2_DestroyDeviceObjects",
|
||||
"location": "imgui_impl_opengl2:38",
|
||||
"location": "imgui_impl_opengl2:40",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL2_DestroyDeviceObjects",
|
||||
"ret": "void",
|
||||
"signature": "()",
|
||||
@@ -475,7 +475,7 @@
|
||||
"cimguiname": "ImGui_ImplOpenGL2_DestroyFontsTexture",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL2_DestroyFontsTexture",
|
||||
"location": "imgui_impl_opengl2:36",
|
||||
"location": "imgui_impl_opengl2:38",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL2_DestroyFontsTexture",
|
||||
"ret": "void",
|
||||
"signature": "()",
|
||||
@@ -491,7 +491,7 @@
|
||||
"cimguiname": "ImGui_ImplOpenGL2_Init",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL2_Init",
|
||||
"location": "imgui_impl_opengl2:29",
|
||||
"location": "imgui_impl_opengl2:31",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL2_Init",
|
||||
"ret": "bool",
|
||||
"signature": "()",
|
||||
@@ -507,7 +507,7 @@
|
||||
"cimguiname": "ImGui_ImplOpenGL2_NewFrame",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL2_NewFrame",
|
||||
"location": "imgui_impl_opengl2:31",
|
||||
"location": "imgui_impl_opengl2:33",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL2_NewFrame",
|
||||
"ret": "void",
|
||||
"signature": "()",
|
||||
@@ -528,7 +528,7 @@
|
||||
"cimguiname": "ImGui_ImplOpenGL2_RenderDrawData",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL2_RenderDrawData",
|
||||
"location": "imgui_impl_opengl2:32",
|
||||
"location": "imgui_impl_opengl2:34",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL2_RenderDrawData",
|
||||
"ret": "void",
|
||||
"signature": "(ImDrawData*)",
|
||||
@@ -544,7 +544,7 @@
|
||||
"cimguiname": "ImGui_ImplOpenGL2_Shutdown",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL2_Shutdown",
|
||||
"location": "imgui_impl_opengl2:30",
|
||||
"location": "imgui_impl_opengl2:32",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL2_Shutdown",
|
||||
"ret": "void",
|
||||
"signature": "()",
|
||||
@@ -879,11 +879,11 @@
|
||||
"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",
|
||||
@@ -924,7 +924,7 @@
|
||||
"cimguiname": "ImGui_ImplSDL3_InitForD3D",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplSDL3_InitForD3D",
|
||||
"location": "imgui_impl_sdl3:38",
|
||||
"location": "imgui_impl_sdl3:36",
|
||||
"ov_cimguiname": "ImGui_ImplSDL3_InitForD3D",
|
||||
"ret": "bool",
|
||||
"signature": "(SDL_Window*)",
|
||||
@@ -945,7 +945,7 @@
|
||||
"cimguiname": "ImGui_ImplSDL3_InitForMetal",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplSDL3_InitForMetal",
|
||||
"location": "imgui_impl_sdl3:39",
|
||||
"location": "imgui_impl_sdl3:37",
|
||||
"ov_cimguiname": "ImGui_ImplSDL3_InitForMetal",
|
||||
"ret": "bool",
|
||||
"signature": "(SDL_Window*)",
|
||||
@@ -970,7 +970,7 @@
|
||||
"cimguiname": "ImGui_ImplSDL3_InitForOpenGL",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplSDL3_InitForOpenGL",
|
||||
"location": "imgui_impl_sdl3:36",
|
||||
"location": "imgui_impl_sdl3:34",
|
||||
"ov_cimguiname": "ImGui_ImplSDL3_InitForOpenGL",
|
||||
"ret": "bool",
|
||||
"signature": "(SDL_Window*,void*)",
|
||||
@@ -991,13 +991,34 @@
|
||||
"cimguiname": "ImGui_ImplSDL3_InitForOther",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplSDL3_InitForOther",
|
||||
"location": "imgui_impl_sdl3:41",
|
||||
"location": "imgui_impl_sdl3:40",
|
||||
"ov_cimguiname": "ImGui_ImplSDL3_InitForOther",
|
||||
"ret": "bool",
|
||||
"signature": "(SDL_Window*)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplSDL3_InitForSDLGPU": [
|
||||
{
|
||||
"args": "(SDL_Window* window)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": "SDL_Window*"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(SDL_Window* window)",
|
||||
"call_args": "(window)",
|
||||
"cimguiname": "ImGui_ImplSDL3_InitForSDLGPU",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplSDL3_InitForSDLGPU",
|
||||
"location": "imgui_impl_sdl3:39",
|
||||
"ov_cimguiname": "ImGui_ImplSDL3_InitForSDLGPU",
|
||||
"ret": "bool",
|
||||
"signature": "(SDL_Window*)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplSDL3_InitForSDLRenderer": [
|
||||
{
|
||||
"args": "(SDL_Window* window,SDL_Renderer* renderer)",
|
||||
@@ -1016,7 +1037,7 @@
|
||||
"cimguiname": "ImGui_ImplSDL3_InitForSDLRenderer",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplSDL3_InitForSDLRenderer",
|
||||
"location": "imgui_impl_sdl3:40",
|
||||
"location": "imgui_impl_sdl3:38",
|
||||
"ov_cimguiname": "ImGui_ImplSDL3_InitForSDLRenderer",
|
||||
"ret": "bool",
|
||||
"signature": "(SDL_Window*,SDL_Renderer*)",
|
||||
@@ -1037,7 +1058,7 @@
|
||||
"cimguiname": "ImGui_ImplSDL3_InitForVulkan",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplSDL3_InitForVulkan",
|
||||
"location": "imgui_impl_sdl3:37",
|
||||
"location": "imgui_impl_sdl3:35",
|
||||
"ov_cimguiname": "ImGui_ImplSDL3_InitForVulkan",
|
||||
"ret": "bool",
|
||||
"signature": "(SDL_Window*)",
|
||||
@@ -1053,7 +1074,7 @@
|
||||
"cimguiname": "ImGui_ImplSDL3_NewFrame",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplSDL3_NewFrame",
|
||||
"location": "imgui_impl_sdl3:43",
|
||||
"location": "imgui_impl_sdl3:42",
|
||||
"ov_cimguiname": "ImGui_ImplSDL3_NewFrame",
|
||||
"ret": "void",
|
||||
"signature": "()",
|
||||
@@ -1074,7 +1095,7 @@
|
||||
"cimguiname": "ImGui_ImplSDL3_ProcessEvent",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplSDL3_ProcessEvent",
|
||||
"location": "imgui_impl_sdl3:44",
|
||||
"location": "imgui_impl_sdl3:43",
|
||||
"ov_cimguiname": "ImGui_ImplSDL3_ProcessEvent",
|
||||
"ret": "bool",
|
||||
"signature": "(const SDL_Event*)",
|
||||
@@ -1098,15 +1119,15 @@
|
||||
"type": "int"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(ImGui_ImplSDL3_GamepadMode mode,SDL_Gamepad** manual_gamepads_array=((void*)0),int manual_gamepads_count=-1)",
|
||||
"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": "NULL",
|
||||
"manual_gamepads_array": "nullptr",
|
||||
"manual_gamepads_count": "-1"
|
||||
},
|
||||
"funcname": "ImGui_ImplSDL3_SetGamepadMode",
|
||||
"location": "imgui_impl_sdl3:49",
|
||||
"location": "imgui_impl_sdl3:48",
|
||||
"ov_cimguiname": "ImGui_ImplSDL3_SetGamepadMode",
|
||||
"ret": "void",
|
||||
"signature": "(ImGui_ImplSDL3_GamepadMode,SDL_Gamepad**,int)",
|
||||
@@ -1122,11 +1143,484 @@
|
||||
"cimguiname": "ImGui_ImplSDL3_Shutdown",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplSDL3_Shutdown",
|
||||
"location": "imgui_impl_sdl3:42",
|
||||
"location": "imgui_impl_sdl3:41",
|
||||
"ov_cimguiname": "ImGui_ImplSDL3_Shutdown",
|
||||
"ret": "void",
|
||||
"signature": "()",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplVulkanH_CreateOrResizeWindow": [
|
||||
{
|
||||
"args": "(VkInstance instance,VkPhysicalDevice physical_device,VkDevice device,ImGui_ImplVulkanH_Window* wd,uint32_t queue_family,const VkAllocationCallbacks* allocator,int w,int h,uint32_t min_image_count)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "instance",
|
||||
"type": "VkInstance"
|
||||
},
|
||||
{
|
||||
"name": "physical_device",
|
||||
"type": "VkPhysicalDevice"
|
||||
},
|
||||
{
|
||||
"name": "device",
|
||||
"type": "VkDevice"
|
||||
},
|
||||
{
|
||||
"name": "wd",
|
||||
"type": "ImGui_ImplVulkanH_Window*"
|
||||
},
|
||||
{
|
||||
"name": "queue_family",
|
||||
"type": "uint32_t"
|
||||
},
|
||||
{
|
||||
"name": "allocator",
|
||||
"type": "const VkAllocationCallbacks*"
|
||||
},
|
||||
{
|
||||
"name": "w",
|
||||
"type": "int"
|
||||
},
|
||||
{
|
||||
"name": "h",
|
||||
"type": "int"
|
||||
},
|
||||
{
|
||||
"name": "min_image_count",
|
||||
"type": "uint32_t"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(VkInstance instance,VkPhysicalDevice physical_device,VkDevice device,ImGui_ImplVulkanH_Window* wd,uint32_t queue_family,const VkAllocationCallbacks* allocator,int w,int h,uint32_t min_image_count)",
|
||||
"call_args": "(instance,physical_device,device,wd,queue_family,allocator,w,h,min_image_count)",
|
||||
"cimguiname": "ImGui_ImplVulkanH_CreateOrResizeWindow",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplVulkanH_CreateOrResizeWindow",
|
||||
"location": "imgui_impl_vulkan:166",
|
||||
"ov_cimguiname": "ImGui_ImplVulkanH_CreateOrResizeWindow",
|
||||
"ret": "void",
|
||||
"signature": "(VkInstance,VkPhysicalDevice,VkDevice,ImGui_ImplVulkanH_Window*,uint32_t,const VkAllocationCallbacks*,int,int,uint32_t)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplVulkanH_DestroyWindow": [
|
||||
{
|
||||
"args": "(VkInstance instance,VkDevice device,ImGui_ImplVulkanH_Window* wd,const VkAllocationCallbacks* allocator)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "instance",
|
||||
"type": "VkInstance"
|
||||
},
|
||||
{
|
||||
"name": "device",
|
||||
"type": "VkDevice"
|
||||
},
|
||||
{
|
||||
"name": "wd",
|
||||
"type": "ImGui_ImplVulkanH_Window*"
|
||||
},
|
||||
{
|
||||
"name": "allocator",
|
||||
"type": "const VkAllocationCallbacks*"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(VkInstance instance,VkDevice device,ImGui_ImplVulkanH_Window* wd,const VkAllocationCallbacks* allocator)",
|
||||
"call_args": "(instance,device,wd,allocator)",
|
||||
"cimguiname": "ImGui_ImplVulkanH_DestroyWindow",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplVulkanH_DestroyWindow",
|
||||
"location": "imgui_impl_vulkan:167",
|
||||
"ov_cimguiname": "ImGui_ImplVulkanH_DestroyWindow",
|
||||
"ret": "void",
|
||||
"signature": "(VkInstance,VkDevice,ImGui_ImplVulkanH_Window*,const VkAllocationCallbacks*)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplVulkanH_GetMinImageCountFromPresentMode": [
|
||||
{
|
||||
"args": "(VkPresentModeKHR present_mode)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "present_mode",
|
||||
"type": "VkPresentModeKHR"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(VkPresentModeKHR present_mode)",
|
||||
"call_args": "(present_mode)",
|
||||
"cimguiname": "ImGui_ImplVulkanH_GetMinImageCountFromPresentMode",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplVulkanH_GetMinImageCountFromPresentMode",
|
||||
"location": "imgui_impl_vulkan:172",
|
||||
"ov_cimguiname": "ImGui_ImplVulkanH_GetMinImageCountFromPresentMode",
|
||||
"ret": "int",
|
||||
"signature": "(VkPresentModeKHR)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplVulkanH_SelectPhysicalDevice": [
|
||||
{
|
||||
"args": "(VkInstance instance)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "instance",
|
||||
"type": "VkInstance"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(VkInstance instance)",
|
||||
"call_args": "(instance)",
|
||||
"cimguiname": "ImGui_ImplVulkanH_SelectPhysicalDevice",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplVulkanH_SelectPhysicalDevice",
|
||||
"location": "imgui_impl_vulkan:170",
|
||||
"ov_cimguiname": "ImGui_ImplVulkanH_SelectPhysicalDevice",
|
||||
"ret": "VkPhysicalDevice",
|
||||
"signature": "(VkInstance)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplVulkanH_SelectPresentMode": [
|
||||
{
|
||||
"args": "(VkPhysicalDevice physical_device,VkSurfaceKHR surface,const VkPresentModeKHR* request_modes,int request_modes_count)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "physical_device",
|
||||
"type": "VkPhysicalDevice"
|
||||
},
|
||||
{
|
||||
"name": "surface",
|
||||
"type": "VkSurfaceKHR"
|
||||
},
|
||||
{
|
||||
"name": "request_modes",
|
||||
"type": "const VkPresentModeKHR*"
|
||||
},
|
||||
{
|
||||
"name": "request_modes_count",
|
||||
"type": "int"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(VkPhysicalDevice physical_device,VkSurfaceKHR surface,const VkPresentModeKHR* request_modes,int request_modes_count)",
|
||||
"call_args": "(physical_device,surface,request_modes,request_modes_count)",
|
||||
"cimguiname": "ImGui_ImplVulkanH_SelectPresentMode",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplVulkanH_SelectPresentMode",
|
||||
"location": "imgui_impl_vulkan:169",
|
||||
"ov_cimguiname": "ImGui_ImplVulkanH_SelectPresentMode",
|
||||
"ret": "VkPresentModeKHR",
|
||||
"signature": "(VkPhysicalDevice,VkSurfaceKHR,const VkPresentModeKHR*,int)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplVulkanH_SelectQueueFamilyIndex": [
|
||||
{
|
||||
"args": "(VkPhysicalDevice physical_device)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "physical_device",
|
||||
"type": "VkPhysicalDevice"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(VkPhysicalDevice physical_device)",
|
||||
"call_args": "(physical_device)",
|
||||
"cimguiname": "ImGui_ImplVulkanH_SelectQueueFamilyIndex",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplVulkanH_SelectQueueFamilyIndex",
|
||||
"location": "imgui_impl_vulkan:171",
|
||||
"ov_cimguiname": "ImGui_ImplVulkanH_SelectQueueFamilyIndex",
|
||||
"ret": "uint32_t",
|
||||
"signature": "(VkPhysicalDevice)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplVulkanH_SelectSurfaceFormat": [
|
||||
{
|
||||
"args": "(VkPhysicalDevice physical_device,VkSurfaceKHR surface,const VkFormat* request_formats,int request_formats_count,VkColorSpaceKHR request_color_space)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "physical_device",
|
||||
"type": "VkPhysicalDevice"
|
||||
},
|
||||
{
|
||||
"name": "surface",
|
||||
"type": "VkSurfaceKHR"
|
||||
},
|
||||
{
|
||||
"name": "request_formats",
|
||||
"type": "const VkFormat*"
|
||||
},
|
||||
{
|
||||
"name": "request_formats_count",
|
||||
"type": "int"
|
||||
},
|
||||
{
|
||||
"name": "request_color_space",
|
||||
"type": "VkColorSpaceKHR"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(VkPhysicalDevice physical_device,VkSurfaceKHR surface,const VkFormat* request_formats,int request_formats_count,VkColorSpaceKHR request_color_space)",
|
||||
"call_args": "(physical_device,surface,request_formats,request_formats_count,request_color_space)",
|
||||
"cimguiname": "ImGui_ImplVulkanH_SelectSurfaceFormat",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplVulkanH_SelectSurfaceFormat",
|
||||
"location": "imgui_impl_vulkan:168",
|
||||
"ov_cimguiname": "ImGui_ImplVulkanH_SelectSurfaceFormat",
|
||||
"ret": "VkSurfaceFormatKHR",
|
||||
"signature": "(VkPhysicalDevice,VkSurfaceKHR,const VkFormat*,int,VkColorSpaceKHR)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplVulkanH_Window_ImGui_ImplVulkanH_Window": [
|
||||
{
|
||||
"args": "()",
|
||||
"argsT": [],
|
||||
"argsoriginal": "()",
|
||||
"call_args": "()",
|
||||
"cimguiname": "ImGui_ImplVulkanH_Window_ImGui_ImplVulkanH_Window",
|
||||
"constructor": true,
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplVulkanH_Window",
|
||||
"location": "imgui_impl_vulkan:214",
|
||||
"ov_cimguiname": "ImGui_ImplVulkanH_Window_ImGui_ImplVulkanH_Window",
|
||||
"signature": "()",
|
||||
"stname": "ImGui_ImplVulkanH_Window"
|
||||
}
|
||||
],
|
||||
"ImGui_ImplVulkanH_Window_destroy": [
|
||||
{
|
||||
"args": "(ImGui_ImplVulkanH_Window* self)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "self",
|
||||
"type": "ImGui_ImplVulkanH_Window*"
|
||||
}
|
||||
],
|
||||
"call_args": "(self)",
|
||||
"cimguiname": "ImGui_ImplVulkanH_Window_destroy",
|
||||
"defaults": {},
|
||||
"destructor": true,
|
||||
"location": "imgui_impl_vulkan:214",
|
||||
"ov_cimguiname": "ImGui_ImplVulkanH_Window_destroy",
|
||||
"ret": "void",
|
||||
"signature": "(ImGui_ImplVulkanH_Window*)",
|
||||
"stname": "ImGui_ImplVulkanH_Window"
|
||||
}
|
||||
],
|
||||
"ImGui_ImplVulkan_AddTexture": [
|
||||
{
|
||||
"args": "(VkSampler sampler,VkImageView image_view,VkImageLayout image_layout)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "sampler",
|
||||
"type": "VkSampler"
|
||||
},
|
||||
{
|
||||
"name": "image_view",
|
||||
"type": "VkImageView"
|
||||
},
|
||||
{
|
||||
"name": "image_layout",
|
||||
"type": "VkImageLayout"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(VkSampler sampler,VkImageView image_view,VkImageLayout image_layout)",
|
||||
"call_args": "(sampler,image_view,image_layout)",
|
||||
"cimguiname": "ImGui_ImplVulkan_AddTexture",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplVulkan_AddTexture",
|
||||
"location": "imgui_impl_vulkan:123",
|
||||
"ov_cimguiname": "ImGui_ImplVulkan_AddTexture",
|
||||
"ret": "VkDescriptorSet",
|
||||
"signature": "(VkSampler,VkImageView,VkImageLayout)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplVulkan_CreateFontsTexture": [
|
||||
{
|
||||
"args": "()",
|
||||
"argsT": [],
|
||||
"argsoriginal": "()",
|
||||
"call_args": "()",
|
||||
"cimguiname": "ImGui_ImplVulkan_CreateFontsTexture",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplVulkan_CreateFontsTexture",
|
||||
"location": "imgui_impl_vulkan:116",
|
||||
"ov_cimguiname": "ImGui_ImplVulkan_CreateFontsTexture",
|
||||
"ret": "bool",
|
||||
"signature": "()",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplVulkan_DestroyFontsTexture": [
|
||||
{
|
||||
"args": "()",
|
||||
"argsT": [],
|
||||
"argsoriginal": "()",
|
||||
"call_args": "()",
|
||||
"cimguiname": "ImGui_ImplVulkan_DestroyFontsTexture",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplVulkan_DestroyFontsTexture",
|
||||
"location": "imgui_impl_vulkan:117",
|
||||
"ov_cimguiname": "ImGui_ImplVulkan_DestroyFontsTexture",
|
||||
"ret": "void",
|
||||
"signature": "()",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplVulkan_Init": [
|
||||
{
|
||||
"args": "(ImGui_ImplVulkan_InitInfo* info)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "info",
|
||||
"type": "ImGui_ImplVulkan_InitInfo*"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(ImGui_ImplVulkan_InitInfo* info)",
|
||||
"call_args": "(info)",
|
||||
"cimguiname": "ImGui_ImplVulkan_Init",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplVulkan_Init",
|
||||
"location": "imgui_impl_vulkan:112",
|
||||
"ov_cimguiname": "ImGui_ImplVulkan_Init",
|
||||
"ret": "bool",
|
||||
"signature": "(ImGui_ImplVulkan_InitInfo*)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplVulkan_LoadFunctions": [
|
||||
{
|
||||
"args": "(uint32_t api_version,PFN_vkVoidFunction(*loader_func)(const char* function_name,void* user_data),void* user_data)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "api_version",
|
||||
"type": "uint32_t"
|
||||
},
|
||||
{
|
||||
"name": "user_data)",
|
||||
"type": "PFN_vkVoidFunction(*loader_func)(const char* function_name,void*"
|
||||
},
|
||||
{
|
||||
"name": "user_data",
|
||||
"type": "void*"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(uint32_t api_version,PFN_vkVoidFunction(*loader_func)(const char* function_name,void* user_data),void* user_data=nullptr)",
|
||||
"call_args": "(api_version,user_data),user_data)",
|
||||
"cimguiname": "ImGui_ImplVulkan_LoadFunctions",
|
||||
"defaults": {
|
||||
"user_data": "nullptr"
|
||||
},
|
||||
"funcname": "ImGui_ImplVulkan_LoadFunctions",
|
||||
"location": "imgui_impl_vulkan:128",
|
||||
"ov_cimguiname": "ImGui_ImplVulkan_LoadFunctions",
|
||||
"ret": "bool",
|
||||
"signature": "(uint32_t,PFN_vkVoidFunction(*loader_func)(const char* function_name,void*,void*)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplVulkan_NewFrame": [
|
||||
{
|
||||
"args": "()",
|
||||
"argsT": [],
|
||||
"argsoriginal": "()",
|
||||
"call_args": "()",
|
||||
"cimguiname": "ImGui_ImplVulkan_NewFrame",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplVulkan_NewFrame",
|
||||
"location": "imgui_impl_vulkan:114",
|
||||
"ov_cimguiname": "ImGui_ImplVulkan_NewFrame",
|
||||
"ret": "void",
|
||||
"signature": "()",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplVulkan_RemoveTexture": [
|
||||
{
|
||||
"args": "(VkDescriptorSet descriptor_set)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "descriptor_set",
|
||||
"type": "VkDescriptorSet"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(VkDescriptorSet descriptor_set)",
|
||||
"call_args": "(descriptor_set)",
|
||||
"cimguiname": "ImGui_ImplVulkan_RemoveTexture",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplVulkan_RemoveTexture",
|
||||
"location": "imgui_impl_vulkan:124",
|
||||
"ov_cimguiname": "ImGui_ImplVulkan_RemoveTexture",
|
||||
"ret": "void",
|
||||
"signature": "(VkDescriptorSet)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplVulkan_RenderDrawData": [
|
||||
{
|
||||
"args": "(ImDrawData* draw_data,VkCommandBuffer command_buffer,VkPipeline pipeline)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "draw_data",
|
||||
"type": "ImDrawData*"
|
||||
},
|
||||
{
|
||||
"name": "command_buffer",
|
||||
"type": "VkCommandBuffer"
|
||||
},
|
||||
{
|
||||
"name": "pipeline",
|
||||
"type": "VkPipeline"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(ImDrawData* draw_data,VkCommandBuffer command_buffer,VkPipeline pipeline=0ULL)",
|
||||
"call_args": "(draw_data,command_buffer,pipeline)",
|
||||
"cimguiname": "ImGui_ImplVulkan_RenderDrawData",
|
||||
"defaults": {
|
||||
"pipeline": "0ULL"
|
||||
},
|
||||
"funcname": "ImGui_ImplVulkan_RenderDrawData",
|
||||
"location": "imgui_impl_vulkan:115",
|
||||
"ov_cimguiname": "ImGui_ImplVulkan_RenderDrawData",
|
||||
"ret": "void",
|
||||
"signature": "(ImDrawData*,VkCommandBuffer,VkPipeline)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplVulkan_SetMinImageCount": [
|
||||
{
|
||||
"args": "(uint32_t min_image_count)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "min_image_count",
|
||||
"type": "uint32_t"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(uint32_t min_image_count)",
|
||||
"call_args": "(min_image_count)",
|
||||
"cimguiname": "ImGui_ImplVulkan_SetMinImageCount",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplVulkan_SetMinImageCount",
|
||||
"location": "imgui_impl_vulkan:118",
|
||||
"ov_cimguiname": "ImGui_ImplVulkan_SetMinImageCount",
|
||||
"ret": "void",
|
||||
"signature": "(uint32_t)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplVulkan_Shutdown": [
|
||||
{
|
||||
"args": "()",
|
||||
"argsT": [],
|
||||
"argsoriginal": "()",
|
||||
"call_args": "()",
|
||||
"cimguiname": "ImGui_ImplVulkan_Shutdown",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplVulkan_Shutdown",
|
||||
"location": "imgui_impl_vulkan:113",
|
||||
"ov_cimguiname": "ImGui_ImplVulkan_Shutdown",
|
||||
"ret": "void",
|
||||
"signature": "()",
|
||||
"stname": ""
|
||||
}
|
||||
]
|
||||
}
|
File diff suppressed because it is too large
Load Diff
@@ -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)
|
||||
@@ -123,9 +123,15 @@ igGetID 4
|
||||
igGetIDWithSeed 2
|
||||
1 ImGuiID igGetIDWithSeed_Str (const char*,const char*,ImGuiID)
|
||||
2 ImGuiID igGetIDWithSeed_Int (int,ImGuiID)
|
||||
igGetIO 2
|
||||
1 ImGuiIO* igGetIO ()
|
||||
2 ImGuiIO* igGetIOEx (ImGuiContext*)
|
||||
igGetKeyData 2
|
||||
1 ImGuiKeyData* igGetKeyData_ContextPtr (ImGuiContext*,ImGuiKey)
|
||||
2 ImGuiKeyData* igGetKeyData_Key (ImGuiKey)
|
||||
igGetPlatformIO 2
|
||||
1 ImGuiPlatformIO* igGetPlatformIO_Nil ()
|
||||
2 ImGuiPlatformIO* igGetPlatformIO_ContextPtr (ImGuiContext*)
|
||||
igImAbs 3
|
||||
1 int igImAbs_Int (int)
|
||||
2 float igImAbs_Float (float)
|
||||
@@ -293,4 +299,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*)
|
||||
205 overloaded
|
||||
209 overloaded
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -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",
|
||||
@@ -39,12 +39,12 @@
|
||||
"ImGuiConfigFlags": "int",
|
||||
"ImGuiContext": "struct ImGuiContext",
|
||||
"ImGuiContextHook": "struct ImGuiContextHook",
|
||||
"ImGuiContextHookCallback": "void(*)(ImGuiContext* ctx,ImGuiContextHook* hook);",
|
||||
"ImGuiContextHookCallback": "void (*)(ImGuiContext* ctx, ImGuiContextHook* hook);",
|
||||
"ImGuiDataAuthority": "int",
|
||||
"ImGuiDataType": "int",
|
||||
"ImGuiDataTypeInfo": "struct ImGuiDataTypeInfo",
|
||||
"ImGuiDataTypeStorage": "struct ImGuiDataTypeStorage",
|
||||
"ImGuiDataVarInfo": "struct ImGuiDataVarInfo",
|
||||
"ImGuiDeactivatedItemData": "struct ImGuiDeactivatedItemData",
|
||||
"ImGuiDebugAllocEntry": "struct ImGuiDebugAllocEntry",
|
||||
"ImGuiDebugAllocInfo": "struct ImGuiDebugAllocInfo",
|
||||
"ImGuiDebugLogFlags": "int",
|
||||
@@ -54,7 +54,7 @@
|
||||
"ImGuiDockNodeSettings": "struct ImGuiDockNodeSettings",
|
||||
"ImGuiDockRequest": "struct ImGuiDockRequest",
|
||||
"ImGuiDragDropFlags": "int",
|
||||
"ImGuiErrorCallback": "void(*)(ImGuiContext* ctx,void* user_data,const char* msg);",
|
||||
"ImGuiErrorCallback": "void (*)(ImGuiContext* ctx, void* user_data, const char* msg);",
|
||||
"ImGuiErrorRecoveryState": "struct ImGuiErrorRecoveryState",
|
||||
"ImGuiFocusRequestFlags": "int",
|
||||
"ImGuiFocusScopeData": "struct ImGuiFocusScopeData",
|
||||
@@ -73,7 +73,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",
|
||||
@@ -93,8 +93,9 @@
|
||||
"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",
|
||||
@@ -130,7 +131,7 @@
|
||||
"ImGuiSeparatorFlags": "int",
|
||||
"ImGuiSettingsHandler": "struct ImGuiSettingsHandler",
|
||||
"ImGuiShrinkWidthItem": "struct ImGuiShrinkWidthItem",
|
||||
"ImGuiSizeCallback": "void(*)(ImGuiSizeCallbackData* data);",
|
||||
"ImGuiSizeCallback": "void (*)(ImGuiSizeCallbackData* data);",
|
||||
"ImGuiSizeCallbackData": "struct ImGuiSizeCallbackData",
|
||||
"ImGuiSliderFlags": "int",
|
||||
"ImGuiStackLevelInfo": "struct ImGuiStackLevelInfo",
|
||||
@@ -139,6 +140,7 @@
|
||||
"ImGuiStyle": "struct ImGuiStyle",
|
||||
"ImGuiStyleMod": "struct ImGuiStyleMod",
|
||||
"ImGuiStyleVar": "int",
|
||||
"ImGuiStyleVarInfo": "struct ImGuiStyleVarInfo",
|
||||
"ImGuiTabBar": "struct ImGuiTabBar",
|
||||
"ImGuiTabBarFlags": "int",
|
||||
"ImGuiTabItem": "struct ImGuiTabItem",
|
||||
@@ -201,8 +203,5 @@
|
||||
"ImWchar": "ImWchar16",
|
||||
"ImWchar16": "unsigned short",
|
||||
"ImWchar32": "unsigned int",
|
||||
"STB_TexteditState": "struct STB_TexteditState",
|
||||
"const_iterator": "const value_type*",
|
||||
"iterator": "value_type*",
|
||||
"value_type": "T"
|
||||
"STB_TexteditState": "struct STB_TexteditState"
|
||||
}
|
@@ -1,209 +1,207 @@
|
||||
local defs = {}
|
||||
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["ImDrawChannel"] = "struct ImDrawChannel"
|
||||
defs["ImDrawCmd"] = "struct ImDrawCmd"
|
||||
defs["ImDrawCmdHeader"] = "struct ImDrawCmdHeader"
|
||||
defs["ImDrawData"] = "struct ImDrawData"
|
||||
defs["ImDrawDataBuilder"] = "struct ImDrawDataBuilder"
|
||||
defs["ImDrawFlags"] = "int"
|
||||
defs["ImDrawIdx"] = "unsigned short"
|
||||
defs["ImDrawList"] = "struct ImDrawList"
|
||||
defs["ImDrawListFlags"] = "int"
|
||||
defs["ImDrawListSharedData"] = "struct ImDrawListSharedData"
|
||||
defs["ImDrawListSplitter"] = "struct ImDrawListSplitter"
|
||||
defs["ImDrawVert"] = "struct ImDrawVert"
|
||||
defs["ImFileHandle"] = "FILE*"
|
||||
defs["ImFont"] = "struct ImFont"
|
||||
defs["ImFontAtlas"] = "struct ImFontAtlas"
|
||||
defs["ImFontAtlasCustomRect"] = "struct ImFontAtlasCustomRect"
|
||||
defs["ImFontAtlasFlags"] = "int"
|
||||
defs["ImFontBuilderIO"] = "struct ImFontBuilderIO"
|
||||
defs["ImFontConfig"] = "struct ImFontConfig"
|
||||
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"
|
||||
defs["ImGuiColorEditFlags"] = "int"
|
||||
defs["ImGuiColorMod"] = "struct ImGuiColorMod"
|
||||
defs["ImGuiComboFlags"] = "int"
|
||||
defs["ImGuiComboPreviewData"] = "struct ImGuiComboPreviewData"
|
||||
defs["ImGuiCond"] = "int"
|
||||
defs["ImGuiConfigFlags"] = "int"
|
||||
defs["ImGuiContext"] = "struct ImGuiContext"
|
||||
defs["ImGuiContextHook"] = "struct ImGuiContextHook"
|
||||
defs["ImGuiContextHookCallback"] = "void(*)(ImGuiContext* ctx,ImGuiContextHook* hook);"
|
||||
defs["ImGuiDataAuthority"] = "int"
|
||||
defs["ImGuiDataType"] = "int"
|
||||
defs["ImGuiDataTypeInfo"] = "struct ImGuiDataTypeInfo"
|
||||
defs["ImGuiDataTypeStorage"] = "struct ImGuiDataTypeStorage"
|
||||
defs["ImGuiDataVarInfo"] = "struct ImGuiDataVarInfo"
|
||||
defs["ImGuiDebugAllocEntry"] = "struct ImGuiDebugAllocEntry"
|
||||
defs["ImGuiDebugAllocInfo"] = "struct ImGuiDebugAllocInfo"
|
||||
defs["ImGuiDebugLogFlags"] = "int"
|
||||
defs["ImGuiDockContext"] = "struct ImGuiDockContext"
|
||||
defs["ImGuiDockNode"] = "struct ImGuiDockNode"
|
||||
defs["ImGuiDockNodeFlags"] = "int"
|
||||
defs["ImGuiDockNodeSettings"] = "struct ImGuiDockNodeSettings"
|
||||
defs["ImGuiDockRequest"] = "struct ImGuiDockRequest"
|
||||
defs["ImGuiDragDropFlags"] = "int"
|
||||
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"
|
||||
defs["ImGuiGroupData"] = "struct ImGuiGroupData"
|
||||
defs["ImGuiHoveredFlags"] = "int"
|
||||
defs["ImGuiID"] = "unsigned int"
|
||||
defs["ImGuiIDStackTool"] = "struct ImGuiIDStackTool"
|
||||
defs["ImGuiIO"] = "struct ImGuiIO"
|
||||
defs["ImGuiInputEvent"] = "struct ImGuiInputEvent"
|
||||
defs["ImGuiInputEventAppFocused"] = "struct ImGuiInputEventAppFocused"
|
||||
defs["ImGuiInputEventKey"] = "struct ImGuiInputEventKey"
|
||||
defs["ImGuiInputEventMouseButton"] = "struct ImGuiInputEventMouseButton"
|
||||
defs["ImGuiInputEventMousePos"] = "struct ImGuiInputEventMousePos"
|
||||
defs["ImGuiInputEventMouseViewport"] = "struct ImGuiInputEventMouseViewport"
|
||||
defs["ImGuiInputEventMouseWheel"] = "struct ImGuiInputEventMouseWheel"
|
||||
defs["ImGuiInputEventText"] = "struct ImGuiInputEventText"
|
||||
defs["ImGuiInputFlags"] = "int"
|
||||
defs["ImGuiInputTextCallback"] = "int(*)(ImGuiInputTextCallbackData* data);"
|
||||
defs["ImGuiInputTextCallbackData"] = "struct ImGuiInputTextCallbackData"
|
||||
defs["ImGuiInputTextDeactivateData"] = "struct ImGuiInputTextDeactivateData"
|
||||
defs["ImGuiInputTextDeactivatedState"] = "struct ImGuiInputTextDeactivatedState"
|
||||
defs["ImGuiInputTextFlags"] = "int"
|
||||
defs["ImGuiInputTextState"] = "struct ImGuiInputTextState"
|
||||
defs["ImGuiItemFlags"] = "int"
|
||||
defs["ImGuiItemStatusFlags"] = "int"
|
||||
defs["ImGuiKeyChord"] = "int"
|
||||
defs["ImGuiKeyData"] = "struct ImGuiKeyData"
|
||||
defs["ImGuiKeyOwnerData"] = "struct ImGuiKeyOwnerData"
|
||||
defs["ImGuiKeyRoutingData"] = "struct ImGuiKeyRoutingData"
|
||||
defs["ImGuiKeyRoutingIndex"] = "ImS16"
|
||||
defs["ImGuiKeyRoutingTable"] = "struct ImGuiKeyRoutingTable"
|
||||
defs["ImGuiLastItemData"] = "struct ImGuiLastItemData"
|
||||
defs["ImGuiLayoutType"] = "int"
|
||||
defs["ImGuiListClipper"] = "struct ImGuiListClipper"
|
||||
defs["ImGuiListClipperData"] = "struct ImGuiListClipperData"
|
||||
defs["ImGuiListClipperRange"] = "struct ImGuiListClipperRange"
|
||||
defs["ImGuiLocEntry"] = "struct ImGuiLocEntry"
|
||||
defs["ImGuiMemAllocFunc"] = "void*(*)(size_t sz,void* user_data);"
|
||||
defs["ImGuiMemFreeFunc"] = "void(*)(void* ptr,void* user_data);"
|
||||
defs["ImGuiMenuColumns"] = "struct ImGuiMenuColumns"
|
||||
defs["ImGuiMetricsConfig"] = "struct ImGuiMetricsConfig"
|
||||
defs["ImGuiMouseButton"] = "int"
|
||||
defs["ImGuiMouseCursor"] = "int"
|
||||
defs["ImGuiMultiSelectFlags"] = "int"
|
||||
defs["ImGuiMultiSelectIO"] = "struct ImGuiMultiSelectIO"
|
||||
defs["ImGuiMultiSelectState"] = "struct ImGuiMultiSelectState"
|
||||
defs["ImGuiMultiSelectTempData"] = "struct ImGuiMultiSelectTempData"
|
||||
defs["ImGuiNavItemData"] = "struct ImGuiNavItemData"
|
||||
defs["ImGuiNavMoveFlags"] = "int"
|
||||
defs["ImGuiNavRenderCursorFlags"] = "int"
|
||||
defs["ImGuiNextItemData"] = "struct ImGuiNextItemData"
|
||||
defs["ImGuiNextItemDataFlags"] = "int"
|
||||
defs["ImGuiNextWindowData"] = "struct ImGuiNextWindowData"
|
||||
defs["ImGuiNextWindowDataFlags"] = "int"
|
||||
defs["ImGuiOldColumnData"] = "struct ImGuiOldColumnData"
|
||||
defs["ImGuiOldColumnFlags"] = "int"
|
||||
defs["ImGuiOldColumns"] = "struct ImGuiOldColumns"
|
||||
defs["ImGuiOnceUponAFrame"] = "struct ImGuiOnceUponAFrame"
|
||||
defs["ImGuiPayload"] = "struct ImGuiPayload"
|
||||
defs["ImGuiPlatformIO"] = "struct ImGuiPlatformIO"
|
||||
defs["ImGuiPlatformImeData"] = "struct ImGuiPlatformImeData"
|
||||
defs["ImGuiPlatformMonitor"] = "struct ImGuiPlatformMonitor"
|
||||
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["ImGuiSizeCallbackData"] = "struct ImGuiSizeCallbackData"
|
||||
defs["ImGuiSliderFlags"] = "int"
|
||||
defs["ImGuiStackLevelInfo"] = "struct ImGuiStackLevelInfo"
|
||||
defs["ImGuiStorage"] = "struct ImGuiStorage"
|
||||
defs["ImGuiStoragePair"] = "struct ImGuiStoragePair"
|
||||
defs["ImGuiStyle"] = "struct ImGuiStyle"
|
||||
defs["ImGuiStyleMod"] = "struct ImGuiStyleMod"
|
||||
defs["ImGuiStyleVar"] = "int"
|
||||
defs["ImGuiTabBar"] = "struct ImGuiTabBar"
|
||||
defs["ImGuiTabBarFlags"] = "int"
|
||||
defs["ImGuiTabItem"] = "struct ImGuiTabItem"
|
||||
defs["ImGuiTabItemFlags"] = "int"
|
||||
defs["ImGuiTable"] = "struct ImGuiTable"
|
||||
defs["ImGuiTableBgTarget"] = "int"
|
||||
defs["ImGuiTableCellData"] = "struct ImGuiTableCellData"
|
||||
defs["ImGuiTableColumn"] = "struct ImGuiTableColumn"
|
||||
defs["ImGuiTableColumnFlags"] = "int"
|
||||
defs["ImGuiTableColumnIdx"] = "ImS16"
|
||||
defs["ImGuiTableColumnSettings"] = "struct ImGuiTableColumnSettings"
|
||||
defs["ImGuiTableColumnSortSpecs"] = "struct ImGuiTableColumnSortSpecs"
|
||||
defs["ImGuiTableColumnsSettings"] = "struct ImGuiTableColumnsSettings"
|
||||
defs["ImGuiTableDrawChannelIdx"] = "ImU16"
|
||||
defs["ImGuiTableFlags"] = "int"
|
||||
defs["ImGuiTableHeaderData"] = "struct ImGuiTableHeaderData"
|
||||
defs["ImGuiTableInstanceData"] = "struct ImGuiTableInstanceData"
|
||||
defs["ImGuiTableRowFlags"] = "int"
|
||||
defs["ImGuiTableSettings"] = "struct ImGuiTableSettings"
|
||||
defs["ImGuiTableSortSpecs"] = "struct ImGuiTableSortSpecs"
|
||||
defs["ImGuiTableTempData"] = "struct ImGuiTableTempData"
|
||||
defs["ImGuiTextBuffer"] = "struct ImGuiTextBuffer"
|
||||
defs["ImGuiTextFilter"] = "struct ImGuiTextFilter"
|
||||
defs["ImGuiTextFlags"] = "int"
|
||||
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"
|
||||
defs["ImGuiViewport"] = "struct ImGuiViewport"
|
||||
defs["ImGuiViewportFlags"] = "int"
|
||||
defs["ImGuiViewportP"] = "struct ImGuiViewportP"
|
||||
defs["ImGuiWindow"] = "struct ImGuiWindow"
|
||||
defs["ImGuiWindowClass"] = "struct ImGuiWindowClass"
|
||||
defs["ImGuiWindowDockStyle"] = "struct ImGuiWindowDockStyle"
|
||||
defs["ImGuiWindowFlags"] = "int"
|
||||
defs["ImGuiWindowRefreshFlags"] = "int"
|
||||
defs["ImGuiWindowSettings"] = "struct ImGuiWindowSettings"
|
||||
defs["ImGuiWindowStackData"] = "struct ImGuiWindowStackData"
|
||||
defs["ImGuiWindowTempData"] = "struct ImGuiWindowTempData"
|
||||
defs["ImPoolIdx"] = "int"
|
||||
defs["ImRect"] = "struct ImRect"
|
||||
defs["ImS16"] = "signed short"
|
||||
defs["ImS32"] = "signed int"
|
||||
defs["ImS64"] = "signed long long"
|
||||
defs["ImS8"] = "signed char"
|
||||
defs["ImStbTexteditState"] = "ImStb::STB_TexteditState"
|
||||
defs["ImTextureID"] = "ImU64"
|
||||
defs["ImU16"] = "unsigned short"
|
||||
defs["ImU32"] = "unsigned int"
|
||||
defs["ImU64"] = "unsigned long long"
|
||||
defs["ImU8"] = "unsigned char"
|
||||
defs["ImVec1"] = "struct ImVec1"
|
||||
defs["ImVec2"] = "struct ImVec2"
|
||||
defs["ImVec2ih"] = "struct ImVec2ih"
|
||||
defs["ImVec4"] = "struct ImVec4"
|
||||
defs["ImWchar"] = "ImWchar16"
|
||||
defs["ImWchar16"] = "unsigned short"
|
||||
defs["ImWchar32"] = "unsigned int"
|
||||
defs["STB_TexteditState"] = "struct STB_TexteditState"
|
||||
defs["const_iterator"] = "const value_type*"
|
||||
defs["iterator"] = "value_type*"
|
||||
defs["value_type"] = "T"
|
||||
|
||||
return defs
|
||||
local t={
|
||||
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);",
|
||||
ImDrawChannel="struct ImDrawChannel",
|
||||
ImDrawCmd="struct ImDrawCmd",
|
||||
ImDrawCmdHeader="struct ImDrawCmdHeader",
|
||||
ImDrawData="struct ImDrawData",
|
||||
ImDrawDataBuilder="struct ImDrawDataBuilder",
|
||||
ImDrawFlags="int",
|
||||
ImDrawIdx="unsigned short",
|
||||
ImDrawList="struct ImDrawList",
|
||||
ImDrawListFlags="int",
|
||||
ImDrawListSharedData="struct ImDrawListSharedData",
|
||||
ImDrawListSplitter="struct ImDrawListSplitter",
|
||||
ImDrawVert="struct ImDrawVert",
|
||||
ImFileHandle="FILE*",
|
||||
ImFont="struct ImFont",
|
||||
ImFontAtlas="struct ImFontAtlas",
|
||||
ImFontAtlasCustomRect="struct ImFontAtlasCustomRect",
|
||||
ImFontAtlasFlags="int",
|
||||
ImFontBuilderIO="struct ImFontBuilderIO",
|
||||
ImFontConfig="struct ImFontConfig",
|
||||
ImFontGlyph="struct ImFontGlyph",
|
||||
ImFontGlyphRangesBuilder="struct ImFontGlyphRangesBuilder",
|
||||
ImGuiActivateFlags="int",
|
||||
ImGuiBackendFlags="int",
|
||||
ImGuiBoxSelectState="struct ImGuiBoxSelectState",
|
||||
ImGuiButtonFlags="int",
|
||||
ImGuiChildFlags="int",
|
||||
ImGuiCol="int",
|
||||
ImGuiColorEditFlags="int",
|
||||
ImGuiColorMod="struct ImGuiColorMod",
|
||||
ImGuiComboFlags="int",
|
||||
ImGuiComboPreviewData="struct ImGuiComboPreviewData",
|
||||
ImGuiCond="int",
|
||||
ImGuiConfigFlags="int",
|
||||
ImGuiContext="struct ImGuiContext",
|
||||
ImGuiContextHook="struct ImGuiContextHook",
|
||||
ImGuiContextHookCallback="void (*)(ImGuiContext* ctx, ImGuiContextHook* hook);",
|
||||
ImGuiDataAuthority="int",
|
||||
ImGuiDataType="int",
|
||||
ImGuiDataTypeInfo="struct ImGuiDataTypeInfo",
|
||||
ImGuiDataTypeStorage="struct ImGuiDataTypeStorage",
|
||||
ImGuiDeactivatedItemData="struct ImGuiDeactivatedItemData",
|
||||
ImGuiDebugAllocEntry="struct ImGuiDebugAllocEntry",
|
||||
ImGuiDebugAllocInfo="struct ImGuiDebugAllocInfo",
|
||||
ImGuiDebugLogFlags="int",
|
||||
ImGuiDockContext="struct ImGuiDockContext",
|
||||
ImGuiDockNode="struct ImGuiDockNode",
|
||||
ImGuiDockNodeFlags="int",
|
||||
ImGuiDockNodeSettings="struct ImGuiDockNodeSettings",
|
||||
ImGuiDockRequest="struct ImGuiDockRequest",
|
||||
ImGuiDragDropFlags="int",
|
||||
ImGuiErrorCallback="void (*)(ImGuiContext* ctx, void* user_data, const char* msg);",
|
||||
ImGuiErrorRecoveryState="struct ImGuiErrorRecoveryState",
|
||||
ImGuiFocusRequestFlags="int",
|
||||
ImGuiFocusScopeData="struct ImGuiFocusScopeData",
|
||||
ImGuiFocusedFlags="int",
|
||||
ImGuiGroupData="struct ImGuiGroupData",
|
||||
ImGuiHoveredFlags="int",
|
||||
ImGuiID="unsigned int",
|
||||
ImGuiIDStackTool="struct ImGuiIDStackTool",
|
||||
ImGuiIO="struct ImGuiIO",
|
||||
ImGuiInputEvent="struct ImGuiInputEvent",
|
||||
ImGuiInputEventAppFocused="struct ImGuiInputEventAppFocused",
|
||||
ImGuiInputEventKey="struct ImGuiInputEventKey",
|
||||
ImGuiInputEventMouseButton="struct ImGuiInputEventMouseButton",
|
||||
ImGuiInputEventMousePos="struct ImGuiInputEventMousePos",
|
||||
ImGuiInputEventMouseViewport="struct ImGuiInputEventMouseViewport",
|
||||
ImGuiInputEventMouseWheel="struct ImGuiInputEventMouseWheel",
|
||||
ImGuiInputEventText="struct ImGuiInputEventText",
|
||||
ImGuiInputFlags="int",
|
||||
ImGuiInputTextCallback="int (*)(ImGuiInputTextCallbackData* data);",
|
||||
ImGuiInputTextCallbackData="struct ImGuiInputTextCallbackData",
|
||||
ImGuiInputTextDeactivateData="struct ImGuiInputTextDeactivateData",
|
||||
ImGuiInputTextDeactivatedState="struct ImGuiInputTextDeactivatedState",
|
||||
ImGuiInputTextFlags="int",
|
||||
ImGuiInputTextState="struct ImGuiInputTextState",
|
||||
ImGuiItemFlags="int",
|
||||
ImGuiItemStatusFlags="int",
|
||||
ImGuiKeyChord="int",
|
||||
ImGuiKeyData="struct ImGuiKeyData",
|
||||
ImGuiKeyOwnerData="struct ImGuiKeyOwnerData",
|
||||
ImGuiKeyRoutingData="struct ImGuiKeyRoutingData",
|
||||
ImGuiKeyRoutingIndex="ImS16",
|
||||
ImGuiKeyRoutingTable="struct ImGuiKeyRoutingTable",
|
||||
ImGuiLastItemData="struct ImGuiLastItemData",
|
||||
ImGuiLayoutType="int",
|
||||
ImGuiListClipper="struct ImGuiListClipper",
|
||||
ImGuiListClipperData="struct ImGuiListClipperData",
|
||||
ImGuiListClipperRange="struct ImGuiListClipperRange",
|
||||
ImGuiLocEntry="struct ImGuiLocEntry",
|
||||
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",
|
||||
ImGuiMultiSelectFlags="int",
|
||||
ImGuiMultiSelectIO="struct ImGuiMultiSelectIO",
|
||||
ImGuiMultiSelectState="struct ImGuiMultiSelectState",
|
||||
ImGuiMultiSelectTempData="struct ImGuiMultiSelectTempData",
|
||||
ImGuiNavItemData="struct ImGuiNavItemData",
|
||||
ImGuiNavMoveFlags="int",
|
||||
ImGuiNavRenderCursorFlags="int",
|
||||
ImGuiNextItemData="struct ImGuiNextItemData",
|
||||
ImGuiNextItemDataFlags="int",
|
||||
ImGuiNextWindowData="struct ImGuiNextWindowData",
|
||||
ImGuiNextWindowDataFlags="int",
|
||||
ImGuiOldColumnData="struct ImGuiOldColumnData",
|
||||
ImGuiOldColumnFlags="int",
|
||||
ImGuiOldColumns="struct ImGuiOldColumns",
|
||||
ImGuiOnceUponAFrame="struct ImGuiOnceUponAFrame",
|
||||
ImGuiPayload="struct ImGuiPayload",
|
||||
ImGuiPlatformIO="struct ImGuiPlatformIO",
|
||||
ImGuiPlatformImeData="struct ImGuiPlatformImeData",
|
||||
ImGuiPlatformMonitor="struct ImGuiPlatformMonitor",
|
||||
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);",
|
||||
ImGuiSizeCallbackData="struct ImGuiSizeCallbackData",
|
||||
ImGuiSliderFlags="int",
|
||||
ImGuiStackLevelInfo="struct ImGuiStackLevelInfo",
|
||||
ImGuiStorage="struct ImGuiStorage",
|
||||
ImGuiStoragePair="struct ImGuiStoragePair",
|
||||
ImGuiStyle="struct ImGuiStyle",
|
||||
ImGuiStyleMod="struct ImGuiStyleMod",
|
||||
ImGuiStyleVar="int",
|
||||
ImGuiStyleVarInfo="struct ImGuiStyleVarInfo",
|
||||
ImGuiTabBar="struct ImGuiTabBar",
|
||||
ImGuiTabBarFlags="int",
|
||||
ImGuiTabItem="struct ImGuiTabItem",
|
||||
ImGuiTabItemFlags="int",
|
||||
ImGuiTable="struct ImGuiTable",
|
||||
ImGuiTableBgTarget="int",
|
||||
ImGuiTableCellData="struct ImGuiTableCellData",
|
||||
ImGuiTableColumn="struct ImGuiTableColumn",
|
||||
ImGuiTableColumnFlags="int",
|
||||
ImGuiTableColumnIdx="ImS16",
|
||||
ImGuiTableColumnSettings="struct ImGuiTableColumnSettings",
|
||||
ImGuiTableColumnSortSpecs="struct ImGuiTableColumnSortSpecs",
|
||||
ImGuiTableColumnsSettings="struct ImGuiTableColumnsSettings",
|
||||
ImGuiTableDrawChannelIdx="ImU16",
|
||||
ImGuiTableFlags="int",
|
||||
ImGuiTableHeaderData="struct ImGuiTableHeaderData",
|
||||
ImGuiTableInstanceData="struct ImGuiTableInstanceData",
|
||||
ImGuiTableRowFlags="int",
|
||||
ImGuiTableSettings="struct ImGuiTableSettings",
|
||||
ImGuiTableSortSpecs="struct ImGuiTableSortSpecs",
|
||||
ImGuiTableTempData="struct ImGuiTableTempData",
|
||||
ImGuiTextBuffer="struct ImGuiTextBuffer",
|
||||
ImGuiTextFilter="struct ImGuiTextFilter",
|
||||
ImGuiTextFlags="int",
|
||||
ImGuiTextIndex="struct ImGuiTextIndex",
|
||||
ImGuiTextRange="struct ImGuiTextRange",
|
||||
ImGuiTooltipFlags="int",
|
||||
ImGuiTreeNodeFlags="int",
|
||||
ImGuiTreeNodeStackData="struct ImGuiTreeNodeStackData",
|
||||
ImGuiTypingSelectFlags="int",
|
||||
ImGuiTypingSelectRequest="struct ImGuiTypingSelectRequest",
|
||||
ImGuiTypingSelectState="struct ImGuiTypingSelectState",
|
||||
ImGuiViewport="struct ImGuiViewport",
|
||||
ImGuiViewportFlags="int",
|
||||
ImGuiViewportP="struct ImGuiViewportP",
|
||||
ImGuiWindow="struct ImGuiWindow",
|
||||
ImGuiWindowClass="struct ImGuiWindowClass",
|
||||
ImGuiWindowDockStyle="struct ImGuiWindowDockStyle",
|
||||
ImGuiWindowFlags="int",
|
||||
ImGuiWindowRefreshFlags="int",
|
||||
ImGuiWindowSettings="struct ImGuiWindowSettings",
|
||||
ImGuiWindowStackData="struct ImGuiWindowStackData",
|
||||
ImGuiWindowTempData="struct ImGuiWindowTempData",
|
||||
ImPoolIdx="int",
|
||||
ImRect="struct ImRect",
|
||||
ImS16="signed short",
|
||||
ImS32="signed int",
|
||||
ImS64="signed long long",
|
||||
ImS8="signed char",
|
||||
ImStbTexteditState="ImStb::STB_TexteditState",
|
||||
ImTextureID="ImU64",
|
||||
ImU16="unsigned short",
|
||||
ImU32="unsigned int",
|
||||
ImU64="unsigned long long",
|
||||
ImU8="unsigned char",
|
||||
ImVec1="struct ImVec1",
|
||||
ImVec2="struct ImVec2",
|
||||
ImVec2ih="struct ImVec2ih",
|
||||
ImVec4="struct ImVec4",
|
||||
ImWchar="ImWchar16",
|
||||
ImWchar16="unsigned short",
|
||||
ImWchar32="unsigned int",
|
||||
STB_TexteditState="struct STB_TexteditState"}
|
||||
return t
|
@@ -31,3 +31,7 @@
|
||||
#ifdef ImDrawCallback_ResetRenderState
|
||||
#pragma message(CIMGUI_DEFSTRING(ImDrawCallback_ResetRenderState))
|
||||
#endif
|
||||
|
||||
#ifdef IMGUI_HAS_TEXTURES
|
||||
#pragma message(CIMGUI_DEFSTRING(IMGUI_HAS_TEXTURES))
|
||||
#endif
|
2
imgui
2
imgui
Submodule imgui updated: c71e4e8c7c...126d004f9e
Reference in New Issue
Block a user