mirror of
https://github.com/cimgui/cimgui.git
synced 2025-08-10 20:08:31 +01:00
Compare commits
425 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
c5a3820d02 | ||
![]() |
ddc93fb07f | ||
![]() |
e35d99e432 | ||
![]() |
a3ad64dbfa | ||
![]() |
711940a064 | ||
![]() |
d6be58f33f | ||
![]() |
0842366596 | ||
![]() |
0e408d392e | ||
![]() |
8c6dbf6de7 | ||
![]() |
246c0e580f | ||
![]() |
d2de965b2a | ||
![]() |
2bb45e2d77 | ||
![]() |
c64cef9b8c | ||
![]() |
3fd24c568d | ||
![]() |
416b4f017b | ||
![]() |
c2bd39271b | ||
![]() |
5f4aa99a3c | ||
![]() |
aa5d3646be | ||
![]() |
a898224cdc | ||
![]() |
10c52cc266 | ||
![]() |
350a316439 | ||
![]() |
02834e8480 | ||
![]() |
d52d267351 | ||
![]() |
c37df4d0b8 | ||
![]() |
31b598af72 | ||
![]() |
7685bab86f | ||
![]() |
abe5b56fd6 | ||
![]() |
3270e6b0f2 | ||
![]() |
9339b62303 | ||
![]() |
81e7df17c9 | ||
![]() |
59e6a69d88 | ||
![]() |
6ee1d4c3fc | ||
![]() |
b14352b9ef | ||
![]() |
277e37f4ef | ||
![]() |
54e64ba9c4 | ||
![]() |
060df0f4eb | ||
![]() |
9edbc20e89 | ||
![]() |
b230afa909 | ||
![]() |
d9b50e696f | ||
![]() |
6fbdf5ce62 | ||
![]() |
7bbb7c79b7 | ||
![]() |
3b73c15805 | ||
![]() |
bcad423dc7 | ||
![]() |
477f60f822 | ||
![]() |
1109a79367 | ||
![]() |
d766b79138 | ||
![]() |
596f3008f6 | ||
![]() |
512efb3505 | ||
![]() |
3d997ffdae | ||
![]() |
95d626aef9 | ||
![]() |
3c30c86405 | ||
![]() |
41ea43b13f | ||
![]() |
670965cbe5 | ||
![]() |
f635eb28c5 | ||
![]() |
710ff2ae12 | ||
![]() |
a7ba601962 | ||
![]() |
6d112735ee | ||
![]() |
ea1e5a3ab8 | ||
![]() |
46f51395eb | ||
![]() |
8fee1a6fe7 | ||
![]() |
8ba8ced1f5 | ||
![]() |
13aafdee96 | ||
![]() |
18745e0713 | ||
![]() |
5f1243c42c | ||
![]() |
804b0c0bab | ||
![]() |
4630f434ea | ||
![]() |
a68f4a93ae | ||
![]() |
b6bc895d01 | ||
![]() |
e105d9f793 | ||
![]() |
df229d94ac | ||
![]() |
debf951581 | ||
![]() |
c99cf02537 | ||
![]() |
9abc3207aa | ||
![]() |
2fa6d06a67 | ||
![]() |
cdd1fbb2df | ||
![]() |
e2c64a1808 | ||
![]() |
c9921e9e0f | ||
![]() |
c04ed4fa16 | ||
![]() |
c31750d25e | ||
![]() |
76eaf80082 | ||
![]() |
f41dd1cf2e | ||
![]() |
fba064065d | ||
![]() |
b875a545b2 | ||
![]() |
38a744674e | ||
![]() |
2f4c2c03db | ||
![]() |
8c5bda8548 | ||
![]() |
bb54fa5e20 | ||
![]() |
38bcc91220 | ||
![]() |
36522778d0 | ||
![]() |
f69b042105 | ||
![]() |
1efb54810c | ||
![]() |
4edb09f7c4 | ||
![]() |
0f2a41e273 | ||
![]() |
981eafaa3e | ||
![]() |
09bd080a0c | ||
![]() |
217e55b5b3 | ||
![]() |
6e52c26817 | ||
![]() |
78c1ef224d | ||
![]() |
9f99062c6f | ||
![]() |
da72704aa1 | ||
![]() |
b861387d21 | ||
![]() |
be187bcdc4 | ||
![]() |
98e6ff7051 | ||
![]() |
39efe04d04 | ||
![]() |
925f656646 | ||
![]() |
95d494d91d | ||
![]() |
3e6ef21864 | ||
![]() |
39983d8970 | ||
![]() |
4a63c7e2ae | ||
![]() |
acf490ffd6 | ||
![]() |
df7c5d1b5d | ||
![]() |
7224084284 | ||
![]() |
a99713a8ba | ||
![]() |
ce302529e4 | ||
![]() |
400b7d76dd | ||
![]() |
c0c050ce1e | ||
![]() |
52fbd3f694 | ||
![]() |
f84d9c4301 | ||
![]() |
4197d9f7e5 | ||
![]() |
ef683bf14a | ||
![]() |
b1a9eb3c21 | ||
![]() |
27f4d3c3c4 | ||
![]() |
672f1bab04 | ||
![]() |
16ab55b72a | ||
![]() |
18297589a5 | ||
![]() |
760662ecea | ||
![]() |
0e16e0aedc | ||
![]() |
6033d331f9 | ||
![]() |
7a6c714351 | ||
![]() |
5451260291 | ||
![]() |
e2347c174d | ||
![]() |
e7a883d9f3 | ||
![]() |
906fd09e67 | ||
![]() |
d1ac207b45 | ||
![]() |
956ddf4033 | ||
![]() |
056c340d25 | ||
![]() |
ab3699df27 | ||
![]() |
8ee704c485 | ||
![]() |
901c705518 | ||
![]() |
77ee4fad38 | ||
![]() |
830b4580d0 | ||
![]() |
f8eb990407 | ||
![]() |
5f15425a02 | ||
![]() |
8be6ddd980 | ||
![]() |
7dc6dbe77e | ||
![]() |
0cbc6bf55f | ||
![]() |
02677f9691 | ||
![]() |
e2c14f1b41 | ||
![]() |
55dc243358 | ||
![]() |
16bcad7933 | ||
![]() |
db0243a6f0 | ||
![]() |
9bed5f29a9 | ||
![]() |
39336d9843 | ||
![]() |
f350e7b7a7 | ||
![]() |
c5eea0b2db | ||
![]() |
4e00f55cc8 | ||
![]() |
6740445cbc | ||
![]() |
677678af07 | ||
![]() |
fa9538889b | ||
![]() |
3bd9469a30 | ||
![]() |
d9e1d9a80d | ||
![]() |
4d7a7ac09f | ||
![]() |
8096fb69fe | ||
![]() |
97cfb930e0 | ||
![]() |
549e3cc8f8 | ||
![]() |
3a7d0d46f8 | ||
![]() |
e3cbc0119e | ||
![]() |
7c405d3a38 | ||
![]() |
a310379820 | ||
![]() |
e53a7beaeb | ||
![]() |
e7c5c6b9a1 | ||
![]() |
c09dc063b0 | ||
![]() |
e3136bb882 | ||
![]() |
59583ea35a | ||
![]() |
c05aa00083 | ||
![]() |
75f2167111 | ||
![]() |
bc5f64b2c2 | ||
![]() |
7cafceccae | ||
![]() |
1c65ee2bdc | ||
![]() |
0f5aa16fe8 | ||
![]() |
cde83f9fe8 | ||
![]() |
eefd229b68 | ||
![]() |
df61f2c552 | ||
![]() |
c0d75f6f8d | ||
![]() |
14e8be9af1 | ||
![]() |
ccf494d1c3 | ||
![]() |
8c817de195 | ||
![]() |
8f3ab64917 | ||
![]() |
14251bb176 | ||
![]() |
e61825224b | ||
![]() |
94ab1adf9e | ||
![]() |
094a52e6b6 | ||
![]() |
f7520ee03d | ||
![]() |
b0c65144ab | ||
![]() |
50ded57ba3 | ||
![]() |
50ae38591a | ||
![]() |
975a735d38 | ||
![]() |
2b03f434d4 | ||
![]() |
37c52332f4 | ||
![]() |
84932b4830 | ||
![]() |
022f60320f | ||
![]() |
1aeb9ad132 | ||
![]() |
648cf587c9 | ||
![]() |
aa99302d24 | ||
![]() |
4fca16eada | ||
![]() |
ff404142f4 | ||
![]() |
4be0522d9f | ||
![]() |
bc6f6e664e | ||
![]() |
343a8e4ea5 | ||
![]() |
0d4fa8b8bc | ||
![]() |
666a687e0f | ||
![]() |
806ff124a1 | ||
![]() |
186ebd8f06 | ||
![]() |
d331453422 | ||
![]() |
e125f405e3 | ||
![]() |
498f9802d1 | ||
![]() |
6c9a018705 | ||
![]() |
347d8d58b0 | ||
![]() |
161385607d | ||
![]() |
23f2a1f026 | ||
![]() |
490effa341 | ||
![]() |
0d864f94bd | ||
![]() |
55f1afa2db | ||
![]() |
71a9410ce6 | ||
![]() |
036d2c1f9e | ||
![]() |
b5c7ed5862 | ||
![]() |
d2ee8fc7dd | ||
![]() |
593867e320 | ||
![]() |
907c2fddce | ||
![]() |
67f3b097a5 | ||
![]() |
fd0199809d | ||
![]() |
d174a02a0f | ||
![]() |
291922f72c | ||
![]() |
7d963113c9 | ||
![]() |
8cbdca3344 | ||
![]() |
204f2828bb | ||
![]() |
2c10d47b9a | ||
![]() |
df00156746 | ||
![]() |
553364f7d8 | ||
![]() |
14cd6715d2 | ||
![]() |
76935a7d83 | ||
![]() |
4397e9a3f1 | ||
![]() |
d44c05cbbd | ||
![]() |
ed6212bb34 | ||
![]() |
8911a5a992 | ||
![]() |
4397288459 | ||
![]() |
354f316b89 | ||
![]() |
f6fdec9d98 | ||
![]() |
3da4350671 | ||
![]() |
fe1d9d081b | ||
![]() |
f531be148d | ||
![]() |
eac028b1f3 | ||
![]() |
eb81995978 | ||
![]() |
b600ea9fab | ||
![]() |
5656bf7c73 | ||
![]() |
d33da701aa | ||
![]() |
95d65fdf49 | ||
![]() |
0b7bd49de5 | ||
![]() |
1643bbf284 | ||
![]() |
80f82b6ed8 | ||
![]() |
f4df31de6e | ||
![]() |
1789ec81fe | ||
![]() |
aca412fe7a | ||
![]() |
7a54d1276d | ||
![]() |
97113ef7ad | ||
![]() |
2a4dcaf2a2 | ||
![]() |
5a9a20d139 | ||
![]() |
7ee838ae2d | ||
![]() |
3091435042 | ||
![]() |
804acdcecd | ||
![]() |
51f02dca4d | ||
![]() |
84a9656889 | ||
![]() |
553df3da32 | ||
![]() |
04d4a19beb | ||
![]() |
3b9c53b2a2 | ||
![]() |
6f9e3db1d1 | ||
![]() |
d3eb876266 | ||
![]() |
3efb1001aa | ||
![]() |
a91c611bca | ||
![]() |
5b7abe8b4d | ||
![]() |
812af400f1 | ||
![]() |
2d3cf59b21 | ||
![]() |
e7eb9c511b | ||
![]() |
2759a8ed4d | ||
![]() |
073f438467 | ||
![]() |
f7856b27b0 | ||
![]() |
99c7d7cfdf | ||
![]() |
31871f9975 | ||
![]() |
c487b0266e | ||
![]() |
3b386799e4 | ||
![]() |
52a693a96c | ||
![]() |
a0cb8aff23 | ||
![]() |
d704b33196 | ||
![]() |
9738a5816e | ||
![]() |
327e3236ae | ||
![]() |
259dc4afc8 | ||
![]() |
54118273ff | ||
![]() |
e8ac6079b5 | ||
![]() |
a2c1665e31 | ||
![]() |
bba07596a6 | ||
![]() |
e99f8dc918 | ||
![]() |
6ceba86ff6 | ||
![]() |
2023d29fc9 | ||
![]() |
552a5f5cf2 | ||
![]() |
f1b55d57e5 | ||
![]() |
d7e8b142d0 | ||
![]() |
9ae5a207f6 | ||
![]() |
9846ee640f | ||
![]() |
1bf9256998 | ||
![]() |
c8ff56e0b0 | ||
![]() |
1c88ef9c37 | ||
![]() |
cf82b3a356 | ||
![]() |
56d6cbfd38 | ||
![]() |
d863cbe3b4 | ||
![]() |
4a0e927c23 | ||
![]() |
3d232c5369 | ||
![]() |
e721909a97 | ||
![]() |
15c711e4f4 | ||
![]() |
96f24d52a5 | ||
![]() |
f0dd5bc5f8 | ||
![]() |
c06facb80a | ||
![]() |
9e6f792b74 | ||
![]() |
f323beede6 | ||
![]() |
8508f7b0ff | ||
![]() |
23b51b499a | ||
![]() |
60b7ab90ff | ||
![]() |
69ac20dd7c | ||
![]() |
44d1d8c190 | ||
![]() |
006fc575fa | ||
![]() |
c0a30cff81 | ||
![]() |
cd98bfd9b4 | ||
![]() |
5f9a7b58bf | ||
![]() |
1bb1d061be | ||
![]() |
6bce915abb | ||
![]() |
a0eab2686f | ||
![]() |
d45f3594ce | ||
![]() |
7afdf07cbb | ||
![]() |
d47cbcb44a | ||
![]() |
fc01fa6486 | ||
![]() |
b5150cc1ac | ||
![]() |
07d6c6897a | ||
![]() |
444b30c2cb | ||
![]() |
a190ec10f4 | ||
![]() |
f4a4369392 | ||
![]() |
395ab5108e | ||
![]() |
af67beb082 | ||
![]() |
4b1ae5a6c5 | ||
![]() |
1a5752271c | ||
![]() |
960c4daa70 | ||
![]() |
031bfe5dcc | ||
![]() |
963e5fcf82 | ||
![]() |
edf209e09e | ||
![]() |
ac4a2f13c0 | ||
![]() |
1c61237dbf | ||
![]() |
726816cb6a | ||
![]() |
ed4e178a85 | ||
![]() |
70eb52f582 | ||
![]() |
9694c710b7 | ||
![]() |
ce4ac9dfcf | ||
![]() |
d2d0688883 | ||
![]() |
56f84c1859 | ||
![]() |
3da315ea5c | ||
![]() |
91363f465a | ||
![]() |
1e5ce71257 | ||
![]() |
1ee766c0e1 | ||
![]() |
d2304cdab9 | ||
![]() |
73a6da9451 | ||
![]() |
ac0aaba306 | ||
![]() |
eec9519bfd | ||
![]() |
213eb53557 | ||
![]() |
532feb55ff | ||
![]() |
686e062749 | ||
![]() |
f3f2370918 | ||
![]() |
2a422f797c | ||
![]() |
5df4f3a42a | ||
![]() |
4be6a54634 | ||
![]() |
77cf5fc1e3 | ||
![]() |
a4b061f8c7 | ||
![]() |
83390d92b8 | ||
![]() |
41e975cf55 | ||
![]() |
946a568a99 | ||
![]() |
567261806c | ||
![]() |
edafa5eea8 | ||
![]() |
fc79a88b35 | ||
![]() |
33489bbd79 | ||
![]() |
102fb84147 | ||
![]() |
017b935afd | ||
![]() |
fa5d113cdb | ||
![]() |
e559e1eab8 | ||
![]() |
a6fdb24ff5 | ||
![]() |
78b1813461 | ||
![]() |
1761822733 | ||
![]() |
7b03588b3a | ||
![]() |
06a5331b9c | ||
![]() |
ceb93fdbb5 | ||
![]() |
851df218da | ||
![]() |
c735efe55a | ||
![]() |
7f688bf409 | ||
![]() |
e773ab146a | ||
![]() |
423fc1c532 | ||
![]() |
1a5e261a8e | ||
![]() |
488125ed14 | ||
![]() |
49a6430ee2 | ||
![]() |
fedd6ae495 | ||
![]() |
527fc6a7be | ||
![]() |
9b0b571506 | ||
![]() |
baebcfcfaf | ||
![]() |
90f62f1fc9 | ||
![]() |
b0cc7a2275 | ||
![]() |
0781f92135 | ||
![]() |
3f0014b569 | ||
![]() |
49d62d30cf | ||
![]() |
2ea2b91ee1 | ||
![]() |
e75eaa7239 | ||
![]() |
fa1b93bea9 | ||
![]() |
511218914b | ||
![]() |
f60eb9a510 | ||
![]() |
9e52e73e9b | ||
![]() |
6a31578c1e | ||
![]() |
50bce34b67 | ||
![]() |
14b2c5cc58 | ||
![]() |
f12e74c20f | ||
![]() |
01578cb1bd | ||
![]() |
33679d6957 | ||
![]() |
b9cd7f2d83 |
76
.github/workflows/build.yml
vendored
Normal file
76
.github/workflows/build.yml
vendored
Normal file
@@ -0,0 +1,76 @@
|
||||
name: Build
|
||||
|
||||
on:
|
||||
push: {}
|
||||
pull_request: {}
|
||||
schedule:
|
||||
- cron: '0 9 * * 1'
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ${{ matrix.os }}
|
||||
strategy:
|
||||
matrix:
|
||||
os: [ubuntu-latest, macOS-latest, windows-latest]
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
|
||||
- name: Install Dependencies
|
||||
shell: bash
|
||||
env:
|
||||
GITHUB_OS: ${{ matrix.os }}
|
||||
run: |
|
||||
if [ "$GITHUB_OS" == "macOS-latest" ];
|
||||
then
|
||||
brew install luajit
|
||||
elif [ "$GITHUB_OS" == "ubuntu-latest" ];
|
||||
then
|
||||
sudo apt-get install -y luajit
|
||||
elif [ "$GITHUB_OS" == "windows-latest" ];
|
||||
then
|
||||
vcpkg install luajit
|
||||
fi
|
||||
|
||||
- name: Download Submodules
|
||||
run: |
|
||||
git submodule update --init --recursive
|
||||
if: github.event_name != 'schedule'
|
||||
|
||||
- name: Download Latest ImGui
|
||||
shell: bash
|
||||
run: |
|
||||
rm -rf imgui
|
||||
git clone https://github.com/ocornut/imgui.git
|
||||
if: github.event_name == 'schedule'
|
||||
|
||||
- name: Generate Bindings
|
||||
shell: bash
|
||||
run: |
|
||||
export PATH=$PATH:/C/vcpkg/packages/luajit_x86-windows/tools/:/C/vcpkg/packages/luajit_x86-windows/bin/
|
||||
cd ./generator
|
||||
bash ./generator.sh
|
||||
|
||||
- name: CMake
|
||||
run: |
|
||||
mkdir cmake-build
|
||||
cd cmake-build
|
||||
cmake -DCIMGUI_TEST=1 ..
|
||||
|
||||
- name: Build
|
||||
working-directory: cmake-build
|
||||
run: |
|
||||
cmake --build .
|
||||
|
||||
- name: Test
|
||||
shell: bash
|
||||
env:
|
||||
GITHUB_OS: ${{ matrix.os }}
|
||||
working-directory: cmake-build
|
||||
run: |
|
||||
if [ "$GITHUB_OS" == "windows-latest" ];
|
||||
then
|
||||
./Debug/cimgui_test.exe
|
||||
else
|
||||
./cimgui_test
|
||||
fi
|
5
.gitignore
vendored
5
.gitignore
vendored
@@ -32,7 +32,10 @@ cimgui/cimgui.sdf
|
||||
cimgui/cimgui.v12.suo
|
||||
cimgui/Release/
|
||||
.idea
|
||||
CMakeLists.txt
|
||||
cimgui/.vs/
|
||||
cimgui/cimgui.vcxproj.user
|
||||
cimgui/x64/
|
||||
|
||||
# Test / Build
|
||||
bld/
|
||||
build/
|
||||
|
16
.travis.yml
16
.travis.yml
@@ -1,11 +1,23 @@
|
||||
language: cpp
|
||||
dist: focal
|
||||
|
||||
os:
|
||||
- linux
|
||||
- osx
|
||||
- windows
|
||||
|
||||
compiler:
|
||||
- gcc
|
||||
- clang
|
||||
|
||||
script:
|
||||
- make -C cimgui
|
||||
script:
|
||||
- mkdir bld
|
||||
- cd bld
|
||||
- cmake -D CIMGUI_TEST=1 ..
|
||||
- cmake --build .
|
||||
- |
|
||||
if [ "$TRAVIS_OS_NAME" == "windows" ]; then
|
||||
./Debug/cimgui_test.exe
|
||||
else
|
||||
./cimgui_test
|
||||
fi
|
||||
|
56
CMakeLists.txt
Normal file
56
CMakeLists.txt
Normal file
@@ -0,0 +1,56 @@
|
||||
cmake_minimum_required(VERSION 3.1)
|
||||
|
||||
project(cimgui)
|
||||
|
||||
#general settings
|
||||
file(GLOB IMGUI_SOURCES
|
||||
cimgui.cpp
|
||||
imgui/imgui.cpp
|
||||
imgui/imgui_draw.cpp
|
||||
imgui/imgui_demo.cpp
|
||||
imgui/imgui_widgets.cpp
|
||||
)
|
||||
|
||||
set(IMGUI_STATIC "no" CACHE STRING "Build as a static library")
|
||||
set(IMGUI_FREETYPE "no" CACHE STRING "Build with freetype library")
|
||||
set(IMGUI_LIBRARIES )
|
||||
|
||||
if(IMGUI_FREETYPE)
|
||||
FIND_PACKAGE(freetype REQUIRED PATHS ${FREETYPE_PATH})
|
||||
list(APPEND IMGUI_LIBRARIES freetype)
|
||||
list(APPEND IMGUI_SOURCES imgui/misc/freetype/imgui_freetype.cpp)
|
||||
add_definitions("-DCIMGUI_FREETYPE=1")
|
||||
endif(IMGUI_FREETYPE)
|
||||
|
||||
#add library and link
|
||||
if (IMGUI_STATIC)
|
||||
add_library(cimgui STATIC ${IMGUI_SOURCES})
|
||||
else (IMGUI_STATIC)
|
||||
add_library(cimgui SHARED ${IMGUI_SOURCES})
|
||||
endif (IMGUI_STATIC)
|
||||
|
||||
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\))
|
||||
else (WIN32)
|
||||
target_compile_definitions(cimgui PUBLIC IMGUI_IMPL_API=extern\t\"C\"\t)
|
||||
endif (WIN32)
|
||||
|
||||
target_include_directories(cimgui PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
target_include_directories(cimgui PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/imgui)
|
||||
set_target_properties(cimgui PROPERTIES PREFIX "")
|
||||
target_link_libraries(cimgui ${IMGUI_LIBRARIES})
|
||||
|
||||
#install
|
||||
install(TARGETS cimgui
|
||||
RUNTIME DESTINATION .
|
||||
LIBRARY DESTINATION .
|
||||
ARCHIVE DESTINATION .
|
||||
)
|
||||
|
||||
#test
|
||||
set(CIMGUI_TEST "no" CACHE STRING "Enable compilation of a test unit based on imgui null")
|
||||
|
||||
if (CIMGUI_TEST)
|
||||
add_subdirectory(test)
|
||||
endif ()
|
@@ -1,33 +1,34 @@
|
||||
#
|
||||
# Cross Platform Makefile
|
||||
# Compatible with Ubuntu 14.04.1 and Mac OS X
|
||||
# Compatible with Ubuntu 14.04.1 and macOS
|
||||
|
||||
OBJS = cimgui.o
|
||||
OBJS += fontAtlas.o
|
||||
OBJS += drawList.o
|
||||
OBJS += listClipper.o
|
||||
#OBJS += test.o
|
||||
OBJS += ../imgui/imgui.o
|
||||
OBJS += ../imgui/imgui_draw.o
|
||||
OBJS += ../imgui/imgui_demo.o
|
||||
OBJS += ./imgui/imgui.o
|
||||
OBJS += ./imgui/imgui_draw.o
|
||||
OBJS += ./imgui/imgui_demo.o
|
||||
OBJS += ./imgui/imgui_widgets.o
|
||||
|
||||
CXXFLAGS=-O2 -fno-exceptions -fno-rtti
|
||||
|
||||
UNAME_S := $(shell uname -s)
|
||||
|
||||
AR := ar -rc
|
||||
|
||||
ifeq ($(UNAME_S), Linux) #LINUX
|
||||
ECHO_MESSAGE = "Linux"
|
||||
|
||||
OUTPUTNAME = cimgui.so
|
||||
CXXFLAGS = -I../../
|
||||
CXXFLAGS += -I./imgui/
|
||||
CXXFLAGS += -Wall
|
||||
CXXFLAGS += -shared -fPIC
|
||||
CFLAGS = $(CXXFLAGS)
|
||||
endif
|
||||
|
||||
ifeq ($(UNAME_S), Darwin) #APPLE
|
||||
ECHO_MESSAGE = "Mac OS X"
|
||||
ECHO_MESSAGE = "macOS"
|
||||
|
||||
OUTPUTNAME = cimgui.dylib
|
||||
CXXFLAGS = -I/usr/local/include
|
||||
CXXFLAGS += -I/usr/local/include
|
||||
CXXFLAGS += -Wall
|
||||
LINKFLAGS = -dynamiclib
|
||||
CFLAGS = $(CXXFLAGS)
|
||||
@@ -37,7 +38,7 @@ ifeq ($(OS), Windows_NT)
|
||||
ECHO_MESSAGE = "Windows"
|
||||
|
||||
OUTPUTNAME = cimgui.dll
|
||||
CXXFLAGS = -I../../
|
||||
CXXFLAGS += -I./imgui/
|
||||
CXXFLAGS += -Wall
|
||||
CXXFLAGS += -shared
|
||||
LINKFLAGS = -limm32
|
||||
@@ -47,11 +48,21 @@ endif
|
||||
.cpp.o:
|
||||
$(CXX) $(CXXFLAGS) -c -o $@ $<
|
||||
|
||||
all:imgui_example
|
||||
all:$(OUTPUTNAME)
|
||||
@echo Build complete for $(ECHO_MESSAGE)
|
||||
|
||||
imgui_example:$(OBJS)
|
||||
static:$(OBJS)
|
||||
$(AR) libcimgui.a $(OBJS)
|
||||
|
||||
$(OUTPUTNAME):$(OBJS)
|
||||
$(CXX) -o $(OUTPUTNAME) $(OBJS) $(CXXFLAGS) $(LINKFLAGS)
|
||||
|
||||
clean:
|
||||
rm $(OBJS)
|
||||
rm -f $(OBJS)
|
||||
|
||||
fclean: clean
|
||||
rm -f $(OUTPUTNAME)
|
||||
|
||||
re: fclean all
|
||||
|
||||
.PHONY: all clean fclean re static
|
103
README.md
103
README.md
@@ -1,25 +1,106 @@
|
||||
# cimgui [](https://travis-ci.org/Extrawurst/cimgui)
|
||||
# cimgui [](https://travis-ci.org/cimgui/cimgui)
|
||||
|
||||

|
||||
|
||||
This is a thin c-api wrapper for the excellent C++ intermediate gui [imgui](https://github.com/ocornut/imgui).
|
||||
Most of the functions have wrapper counterparts now, missing stuff is added on a as-needed basis (PR welcome).
|
||||
This library is intended as a intermediate layer to be able to use imgui from other languages that can interface with C (like D - see [D-binding](https://github.com/Extrawurst/DerelictImgui))
|
||||
This is a thin c-api wrapper programmatically generated for the excellent C++ immediate mode gui [Dear ImGui](https://github.com/ocornut/imgui).
|
||||
All imgui.h functions are programmatically wrapped.
|
||||
Generated files are: `cimgui.cpp`, `cimgui.h` for C compilation. Also for helping in bindings creation, `definitions.lua` with function definition information and `structs_and_enums.lua`.
|
||||
This library is intended as a intermediate layer to be able to use Dear ImGui from other languages that can interface with C (like D - see [D-binding](https://github.com/Extrawurst/DerelictImgui))
|
||||
|
||||
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.50 of imgui](https://github.com/ocornut/imgui/releases/tag/v1.50)
|
||||
* does not compile with pure C compiler yet (for writing bindings in languages that are able to use C-ABI it is enough though, see D-bindings)
|
||||
* currently this wrapper is based on version [1.79 docking 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 implementations 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.
|
||||
* Current overloaded function names can be found in (https://github.com/cimgui/cimgui/blob/master/generator/output/overloads.txt)
|
||||
|
||||
# compilation
|
||||
|
||||
* clone
|
||||
* `git clone --recursive https://github.com/cimgui/cimgui.git`
|
||||
* `git submodule update`
|
||||
* 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)
|
||||
* or as in https://github.com/sonoro1234/LuaJIT-ImGui/tree/master/build
|
||||
|
||||
# using generator
|
||||
|
||||
* this is only needed (before compilation) if you want an imgui version different from the one provided, otherwise generation is already done.
|
||||
* 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 implementations and whether imgui_internal is generated or not and Freetype2 is used or not.
|
||||
* edit config_generator.lua for adding includes needed by your chosen implementations (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` and `cimgui.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 implementations info.
|
||||
|
||||
# generate binding
|
||||
* C interface is exposed by cimgui.h when you define CIMGUI_DEFINE_ENUMS_AND_STRUCTS
|
||||
* with your prefered language you can use the lua or json files generated as in:
|
||||
* https://github.com/sonoro1234/LuaJIT-ImGui/blob/master/lua/build.bat (with lua code generation in https://github.com/sonoro1234/LuaJIT-ImGui/blob/master/lua/class_gen.lua)
|
||||
* https://github.com/mellinoe/ImGui.NET/tree/autogen/src/CodeGenerator
|
||||
### definitions description
|
||||
* It is a collection in which key is the cimgui name that would result without overloadings and the value is an array of overloadings (may be only one overloading)
|
||||
* Each overloading is a collection. Some relevant keys and values are:
|
||||
* stname : the name of the struct the function belongs to (will be "" if it is top level in ImGui namespace)
|
||||
* ov_cimguiname : the overloaded cimgui name (if absent it would be taken from cimguiname)
|
||||
* cimguiname : the name without overloading (this should be used if there is not ov_cimguiname)
|
||||
* ret : the return type
|
||||
* retref : is set if original return type is a reference. (will be a pointer in cimgui)
|
||||
* argsT : an array of collections (each one with type: argument type and name: the argument name, when the argument is a function pointer also ret: return type and signature: the function signature)
|
||||
* args : a string of argsT concatenated and separated by commas
|
||||
* call_args : a string with the argument names separated by commas for calling imgui function
|
||||
* defaults : a collection in which key is argument name and value is the default value.
|
||||
* manual : will be true if this function is hand-written (not generated)
|
||||
* skipped : will be true if this function is not generated (and not hand-written)
|
||||
* isvararg : is set if some argument is a vararg
|
||||
* constructor : is set if the function is a constructor for a class.
|
||||
* destructor : is set if the function is a destructor for a class but not just a default destructor.
|
||||
* realdestructor : is set if the function is a destructor for a class
|
||||
* templated : is set if the function belongs to a templated class (ImVector)
|
||||
* templatedgen: is set if the function belongs to a struct generated from template (ImVector_ImWchar)
|
||||
* nonUDT : if present the original function was returning a user defined type so that signature has been changed to accept a pointer to the UDT as first argument.
|
||||
* location : name of the header file and linenumber this function comes from. (imgui:000, internal:123, imgui_impl_xxx:123)
|
||||
* is_static_function : is setted when it is an struct static function.
|
||||
### structs_and_enums description
|
||||
* Is is a collection with three items:
|
||||
* under key enums we get the enums collection in which each key is the enum tagname and the value is an array of the ordered values represented as a collection with keys
|
||||
* name : the name of this enum value
|
||||
* value : the C string
|
||||
* calc_value : the numeric value corresponding to value
|
||||
* under key structs we get the structs collection in which the key is the struct name and the value is an array of the struct members. Each one given as a collection with keys
|
||||
* type : the type of the struct member
|
||||
* template_type : if type has a template argument (as ImVector) here will be
|
||||
* name : the name of the struct member
|
||||
* size : the number of array elements (when it is an array)
|
||||
* bitfield : the bitfield width (in case it is a bitfield)
|
||||
* under key locations we get the locations collection in which each key is the enum tagname or the struct name and the value is the name of the header file and line number this comes from.
|
||||
# usage
|
||||
|
||||
* clone
|
||||
* make using makefile on linux/osx
|
||||
* use whatever method is in ImGui c++ namespace in the original [imgui.h](https://github.com/ocornut/imgui/blob/master/imgui.h) by prepending `ig`
|
||||
* 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).
|
||||
|
||||
# example bindings based on cimgui
|
||||
|
||||
* [DerelictImgui](https://github.com/Extrawurst/DerelictImgui)
|
||||
* [LuaJIT-ImGui](https://github.com/sonoro1234/LuaJIT-ImGui)
|
||||
* [ImGui.NET](https://github.com/mellinoe/ImGui.NET)
|
||||
* [nimgl/imgui](https://github.com/nimgl/imgui)
|
||||
* [kotlin-imgui](https://github.com/Dominaezzz/kotlin-imgui)
|
||||
* [CImGui.jl](https://github.com/Gnimuc/CImGui.jl)
|
||||
* [odin-imgui](https://github.com/ThisDrunkDane/odin-imgui)
|
||||
* [DerelictImgui](https://github.com/Extrawurst/DerelictImgui)
|
||||
* [imgui-rs](https://github.com/Gekkio/imgui-rs)
|
||||
* [imgui-pas](https://github.com/dpethes/imgui-pas)
|
||||
* [imgui-pas](https://github.com/dpethes/imgui-pas)
|
||||
|
||||
|
||||
# C examples based on cimgui
|
||||
|
||||
* [sdl2-cimgui-demo](https://github.com/haxpor/sdl2-cimgui-demo)
|
||||
* [cimgui_c_sdl2_example](https://github.com/canoi12/cimgui_c_sdl2_example/)
|
||||
* [cimgui-c-example](https://github.com/peko/cimgui-c-example) with GLFW
|
||||
|
4341
cimgui.cpp
Normal file
4341
cimgui.cpp
Normal file
File diff suppressed because it is too large
Load Diff
4
cimgui/.vscode/settings.json
vendored
4
cimgui/.vscode/settings.json
vendored
@@ -1,4 +0,0 @@
|
||||
// Place your settings in this file to overwrite default and user settings.
|
||||
{
|
||||
"editor.formatOnSave": false,
|
||||
}
|
1724
cimgui/cimgui.cpp
1724
cimgui/cimgui.cpp
File diff suppressed because it is too large
Load Diff
913
cimgui/cimgui.h
913
cimgui/cimgui.h
@@ -1,913 +0,0 @@
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#if defined _WIN32 || defined __CYGWIN__
|
||||
#ifdef CIMGUI_NO_EXPORT
|
||||
#define API
|
||||
#else
|
||||
#define API __declspec(dllexport)
|
||||
#endif
|
||||
#ifdef __GNUC__
|
||||
#define snprintf sprintf_s
|
||||
#endif
|
||||
#else
|
||||
#define API
|
||||
#endif
|
||||
|
||||
#if defined __cplusplus
|
||||
#define EXTERN extern "C"
|
||||
#else
|
||||
#include <stdarg.h>
|
||||
#include <stdbool.h>
|
||||
#define EXTERN extern
|
||||
#endif
|
||||
|
||||
#define CIMGUI_API EXTERN API
|
||||
#define CONST const
|
||||
|
||||
struct ImGuiIO;
|
||||
struct ImGuiStyle;
|
||||
struct ImDrawData;
|
||||
struct ImVec2;
|
||||
struct ImVec4;
|
||||
struct ImGuiTextEditCallbackData;
|
||||
struct ImGuiSizeConstraintCallbackData;
|
||||
struct ImDrawList;
|
||||
struct ImGuiStorage;
|
||||
struct ImFont;
|
||||
struct ImFontConfig;
|
||||
struct ImFontAtlas;
|
||||
struct ImDrawCmd;
|
||||
struct ImGuiListClipper;
|
||||
struct ImGuiTextFilter;
|
||||
|
||||
typedef unsigned short ImDrawIdx;
|
||||
typedef unsigned int ImU32;
|
||||
typedef unsigned short ImWchar;
|
||||
typedef void* ImTextureID;
|
||||
typedef ImU32 ImGuiID;
|
||||
typedef int ImGuiCol;
|
||||
typedef int ImGuiStyleVar;
|
||||
typedef int ImGuiKey;
|
||||
typedef int ImGuiColorEditFlags;
|
||||
typedef int ImGuiMouseCursor;
|
||||
typedef int ImGuiWindowFlags;
|
||||
typedef int ImGuiCond;
|
||||
typedef int ImGuiColumnsFlags;
|
||||
typedef int ImGuiInputTextFlags;
|
||||
typedef int ImGuiSelectableFlags;
|
||||
typedef int ImGuiTreeNodeFlags;
|
||||
typedef int (*ImGuiTextEditCallback)(struct ImGuiTextEditCallbackData *data);
|
||||
typedef void (*ImGuiSizeConstraintCallback)(struct ImGuiSizeConstraintCallbackData* data);
|
||||
typedef void (*ImDrawCallback)(CONST struct ImDrawList* parent_list, CONST struct ImDrawCmd* cmd);
|
||||
#ifdef _MSC_VER
|
||||
typedef unsigned __int64 ImU64;
|
||||
#else
|
||||
typedef unsigned long long ImU64;
|
||||
#endif
|
||||
|
||||
#ifdef CIMGUI_DEFINE_ENUMS_AND_STRUCTS
|
||||
struct ImVec2 {
|
||||
float x, y;
|
||||
};
|
||||
|
||||
struct ImVec4 {
|
||||
float x, y, z, w;
|
||||
};
|
||||
|
||||
enum {
|
||||
ImGuiWindowFlags_NoTitleBar = 1 << 0,
|
||||
ImGuiWindowFlags_NoResize = 1 << 1,
|
||||
ImGuiWindowFlags_NoMove = 1 << 2,
|
||||
ImGuiWindowFlags_NoScrollbar = 1 << 3,
|
||||
ImGuiWindowFlags_NoScrollWithMouse = 1 << 4,
|
||||
ImGuiWindowFlags_NoCollapse = 1 << 5,
|
||||
ImGuiWindowFlags_AlwaysAutoResize = 1 << 6,
|
||||
ImGuiWindowFlags_ShowBorders = 1 << 7,
|
||||
ImGuiWindowFlags_NoSavedSettings = 1 << 8,
|
||||
ImGuiWindowFlags_NoInputs = 1 << 9,
|
||||
ImGuiWindowFlags_MenuBar = 1 << 10,
|
||||
ImGuiWindowFlags_HorizontalScrollbar = 1 << 11,
|
||||
ImGuiWindowFlags_NoFocusOnAppearing = 1 << 12,
|
||||
ImGuiWindowFlags_NoBringToFrontOnFocus = 1 << 13,
|
||||
ImGuiWindowFlags_AlwaysVerticalScrollbar = 1 << 14,
|
||||
ImGuiWindowFlags_AlwaysHorizontalScrollbar = 1 << 15,
|
||||
ImGuiWindowFlags_AlwaysUseWindowPadding = 1 << 16
|
||||
};
|
||||
|
||||
enum {
|
||||
ImGuiInputTextFlags_CharsDecimal = 1 << 0,
|
||||
ImGuiInputTextFlags_CharsHexadecimal = 1 << 1,
|
||||
ImGuiInputTextFlags_CharsUppercase = 1 << 2,
|
||||
ImGuiInputTextFlags_CharsNoBlank = 1 << 3,
|
||||
ImGuiInputTextFlags_AutoSelectAll = 1 << 4,
|
||||
ImGuiInputTextFlags_EnterReturnsTrue = 1 << 5,
|
||||
ImGuiInputTextFlags_CallbackCompletion = 1 << 6,
|
||||
ImGuiInputTextFlags_CallbackHistory = 1 << 7,
|
||||
ImGuiInputTextFlags_CallbackAlways = 1 << 8,
|
||||
ImGuiInputTextFlags_CallbackCharFilter = 1 << 9,
|
||||
ImGuiInputTextFlags_AllowTabInput = 1 << 10,
|
||||
ImGuiInputTextFlags_CtrlEnterForNewLine = 1 << 11,
|
||||
ImGuiInputTextFlags_NoHorizontalScroll = 1 << 12,
|
||||
ImGuiInputTextFlags_AlwaysInsertMode = 1 << 13,
|
||||
ImGuiInputTextFlags_ReadOnly = 1 << 14,
|
||||
ImGuiInputTextFlags_Password = 1 << 15
|
||||
};
|
||||
|
||||
enum {
|
||||
ImGuiTreeNodeFlags_Selected = 1 << 0,
|
||||
ImGuiTreeNodeFlags_Framed = 1 << 1,
|
||||
ImGuiTreeNodeFlags_AllowOverlapMode = 1 << 2,
|
||||
ImGuiTreeNodeFlags_NoTreePushOnOpen = 1 << 3,
|
||||
ImGuiTreeNodeFlags_NoAutoOpenOnLog = 1 << 4,
|
||||
ImGuiTreeNodeFlags_DefaultOpen = 1 << 5,
|
||||
ImGuiTreeNodeFlags_OpenOnDoubleClick = 1 << 6,
|
||||
ImGuiTreeNodeFlags_OpenOnArrow = 1 << 7,
|
||||
ImGuiTreeNodeFlags_Leaf = 1 << 8,
|
||||
ImGuiTreeNodeFlags_Bullet = 1 << 9,
|
||||
ImGuiTreeNodeFlags_CollapsingHeader = ImGuiTreeNodeFlags_Framed | ImGuiTreeNodeFlags_NoAutoOpenOnLog
|
||||
};
|
||||
|
||||
enum {
|
||||
ImGuiSelectableFlags_DontClosePopups = 1 << 0,
|
||||
ImGuiSelectableFlags_SpanAllColumns = 1 << 1,
|
||||
ImGuiSelectableFlags_AllowDoubleClick = 1 << 2
|
||||
};
|
||||
|
||||
enum {
|
||||
ImGuiKey_Tab,
|
||||
ImGuiKey_LeftArrow,
|
||||
ImGuiKey_RightArrow,
|
||||
ImGuiKey_UpArrow,
|
||||
ImGuiKey_DownArrow,
|
||||
ImGuiKey_PageUp,
|
||||
ImGuiKey_PageDown,
|
||||
ImGuiKey_Home,
|
||||
ImGuiKey_End,
|
||||
ImGuiKey_Delete,
|
||||
ImGuiKey_Backspace,
|
||||
ImGuiKey_Enter,
|
||||
ImGuiKey_Escape,
|
||||
ImGuiKey_A,
|
||||
ImGuiKey_C,
|
||||
ImGuiKey_V,
|
||||
ImGuiKey_X,
|
||||
ImGuiKey_Y,
|
||||
ImGuiKey_Z,
|
||||
ImGuiKey_COUNT
|
||||
};
|
||||
|
||||
enum {
|
||||
ImGuiCol_Text,
|
||||
ImGuiCol_TextDisabled,
|
||||
ImGuiCol_WindowBg,
|
||||
ImGuiCol_ChildWindowBg,
|
||||
ImGuiCol_PopupBg,
|
||||
ImGuiCol_Border,
|
||||
ImGuiCol_BorderShadow,
|
||||
ImGuiCol_FrameBg,
|
||||
ImGuiCol_FrameBgHovered,
|
||||
ImGuiCol_FrameBgActive,
|
||||
ImGuiCol_TitleBg,
|
||||
ImGuiCol_TitleBgCollapsed,
|
||||
ImGuiCol_TitleBgActive,
|
||||
ImGuiCol_MenuBarBg,
|
||||
ImGuiCol_ScrollbarBg,
|
||||
ImGuiCol_ScrollbarGrab,
|
||||
ImGuiCol_ScrollbarGrabHovered,
|
||||
ImGuiCol_ScrollbarGrabActive,
|
||||
ImGuiCol_ComboBg,
|
||||
ImGuiCol_CheckMark,
|
||||
ImGuiCol_SliderGrab,
|
||||
ImGuiCol_SliderGrabActive,
|
||||
ImGuiCol_Button,
|
||||
ImGuiCol_ButtonHovered,
|
||||
ImGuiCol_ButtonActive,
|
||||
ImGuiCol_Header,
|
||||
ImGuiCol_HeaderHovered,
|
||||
ImGuiCol_HeaderActive,
|
||||
ImGuiCol_Separator,
|
||||
ImGuiCol_SeparatorHovered,
|
||||
ImGuiCol_SeparatorActive,
|
||||
ImGuiCol_ResizeGrip,
|
||||
ImGuiCol_ResizeGripHovered,
|
||||
ImGuiCol_ResizeGripActive,
|
||||
ImGuiCol_CloseButton,
|
||||
ImGuiCol_CloseButtonHovered,
|
||||
ImGuiCol_CloseButtonActive,
|
||||
ImGuiCol_PlotLines,
|
||||
ImGuiCol_PlotLinesHovered,
|
||||
ImGuiCol_PlotHistogram,
|
||||
ImGuiCol_PlotHistogramHovered,
|
||||
ImGuiCol_TextSelectedBg,
|
||||
ImGuiCol_ModalWindowDarkening,
|
||||
ImGuiCol_COUNT
|
||||
};
|
||||
|
||||
enum {
|
||||
ImGuiStyleVar_Alpha,
|
||||
ImGuiStyleVar_WindowPadding,
|
||||
ImGuiStyleVar_WindowRounding,
|
||||
ImGuiStyleVar_WindowMinSize,
|
||||
ImGuiStyleVar_ChildWindowRounding,
|
||||
ImGuiStyleVar_FramePadding,
|
||||
ImGuiStyleVar_FrameRounding,
|
||||
ImGuiStyleVar_ItemSpacing,
|
||||
ImGuiStyleVar_ItemInnerSpacing,
|
||||
ImGuiStyleVar_IndentSpacing,
|
||||
ImGuiStyleVar_GrabMinSize,
|
||||
ImGuiStyleVar_ButtonTextAlign,
|
||||
ImGuiStyleVar_Count_
|
||||
};
|
||||
|
||||
enum {
|
||||
ImGuiColorEditFlags_NoAlpha = 1 << 1,
|
||||
ImGuiColorEditFlags_NoPicker = 1 << 2,
|
||||
ImGuiColorEditFlags_NoOptions = 1 << 3,
|
||||
ImGuiColorEditFlags_NoSmallPreview = 1 << 4,
|
||||
ImGuiColorEditFlags_NoInputs = 1 << 5,
|
||||
ImGuiColorEditFlags_NoTooltip = 1 << 6,
|
||||
ImGuiColorEditFlags_NoLabel = 1 << 7,
|
||||
ImGuiColorEditFlags_NoSidePreview = 1 << 8,
|
||||
ImGuiColorEditFlags_AlphaBar = 1 << 9,
|
||||
ImGuiColorEditFlags_AlphaPreview = 1 << 10,
|
||||
ImGuiColorEditFlags_AlphaPreviewHalf= 1 << 11,
|
||||
ImGuiColorEditFlags_HDR = 1 << 12,
|
||||
ImGuiColorEditFlags_RGB = 1 << 13,
|
||||
ImGuiColorEditFlags_HSV = 1 << 14,
|
||||
ImGuiColorEditFlags_HEX = 1 << 15,
|
||||
ImGuiColorEditFlags_Uint8 = 1 << 16,
|
||||
ImGuiColorEditFlags_Float = 1 << 17,
|
||||
ImGuiColorEditFlags_PickerHueBar = 1 << 18,
|
||||
ImGuiColorEditFlags_PickerHueWheel = 1 << 19
|
||||
};
|
||||
|
||||
enum {
|
||||
ImGuiMouseCursor_None = -1,
|
||||
ImGuiMouseCursor_Arrow = 0,
|
||||
ImGuiMouseCursor_TextInput,
|
||||
ImGuiMouseCursor_Move,
|
||||
ImGuiMouseCursor_ResizeNS,
|
||||
ImGuiMouseCursor_ResizeEW,
|
||||
ImGuiMouseCursor_ResizeNESW,
|
||||
ImGuiMouseCursor_ResizeNWSE,
|
||||
ImGuiMouseCursor_Count_
|
||||
};
|
||||
|
||||
enum {
|
||||
ImGuiCond_Always = 1 << 0,
|
||||
ImGuiCond_Once = 1 << 1,
|
||||
ImGuiCond_FirstUseEver = 1 << 2,
|
||||
ImGuiCond_Appearing = 1 << 3
|
||||
};
|
||||
|
||||
struct ImGuiStyle {
|
||||
float Alpha;
|
||||
struct ImVec2 WindowPadding;
|
||||
struct ImVec2 WindowMinSize;
|
||||
float WindowRounding;
|
||||
struct ImVec2 WindowTitleAlign;
|
||||
float ChildWindowRounding;
|
||||
struct ImVec2 FramePadding;
|
||||
float FrameRounding;
|
||||
struct ImVec2 ItemSpacing;
|
||||
struct ImVec2 ItemInnerSpacing;
|
||||
struct ImVec2 TouchExtraPadding;
|
||||
float IndentSpacing;
|
||||
float ColumnsMinSpacing;
|
||||
float ScrollbarSize;
|
||||
float ScrollbarRounding;
|
||||
float GrabMinSize;
|
||||
float GrabRounding;
|
||||
struct ImVec2 ButtonTextAlign;
|
||||
struct ImVec2 DisplayWindowPadding;
|
||||
struct ImVec2 DisplaySafeAreaPadding;
|
||||
bool AntiAliasedLines;
|
||||
bool AntiAliasedShapes;
|
||||
float CurveTessellationTol;
|
||||
struct ImVec4 Colors[ImGuiCol_COUNT];
|
||||
};
|
||||
|
||||
struct ImGuiIO {
|
||||
struct ImVec2 DisplaySize;
|
||||
float DeltaTime;
|
||||
float IniSavingRate;
|
||||
const char* IniFilename;
|
||||
const char* LogFilename;
|
||||
float MouseDoubleClickTime;
|
||||
float MouseDoubleClickMaxDist;
|
||||
float MouseDragThreshold;
|
||||
int KeyMap[ImGuiKey_COUNT];
|
||||
float KeyRepeatDelay;
|
||||
float KeyRepeatRate;
|
||||
void* UserData;
|
||||
struct ImFontAtlas* Fonts;
|
||||
float FontGlobalScale;
|
||||
bool FontAllowUserScaling;
|
||||
struct ImFont* FontDefault;
|
||||
struct ImVec2 DisplayFramebufferScale;
|
||||
struct ImVec2 DisplayVisibleMin;
|
||||
struct ImVec2 DisplayVisibleMax;
|
||||
bool OSXBehaviors;
|
||||
void (*RenderDrawListsFn)(struct ImDrawData* data);
|
||||
const char* (*GetClipboardTextFn)(void* user_data);
|
||||
void (*SetClipboardTextFn)(void* user_data, const char* text);
|
||||
void* ClipboardUserData;
|
||||
void* (*MemAllocFn)(size_t sz);
|
||||
void (*MemFreeFn)(void* ptr);
|
||||
void (*ImeSetInputScreenPosFn)(int x, int y);
|
||||
void* ImeWindowHandle;
|
||||
struct ImVec2 MousePos;
|
||||
bool MouseDown[5];
|
||||
float MouseWheel;
|
||||
bool MouseDrawCursor;
|
||||
bool KeyCtrl;
|
||||
bool KeyShift;
|
||||
bool KeyAlt;
|
||||
bool KeySuper;
|
||||
bool KeysDown[512];
|
||||
ImWchar InputCharacters[16 + 1];
|
||||
bool WantCaptureMouse;
|
||||
bool WantCaptureKeyboard;
|
||||
bool WantTextInput;
|
||||
float Framerate;
|
||||
int MetricsAllocs;
|
||||
int MetricsRenderVertices;
|
||||
int MetricsRenderIndices;
|
||||
int MetricsActiveWindows;
|
||||
struct ImVec2 MouseDelta;
|
||||
struct ImVec2 MousePosPrev;
|
||||
bool MouseClicked[5];
|
||||
struct ImVec2 MouseClickedPos[5];
|
||||
float MouseClickedTime[5];
|
||||
bool MouseDoubleClicked[5];
|
||||
bool MouseReleased[5];
|
||||
bool MouseDownOwned[5];
|
||||
float MouseDownDuration[5];
|
||||
float MouseDownDurationPrev[5];
|
||||
float MouseDragMaxDistanceSqr[5];
|
||||
float KeysDownDuration[512];
|
||||
float KeysDownDurationPrev[512];
|
||||
};
|
||||
|
||||
struct ImGuiTextEditCallbackData {
|
||||
ImGuiInputTextFlags EventFlag;
|
||||
ImGuiInputTextFlags Flags;
|
||||
void* UserData;
|
||||
bool ReadOnly;
|
||||
ImWchar EventChar;
|
||||
ImGuiKey EventKey;
|
||||
char* Buf;
|
||||
int BufTextLen;
|
||||
int BufSize;
|
||||
bool BufDirty;
|
||||
int CursorPos;
|
||||
int SelectionStart;
|
||||
int SelectionEnd;
|
||||
};
|
||||
|
||||
struct ImGuiSizeConstraintCallbackData {
|
||||
void* UserData;
|
||||
struct ImVec2 Pos;
|
||||
struct ImVec2 CurrentSize;
|
||||
struct ImVec2 DesiredSize;
|
||||
};
|
||||
|
||||
struct ImDrawCmd {
|
||||
unsigned int ElemCount;
|
||||
struct ImVec4 ClipRect;
|
||||
ImTextureID TextureId;
|
||||
ImDrawCallback UserCallback;
|
||||
void* UserCallbackData;
|
||||
};
|
||||
|
||||
struct ImDrawData {
|
||||
bool Valid;
|
||||
struct ImDrawList** CmdLists;
|
||||
int CmdListsCount;
|
||||
int TotalVtxCount;
|
||||
int TotalIdxCount;
|
||||
};
|
||||
|
||||
struct ImDrawVert
|
||||
{
|
||||
struct ImVec2 pos;
|
||||
struct ImVec2 uv;
|
||||
ImU32 col;
|
||||
};
|
||||
|
||||
struct ImFontConfig {
|
||||
void* FontData;
|
||||
int FontDataSize;
|
||||
bool FontDataOwnedByAtlas;
|
||||
int FontNo;
|
||||
float SizePixels;
|
||||
int OversampleH, OversampleV;
|
||||
bool PixelSnapH;
|
||||
struct ImVec2 GlyphExtraSpacing;
|
||||
struct ImVec2 GlyphOffset;
|
||||
const ImWchar* GlyphRanges;
|
||||
bool MergeMode;
|
||||
char Name[32];
|
||||
struct ImFont* DstFont;
|
||||
};
|
||||
|
||||
struct ImGuiListClipper
|
||||
{
|
||||
float StartPosY;
|
||||
float ItemsHeight;
|
||||
int ItemsCount, StepNo, DisplayStart, DisplayEnd;
|
||||
};
|
||||
#endif // CIMGUI_DEFINE_ENUMS_AND_STRUCTS
|
||||
|
||||
CIMGUI_API struct ImGuiIO* igGetIO();
|
||||
CIMGUI_API struct ImGuiStyle* igGetStyle();
|
||||
CIMGUI_API struct ImDrawData* igGetDrawData();
|
||||
CIMGUI_API void igNewFrame();
|
||||
CIMGUI_API void igRender();
|
||||
CIMGUI_API void igShutdown();
|
||||
CIMGUI_API void igShowUserGuide();
|
||||
CIMGUI_API void igShowStyleEditor(struct ImGuiStyle* ref);
|
||||
CIMGUI_API void igShowTestWindow(bool* opened);
|
||||
CIMGUI_API void igShowMetricsWindow(bool* opened);
|
||||
|
||||
// Window
|
||||
CIMGUI_API bool igBegin(CONST char* name, bool* p_open, ImGuiWindowFlags flags);
|
||||
CIMGUI_API bool igBegin2(CONST char* name, bool* p_open, CONST struct ImVec2 size_on_first_use, float bg_alpha, ImGuiWindowFlags flags);
|
||||
CIMGUI_API void igEnd();
|
||||
CIMGUI_API bool igBeginChild(CONST char* str_id, CONST struct ImVec2 size, bool border, ImGuiWindowFlags extra_flags);
|
||||
CIMGUI_API bool igBeginChildEx(ImGuiID id, CONST struct ImVec2 size, bool border, ImGuiWindowFlags extra_flags);
|
||||
CIMGUI_API void igEndChild();
|
||||
CIMGUI_API void igGetContentRegionMax(struct ImVec2* out);
|
||||
CIMGUI_API void igGetContentRegionAvail(struct ImVec2* out);
|
||||
CIMGUI_API float igGetContentRegionAvailWidth();
|
||||
CIMGUI_API void igGetWindowContentRegionMin(struct ImVec2* out);
|
||||
CIMGUI_API void igGetWindowContentRegionMax(struct ImVec2* out);
|
||||
CIMGUI_API float igGetWindowContentRegionWidth();
|
||||
CIMGUI_API struct ImDrawList* igGetWindowDrawList();
|
||||
CIMGUI_API void igGetWindowPos(struct ImVec2* out);
|
||||
CIMGUI_API void igGetWindowSize(struct ImVec2* out);
|
||||
CIMGUI_API float igGetWindowWidth();
|
||||
CIMGUI_API float igGetWindowHeight();
|
||||
CIMGUI_API bool igIsWindowCollapsed();
|
||||
CIMGUI_API void igSetWindowFontScale(float scale);
|
||||
|
||||
CIMGUI_API void igSetNextWindowPos(CONST struct ImVec2 pos, ImGuiCond cond);
|
||||
CIMGUI_API void igSetNextWindowPosCenter(ImGuiCond cond);
|
||||
CIMGUI_API void igSetNextWindowSize(CONST struct ImVec2 size, ImGuiCond cond);
|
||||
CIMGUI_API void igSetNextWindowSizeConstraints(CONST struct ImVec2 size_min, CONST struct ImVec2 size_max, ImGuiSizeConstraintCallback custom_callback, void* custom_callback_data);
|
||||
CIMGUI_API void igSetNextWindowContentSize(CONST struct ImVec2 size);
|
||||
CIMGUI_API void igSetNextWindowContentWidth(float width);
|
||||
CIMGUI_API void igSetNextWindowCollapsed(bool collapsed, ImGuiCond cond);
|
||||
CIMGUI_API void igSetNextWindowFocus();
|
||||
CIMGUI_API void igSetWindowPos(CONST struct ImVec2 pos, ImGuiCond cond);
|
||||
CIMGUI_API void igSetWindowSize(CONST struct ImVec2 size, ImGuiCond cond);
|
||||
CIMGUI_API void igSetWindowCollapsed(bool collapsed, ImGuiCond cond);
|
||||
CIMGUI_API void igSetWindowFocus();
|
||||
CIMGUI_API void igSetWindowPosByName(CONST char* name, CONST struct ImVec2 pos, ImGuiCond cond);
|
||||
CIMGUI_API void igSetWindowSize2(CONST char* name, CONST struct ImVec2 size, ImGuiCond cond);
|
||||
CIMGUI_API void igSetWindowCollapsed2(CONST char* name, bool collapsed, ImGuiCond cond);
|
||||
CIMGUI_API void igSetWindowFocus2(CONST char* name);
|
||||
|
||||
CIMGUI_API float igGetScrollX();
|
||||
CIMGUI_API float igGetScrollY();
|
||||
CIMGUI_API float igGetScrollMaxX();
|
||||
CIMGUI_API float igGetScrollMaxY();
|
||||
CIMGUI_API void igSetScrollX(float scroll_x);
|
||||
CIMGUI_API void igSetScrollY(float scroll_y);
|
||||
CIMGUI_API void igSetScrollHere(float center_y_ratio);
|
||||
CIMGUI_API void igSetScrollFromPosY(float pos_y, float center_y_ratio);
|
||||
CIMGUI_API void igSetKeyboardFocusHere(int offset);
|
||||
CIMGUI_API void igSetStateStorage(struct ImGuiStorage* tree);
|
||||
CIMGUI_API struct ImGuiStorage* igGetStateStorage();
|
||||
|
||||
// Parameters stacks (shared)
|
||||
CIMGUI_API void igPushFont(struct ImFont* font);
|
||||
CIMGUI_API void igPopFont();
|
||||
CIMGUI_API void igPushStyleColorU32(ImGuiCol idx, ImU32 col);
|
||||
CIMGUI_API void igPushStyleColor(ImGuiCol idx, CONST struct ImVec4 col);
|
||||
CIMGUI_API void igPopStyleColor(int count);
|
||||
CIMGUI_API void igPushStyleVar(ImGuiStyleVar idx, float val);
|
||||
CIMGUI_API void igPushStyleVarVec(ImGuiStyleVar idx, CONST struct ImVec2 val);
|
||||
CIMGUI_API void igPopStyleVar(int count);
|
||||
CIMGUI_API void igGetStyleColorVec4(struct ImVec4 *pOut, ImGuiCol idx);
|
||||
CIMGUI_API struct ImFont* igGetFont();
|
||||
CIMGUI_API float igGetFontSize();
|
||||
CIMGUI_API void igGetFontTexUvWhitePixel(struct ImVec2* pOut);
|
||||
CIMGUI_API ImU32 igGetColorU32(ImGuiCol idx, float alpha_mul);
|
||||
CIMGUI_API ImU32 igGetColorU32Vec(CONST struct ImVec4* col);
|
||||
CIMGUI_API ImU32 igGetColorU32U32(ImU32 col);
|
||||
|
||||
|
||||
// Parameters stacks (current window)
|
||||
CIMGUI_API void igPushItemWidth(float item_width);
|
||||
CIMGUI_API void igPopItemWidth();
|
||||
CIMGUI_API float igCalcItemWidth();
|
||||
CIMGUI_API void igPushTextWrapPos(float wrap_pos_x);
|
||||
CIMGUI_API void igPopTextWrapPos();
|
||||
CIMGUI_API void igPushAllowKeyboardFocus(bool v);
|
||||
CIMGUI_API void igPopAllowKeyboardFocus();
|
||||
CIMGUI_API void igPushButtonRepeat(bool repeat);
|
||||
CIMGUI_API void igPopButtonRepeat();
|
||||
|
||||
// Layout
|
||||
CIMGUI_API void igSeparator();
|
||||
CIMGUI_API void igSameLine(float pos_x, float spacing_w);
|
||||
CIMGUI_API void igNewLine();
|
||||
CIMGUI_API void igSpacing();
|
||||
CIMGUI_API void igDummy(CONST struct ImVec2* size);
|
||||
CIMGUI_API void igIndent(float indent_w);
|
||||
CIMGUI_API void igUnindent(float indent_w);
|
||||
CIMGUI_API void igBeginGroup();
|
||||
CIMGUI_API void igEndGroup();
|
||||
CIMGUI_API void igGetCursorPos(struct ImVec2* pOut);
|
||||
CIMGUI_API float igGetCursorPosX();
|
||||
CIMGUI_API float igGetCursorPosY();
|
||||
CIMGUI_API void igSetCursorPos(CONST struct ImVec2 local_pos);
|
||||
CIMGUI_API void igSetCursorPosX(float x);
|
||||
CIMGUI_API void igSetCursorPosY(float y);
|
||||
CIMGUI_API void igGetCursorStartPos(struct ImVec2* pOut);
|
||||
CIMGUI_API void igGetCursorScreenPos(struct ImVec2* pOut);
|
||||
CIMGUI_API void igSetCursorScreenPos(CONST struct ImVec2 pos);
|
||||
CIMGUI_API void igAlignFirstTextHeightToWidgets();
|
||||
CIMGUI_API float igGetTextLineHeight();
|
||||
CIMGUI_API float igGetTextLineHeightWithSpacing();
|
||||
CIMGUI_API float igGetItemsLineHeightWithSpacing();
|
||||
|
||||
//Columns
|
||||
CIMGUI_API void igColumns(int count, CONST char* id, bool border);
|
||||
CIMGUI_API void igNextColumn();
|
||||
CIMGUI_API int igGetColumnIndex();
|
||||
CIMGUI_API float igGetColumnWidth(int column_index); // get column width (in pixels). pass -1 to use current column
|
||||
CIMGUI_API void igSetColumnWidth(int column_index, float width);
|
||||
CIMGUI_API float igGetColumnOffset(int column_index);
|
||||
CIMGUI_API void igSetColumnOffset(int column_index, float offset_x);
|
||||
CIMGUI_API int igGetColumnsCount();
|
||||
|
||||
// ID scopes
|
||||
// If you are creating widgets in a loop you most likely want to push a unique identifier so ImGui can differentiate them
|
||||
// You can also use "##extra" within your widget name to distinguish them from each others (see 'Programmer Guide')
|
||||
CIMGUI_API void igPushIdStr(CONST char* str_id);
|
||||
CIMGUI_API void igPushIdStrRange(CONST char* str_begin, CONST char* str_end);
|
||||
CIMGUI_API void igPushIdPtr(CONST void* ptr_id);
|
||||
CIMGUI_API void igPushIdInt(int int_id);
|
||||
CIMGUI_API void igPopId();
|
||||
CIMGUI_API ImGuiID igGetIdStr(CONST char* str_id);
|
||||
CIMGUI_API ImGuiID igGetIdStrRange(CONST char* str_begin,CONST char* str_end);
|
||||
CIMGUI_API ImGuiID igGetIdPtr(CONST void* ptr_id);
|
||||
|
||||
// Widgets
|
||||
CIMGUI_API void igText(CONST char* fmt, ...);
|
||||
CIMGUI_API void igTextV(CONST char* fmt, va_list args);
|
||||
CIMGUI_API void igTextColored(CONST struct ImVec4 col, CONST char* fmt, ...);
|
||||
CIMGUI_API void igTextColoredV(CONST struct ImVec4 col, CONST char* fmt, va_list args);
|
||||
CIMGUI_API void igTextDisabled(CONST char* fmt, ...);
|
||||
CIMGUI_API void igTextDisabledV(CONST char* fmt, va_list args);
|
||||
CIMGUI_API void igTextWrapped(CONST char* fmt, ...);
|
||||
CIMGUI_API void igTextWrappedV(CONST char* fmt, va_list args);
|
||||
CIMGUI_API void igTextUnformatted(CONST char* text, CONST char* text_end);
|
||||
CIMGUI_API void igLabelText(CONST char* label, CONST char* fmt, ...);
|
||||
CIMGUI_API void igLabelTextV(CONST char* label, CONST char* fmt, va_list args);
|
||||
CIMGUI_API void igBullet();
|
||||
CIMGUI_API void igBulletText(CONST char* fmt, ...);
|
||||
CIMGUI_API void igBulletTextV(CONST char* fmt, va_list args);
|
||||
CIMGUI_API bool igButton(CONST char* label, CONST struct ImVec2 size);
|
||||
CIMGUI_API bool igSmallButton(CONST char* label);
|
||||
CIMGUI_API bool igInvisibleButton(CONST char* str_id, CONST struct ImVec2 size);
|
||||
CIMGUI_API void igImage(ImTextureID user_texture_id, CONST struct ImVec2 size, CONST struct ImVec2 uv0, CONST struct ImVec2 uv1, CONST struct ImVec4 tint_col, CONST struct ImVec4 border_col);
|
||||
CIMGUI_API bool igImageButton(ImTextureID user_texture_id, CONST struct ImVec2 size, CONST struct ImVec2 uv0, CONST struct ImVec2 uv1, int frame_padding, CONST struct ImVec4 bg_col, CONST struct ImVec4 tint_col);
|
||||
CIMGUI_API bool igCheckbox(CONST char* label, bool* v);
|
||||
CIMGUI_API bool igCheckboxFlags(CONST char* label, unsigned int* flags, unsigned int flags_value);
|
||||
CIMGUI_API bool igRadioButtonBool(CONST char* label, bool active);
|
||||
CIMGUI_API bool igRadioButton(CONST char* label, int* v, int v_button);
|
||||
CIMGUI_API bool igCombo(CONST char* label, int* current_item, CONST char* CONST* items, int items_count, int height_in_items);
|
||||
CIMGUI_API bool igCombo2(CONST char* label, int* current_item, CONST char* items_separated_by_zeros, int height_in_items);
|
||||
CIMGUI_API bool igCombo3(CONST char* label, int* current_item, bool(*items_getter)(void* data, int idx, CONST char** out_text), void* data, int items_count, int height_in_items);
|
||||
CIMGUI_API void igPlotLines(CONST char* label, CONST float* values, int values_count, int values_offset, CONST char* overlay_text, float scale_min, float scale_max, struct ImVec2 graph_size, int stride);
|
||||
CIMGUI_API void igPlotLines2(CONST char* label, float(*values_getter)(void* data, int idx), void* data, int values_count, int values_offset, CONST char* overlay_text, float scale_min, float scale_max, struct ImVec2 graph_size);
|
||||
CIMGUI_API void igPlotHistogram(CONST char* label, CONST float* values, int values_count, int values_offset, CONST char* overlay_text, float scale_min, float scale_max, struct ImVec2 graph_size, int stride);
|
||||
CIMGUI_API void igPlotHistogram2(CONST char* label, float(*values_getter)(void* data, int idx), void* data, int values_count, int values_offset, CONST char* overlay_text, float scale_min, float scale_max, struct ImVec2 graph_size);
|
||||
CIMGUI_API void igProgressBar(float fraction, CONST struct ImVec2* size_arg, CONST char* overlay);
|
||||
|
||||
|
||||
// Widgets: Sliders (tip: ctrl+click on a slider to input text)
|
||||
CIMGUI_API bool igSliderFloat(CONST char* label, float* v, float v_min, float v_max, CONST char* display_format, float power);
|
||||
CIMGUI_API bool igSliderFloat2(CONST char* label, float v[2], float v_min, float v_max, CONST char* display_format, float power);
|
||||
CIMGUI_API bool igSliderFloat3(CONST char* label, float v[3], float v_min, float v_max, CONST char* display_format, float power);
|
||||
CIMGUI_API bool igSliderFloat4(CONST char* label, float v[4], float v_min, float v_max, CONST char* display_format, float power);
|
||||
CIMGUI_API bool igSliderAngle(CONST char* label, float* v_rad, float v_degrees_min, float v_degrees_max);
|
||||
CIMGUI_API bool igSliderInt(CONST char* label, int* v, int v_min, int v_max, CONST char* display_format);
|
||||
CIMGUI_API bool igSliderInt2(CONST char* label, int v[2], int v_min, int v_max, CONST char* display_format);
|
||||
CIMGUI_API bool igSliderInt3(CONST char* label, int v[3], int v_min, int v_max, CONST char* display_format);
|
||||
CIMGUI_API bool igSliderInt4(CONST char* label, int v[4], int v_min, int v_max, CONST char* display_format);
|
||||
CIMGUI_API bool igVSliderFloat(CONST char* label, CONST struct ImVec2 size, float* v, float v_min, float v_max, CONST char* display_format, float power);
|
||||
CIMGUI_API bool igVSliderInt(CONST char* label, CONST struct ImVec2 size, int* v, int v_min, int v_max, CONST char* display_format);
|
||||
|
||||
// Widgets: Color Editor/Picker (tip: the ColorEdit* functions have a little colored preview square that can be left-clicked to open a picker, and right-clicked to open an option menu.)
|
||||
CIMGUI_API bool igColorEdit3(CONST char* label, float col[3], ImGuiColorEditFlags flags);
|
||||
CIMGUI_API bool igColorEdit4(CONST char* label, float col[4], ImGuiColorEditFlags flags);
|
||||
CIMGUI_API bool igColorPicker3(CONST char* label, float col[3], ImGuiColorEditFlags flags);
|
||||
CIMGUI_API bool igColorPicker4(CONST char* label, float col[4], ImGuiColorEditFlags flags, CONST float* ref_col);
|
||||
CIMGUI_API bool igColorButton(CONST char* desc_id, CONST struct ImVec4 col, ImGuiColorEditFlags flags, CONST struct ImVec2 size);
|
||||
CIMGUI_API void igSetColorEditOptions(ImGuiColorEditFlags flags);
|
||||
|
||||
|
||||
// Widgets: Drags (tip: ctrl+click on a drag box to input text)
|
||||
CIMGUI_API bool igDragFloat(CONST char* label, float* v, float v_speed, float v_min, float v_max, CONST char* display_format, float power); // If v_max >= v_max we have no bound
|
||||
CIMGUI_API bool igDragFloat2(CONST char* label, float v[2], float v_speed, float v_min, float v_max, CONST char* display_format, float power);
|
||||
CIMGUI_API bool igDragFloat3(CONST char* label, float v[3], float v_speed, float v_min, float v_max, CONST char* display_format, float power);
|
||||
CIMGUI_API bool igDragFloat4(CONST char* label, float v[4], float v_speed, float v_min, float v_max, CONST char* display_format, float power);
|
||||
CIMGUI_API bool igDragFloatRange2(CONST char* label, float* v_current_min, float* v_current_max, float v_speed, float v_min, float v_max, CONST char* display_format, CONST char* display_format_max, float power);
|
||||
CIMGUI_API bool igDragInt(CONST char* label, int* v, float v_speed, int v_min, int v_max, CONST char* display_format); // If v_max >= v_max we have no bound
|
||||
CIMGUI_API bool igDragInt2(CONST char* label, int v[2], float v_speed, int v_min, int v_max, CONST char* display_format);
|
||||
CIMGUI_API bool igDragInt3(CONST char* label, int v[3], float v_speed, int v_min, int v_max, CONST char* display_format);
|
||||
CIMGUI_API bool igDragInt4(CONST char* label, int v[4], float v_speed, int v_min, int v_max, CONST char* display_format);
|
||||
CIMGUI_API bool igDragIntRange2(CONST char* label, int* v_current_min, int* v_current_max, float v_speed, int v_min, int v_max, CONST char* display_format, CONST char* display_format_max);
|
||||
|
||||
|
||||
// Widgets: Input
|
||||
CIMGUI_API bool igInputText(CONST char* label, char* buf, size_t buf_size, ImGuiInputTextFlags flags, ImGuiTextEditCallback callback, void* user_data);
|
||||
CIMGUI_API bool igInputTextMultiline(CONST char* label, char* buf, size_t buf_size, CONST struct ImVec2 size, ImGuiInputTextFlags flags, ImGuiTextEditCallback callback, void* user_data);
|
||||
CIMGUI_API bool igInputFloat(CONST char* label, float* v, float step, float step_fast, int decimal_precision, ImGuiInputTextFlags extra_flags);
|
||||
CIMGUI_API bool igInputFloat2(CONST char* label, float v[2], int decimal_precision, ImGuiInputTextFlags extra_flags);
|
||||
CIMGUI_API bool igInputFloat3(CONST char* label, float v[3], int decimal_precision, ImGuiInputTextFlags extra_flags);
|
||||
CIMGUI_API bool igInputFloat4(CONST char* label, float v[4], int decimal_precision, ImGuiInputTextFlags extra_flags);
|
||||
CIMGUI_API bool igInputInt(CONST char* label, int* v, int step, int step_fast, ImGuiInputTextFlags extra_flags);
|
||||
CIMGUI_API bool igInputInt2(CONST char* label, int v[2], ImGuiInputTextFlags extra_flags);
|
||||
CIMGUI_API bool igInputInt3(CONST char* label, int v[3], ImGuiInputTextFlags extra_flags);
|
||||
CIMGUI_API bool igInputInt4(CONST char* label, int v[4], ImGuiInputTextFlags extra_flags);
|
||||
|
||||
// Widgets: Trees
|
||||
CIMGUI_API bool igTreeNode(CONST char* label);
|
||||
CIMGUI_API bool igTreeNodeStr(CONST char* str_id, CONST char* fmt, ...);
|
||||
CIMGUI_API bool igTreeNodePtr(CONST void* ptr_id, CONST char* fmt, ...);
|
||||
CIMGUI_API bool igTreeNodeStrV(CONST char* str_id, CONST char* fmt, va_list args);
|
||||
CIMGUI_API bool igTreeNodePtrV(CONST void* ptr_id, CONST char* fmt, va_list args);
|
||||
CIMGUI_API bool igTreeNodeEx(CONST char* label, ImGuiTreeNodeFlags flags);
|
||||
CIMGUI_API bool igTreeNodeExStr(CONST char* str_id, ImGuiTreeNodeFlags flags, CONST char* fmt, ...);
|
||||
CIMGUI_API bool igTreeNodeExPtr(CONST void* ptr_id, ImGuiTreeNodeFlags flags, CONST char* fmt, ...);
|
||||
CIMGUI_API bool igTreeNodeExV(CONST char* str_id, ImGuiTreeNodeFlags flags, CONST char* fmt, va_list args);
|
||||
CIMGUI_API bool igTreeNodeExVPtr(CONST void* ptr_id, ImGuiTreeNodeFlags flags, CONST char* fmt, va_list args);
|
||||
CIMGUI_API void igTreePushStr(CONST char* str_id);
|
||||
CIMGUI_API void igTreePushPtr(CONST void* ptr_id);
|
||||
CIMGUI_API void igTreePop();
|
||||
CIMGUI_API void igTreeAdvanceToLabelPos();
|
||||
CIMGUI_API float igGetTreeNodeToLabelSpacing();
|
||||
CIMGUI_API void igSetNextTreeNodeOpen(bool opened, ImGuiCond cond);
|
||||
CIMGUI_API bool igCollapsingHeader(CONST char* label, ImGuiTreeNodeFlags flags);
|
||||
CIMGUI_API bool igCollapsingHeaderEx(CONST char* label, bool* p_open, ImGuiTreeNodeFlags flags);
|
||||
|
||||
// Widgets: Selectable / Lists
|
||||
CIMGUI_API bool igSelectable(CONST char* label, bool selected, ImGuiSelectableFlags flags, CONST struct ImVec2 size);
|
||||
CIMGUI_API bool igSelectableEx(CONST char* label, bool* p_selected, ImGuiSelectableFlags flags, CONST struct ImVec2 size);
|
||||
CIMGUI_API bool igListBox(CONST char* label, int* current_item, CONST char* CONST* items, int items_count, int height_in_items);
|
||||
CIMGUI_API bool igListBox2(CONST char* label, int* current_item, bool(*items_getter)(void* data, int idx, CONST char** out_text), void* data, int items_count, int height_in_items);
|
||||
CIMGUI_API bool igListBoxHeader(CONST char* label, CONST struct ImVec2 size);
|
||||
CIMGUI_API bool igListBoxHeader2(CONST char* label, int items_count, int height_in_items);
|
||||
CIMGUI_API void igListBoxFooter();
|
||||
|
||||
// Widgets: Value() Helpers. Output single value in "name: value" format (tip: freely declare your own within the ImGui namespace!)
|
||||
CIMGUI_API void igValueBool(CONST char* prefix, bool b);
|
||||
CIMGUI_API void igValueInt(CONST char* prefix, int v);
|
||||
CIMGUI_API void igValueUInt(CONST char* prefix, unsigned int v);
|
||||
CIMGUI_API void igValueFloat(CONST char* prefix, float v, CONST char* float_format);
|
||||
|
||||
// Tooltip
|
||||
CIMGUI_API void igSetTooltip(CONST char* fmt, ...);
|
||||
CIMGUI_API void igSetTooltipV(CONST char* fmt, va_list args);
|
||||
CIMGUI_API void igBeginTooltip();
|
||||
CIMGUI_API void igEndTooltip();
|
||||
|
||||
// Widgets: Menus
|
||||
CIMGUI_API bool igBeginMainMenuBar();
|
||||
CIMGUI_API void igEndMainMenuBar();
|
||||
CIMGUI_API bool igBeginMenuBar();
|
||||
CIMGUI_API void igEndMenuBar();
|
||||
CIMGUI_API bool igBeginMenu(CONST char* label, bool enabled);
|
||||
CIMGUI_API void igEndMenu();
|
||||
CIMGUI_API bool igMenuItem(CONST char* label, CONST char* shortcut, bool selected, bool enabled);
|
||||
CIMGUI_API bool igMenuItemPtr(CONST char* label, CONST char* shortcut, bool* p_selected, bool enabled);
|
||||
|
||||
// Popup
|
||||
CIMGUI_API void igOpenPopup(CONST char* str_id);
|
||||
CIMGUI_API bool igBeginPopup(CONST char* str_id);
|
||||
CIMGUI_API bool igBeginPopupModal(CONST char* name, bool* p_open, ImGuiWindowFlags extra_flags);
|
||||
CIMGUI_API bool igBeginPopupContextItem(CONST char* str_id, int mouse_button);
|
||||
CIMGUI_API bool igBeginPopupContextWindow(CONST char* str_id, int mouse_button, bool also_over_items);
|
||||
CIMGUI_API bool igBeginPopupContextVoid(CONST char* str_id, int mouse_button);
|
||||
CIMGUI_API void igEndPopup();
|
||||
CIMGUI_API bool igIsPopupOpen(CONST char* str_id);
|
||||
CIMGUI_API void igCloseCurrentPopup();
|
||||
|
||||
// Logging: all text output from interface is redirected to tty/file/clipboard. Tree nodes are automatically opened.
|
||||
CIMGUI_API void igLogToTTY(int max_depth);
|
||||
CIMGUI_API void igLogToFile(int max_depth, CONST char* filename);
|
||||
CIMGUI_API void igLogToClipboard(int max_depth);
|
||||
CIMGUI_API void igLogFinish();
|
||||
CIMGUI_API void igLogButtons();
|
||||
CIMGUI_API void igLogText(CONST char* fmt, ...);
|
||||
|
||||
// Clipping
|
||||
CIMGUI_API void igPushClipRect(CONST struct ImVec2 clip_rect_min, CONST struct ImVec2 clip_rect_max, bool intersect_with_current_clip_rect);
|
||||
CIMGUI_API void igPopClipRect();
|
||||
|
||||
// Utilities
|
||||
CIMGUI_API bool igIsItemHovered();
|
||||
CIMGUI_API bool igIsItemRectHovered();
|
||||
CIMGUI_API bool igIsItemActive();
|
||||
CIMGUI_API bool igIsItemClicked(int mouse_button);
|
||||
CIMGUI_API bool igIsItemVisible();
|
||||
CIMGUI_API bool igIsAnyItemHovered();
|
||||
CIMGUI_API bool igIsAnyItemActive();
|
||||
CIMGUI_API void igGetItemRectMin(struct ImVec2* pOut);
|
||||
CIMGUI_API void igGetItemRectMax(struct ImVec2* pOut);
|
||||
CIMGUI_API void igGetItemRectSize(struct ImVec2* pOut);
|
||||
CIMGUI_API void igSetItemAllowOverlap();
|
||||
CIMGUI_API bool igIsWindowFocused();
|
||||
CIMGUI_API bool igIsWindowHovered();
|
||||
CIMGUI_API bool igIsWindowRectHovered();
|
||||
CIMGUI_API bool igIsRootWindowFocused();
|
||||
CIMGUI_API bool igIsRootWindowOrAnyChildFocused();
|
||||
CIMGUI_API bool igIsRootWindowOrAnyChildHovered();
|
||||
CIMGUI_API bool igIsAnyWindowHovered();
|
||||
CIMGUI_API bool igIsRectVisible(CONST struct ImVec2 item_size);
|
||||
CIMGUI_API bool igIsRectVisible2(CONST struct ImVec2* rect_min, CONST struct ImVec2* rect_max);
|
||||
CIMGUI_API float igGetTime();
|
||||
CIMGUI_API int igGetFrameCount();
|
||||
CIMGUI_API CONST char* igGetStyleColorName(ImGuiCol idx);
|
||||
CIMGUI_API void igCalcItemRectClosestPoint(struct ImVec2* pOut, CONST struct ImVec2 pos, bool on_edge, float outward);
|
||||
CIMGUI_API void igCalcTextSize(struct ImVec2* pOut, CONST char* text, CONST char* text_end, bool hide_text_after_double_hash, float wrap_width);
|
||||
CIMGUI_API void igCalcListClipping(int items_count, float items_height, int* out_items_display_start, int* out_items_display_end);
|
||||
|
||||
CIMGUI_API bool igBeginChildFrame(ImGuiID id, CONST struct ImVec2 size, ImGuiWindowFlags extra_flags);
|
||||
CIMGUI_API void igEndChildFrame();
|
||||
|
||||
CIMGUI_API void igColorConvertU32ToFloat4(struct ImVec4* pOut, ImU32 in);
|
||||
CIMGUI_API ImU32 igColorConvertFloat4ToU32(CONST struct ImVec4 in);
|
||||
CIMGUI_API void igColorConvertRGBtoHSV(float r, float g, float b, float* out_h, float* out_s, float* out_v);
|
||||
CIMGUI_API void igColorConvertHSVtoRGB(float h, float s, float v, float* out_r, float* out_g, float* out_b);
|
||||
|
||||
CIMGUI_API int igGetKeyIndex(ImGuiKey imgui_key);
|
||||
CIMGUI_API bool igIsKeyDown(int user_key_index);
|
||||
CIMGUI_API bool igIsKeyPressed(int user_key_index, bool repeat);
|
||||
CIMGUI_API bool igIsKeyReleased(int user_key_index);
|
||||
CIMGUI_API bool igIsMouseDown(int button);
|
||||
CIMGUI_API bool igIsMouseClicked(int button, bool repeat);
|
||||
CIMGUI_API bool igIsMouseDoubleClicked(int button);
|
||||
CIMGUI_API bool igIsMouseReleased(int button);
|
||||
CIMGUI_API bool igIsMouseDragging(int button, float lock_threshold);
|
||||
CIMGUI_API bool igIsMouseHoveringRect(CONST struct ImVec2 r_min, CONST struct ImVec2 r_max, bool clip);
|
||||
CIMGUI_API void igGetMousePos(struct ImVec2* pOut);
|
||||
CIMGUI_API void igGetMousePosOnOpeningCurrentPopup(struct ImVec2* pOut);
|
||||
CIMGUI_API void igGetMouseDragDelta(struct ImVec2* pOut, int button, float lock_threshold);
|
||||
CIMGUI_API void igResetMouseDragDelta(int button);
|
||||
CIMGUI_API ImGuiMouseCursor igGetMouseCursor();
|
||||
CIMGUI_API void igSetMouseCursor(ImGuiMouseCursor type);
|
||||
CIMGUI_API void igCaptureKeyboardFromApp(bool capture);
|
||||
CIMGUI_API void igCaptureMouseFromApp(bool capture);
|
||||
|
||||
// Helpers functions to access functions pointers in ImGui::GetIO()
|
||||
CIMGUI_API void* igMemAlloc(size_t sz);
|
||||
CIMGUI_API void igMemFree(void* ptr);
|
||||
CIMGUI_API CONST char* igGetClipboardText();
|
||||
CIMGUI_API void igSetClipboardText(CONST char* text);
|
||||
|
||||
// Internal state access - if you want to share ImGui state between modules (e.g. DLL) or allocate it yourself
|
||||
CIMGUI_API CONST char* igGetVersion();
|
||||
CIMGUI_API struct ImGuiContext* igCreateContext(void* (*malloc_fn)(size_t), void (*free_fn)(void*));
|
||||
CIMGUI_API void igDestroyContext(struct ImGuiContext* ctx);
|
||||
CIMGUI_API struct ImGuiContext* igGetCurrentContext();
|
||||
CIMGUI_API void igSetCurrentContext(struct ImGuiContext* ctx);
|
||||
|
||||
CIMGUI_API void ImFontConfig_DefaultConstructor(struct ImFontConfig* config);
|
||||
|
||||
CIMGUI_API void ImFontAtlas_GetTexDataAsRGBA32(struct ImFontAtlas* atlas, unsigned char** out_pixels, int* out_width, int* out_height, int* out_bytes_per_pixel);
|
||||
CIMGUI_API void ImFontAtlas_GetTexDataAsAlpha8(struct ImFontAtlas* atlas, unsigned char** out_pixels, int* out_width, int* out_height, int* out_bytes_per_pixel);
|
||||
CIMGUI_API void ImFontAtlas_SetTexID(struct ImFontAtlas* atlas, ImTextureID id);
|
||||
CIMGUI_API struct ImFont* ImFontAtlas_AddFont(struct ImFontAtlas* atlas, CONST struct ImFontConfig* font_cfg);
|
||||
CIMGUI_API struct ImFont* ImFontAtlas_AddFontDefault(struct ImFontAtlas* atlas, CONST struct ImFontConfig* font_cfg);
|
||||
CIMGUI_API struct ImFont* ImFontAtlas_AddFontFromFileTTF(struct ImFontAtlas* atlas, CONST char* filename, float size_pixels, CONST struct ImFontConfig* font_cfg, CONST ImWchar* glyph_ranges);
|
||||
CIMGUI_API struct ImFont* ImFontAtlas_AddFontFromMemoryTTF(struct ImFontAtlas* atlas, void* font_data, int font_size, float size_pixels, CONST struct ImFontConfig* font_cfg, CONST ImWchar* glyph_ranges);
|
||||
CIMGUI_API struct ImFont* ImFontAtlas_AddFontFromMemoryCompressedTTF(struct ImFontAtlas* atlas, CONST void* compressed_font_data, int compressed_font_size, float size_pixels, CONST struct ImFontConfig* font_cfg, CONST ImWchar* glyph_ranges);
|
||||
CIMGUI_API struct ImFont* ImFontAtlas_AddFontFromMemoryCompressedBase85TTF(struct ImFontAtlas* atlas, CONST char* compressed_font_data_base85, float size_pixels, CONST struct ImFontConfig* font_cfg, CONST ImWchar* glyph_ranges);
|
||||
CIMGUI_API void ImFontAtlas_ClearTexData(struct ImFontAtlas* atlas);
|
||||
CIMGUI_API void ImFontAtlas_Clear(struct ImFontAtlas* atlas);
|
||||
CIMGUI_API CONST ImWchar* ImFontAtlas_GetGlyphRangesDefault(struct ImFontAtlas* atlas);
|
||||
CIMGUI_API CONST ImWchar* ImFontAtlas_GetGlyphRangesKorean(struct ImFontAtlas* atlas);
|
||||
CIMGUI_API CONST ImWchar* ImFontAtlas_GetGlyphRangesJapanese(struct ImFontAtlas* atlas);
|
||||
CIMGUI_API CONST ImWchar* ImFontAtlas_GetGlyphRangesChinese(struct ImFontAtlas* atlas);
|
||||
CIMGUI_API CONST ImWchar* ImFontAtlas_GetGlyphRangesCyrillic(struct ImFontAtlas* atlas);
|
||||
CIMGUI_API CONST ImWchar* ImFontAtlas_GetGlyphRangesThai(struct ImFontAtlas* atlas);
|
||||
|
||||
CIMGUI_API void ImGuiIO_AddInputCharacter(unsigned short c);
|
||||
CIMGUI_API void ImGuiIO_AddInputCharactersUTF8(CONST char* utf8_chars);
|
||||
CIMGUI_API void ImGuiIO_ClearInputCharacters();
|
||||
|
||||
//ImDrawData
|
||||
CIMGUI_API void ImDrawData_DeIndexAllBuffers(struct ImDrawData* drawData);
|
||||
CIMGUI_API void ImDrawData_ScaleClipRects(struct ImDrawData* drawData, struct ImVec2 sc);
|
||||
|
||||
//ImDrawList
|
||||
CIMGUI_API int ImDrawList_GetVertexBufferSize(struct ImDrawList* list);
|
||||
CIMGUI_API struct ImDrawVert* ImDrawList_GetVertexPtr(struct ImDrawList* list, int n);
|
||||
CIMGUI_API int ImDrawList_GetIndexBufferSize(struct ImDrawList* list);
|
||||
CIMGUI_API ImDrawIdx* ImDrawList_GetIndexPtr(struct ImDrawList* list, int n);
|
||||
CIMGUI_API int ImDrawList_GetCmdSize(struct ImDrawList* list);
|
||||
CIMGUI_API struct ImDrawCmd* ImDrawList_GetCmdPtr(struct ImDrawList* list, int n);
|
||||
|
||||
CIMGUI_API void ImDrawList_Clear(struct ImDrawList* list);
|
||||
CIMGUI_API void ImDrawList_ClearFreeMemory(struct ImDrawList* list);
|
||||
CIMGUI_API void ImDrawList_PushClipRect(struct ImDrawList* list, struct ImVec2 clip_rect_min, struct ImVec2 clip_rect_max, bool intersect_with_current_clip_rect);
|
||||
CIMGUI_API void ImDrawList_PushClipRectFullScreen(struct ImDrawList* list);
|
||||
CIMGUI_API void ImDrawList_PopClipRect(struct ImDrawList* list);
|
||||
CIMGUI_API void ImDrawList_PushTextureID(struct ImDrawList* list, CONST ImTextureID texture_id);
|
||||
CIMGUI_API void ImDrawList_PopTextureID(struct ImDrawList* list);
|
||||
CIMGUI_API void ImDrawList_GetClipRectMin(struct ImVec2 *pOut, struct ImDrawList* list);
|
||||
CIMGUI_API void ImDrawList_GetClipRectMax(struct ImVec2 *pOut, struct ImDrawList* list);
|
||||
|
||||
// Primitives
|
||||
CIMGUI_API void ImDrawList_AddLine(struct ImDrawList* list, CONST struct ImVec2 a, CONST struct ImVec2 b, ImU32 col, float thickness);
|
||||
CIMGUI_API void ImDrawList_AddRect(struct ImDrawList* list, CONST struct ImVec2 a, CONST struct ImVec2 b, ImU32 col, float rounding, int rounding_corners_flags, float thickness);
|
||||
CIMGUI_API void ImDrawList_AddRectFilled(struct ImDrawList* list, CONST struct ImVec2 a, CONST struct ImVec2 b, ImU32 col, float rounding, int rounding_corners_flags);
|
||||
CIMGUI_API void ImDrawList_AddRectFilledMultiColor(struct ImDrawList* list, CONST struct ImVec2 a, CONST struct ImVec2 b, ImU32 col_upr_left, ImU32 col_upr_right, ImU32 col_bot_right, ImU32 col_bot_left);
|
||||
CIMGUI_API void ImDrawList_AddQuad(struct ImDrawList* list, CONST struct ImVec2 a, CONST struct ImVec2 b, CONST struct ImVec2 c, CONST struct ImVec2 d, ImU32 col, float thickness);
|
||||
CIMGUI_API void ImDrawList_AddQuadFilled(struct ImDrawList* list, CONST struct ImVec2 a, CONST struct ImVec2 b, CONST struct ImVec2 c, CONST struct ImVec2 d, ImU32 col);
|
||||
CIMGUI_API void ImDrawList_AddTriangle(struct ImDrawList* list, CONST struct ImVec2 a, CONST struct ImVec2 b, CONST struct ImVec2 c, ImU32 col, float thickness);
|
||||
CIMGUI_API void ImDrawList_AddTriangleFilled(struct ImDrawList* list, CONST struct ImVec2 a, CONST struct ImVec2 b, CONST struct ImVec2 c, ImU32 col);
|
||||
CIMGUI_API void ImDrawList_AddCircle(struct ImDrawList* list, CONST struct ImVec2 centre, float radius, ImU32 col, int num_segments, float thickness);
|
||||
CIMGUI_API void ImDrawList_AddCircleFilled(struct ImDrawList* list, CONST struct ImVec2 centre, float radius, ImU32 col, int num_segments);
|
||||
CIMGUI_API void ImDrawList_AddText(struct ImDrawList* list, CONST struct ImVec2 pos, ImU32 col, CONST char* text_begin, CONST char* text_end);
|
||||
CIMGUI_API void ImDrawList_AddTextExt(struct ImDrawList* list, CONST struct ImFont* font, float font_size, CONST struct ImVec2 pos, ImU32 col, CONST char* text_begin, CONST char* text_end, float wrap_width, CONST struct ImVec4* cpu_fine_clip_rect);
|
||||
CIMGUI_API void ImDrawList_AddImage(struct ImDrawList* list, ImTextureID user_texture_id, CONST struct ImVec2 a, CONST struct ImVec2 b, CONST struct ImVec2 uv_a, CONST struct ImVec2 uv_b, ImU32 col);
|
||||
CIMGUI_API void ImDrawList_AddImageQuad(struct ImDrawList* list, ImTextureID user_texture_id, CONST struct ImVec2 a, CONST struct ImVec2 b, CONST struct ImVec2 c, CONST struct ImVec2 d, CONST struct ImVec2 uv_a, CONST struct ImVec2 uv_b, CONST struct ImVec2 uv_c, CONST struct ImVec2 uv_d, ImU32 col);
|
||||
CIMGUI_API void ImDrawList_AddPolyline(struct ImDrawList* list, CONST struct ImVec2* points, CONST int num_points, ImU32 col, bool closed, float thickness, bool anti_aliased);
|
||||
CIMGUI_API void ImDrawList_AddConvexPolyFilled(struct ImDrawList* list, CONST struct ImVec2* points, CONST int num_points, ImU32 col, bool anti_aliased);
|
||||
CIMGUI_API void ImDrawList_AddBezierCurve(struct ImDrawList* list, CONST struct ImVec2 pos0, CONST struct ImVec2 cp0, CONST struct ImVec2 cp1, CONST struct ImVec2 pos1, ImU32 col, float thickness, int num_segments);
|
||||
|
||||
// Stateful path API, add points then finish with PathFill() or PathStroke()
|
||||
CIMGUI_API void ImDrawList_PathClear(struct ImDrawList* list);
|
||||
CIMGUI_API void ImDrawList_PathLineTo(struct ImDrawList* list, CONST struct ImVec2 pos);
|
||||
CIMGUI_API void ImDrawList_PathLineToMergeDuplicate(struct ImDrawList* list, CONST struct ImVec2 pos);
|
||||
CIMGUI_API void ImDrawList_PathFillConvex(struct ImDrawList* list, ImU32 col);
|
||||
CIMGUI_API void ImDrawList_PathStroke(struct ImDrawList* list, ImU32 col, bool closed, float thickness);
|
||||
CIMGUI_API void ImDrawList_PathArcTo(struct ImDrawList* list, CONST struct ImVec2 centre, float radius, float a_min, float a_max, int num_segments);
|
||||
CIMGUI_API void ImDrawList_PathArcToFast(struct ImDrawList* list, CONST struct ImVec2 centre, float radius, int a_min_of_12, int a_max_of_12); // Use precomputed angles for a 12 steps circle
|
||||
CIMGUI_API void ImDrawList_PathBezierCurveTo(struct ImDrawList* list, CONST struct ImVec2 p1, CONST struct ImVec2 p2, CONST struct ImVec2 p3, int num_segments);
|
||||
CIMGUI_API void ImDrawList_PathRect(struct ImDrawList* list, CONST struct ImVec2 rect_min, CONST struct ImVec2 rect_max, float rounding, int rounding_corners_flags);
|
||||
|
||||
// Channels
|
||||
CIMGUI_API void ImDrawList_ChannelsSplit(struct ImDrawList* list, int channels_count);
|
||||
CIMGUI_API void ImDrawList_ChannelsMerge(struct ImDrawList* list);
|
||||
CIMGUI_API void ImDrawList_ChannelsSetCurrent(struct ImDrawList* list, int channel_index);
|
||||
|
||||
// Advanced
|
||||
CIMGUI_API void ImDrawList_AddCallback(struct ImDrawList* list, ImDrawCallback callback, void* callback_data); // Your rendering function must check for 'UserCallback' in ImDrawCmd and call the function instead of rendering triangles.
|
||||
CIMGUI_API void ImDrawList_AddDrawCmd(struct ImDrawList* list); // This is useful if you need to forcefully create a new draw call (to allow for dependent rendering / blending). Otherwise primitives are merged into the same draw-call as much as possible
|
||||
|
||||
// Internal helpers
|
||||
CIMGUI_API void ImDrawList_PrimReserve(struct ImDrawList* list, int idx_count, int vtx_count);
|
||||
CIMGUI_API void ImDrawList_PrimRect(struct ImDrawList* list, CONST struct ImVec2 a, CONST struct ImVec2 b, ImU32 col);
|
||||
CIMGUI_API void ImDrawList_PrimRectUV(struct ImDrawList* list, CONST struct ImVec2 a, CONST struct ImVec2 b, CONST struct ImVec2 uv_a, CONST struct ImVec2 uv_b, ImU32 col);
|
||||
CIMGUI_API void ImDrawList_PrimQuadUV(struct ImDrawList* list,CONST struct ImVec2 a, CONST struct ImVec2 b, CONST struct ImVec2 c, CONST struct ImVec2 d, CONST struct ImVec2 uv_a, CONST struct ImVec2 uv_b, CONST struct ImVec2 uv_c, CONST struct ImVec2 uv_d, ImU32 col);
|
||||
CIMGUI_API void ImDrawList_PrimWriteVtx(struct ImDrawList* list, CONST struct ImVec2 pos, CONST struct ImVec2 uv, ImU32 col);
|
||||
CIMGUI_API void ImDrawList_PrimWriteIdx(struct ImDrawList* list, ImDrawIdx idx);
|
||||
CIMGUI_API void ImDrawList_PrimVtx(struct ImDrawList* list, CONST struct ImVec2 pos, CONST struct ImVec2 uv, ImU32 col);
|
||||
CIMGUI_API void ImDrawList_UpdateClipRect(struct ImDrawList* list);
|
||||
CIMGUI_API void ImDrawList_UpdateTextureID(struct ImDrawList* list);
|
||||
|
||||
// ImGuiListClipper
|
||||
CIMGUI_API void ImGuiListClipper_Begin(struct ImGuiListClipper* clipper, int count, float items_height);
|
||||
CIMGUI_API void ImGuiListClipper_End(struct ImGuiListClipper* clipper);
|
||||
CIMGUI_API bool ImGuiListClipper_Step(struct ImGuiListClipper* clipper);
|
||||
CIMGUI_API int ImGuiListClipper_GetDisplayStart(struct ImGuiListClipper* clipper);
|
||||
CIMGUI_API int ImGuiListClipper_GetDisplayEnd(struct ImGuiListClipper* clipper);
|
||||
|
||||
// ImGuiTextFilter
|
||||
CIMGUI_API void ImGuiTextFilter_Init(struct ImGuiTextFilter* filter, const char* default_filter);
|
||||
CIMGUI_API void ImGuiTextFilter_Clear(struct ImGuiTextFilter* filter);
|
||||
CIMGUI_API bool ImGuiTextFilter_Draw(struct ImGuiTextFilter* filter, const char* label, float width);
|
||||
CIMGUI_API bool ImGuiTextFilter_PassFilter(struct ImGuiTextFilter* filter, const char* text, const char* text_end);
|
||||
CIMGUI_API bool ImGuiTextFilter_IsActive(struct ImGuiTextFilter* filter);
|
||||
CIMGUI_API void ImGuiTextFilter_Build(struct ImGuiTextFilter* filter);
|
||||
|
||||
// ImGuiTextEditCallbackData
|
||||
CIMGUI_API void ImGuiTextEditCallbackData_DeleteChars(struct ImGuiTextEditCallbackData* data, int pos, int bytes_count);
|
||||
CIMGUI_API void ImGuiTextEditCallbackData_InsertChars(struct ImGuiTextEditCallbackData* data, int pos, const char* text, const char* text_end);
|
||||
CIMGUI_API bool ImGuiTextEditCallbackData_HasSelection(struct ImGuiTextEditCallbackData* data);
|
||||
|
||||
// ImGuiStorage
|
||||
CIMGUI_API void ImGuiStorage_Init(struct ImGuiStorage* storage);
|
||||
CIMGUI_API void ImGuiStorage_Clear(struct ImGuiStorage* storage);
|
||||
CIMGUI_API int ImGuiStorage_GetInt(struct ImGuiStorage* storage, ImGuiID key, int default_val);
|
||||
CIMGUI_API void ImGuiStorage_SetInt(struct ImGuiStorage* storage, ImGuiID key, int val);
|
||||
CIMGUI_API bool ImGuiStorage_GetBool(struct ImGuiStorage* storage, ImGuiID key, bool default_val);
|
||||
CIMGUI_API void ImGuiStorage_SetBool(struct ImGuiStorage* storage, ImGuiID key, bool val);
|
||||
CIMGUI_API float ImGuiStorage_GetFloat(struct ImGuiStorage* storage, ImGuiID key, float default_val);
|
||||
CIMGUI_API void ImGuiStorage_SetFloat(struct ImGuiStorage* storage, ImGuiID key, float val);
|
||||
CIMGUI_API void* ImGuiStorage_GetVoidPtr(struct ImGuiStorage* storage, ImGuiID key);
|
||||
CIMGUI_API void ImGuiStorage_SetVoidPtr(struct ImGuiStorage* storage, ImGuiID key, void* val);
|
||||
CIMGUI_API int* ImGuiStorage_GetIntRef(struct ImGuiStorage* storage, ImGuiID key, int default_val);
|
||||
CIMGUI_API bool* ImGuiStorage_GetBoolRef(struct ImGuiStorage* storage, ImGuiID key, bool default_val);
|
||||
CIMGUI_API float* ImGuiStorage_GetFloatRef(struct ImGuiStorage* storage, ImGuiID key, float default_val);
|
||||
CIMGUI_API void** ImGuiStorage_GetVoidPtrRef(struct ImGuiStorage* storage, ImGuiID key, void* default_val);
|
||||
CIMGUI_API void ImGuiStorage_SetAllInt(struct ImGuiStorage* storage, int val);
|
@@ -1,28 +0,0 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 2013
|
||||
VisualStudioVersion = 12.0.31101.0
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cimgui", "cimgui.vcxproj", "{EDE48926-0595-4488-B1A0-32CA71397271}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Win32 = Debug|Win32
|
||||
Debug|x64 = Debug|x64
|
||||
Release|Win32 = Release|Win32
|
||||
Release|x64 = Release|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{EDE48926-0595-4488-B1A0-32CA71397271}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{EDE48926-0595-4488-B1A0-32CA71397271}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{EDE48926-0595-4488-B1A0-32CA71397271}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{EDE48926-0595-4488-B1A0-32CA71397271}.Debug|x64.Build.0 = Debug|x64
|
||||
{EDE48926-0595-4488-B1A0-32CA71397271}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{EDE48926-0595-4488-B1A0-32CA71397271}.Release|Win32.Build.0 = Release|Win32
|
||||
{EDE48926-0595-4488-B1A0-32CA71397271}.Release|x64.ActiveCfg = Release|x64
|
||||
{EDE48926-0595-4488-B1A0-32CA71397271}.Release|x64.Build.0 = Release|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
@@ -1,161 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{EDE48926-0595-4488-B1A0-32CA71397271}</ProjectGuid>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
<RootNamespace>cimgui</RootNamespace>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;CIMGUI_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;CIMGUI_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;CIMGUI_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;CIMGUI_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\imgui\imgui.cpp" />
|
||||
<ClCompile Include="..\imgui\imgui_demo.cpp" />
|
||||
<ClCompile Include="..\imgui\imgui_draw.cpp" />
|
||||
<ClCompile Include="cimgui.cpp" />
|
||||
<ClCompile Include="drawList.cpp" />
|
||||
<ClCompile Include="fontAtlas.cpp" />
|
||||
<ClCompile Include="listClipper.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\imgui\imgui_internal.h" />
|
||||
<ClInclude Include="cimgui.h" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
@@ -1,48 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Header Files">
|
||||
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
||||
<Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Resource Files">
|
||||
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
||||
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="cimgui.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\imgui\imgui.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="fontAtlas.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="drawList.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\imgui\imgui_draw.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\imgui\imgui_demo.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="listClipper.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="cimgui.h">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\imgui\imgui_internal.h">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
</Project>
|
@@ -1,288 +0,0 @@
|
||||
|
||||
#include "../imgui/imgui.h"
|
||||
#include "cimgui.h"
|
||||
|
||||
CIMGUI_API int ImDrawList_GetVertexBufferSize(ImDrawList* list)
|
||||
{
|
||||
return list->VtxBuffer.size();
|
||||
}
|
||||
|
||||
CIMGUI_API ImDrawVert* ImDrawList_GetVertexPtr(ImDrawList* list, int n)
|
||||
{
|
||||
return &list->VtxBuffer[n];
|
||||
}
|
||||
|
||||
CIMGUI_API int ImDrawList_GetIndexBufferSize(ImDrawList* list)
|
||||
{
|
||||
return list->IdxBuffer.size();
|
||||
}
|
||||
|
||||
CIMGUI_API ImDrawIdx* ImDrawList_GetIndexPtr(ImDrawList* list, int n)
|
||||
{
|
||||
return &list->IdxBuffer[n];
|
||||
}
|
||||
|
||||
CIMGUI_API int ImDrawList_GetCmdSize(ImDrawList* list)
|
||||
{
|
||||
return list->CmdBuffer.size();
|
||||
}
|
||||
|
||||
CIMGUI_API ImDrawCmd* ImDrawList_GetCmdPtr(ImDrawList* list, int n)
|
||||
{
|
||||
return &list->CmdBuffer[n];
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawData_DeIndexAllBuffers(ImDrawData* drawData)
|
||||
{
|
||||
return drawData->DeIndexAllBuffers();
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawData_ScaleClipRects(ImDrawData* drawData, struct ImVec2 sc)
|
||||
{
|
||||
return drawData->ScaleClipRects(sc);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_Clear(ImDrawList* list)
|
||||
{
|
||||
return list->Clear();
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_ClearFreeMemory(ImDrawList* list)
|
||||
{
|
||||
return list->ClearFreeMemory();
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_PushClipRect(ImDrawList* list, struct ImVec2 clip_rect_min, struct ImVec2 clip_rect_max, bool intersect_with_current_clip_rect)
|
||||
{
|
||||
return list->PushClipRect(clip_rect_min,clip_rect_max,intersect_with_current_clip_rect);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_PushClipRectFullScreen(ImDrawList* list)
|
||||
{
|
||||
return list->PushClipRectFullScreen();
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_PopClipRect(ImDrawList* list)
|
||||
{
|
||||
return list->PopClipRect();
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_PushTextureID(ImDrawList* list, CONST ImTextureID texture_id)
|
||||
{
|
||||
return list->PushTextureID(texture_id);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_PopTextureID(ImDrawList* list)
|
||||
{
|
||||
return list->PopTextureID();
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_GetClipRectMin(ImVec2* pOut, ImDrawList* list)
|
||||
{
|
||||
*pOut = list->GetClipRectMin();
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_GetClipRectMax(ImVec2* pOut, ImDrawList* list)
|
||||
{
|
||||
*pOut = list->GetClipRectMax();
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_AddLine(ImDrawList* list, CONST struct ImVec2 a, CONST struct ImVec2 b, ImU32 col, float thickness)
|
||||
{
|
||||
return list->AddLine(a, b, col, thickness);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_AddRect(ImDrawList* list, CONST struct ImVec2 a, CONST struct ImVec2 b, ImU32 col, float rounding, int rounding_corners_flags, float thickness)
|
||||
{
|
||||
return list->AddRect(a, b, col, rounding, rounding_corners_flags, thickness);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_AddRectFilled(ImDrawList* list, CONST struct ImVec2 a, CONST struct ImVec2 b, ImU32 col, float rounding, int rounding_corners_flags)
|
||||
{
|
||||
return list->AddRectFilled(a, b, col, rounding, rounding_corners_flags);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_AddRectFilledMultiColor(ImDrawList* list, CONST struct ImVec2 a, CONST struct ImVec2 b, ImU32 col_upr_left, ImU32 col_upr_right, ImU32 col_bot_right, ImU32 col_bot_left)
|
||||
{
|
||||
return list->AddRectFilledMultiColor(a, b, col_upr_left, col_upr_right, col_bot_right, col_bot_left);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_AddQuad(ImDrawList* list, CONST struct ImVec2 a, CONST struct ImVec2 b, CONST struct ImVec2 c, CONST struct ImVec2 d, ImU32 col, float thickness)
|
||||
{
|
||||
return list->AddQuad(a, b, c, d, col, thickness);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_AddQuadFilled(ImDrawList* list, CONST struct ImVec2 a, CONST struct ImVec2 b, CONST struct ImVec2 c, CONST struct ImVec2 d, ImU32 col)
|
||||
{
|
||||
return list->AddQuadFilled(a, b, c, d, col);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_AddTriangle(ImDrawList* list, CONST struct ImVec2 a, CONST struct ImVec2 b, CONST struct ImVec2 c, ImU32 col, float thickness)
|
||||
{
|
||||
return list->AddTriangle(a,b,c,col,thickness);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_AddTriangleFilled(ImDrawList* list, CONST struct ImVec2 a, CONST struct ImVec2 b, CONST struct ImVec2 c, ImU32 col)
|
||||
{
|
||||
return list->AddTriangleFilled(a, b, c, col);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_AddCircle(ImDrawList* list, CONST struct ImVec2 centre, float radius, ImU32 col, int num_segments, float thickness)
|
||||
{
|
||||
return list->AddCircle(centre, radius, col, num_segments, thickness);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_AddCircleFilled(ImDrawList* list, CONST struct ImVec2 centre, float radius, ImU32 col, int num_segments)
|
||||
{
|
||||
return list->AddCircleFilled(centre, radius, col, num_segments);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_AddText(ImDrawList* list, CONST struct ImVec2 pos, ImU32 col, CONST char* text_begin, CONST char* text_end)
|
||||
{
|
||||
return list->AddText(pos, col, text_begin, text_end);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_AddTextExt(ImDrawList* list, CONST ImFont* font, float font_size, CONST struct ImVec2 pos, ImU32 col, CONST char* text_begin, CONST char* text_end, float wrap_width, CONST ImVec4* cpu_fine_clip_rect)
|
||||
{
|
||||
return list->AddText(font, font_size, pos, col, text_begin, text_end, wrap_width, cpu_fine_clip_rect);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_AddImage(ImDrawList* list, ImTextureID user_texture_id, CONST struct ImVec2 a, CONST struct ImVec2 b, CONST struct ImVec2 uv_a, CONST struct ImVec2 uv_b, ImU32 col)
|
||||
{
|
||||
return list->AddImage(user_texture_id, a, b, uv_a, uv_b, col);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_AddImageQuad(struct ImDrawList* list, ImTextureID user_texture_id, CONST struct ImVec2 a, CONST ImVec2 b, CONST ImVec2 c, CONST ImVec2 d, CONST ImVec2 uv_a, CONST ImVec2 uv_b, CONST ImVec2 uv_c, CONST ImVec2 uv_d, ImU32 col)
|
||||
{
|
||||
return list->AddImageQuad(user_texture_id, a, b, c, d, uv_a, uv_b, uv_c, uv_d, col);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_AddPolyline(ImDrawList* list, CONST ImVec2* points, CONST int num_points, ImU32 col, bool closed, float thickness, bool anti_aliased)
|
||||
{
|
||||
return list->AddPolyline(points, num_points, col, closed, thickness, anti_aliased);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_AddConvexPolyFilled(ImDrawList* list, CONST ImVec2* points, CONST int num_points, ImU32 col, bool anti_aliased)
|
||||
{
|
||||
return list->AddConvexPolyFilled(points, num_points, col, anti_aliased);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_AddBezierCurve(ImDrawList* list, CONST struct ImVec2 pos0, CONST struct ImVec2 cp0, CONST struct ImVec2 cp1, CONST struct ImVec2 pos1, ImU32 col, float thickness, int num_segments)
|
||||
{
|
||||
return list->AddBezierCurve(pos0, cp0, cp1, pos1, col, thickness, num_segments);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_PathClear(ImDrawList* list)
|
||||
{
|
||||
return list->PathClear();
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_PathLineTo(ImDrawList* list, CONST struct ImVec2 pos)
|
||||
{
|
||||
return list->PathLineTo(pos);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_PathLineToMergeDuplicate(ImDrawList* list, CONST struct ImVec2 pos)
|
||||
{
|
||||
return list->PathLineToMergeDuplicate(pos);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_PathFillConvex(ImDrawList* list, ImU32 col)
|
||||
{
|
||||
return list->PathFillConvex(col);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_PathStroke(ImDrawList* list, ImU32 col, bool closed, float thickness)
|
||||
{
|
||||
return list->PathStroke(col, closed, thickness);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_PathArcTo(ImDrawList* list, CONST struct ImVec2 centre, float radius, float a_min, float a_max, int num_segments)
|
||||
{
|
||||
return list->PathArcTo(centre, radius, a_min, a_max, num_segments);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_PathArcToFast(ImDrawList* list, CONST struct ImVec2 centre, float radius, int a_min_of_12, int a_max_of_12)
|
||||
{
|
||||
return list->PathArcToFast(centre, radius, a_min_of_12, a_max_of_12);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_PathBezierCurveTo(ImDrawList* list, CONST struct ImVec2 p1, CONST struct ImVec2 p2, CONST struct ImVec2 p3, int num_segments)
|
||||
{
|
||||
return list->PathBezierCurveTo(p1, p2, p3, num_segments);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_PathRect(ImDrawList* list, CONST struct ImVec2 rect_min, CONST struct ImVec2 rect_max, float rounding, int rounding_corners_flags)
|
||||
{
|
||||
return list->PathRect(rect_min, rect_max, rounding, rounding_corners_flags);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_ChannelsSplit(ImDrawList* list, int channels_count)
|
||||
{
|
||||
return list->ChannelsSplit(channels_count);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_ChannelsMerge(ImDrawList* list)
|
||||
{
|
||||
return list->ChannelsMerge();
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_ChannelsSetCurrent(ImDrawList* list, int channel_index)
|
||||
{
|
||||
return list->ChannelsSetCurrent(channel_index);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_AddCallback(ImDrawList* list, ImDrawCallback callback, void* callback_data)
|
||||
{
|
||||
return list->AddCallback(callback, callback_data);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_AddDrawCmd(ImDrawList* list)
|
||||
{
|
||||
return list->AddDrawCmd();
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_PrimReserve(ImDrawList* list, int idx_count, int vtx_count)
|
||||
{
|
||||
return list->PrimReserve(idx_count, vtx_count);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_PrimRect(ImDrawList* list, CONST struct ImVec2 a, CONST struct ImVec2 b, ImU32 col)
|
||||
{
|
||||
return list->PrimRect(a, b, col);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_PrimRectUV(ImDrawList* list, CONST struct ImVec2 a, CONST struct ImVec2 b, CONST struct ImVec2 uv_a, CONST struct ImVec2 uv_b, ImU32 col)
|
||||
{
|
||||
return list->PrimRectUV(a, b, uv_a, uv_b, col);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_PrimQuadUV(ImDrawList* list,CONST struct ImVec2 a, CONST struct ImVec2 b, CONST struct ImVec2 c, CONST struct ImVec2 d, CONST struct ImVec2 uv_a, CONST struct ImVec2 uv_b, CONST struct ImVec2 uv_c, CONST struct ImVec2 uv_d, ImU32 col)
|
||||
{
|
||||
return list->PrimQuadUV(a,b,c,d,uv_a,uv_b,uv_c,uv_d,col);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_PrimVtx(ImDrawList* list, CONST struct ImVec2 pos, CONST struct ImVec2 uv, ImU32 col)
|
||||
{
|
||||
return list->PrimVtx(pos, uv, col);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_PrimWriteVtx(ImDrawList* list, CONST struct ImVec2 pos, CONST struct ImVec2 uv, ImU32 col)
|
||||
{
|
||||
return list->PrimWriteVtx(pos, uv, col);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_PrimWriteIdx(ImDrawList* list, ImDrawIdx idx)
|
||||
{
|
||||
return list->PrimWriteIdx(idx);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_UpdateClipRect(ImDrawList* list)
|
||||
{
|
||||
return list->UpdateClipRect();
|
||||
}
|
||||
|
||||
CIMGUI_API void ImDrawList_UpdateTextureID(ImDrawList* list)
|
||||
{
|
||||
return list->UpdateTextureID();
|
||||
}
|
@@ -1,93 +0,0 @@
|
||||
|
||||
#include "../imgui/imgui.h"
|
||||
#include "cimgui.h"
|
||||
|
||||
CIMGUI_API void ImFontConfig_DefaultConstructor(ImFontConfig* config)
|
||||
{
|
||||
*config = ImFontConfig();
|
||||
}
|
||||
|
||||
CIMGUI_API void ImFontAtlas_GetTexDataAsRGBA32(ImFontAtlas* atlas, unsigned char** out_pixels, int* out_width, int* out_height, int* out_bytes_per_pixel)
|
||||
{
|
||||
atlas->GetTexDataAsRGBA32(out_pixels, out_width, out_height, out_bytes_per_pixel);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImFontAtlas_GetTexDataAsAlpha8(ImFontAtlas* atlas, unsigned char** out_pixels, int* out_width, int* out_height, int* out_bytes_per_pixel)
|
||||
{
|
||||
atlas->GetTexDataAsAlpha8(out_pixels, out_width, out_height, out_bytes_per_pixel);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImFontAtlas_SetTexID(ImFontAtlas* atlas, ImTextureID id)
|
||||
{
|
||||
atlas->TexID = id;
|
||||
}
|
||||
|
||||
CIMGUI_API ImFont* ImFontAtlas_AddFont(ImFontAtlas* atlas, CONST ImFontConfig* font_cfg)
|
||||
{
|
||||
return atlas->AddFont(font_cfg);
|
||||
}
|
||||
|
||||
CIMGUI_API ImFont* ImFontAtlas_AddFontDefault(ImFontAtlas* atlas, CONST ImFontConfig* font_cfg)
|
||||
{
|
||||
return atlas->AddFontDefault(font_cfg);
|
||||
}
|
||||
|
||||
CIMGUI_API ImFont* ImFontAtlas_AddFontFromFileTTF(ImFontAtlas* atlas,CONST char* filename, float size_pixels, CONST ImFontConfig* font_cfg, CONST ImWchar* glyph_ranges)
|
||||
{
|
||||
return atlas->AddFontFromFileTTF(filename, size_pixels, font_cfg, glyph_ranges);
|
||||
}
|
||||
|
||||
CIMGUI_API ImFont* ImFontAtlas_AddFontFromMemoryTTF(ImFontAtlas* atlas, void* font_data, int font_size, float size_pixels, CONST ImFontConfig* font_cfg, CONST ImWchar* glyph_ranges)
|
||||
{
|
||||
return atlas->AddFontFromMemoryTTF(font_data, font_size, size_pixels, font_cfg, glyph_ranges);
|
||||
}
|
||||
|
||||
CIMGUI_API ImFont* ImFontAtlas_AddFontFromMemoryCompressedTTF(ImFontAtlas* atlas, CONST void* compressed_font_data, int compressed_font_size, float size_pixels, CONST ImFontConfig* font_cfg, CONST ImWchar* glyph_ranges)
|
||||
{
|
||||
return atlas->AddFontFromMemoryCompressedTTF(compressed_font_data, compressed_font_size, size_pixels, font_cfg, glyph_ranges);
|
||||
}
|
||||
|
||||
CIMGUI_API ImFont* ImFontAtlas_AddFontFromMemoryCompressedBase85TTF(ImFontAtlas* atlas, CONST char* compressed_font_data_base85, float size_pixels, CONST ImFontConfig* font_cfg, CONST ImWchar* glyph_ranges)
|
||||
{
|
||||
return atlas->AddFontFromMemoryCompressedBase85TTF(compressed_font_data_base85, size_pixels, font_cfg, glyph_ranges);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImFontAtlas_ClearTexData(ImFontAtlas* atlas)
|
||||
{
|
||||
return atlas->ClearTexData();
|
||||
}
|
||||
|
||||
CIMGUI_API void ImFontAtlas_Clear(ImFontAtlas* atlas)
|
||||
{
|
||||
return atlas->Clear();
|
||||
}
|
||||
|
||||
CIMGUI_API CONST ImWchar* ImFontAtlas_GetGlyphRangesDefault(struct ImFontAtlas* atlas)
|
||||
{
|
||||
return atlas->GetGlyphRangesDefault();
|
||||
}
|
||||
|
||||
CIMGUI_API CONST ImWchar* ImFontAtlas_GetGlyphRangesKorean(struct ImFontAtlas* atlas)
|
||||
{
|
||||
return atlas->GetGlyphRangesKorean();
|
||||
}
|
||||
|
||||
CIMGUI_API CONST ImWchar* ImFontAtlas_GetGlyphRangesJapanese(struct ImFontAtlas* atlas)
|
||||
{
|
||||
return atlas->GetGlyphRangesJapanese();
|
||||
}
|
||||
|
||||
CIMGUI_API CONST ImWchar* ImFontAtlas_GetGlyphRangesChinese(struct ImFontAtlas* atlas)
|
||||
{
|
||||
return atlas->GetGlyphRangesChinese();
|
||||
}
|
||||
|
||||
CIMGUI_API CONST ImWchar* ImFontAtlas_GetGlyphRangesCyrillic(struct ImFontAtlas* atlas)
|
||||
{
|
||||
return atlas->GetGlyphRangesCyrillic();
|
||||
}
|
||||
|
||||
CIMGUI_API CONST ImWchar* ImFontAtlas_GetGlyphRangesThai(struct ImFontAtlas* atlas)
|
||||
{
|
||||
return atlas->GetGlyphRangesThai();
|
||||
}
|
@@ -1,27 +0,0 @@
|
||||
#include "../imgui/imgui.h"
|
||||
#include "cimgui.h"
|
||||
|
||||
CIMGUI_API void ImGuiListClipper_Begin(ImGuiListClipper* clipper, int count, float items_height)
|
||||
{
|
||||
clipper->Begin(count, items_height);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImGuiListClipper_End(ImGuiListClipper* clipper)
|
||||
{
|
||||
clipper->End();
|
||||
}
|
||||
|
||||
CIMGUI_API bool ImGuiListClipper_Step(ImGuiListClipper* clipper)
|
||||
{
|
||||
return clipper->Step();
|
||||
}
|
||||
|
||||
CIMGUI_API int ImGuiListClipper_GetDisplayStart(ImGuiListClipper* clipper)
|
||||
{
|
||||
return clipper->DisplayStart;
|
||||
}
|
||||
|
||||
CIMGUI_API int ImGuiListClipper_GetDisplayEnd(ImGuiListClipper* clipper)
|
||||
{
|
||||
return clipper->DisplayEnd;
|
||||
}
|
@@ -1,2 +0,0 @@
|
||||
|
||||
#include "cimgui.h"
|
117
generator/cimgui_template.cpp
Normal file
117
generator/cimgui_template.cpp
Normal file
@@ -0,0 +1,117 @@
|
||||
|
||||
#include "./imgui/imgui.h"
|
||||
#ifdef CIMGUI_FREETYPE
|
||||
#include "./imgui/misc/freetype/imgui_freetype.h"
|
||||
#endif
|
||||
#include "./imgui/imgui_internal.h"
|
||||
#include "cimgui.h"
|
||||
|
||||
|
||||
|
||||
#include "auto_funcs.cpp"
|
||||
|
||||
|
||||
/////////////////////////////manual written functions
|
||||
CIMGUI_API void igLogText(CONST char *fmt, ...)
|
||||
{
|
||||
char buffer[256];
|
||||
va_list args;
|
||||
va_start(args, fmt);
|
||||
vsnprintf(buffer, 256, fmt, args);
|
||||
va_end(args);
|
||||
|
||||
ImGui::LogText("%s", buffer);
|
||||
}
|
||||
CIMGUI_API void ImGuiTextBuffer_appendf(struct ImGuiTextBuffer *buffer, const char *fmt, ...)
|
||||
{
|
||||
va_list args;
|
||||
va_start(args, fmt);
|
||||
buffer->appendfv(fmt, args);
|
||||
va_end(args);
|
||||
}
|
||||
|
||||
CIMGUI_API float igGET_FLT_MAX()
|
||||
{
|
||||
return FLT_MAX;
|
||||
}
|
||||
|
||||
|
||||
CIMGUI_API ImVector_ImWchar* ImVector_ImWchar_create()
|
||||
{
|
||||
return IM_NEW(ImVector<ImWchar>) ();
|
||||
}
|
||||
|
||||
CIMGUI_API void ImVector_ImWchar_destroy(ImVector_ImWchar* self)
|
||||
{
|
||||
IM_DELETE(self);
|
||||
}
|
||||
|
||||
CIMGUI_API void ImVector_ImWchar_Init(ImVector_ImWchar* p)
|
||||
{
|
||||
IM_PLACEMENT_NEW(p) ImVector<ImWchar>();
|
||||
}
|
||||
CIMGUI_API void ImVector_ImWchar_UnInit(ImVector_ImWchar* p)
|
||||
{
|
||||
p->~ImVector<ImWchar>();
|
||||
}
|
||||
|
||||
|
||||
#ifdef IMGUI_HAS_DOCK
|
||||
|
||||
// NOTE: Some function pointers in the ImGuiPlatformIO structure are not C-compatible because of their
|
||||
// use of a complex return type. To work around this, we store a custom CimguiStorage object inside
|
||||
// ImGuiIO::BackendLanguageUserData, which contains C-compatible function pointer variants for these
|
||||
// functions. When a user function pointer is provided, we hook up the underlying ImGuiPlatformIO
|
||||
// function pointer to a thunk which accesses the user function pointer through CimguiStorage.
|
||||
|
||||
struct CimguiStorage
|
||||
{
|
||||
void(*Platform_GetWindowPos)(ImGuiViewport* vp, ImVec2* out_pos);
|
||||
void(*Platform_GetWindowSize)(ImGuiViewport* vp, ImVec2* out_pos);
|
||||
};
|
||||
|
||||
// Gets a reference to the CimguiStorage object stored in the current ImGui context's BackendLanguageUserData.
|
||||
CimguiStorage& GetCimguiStorage()
|
||||
{
|
||||
ImGuiIO& io = ImGui::GetIO();
|
||||
if (io.BackendLanguageUserData == NULL)
|
||||
{
|
||||
io.BackendLanguageUserData = new CimguiStorage();
|
||||
}
|
||||
|
||||
return *(CimguiStorage*)io.BackendLanguageUserData;
|
||||
}
|
||||
|
||||
// Thunk satisfying the signature of ImGuiPlatformIO::Platform_GetWindowPos.
|
||||
ImVec2 Platform_GetWindowPos_hook(ImGuiViewport* vp)
|
||||
{
|
||||
ImVec2 pos;
|
||||
GetCimguiStorage().Platform_GetWindowPos(vp, &pos);
|
||||
return pos;
|
||||
};
|
||||
|
||||
// Fully C-compatible function pointer setter for ImGuiPlatformIO::Platform_GetWindowPos.
|
||||
CIMGUI_API void ImGuiPlatformIO_Set_Platform_GetWindowPos(ImGuiPlatformIO* platform_io, void(*user_callback)(ImGuiViewport* vp, ImVec2* out_pos))
|
||||
{
|
||||
CimguiStorage& storage = GetCimguiStorage();
|
||||
storage.Platform_GetWindowPos = user_callback;
|
||||
platform_io->Platform_GetWindowPos = &Platform_GetWindowPos_hook;
|
||||
}
|
||||
|
||||
// Thunk satisfying the signature of ImGuiPlatformIO::Platform_GetWindowSize.
|
||||
ImVec2 Platform_GetWindowSize_hook(ImGuiViewport* vp)
|
||||
{
|
||||
ImVec2 size;
|
||||
GetCimguiStorage().Platform_GetWindowSize(vp, &size);
|
||||
return size;
|
||||
};
|
||||
|
||||
// Fully C-compatible function pointer setter for ImGuiPlatformIO::Platform_GetWindowSize.
|
||||
CIMGUI_API void ImGuiPlatformIO_Set_Platform_GetWindowSize(ImGuiPlatformIO* platform_io, void(*user_callback)(ImGuiViewport* vp, ImVec2* out_size))
|
||||
{
|
||||
CimguiStorage& storage = GetCimguiStorage();
|
||||
storage.Platform_GetWindowSize = user_callback;
|
||||
platform_io->Platform_GetWindowSize = &Platform_GetWindowSize_hook;
|
||||
}
|
||||
|
||||
#endif
|
70
generator/cimgui_template.h
Normal file
70
generator/cimgui_template.h
Normal file
@@ -0,0 +1,70 @@
|
||||
#ifndef CIMGUI_INCLUDED
|
||||
#define CIMGUI_INCLUDED
|
||||
#include <stdio.h>
|
||||
#include <stdint.h>
|
||||
#if defined _WIN32 || defined __CYGWIN__
|
||||
#ifdef CIMGUI_NO_EXPORT
|
||||
#define API
|
||||
#else
|
||||
#define API __declspec(dllexport)
|
||||
#endif
|
||||
#ifndef __GNUC__
|
||||
#define snprintf sprintf_s
|
||||
#endif
|
||||
#else
|
||||
#ifdef __GNUC__
|
||||
#define API __attribute__((__visibility__("default")))
|
||||
#else
|
||||
#define API
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if defined __cplusplus
|
||||
#define EXTERN extern "C"
|
||||
#else
|
||||
#include <stdarg.h>
|
||||
#include <stdbool.h>
|
||||
#define EXTERN extern
|
||||
#endif
|
||||
|
||||
#define CIMGUI_API EXTERN API
|
||||
#define CONST const
|
||||
|
||||
|
||||
#ifdef _MSC_VER
|
||||
typedef unsigned __int64 ImU64;
|
||||
#else
|
||||
//typedef unsigned long long ImU64;
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef CIMGUI_DEFINE_ENUMS_AND_STRUCTS
|
||||
#include "imgui_structs.h"
|
||||
#else
|
||||
struct GLFWwindow;
|
||||
struct SDL_Window;
|
||||
typedef union SDL_Event SDL_Event;
|
||||
#endif // CIMGUI_DEFINE_ENUMS_AND_STRUCTS
|
||||
|
||||
#include "auto_funcs.h"
|
||||
|
||||
/////////////////////////hand written functions
|
||||
//no LogTextV
|
||||
CIMGUI_API void igLogText(CONST char *fmt, ...);
|
||||
//no appendfV
|
||||
CIMGUI_API void ImGuiTextBuffer_appendf(struct ImGuiTextBuffer *buffer, const char *fmt, ...);
|
||||
//for getting FLT_MAX in bindings
|
||||
CIMGUI_API float igGET_FLT_MAX();
|
||||
|
||||
|
||||
CIMGUI_API ImVector_ImWchar* ImVector_ImWchar_create();
|
||||
CIMGUI_API void ImVector_ImWchar_destroy(ImVector_ImWchar* self);
|
||||
CIMGUI_API void ImVector_ImWchar_Init(ImVector_ImWchar* p);
|
||||
CIMGUI_API void ImVector_ImWchar_UnInit(ImVector_ImWchar* p);
|
||||
|
||||
|
||||
#endif //CIMGUI_INCLUDED
|
||||
|
||||
|
||||
|
||||
|
3
generator/config_generator.lua
Normal file
3
generator/config_generator.lua
Normal file
@@ -0,0 +1,3 @@
|
||||
return {
|
||||
vulkan = {[[C:\VulkanSDK\1.1.130.0\Include]]}
|
||||
}
|
1934
generator/cpp2ffi.lua
Normal file
1934
generator/cpp2ffi.lua
Normal file
File diff suppressed because it is too large
Load Diff
25
generator/generator.bat
Normal file
25
generator/generator.bat
Normal file
@@ -0,0 +1,25 @@
|
||||
:: this script must be executed in this directory
|
||||
:: all the output goes to generator/output folder
|
||||
:: .cpp and .h files:
|
||||
:: cimgui.h and cimgui.cpp with gcc preprocess
|
||||
:: cimgui_nopreprocess.h and cimgui_nopreprocess.cpp generated without preprocess
|
||||
:: cimgui_impl.h with implementation function cdefs
|
||||
:: lua and json files:
|
||||
:: definitions.lua for function definitions
|
||||
:: structs_and_enums.lua with struct and enum information-definitions
|
||||
:: impl_definitions.lua for implementation function definitions
|
||||
|
||||
:: set your PATH if necessary for LuaJIT or Lua5.1 or luajit with: (for example)
|
||||
set PATH=%PATH%;C:\anima;C:\mingws\i686-7.2.0-release-posix-dwarf-rt_v5-rev1\mingw32\bin;
|
||||
:: set PATH=%PATH%;C:\luaGL;C:\i686-7.2.0-release-posix-dwarf-rt_v5-rev1\mingw32\bin;
|
||||
:: 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
|
||||
:: examples: "" "internal" "internal freetype"
|
||||
:: arg[3..n] name of implementations to generate
|
||||
luajit ./generator.lua gcc "internal" glfw opengl3 opengl2 sdl
|
||||
|
||||
::leave console open
|
||||
cmd /k
|
||||
|
465
generator/generator.lua
Normal file
465
generator/generator.lua
Normal file
@@ -0,0 +1,465 @@
|
||||
--------------------------------------------------------------------------
|
||||
--script for auto_funcs.h and auto_funcs.cpp generation
|
||||
--expects LuaJIT
|
||||
--------------------------------------------------------------------------
|
||||
assert(_VERSION=='Lua 5.1',"Must use LuaJIT")
|
||||
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 CPRE,CTEST
|
||||
if COMPILER == "gcc" or COMPILER == "clang" then
|
||||
CPRE = COMPILER..[[ -E -DIMGUI_DISABLE_OBSOLETE_FUNCTIONS -DIMGUI_API="" -DIMGUI_IMPL_API="" ]]
|
||||
CTEST = COMPILER.." --version"
|
||||
elseif COMPILER == "cl" then
|
||||
CPRE = COMPILER..[[ /E /DIMGUI_DISABLE_OBSOLETE_FUNCTIONS /DIMGUI_API="" /DIMGUI_IMPL_API="" ]]
|
||||
CTEST = COMPILER
|
||||
else
|
||||
print("Working without compiler ")
|
||||
error("cant work with "..COMPILER.." compiler")
|
||||
end
|
||||
--test compiler present
|
||||
local HAVE_COMPILER = false
|
||||
|
||||
local pipe,err = io.popen(CTEST,"r")
|
||||
if pipe then
|
||||
local str = pipe:read"*a"
|
||||
print(str)
|
||||
pipe:close()
|
||||
if str=="" then
|
||||
HAVE_COMPILER = false
|
||||
else
|
||||
HAVE_COMPILER = true
|
||||
end
|
||||
else
|
||||
HAVE_COMPILER = false
|
||||
print(err)
|
||||
end
|
||||
assert(HAVE_COMPILER,"gcc, clang or cl needed to run script")
|
||||
|
||||
|
||||
print("HAVE_COMPILER",HAVE_COMPILER)
|
||||
print("INTERNAL_GENERATION",INTERNAL_GENERATION)
|
||||
print("FREETYPE_GENERATION",FREETYPE_GENERATION)
|
||||
--get implementations
|
||||
local implementations = {}
|
||||
for i=3,#script_args do table.insert(implementations,script_args[i]) end
|
||||
|
||||
--------------------------------------------------------------------------
|
||||
--this table has the functions to be skipped in generation
|
||||
--------------------------------------------------------------------------
|
||||
local cimgui_manuals = {
|
||||
igLogText = true,
|
||||
ImGuiTextBuffer_appendf = true,
|
||||
--igColorConvertRGBtoHSV = true,
|
||||
--igColorConvertHSVtoRGB = true
|
||||
}
|
||||
--------------------------------------------------------------------------
|
||||
--this table is a dictionary to force a naming of function overloading (instead of algorythmic generated)
|
||||
--first level is cimguiname without postfix, second level is the signature of the function, value is the
|
||||
--desired name
|
||||
---------------------------------------------------------------------------
|
||||
local cimgui_overloads = {
|
||||
--igPushID = {
|
||||
--["(const char*)"] = "igPushIDStr",
|
||||
--["(const char*,const char*)"] = "igPushIDRange",
|
||||
--["(const void*)"] = "igPushIDPtr",
|
||||
--["(int)"] = "igPushIDInt"
|
||||
--},
|
||||
}
|
||||
|
||||
--------------------------header definitions
|
||||
local cimgui_header =
|
||||
[[//This file is automatically generated by generator.lua from https://github.com/cimgui/cimgui
|
||||
//based on imgui.h file version XXX from Dear ImGui https://github.com/ocornut/imgui
|
||||
]]
|
||||
local gdefines = {} --for FLT_MAX and others
|
||||
--------------------------------------------------------------------------
|
||||
--helper functions
|
||||
--------------------------------functions for C generation
|
||||
--load parser module
|
||||
local cpp2ffi = require"cpp2ffi"
|
||||
local read_data = cpp2ffi.read_data
|
||||
local save_data = cpp2ffi.save_data
|
||||
local copyfile = cpp2ffi.copyfile
|
||||
local serializeTableF = cpp2ffi.serializeTableF
|
||||
|
||||
local function func_header_impl_generate(FP)
|
||||
|
||||
local outtab = {}
|
||||
|
||||
for _,t in ipairs(FP.funcdefs) do
|
||||
if t.cimguiname then
|
||||
local cimf = FP.defsT[t.cimguiname]
|
||||
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")
|
||||
elseif def.destructor then
|
||||
--table.insert(outtab,"CIMGUI_API void "..def.ov_cimguiname..def.args..";"..addcoment.."\n")
|
||||
else
|
||||
|
||||
if def.stname == "" then --ImGui namespace or top level
|
||||
table.insert(outtab,"CIMGUI_API".." "..def.ret.." "..def.ov_cimguiname..def.args..";"..addcoment.."\n")
|
||||
else
|
||||
cpp2ffi.prtable(def)
|
||||
error("class function in implementations")
|
||||
end
|
||||
end
|
||||
else --not cimguiname
|
||||
table.insert(outtab,t.comment:gsub("%%","%%%%").."\n")-- %% substitution for gsub
|
||||
end
|
||||
end
|
||||
local cfuncsstr = table.concat(outtab)
|
||||
cfuncsstr = cfuncsstr:gsub("\n+","\n") --several empty lines to one empty line
|
||||
return cfuncsstr
|
||||
end
|
||||
|
||||
local func_header_generate = cpp2ffi.func_header_generate
|
||||
local func_implementation = cpp2ffi.func_implementation
|
||||
|
||||
-------------------functions for getting and setting defines
|
||||
local function get_defines(t)
|
||||
if COMPILER == "cl" then print"can't get defines with cl compiler"; return {} end
|
||||
local pipe,err = io.popen(COMPILER..[[ -E -dM -DIMGUI_DISABLE_OBSOLETE_FUNCTIONS -DIMGUI_API="" -DIMGUI_IMPL_API="" ../imgui/imgui.h]],"r")
|
||||
local defines = {}
|
||||
while true do
|
||||
local line = pipe:read"*l"
|
||||
if not line then break end
|
||||
local key,value = line:match([[#define%s+(%S+)%s+(.+)]])
|
||||
if not key or not value then
|
||||
--print(line)
|
||||
else
|
||||
defines[key]=value
|
||||
end
|
||||
end
|
||||
pipe:close()
|
||||
--require"anima.utils"
|
||||
--prtable(defines)
|
||||
--FLT_MAX
|
||||
local ret = {}
|
||||
for i,v in ipairs(t) do
|
||||
local aa = defines[v]
|
||||
while true do
|
||||
local tmp = defines[aa]
|
||||
if not tmp then
|
||||
break
|
||||
else
|
||||
aa = tmp
|
||||
end
|
||||
end
|
||||
ret[v] = aa
|
||||
end
|
||||
return ret
|
||||
end
|
||||
--subtitution of FLT_MAX value for FLT_MAX
|
||||
local function set_defines(fdefs)
|
||||
for k,defT in pairs(fdefs) do
|
||||
for i,def in ipairs(defT) do
|
||||
for name,default in pairs(def.defaults) do
|
||||
if default == gdefines.FLT_MAX then
|
||||
def.defaults[name] = "FLT_MAX"
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
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
|
||||
FP.defsBystruct = structs
|
||||
end
|
||||
|
||||
-- function for repairing funcdefs default values
|
||||
local function repair_defaults(defsT,str_and_enu)
|
||||
local function deleteOuterPars(def)
|
||||
local w = def:match("^%b()$")
|
||||
if w then
|
||||
w = w:gsub("^%((.+)%)$","%1")
|
||||
return w
|
||||
else
|
||||
return def
|
||||
end
|
||||
end
|
||||
local function CleanImU32(def)
|
||||
def = def:gsub("%(ImU32%)","")
|
||||
--quitar () de numeros
|
||||
def = def:gsub("%((%d+)%)","%1")
|
||||
def = deleteOuterPars(def)
|
||||
local bb=cpp2ffi.strsplit(def,"|")
|
||||
for i=1,#bb do
|
||||
local val = deleteOuterPars(bb[i])
|
||||
if val:match"<<" then
|
||||
local v1,v2 = val:match("(%d+)%s*<<%s*(%d+)")
|
||||
val = v1*2^v2
|
||||
bb[i] = val
|
||||
end
|
||||
assert(type(bb[i])=="number")
|
||||
end
|
||||
local res = 0
|
||||
for i=1,#bb do res = res + bb[i] end
|
||||
return res
|
||||
end
|
||||
for k,defT in pairs(defsT) do
|
||||
for i,def in ipairs(defT) do
|
||||
for k,v in pairs(def.defaults) do
|
||||
--do only if not a c string
|
||||
local is_cstring = v:sub(1,1)=='"' and v:sub(-1,-1) =='"'
|
||||
if not is_cstring then
|
||||
def.defaults[k] = def.defaults[k]:gsub("%(%(void%s*%*%)0%)","NULL")
|
||||
if def.defaults[k]:match"%(ImU32%)" then
|
||||
def.defaults[k] = tostring(CleanImU32(def.defaults[k]))
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
----------custom ImVector templates
|
||||
local table_do_sorted = cpp2ffi.table_do_sorted
|
||||
local function generate_templates(code,codeimpool,templates)
|
||||
table.insert(code,"\n"..[[typedef struct ImVector{int Size;int Capacity;void* Data;} ImVector;]].."\n")
|
||||
table_do_sorted(templates , function (ttype, v)
|
||||
if ttype == "ImVector" then
|
||||
table_do_sorted(v, function(te,newte)
|
||||
table.insert(code,"typedef struct ImVector_"..newte.." {int Size;int Capacity;"..te.."* Data;} ImVector_"..newte..";\n")
|
||||
end)
|
||||
elseif ttype == "ImPool" then
|
||||
--declare ImGuiStorage
|
||||
table_do_sorted(v, function(te, newte)
|
||||
table.insert(codeimpool,"typedef struct ImVector_"..newte.." {int Size;int Capacity;"..te.."* Data;} ImVector_"..newte..";\n")
|
||||
table.insert(codeimpool,"typedef struct ImPool_"..newte.." {ImVector_"..te.." Buf;ImGuiStorage Map;ImPoolIdx FreeIdx;} ImPool_"..newte..";\n")
|
||||
end)
|
||||
elseif ttype == "ImChunkStream" then
|
||||
table_do_sorted(v, function(te,newte)
|
||||
table.insert(code,"typedef struct ImVector_"..newte.." {int Size;int Capacity;"..te.."* Data;} ImVector_"..newte..";\n")
|
||||
table.insert(code,"typedef struct ImChunkStream_"..newte.." {ImVector_"..te.." Buf;} ImChunkStream_"..newte..";\n")
|
||||
end)
|
||||
end
|
||||
end)
|
||||
end
|
||||
--generate cimgui.cpp cimgui.h
|
||||
local function cimgui_generation(parser)
|
||||
|
||||
--[[
|
||||
-- clean ImVector:contains() for not applicable types
|
||||
local clean_f = {}
|
||||
for k,v in pairs(parser.defsT) do
|
||||
if k:match"ImVector" and k:match"contains" then
|
||||
--cpp2ffi.prtable(k,v)
|
||||
local stname = v[1].stname
|
||||
if not(stname:match"float" or stname:match"int" or stname:match"char") then
|
||||
parser.defsT[k] = nil
|
||||
--delete also from funcdefs
|
||||
for i,t in ipairs(parser.funcdefs) do
|
||||
if t.cimguiname == k then
|
||||
table.remove(parser.funcdefs, i)
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
--]]
|
||||
--------------------------------------------------
|
||||
local hstrfile = read_data"./cimgui_template.h"
|
||||
|
||||
local outpre,outpost = parser.structs_and_enums[1],parser.structs_and_enums[2]
|
||||
cpp2ffi.prtable(parser.templates)
|
||||
cpp2ffi.prtable(parser.typenames)
|
||||
|
||||
local outtab = {}
|
||||
local outtabpool = {}
|
||||
generate_templates(outtab, outtabpool, parser.templates)
|
||||
|
||||
--move outtabpool after ImGuiStorage definition
|
||||
local outpost1, outpost2 = outpost:match("^(.+struct ImGuiStorage%s*\n%b{};\n)(.+)$")
|
||||
outpost = outpost1..table.concat(outtabpool)..outpost2
|
||||
|
||||
local cstructsstr = outpre..table.concat(outtab,"")..outpost --..(extra or "")
|
||||
|
||||
hstrfile = hstrfile:gsub([[#include "imgui_structs%.h"]],cstructsstr)
|
||||
local cfuncsstr = func_header_generate(parser)
|
||||
hstrfile = hstrfile:gsub([[#include "auto_funcs%.h"]],cfuncsstr)
|
||||
save_data("./output/cimgui.h",cimgui_header,hstrfile)
|
||||
|
||||
--merge it in cimgui_template.cpp to cimgui.cpp
|
||||
local cimplem = func_implementation(parser)
|
||||
|
||||
local hstrfile = read_data"./cimgui_template.cpp"
|
||||
|
||||
hstrfile = hstrfile:gsub([[#include "auto_funcs%.cpp"]],cimplem)
|
||||
save_data("./output/cimgui.cpp",cimgui_header,hstrfile)
|
||||
|
||||
end
|
||||
--------------------------------------------------------
|
||||
-----------------------------do it----------------------
|
||||
--------------------------------------------------------
|
||||
--get imgui.h version--------------------------
|
||||
local pipe,err = io.open("../imgui/imgui.h","r")
|
||||
if not pipe then
|
||||
error("could not open file:"..err)
|
||||
end
|
||||
local imgui_version
|
||||
while true do
|
||||
local line = pipe:read"*l"
|
||||
imgui_version = line:match([[#define%s+IMGUI_VERSION%s+(".+")]])
|
||||
if imgui_version then break end
|
||||
end
|
||||
pipe:close()
|
||||
cimgui_header = cimgui_header:gsub("XXX",imgui_version)
|
||||
if INTERNAL_GENERATION then
|
||||
cimgui_header = cimgui_header..[[//with imgui_internal.h api
|
||||
]]
|
||||
end
|
||||
if FREETYPE_GENERATION then
|
||||
cimgui_header = cimgui_header..[[//with imgui_freetype.h api
|
||||
]]
|
||||
end
|
||||
print("IMGUI_VERSION",imgui_version)
|
||||
--get some defines----------------------------
|
||||
gdefines = get_defines{"IMGUI_VERSION","FLT_MAX"}
|
||||
|
||||
|
||||
--funtion for parsing imgui headers
|
||||
local function parseImGuiHeader(header,names)
|
||||
--prepare parser
|
||||
local parser = cpp2ffi.Parser()
|
||||
|
||||
parser.getCname = function(stname,funcname,namespace)
|
||||
local pre = (stname == "") and (namespace and (namespace=="ImGui" and "ig" or namespace.."_") or "ig") or stname.."_"
|
||||
return pre..funcname
|
||||
end
|
||||
parser.cname_overloads = cimgui_overloads
|
||||
parser.manuals = cimgui_manuals
|
||||
parser.UDTs = {"ImVec2","ImVec4","ImColor","ImRect"}
|
||||
|
||||
local defines = parser:take_lines(CPRE..header,names,COMPILER)
|
||||
|
||||
return parser
|
||||
end
|
||||
--generation
|
||||
print("------------------generation with "..COMPILER.."------------------------")
|
||||
local parser1
|
||||
local headers = [[#include "../imgui/imgui.h"
|
||||
]]
|
||||
local headersT = {[[imgui]]}
|
||||
if INTERNAL_GENERATION then
|
||||
headers = headers .. [[#include "../imgui/imgui_internal.h"
|
||||
]]
|
||||
headersT[#headersT + 1] = [[imgui_internal]]
|
||||
headersT[#headersT + 1] = [[imstb_textedit]]
|
||||
end
|
||||
if FREETYPE_GENERATION then
|
||||
headers = headers .. [[
|
||||
#include "../imgui/misc/freetype/imgui_freetype.h"
|
||||
]]
|
||||
headersT[#headersT + 1] = [[imgui_freetype]]
|
||||
end
|
||||
save_data("headers.h",headers)
|
||||
local include_cmd = COMPILER=="cl" and [[ /I ]] or [[ -I ]]
|
||||
local extra_includes = include_cmd.." ../imgui "
|
||||
local parser1 = parseImGuiHeader(extra_includes .. [[headers.h]],headersT)
|
||||
os.remove("headers.h")
|
||||
parser1:do_parse()
|
||||
|
||||
save_data("./output/overloads.txt",parser1.overloadstxt)
|
||||
cimgui_generation(parser1)
|
||||
|
||||
----------save struct and enums lua table in structs_and_enums.lua for using in bindings
|
||||
|
||||
local structs_and_enums_table = parser1:gen_structs_and_enums_table()
|
||||
save_data("./output/structs_and_enums.lua",serializeTableF(structs_and_enums_table))
|
||||
save_data("./output/typedefs_dict.lua",serializeTableF(parser1.typedefs_dict))
|
||||
|
||||
----------save fundefs in definitions.lua for using in bindings
|
||||
--DefsByStruct(pFP)
|
||||
set_defines(parser1.defsT)
|
||||
repair_defaults(parser1.defsT, structs_and_enums_table)
|
||||
save_data("./output/definitions.lua",serializeTableF(parser1.defsT))
|
||||
|
||||
--check every function has ov_cimguiname
|
||||
-- for k,v in pairs(parser1.defsT) do
|
||||
-- for _,def in ipairs(v) do
|
||||
-- assert(def.ov_cimguiname)
|
||||
-- end
|
||||
-- end
|
||||
|
||||
--=================================Now implementations
|
||||
|
||||
local parser2
|
||||
|
||||
if #implementations > 0 then
|
||||
print("------------------implementations generation with "..COMPILER.."------------------------")
|
||||
parser2 = cpp2ffi.Parser()
|
||||
|
||||
local config = require"config_generator"
|
||||
|
||||
for i,impl in ipairs(implementations) do
|
||||
local source = [[../imgui/examples/imgui_impl_]].. impl .. ".h "
|
||||
local locati = [[imgui_impl_]].. impl
|
||||
|
||||
local define_cmd = COMPILER=="cl" and [[ /E /D]] or [[ -E -D]]
|
||||
local extra_defines = ""
|
||||
if impl == "opengl3" then extra_defines = define_cmd .. "IMGUI_IMPL_OPENGL_LOADER_GL3W " end
|
||||
local include_cmd = COMPILER=="cl" and [[ /I ]] or [[ -I ]]
|
||||
local extra_includes = include_cmd.." ../imgui "
|
||||
if config[impl] then
|
||||
for j,inc in ipairs(config[impl]) do
|
||||
extra_includes = extra_includes .. include_cmd .. inc .. " "
|
||||
end
|
||||
end
|
||||
|
||||
local defines = parser2:take_lines(CPRE..extra_defines..extra_includes..source, {locati}, COMPILER)
|
||||
|
||||
end
|
||||
|
||||
parser2:do_parse()
|
||||
|
||||
-- save ./cimgui_impl.h
|
||||
local cfuncsstr = func_header_impl_generate(parser2)
|
||||
local cstructstr1,cstructstr2 = parser2.structs_and_enums[1], parser2.structs_and_enums[2]
|
||||
save_data("./output/cimgui_impl.h",cstructstr1,cstructstr2,cfuncsstr)
|
||||
|
||||
----------save fundefs in impl_definitions.lua for using in bindings
|
||||
save_data("./output/impl_definitions.lua",serializeTableF(parser2.defsT))
|
||||
|
||||
end -- #implementations > 0 then
|
||||
|
||||
-------------------------------json saving
|
||||
--avoid mixed tables (with string and integer keys)
|
||||
local function json_prepare(defs)
|
||||
--delete signatures in function
|
||||
for k,def in pairs(defs) do
|
||||
for k2,v in pairs(def) do
|
||||
if type(k2)=="string" then
|
||||
def[k2] = nil
|
||||
end
|
||||
end
|
||||
end
|
||||
return defs
|
||||
end
|
||||
---[[
|
||||
local json = require"json"
|
||||
save_data("./output/definitions.json",json.encode(json_prepare(parser1.defsT),{dict_on_empty={defaults=true}}))
|
||||
save_data("./output/structs_and_enums.json",json.encode(structs_and_enums_table))
|
||||
save_data("./output/typedefs_dict.json",json.encode(parser1.typedefs_dict))
|
||||
if parser2 then
|
||||
save_data("./output/impl_definitions.json",json.encode(json_prepare(parser2.defsT),{dict_on_empty={defaults=true}}))
|
||||
end
|
||||
--]]
|
||||
-------------------copy C files to repo root
|
||||
copyfile("./output/cimgui.h", "../cimgui.h")
|
||||
copyfile("./output/cimgui.cpp", "../cimgui.cpp")
|
||||
os.remove("./output/cimgui.h")
|
||||
os.remove("./output/cimgui.cpp")
|
||||
print"all done!!"
|
19
generator/generator.sh
Executable file
19
generator/generator.sh
Executable file
@@ -0,0 +1,19 @@
|
||||
#!/usr/bin/sh
|
||||
|
||||
# this script must be executed in this directory
|
||||
# all the output goes to generator/output folder
|
||||
# .cpp and .h files:
|
||||
# cimgui.h and cimgui.cpp with gcc preprocess
|
||||
# cimgui_nopreprocess.h and cimgui_nopreprocess.cpp generated without preprocess
|
||||
# cimgui_impl.h with implementation function cdefs
|
||||
# lua and json files:
|
||||
# definitions.lua for function definitions
|
||||
# structs_and_enums.lua with struct and enum information-definitions
|
||||
# impl_definitions.lua for implementation function definitions
|
||||
|
||||
#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
|
||||
# examples: "" "internal" "internal freetype"
|
||||
# arg[3..n] name of implementations to generate
|
||||
luajit ./generator.lua gcc "internal" glfw opengl3 opengl2 sdl
|
422
generator/json.lua
Normal file
422
generator/json.lua
Normal file
@@ -0,0 +1,422 @@
|
||||
--
|
||||
-- json.lua
|
||||
--
|
||||
-- Copyright (c) 2018 rxi
|
||||
--
|
||||
-- Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
-- this software and associated documentation files (the "Software"), to deal in
|
||||
-- the Software without restriction, including without limitation the rights to
|
||||
-- use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
|
||||
-- of the Software, and to permit persons to whom the Software is furnished to do
|
||||
-- so, subject to the following conditions:
|
||||
--
|
||||
-- The above copyright notice and this permission notice shall be included in all
|
||||
-- copies or substantial portions of the Software.
|
||||
--
|
||||
-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
-- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
-- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
-- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
-- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
-- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
-- SOFTWARE.
|
||||
--
|
||||
--changes---------------------------------------------------------------------
|
||||
--prettify: adding carriage return, indentation, dictionaries sorted by key
|
||||
--dict_on_empty: table to json.encode to make empty table a dictionary instead of array
|
||||
------------------------------------------------------------------------------
|
||||
local json = { _version = "0.1.1" }
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
-- Encode
|
||||
-------------------------------------------------------------------------------
|
||||
local TAB = " "
|
||||
local rep = string.rep
|
||||
local encode
|
||||
local dict_on_empty = {}
|
||||
|
||||
local escape_char_map = {
|
||||
[ "\\" ] = "\\\\",
|
||||
[ "\"" ] = "\\\"",
|
||||
[ "\b" ] = "\\b",
|
||||
[ "\f" ] = "\\f",
|
||||
[ "\n" ] = "\\n",
|
||||
[ "\r" ] = "\\r",
|
||||
[ "\t" ] = "\\t",
|
||||
}
|
||||
|
||||
local escape_char_map_inv = { [ "\\/" ] = "/" }
|
||||
for k, v in pairs(escape_char_map) do
|
||||
escape_char_map_inv[v] = k
|
||||
end
|
||||
|
||||
|
||||
local function escape_char(c)
|
||||
return escape_char_map[c] or string.format("\\u%04x", c:byte())
|
||||
end
|
||||
|
||||
|
||||
local function encode_nil(val)
|
||||
return "null"
|
||||
end
|
||||
|
||||
|
||||
local function encode_table(val, stack,level,isvalue)
|
||||
local res = {}
|
||||
stack = stack or {}
|
||||
level = level or 0
|
||||
-- Circular reference?
|
||||
if stack[val] then error("circular reference") end
|
||||
|
||||
stack[val] = true
|
||||
|
||||
if val[1] ~= nil or next(val) == nil then
|
||||
-- Treat as array -- check keys are valid and it is not sparse
|
||||
local n = 0
|
||||
for k in pairs(val) do
|
||||
if type(k) ~= "number" then
|
||||
error("invalid table: mixed or invalid key types")
|
||||
end
|
||||
n = n + 1
|
||||
end
|
||||
if n ~= #val then
|
||||
error("invalid table: sparse array")
|
||||
end
|
||||
|
||||
-- Encode
|
||||
for i, v in ipairs(val) do
|
||||
table.insert(res, encode(v, stack,level+1))
|
||||
end
|
||||
|
||||
stack[val] = nil
|
||||
local inner = table.concat(res, ",\n")
|
||||
if #inner > 0 then inner = "\n"..inner.."\n"..rep(TAB,level) end
|
||||
return rep(isvalue and "" or TAB,level).."[" .. inner .. "]"
|
||||
|
||||
else
|
||||
local ordered_keys = {}
|
||||
for k,v in pairs(val) do
|
||||
table.insert(ordered_keys,k)
|
||||
end
|
||||
table.sort(ordered_keys)
|
||||
-- Treat as an object
|
||||
for _,k in ipairs(ordered_keys) do
|
||||
local v = val[k]
|
||||
|
||||
if type(k) ~= "string" then
|
||||
error("invalid table: mixed or invalid key types")
|
||||
end
|
||||
if type(v) == "table" and next(v) == nil and dict_on_empty[k] then
|
||||
table.insert(res, encode(k, stack,level+1) .. ": {}")
|
||||
else
|
||||
table.insert(res, encode(k, stack,level+1) .. ": " .. encode(v, stack,level+1,true))
|
||||
end
|
||||
end
|
||||
stack[val] = nil
|
||||
local inner = table.concat(res, ",\n")
|
||||
if #inner > 0 then inner = "\n"..inner.."\n"..rep(TAB,level) end
|
||||
return rep(isvalue and "" or TAB,level).."{" .. inner .. "}"
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
local function encode_string(val,stack,level,isvalue)
|
||||
return rep(isvalue and "" or TAB,level)..'"' .. val:gsub('[%z\1-\31\\"]', escape_char) .. '"'
|
||||
end
|
||||
|
||||
|
||||
local function encode_number(val,stack,level,isvalue)
|
||||
-- Check for NaN, -inf and inf
|
||||
if val ~= val or val <= -math.huge or val >= math.huge then
|
||||
error("unexpected number value '" .. tostring(val) .. "'")
|
||||
end
|
||||
return rep(isvalue and "" or TAB,level)..string.format("%.14g", val)
|
||||
end
|
||||
|
||||
|
||||
local type_func_map = {
|
||||
[ "nil" ] = encode_nil,
|
||||
[ "table" ] = encode_table,
|
||||
[ "string" ] = encode_string,
|
||||
[ "number" ] = encode_number,
|
||||
[ "boolean" ] = tostring,
|
||||
}
|
||||
|
||||
|
||||
encode = function(val, stack,level,isvalue)
|
||||
local t = type(val)
|
||||
local f = type_func_map[t]
|
||||
if f then
|
||||
return f(val, stack,level,isvalue)
|
||||
end
|
||||
error("unexpected type '" .. t .. "'")
|
||||
end
|
||||
|
||||
|
||||
function json.encode(val,opts)
|
||||
dict_on_empty = opts and opts.dict_on_empty or {}
|
||||
return ( encode(val) )
|
||||
end
|
||||
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
-- Decode
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
local parse
|
||||
|
||||
local function create_set(...)
|
||||
local res = {}
|
||||
for i = 1, select("#", ...) do
|
||||
res[ select(i, ...) ] = true
|
||||
end
|
||||
return res
|
||||
end
|
||||
|
||||
local space_chars = create_set(" ", "\t", "\r", "\n")
|
||||
local delim_chars = create_set(" ", "\t", "\r", "\n", "]", "}", ",")
|
||||
local escape_chars = create_set("\\", "/", '"', "b", "f", "n", "r", "t", "u")
|
||||
local literals = create_set("true", "false", "null")
|
||||
|
||||
local literal_map = {
|
||||
[ "true" ] = true,
|
||||
[ "false" ] = false,
|
||||
[ "null" ] = nil,
|
||||
}
|
||||
|
||||
|
||||
local function next_char(str, idx, set, negate)
|
||||
for i = idx, #str do
|
||||
if set[str:sub(i, i)] ~= negate then
|
||||
return i
|
||||
end
|
||||
end
|
||||
return #str + 1
|
||||
end
|
||||
|
||||
|
||||
local function decode_error(str, idx, msg)
|
||||
local line_count = 1
|
||||
local col_count = 1
|
||||
for i = 1, idx - 1 do
|
||||
col_count = col_count + 1
|
||||
if str:sub(i, i) == "\n" then
|
||||
line_count = line_count + 1
|
||||
col_count = 1
|
||||
end
|
||||
end
|
||||
error( string.format("%s at line %d col %d", msg, line_count, col_count) )
|
||||
end
|
||||
|
||||
|
||||
local function codepoint_to_utf8(n)
|
||||
-- http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=iws-appendixa
|
||||
local f = math.floor
|
||||
if n <= 0x7f then
|
||||
return string.char(n)
|
||||
elseif n <= 0x7ff then
|
||||
return string.char(f(n / 64) + 192, n % 64 + 128)
|
||||
elseif n <= 0xffff then
|
||||
return string.char(f(n / 4096) + 224, f(n % 4096 / 64) + 128, n % 64 + 128)
|
||||
elseif n <= 0x10ffff then
|
||||
return string.char(f(n / 262144) + 240, f(n % 262144 / 4096) + 128,
|
||||
f(n % 4096 / 64) + 128, n % 64 + 128)
|
||||
end
|
||||
error( string.format("invalid unicode codepoint '%x'", n) )
|
||||
end
|
||||
|
||||
|
||||
local function parse_unicode_escape(s)
|
||||
local n1 = tonumber( s:sub(3, 6), 16 )
|
||||
local n2 = tonumber( s:sub(9, 12), 16 )
|
||||
-- Surrogate pair?
|
||||
if n2 then
|
||||
return codepoint_to_utf8((n1 - 0xd800) * 0x400 + (n2 - 0xdc00) + 0x10000)
|
||||
else
|
||||
return codepoint_to_utf8(n1)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
local function parse_string(str, i)
|
||||
local has_unicode_escape = false
|
||||
local has_surrogate_escape = false
|
||||
local has_escape = false
|
||||
local last
|
||||
for j = i + 1, #str do
|
||||
local x = str:byte(j)
|
||||
|
||||
if x < 32 then
|
||||
decode_error(str, j, "control character in string")
|
||||
end
|
||||
|
||||
if last == 92 then -- "\\" (escape char)
|
||||
if x == 117 then -- "u" (unicode escape sequence)
|
||||
local hex = str:sub(j + 1, j + 5)
|
||||
if not hex:find("%x%x%x%x") then
|
||||
decode_error(str, j, "invalid unicode escape in string")
|
||||
end
|
||||
if hex:find("^[dD][89aAbB]") then
|
||||
has_surrogate_escape = true
|
||||
else
|
||||
has_unicode_escape = true
|
||||
end
|
||||
else
|
||||
local c = string.char(x)
|
||||
if not escape_chars[c] then
|
||||
decode_error(str, j, "invalid escape char '" .. c .. "' in string")
|
||||
end
|
||||
has_escape = true
|
||||
end
|
||||
last = nil
|
||||
|
||||
elseif x == 34 then -- '"' (end of string)
|
||||
local s = str:sub(i + 1, j - 1)
|
||||
if has_surrogate_escape then
|
||||
s = s:gsub("\\u[dD][89aAbB]..\\u....", parse_unicode_escape)
|
||||
end
|
||||
if has_unicode_escape then
|
||||
s = s:gsub("\\u....", parse_unicode_escape)
|
||||
end
|
||||
if has_escape then
|
||||
s = s:gsub("\\.", escape_char_map_inv)
|
||||
end
|
||||
return s, j + 1
|
||||
|
||||
else
|
||||
last = x
|
||||
end
|
||||
end
|
||||
decode_error(str, i, "expected closing quote for string")
|
||||
end
|
||||
|
||||
|
||||
local function parse_number(str, i)
|
||||
local x = next_char(str, i, delim_chars)
|
||||
local s = str:sub(i, x - 1)
|
||||
local n = tonumber(s)
|
||||
if not n then
|
||||
decode_error(str, i, "invalid number '" .. s .. "'")
|
||||
end
|
||||
return n, x
|
||||
end
|
||||
|
||||
|
||||
local function parse_literal(str, i)
|
||||
local x = next_char(str, i, delim_chars)
|
||||
local word = str:sub(i, x - 1)
|
||||
if not literals[word] then
|
||||
decode_error(str, i, "invalid literal '" .. word .. "'")
|
||||
end
|
||||
return literal_map[word], x
|
||||
end
|
||||
|
||||
|
||||
local function parse_array(str, i)
|
||||
local res = {}
|
||||
local n = 1
|
||||
i = i + 1
|
||||
while 1 do
|
||||
local x
|
||||
i = next_char(str, i, space_chars, true)
|
||||
-- Empty / end of array?
|
||||
if str:sub(i, i) == "]" then
|
||||
i = i + 1
|
||||
break
|
||||
end
|
||||
-- Read token
|
||||
x, i = parse(str, i)
|
||||
res[n] = x
|
||||
n = n + 1
|
||||
-- Next token
|
||||
i = next_char(str, i, space_chars, true)
|
||||
local chr = str:sub(i, i)
|
||||
i = i + 1
|
||||
if chr == "]" then break end
|
||||
if chr ~= "," then decode_error(str, i, "expected ']' or ','") end
|
||||
end
|
||||
return res, i
|
||||
end
|
||||
|
||||
|
||||
local function parse_object(str, i)
|
||||
local res = {}
|
||||
i = i + 1
|
||||
while 1 do
|
||||
local key, val
|
||||
i = next_char(str, i, space_chars, true)
|
||||
-- Empty / end of object?
|
||||
if str:sub(i, i) == "}" then
|
||||
i = i + 1
|
||||
break
|
||||
end
|
||||
-- Read key
|
||||
if str:sub(i, i) ~= '"' then
|
||||
decode_error(str, i, "expected string for key")
|
||||
end
|
||||
key, i = parse(str, i)
|
||||
-- Read ':' delimiter
|
||||
i = next_char(str, i, space_chars, true)
|
||||
if str:sub(i, i) ~= ":" then
|
||||
decode_error(str, i, "expected ':' after key")
|
||||
end
|
||||
i = next_char(str, i + 1, space_chars, true)
|
||||
-- Read value
|
||||
val, i = parse(str, i)
|
||||
-- Set
|
||||
res[key] = val
|
||||
-- Next token
|
||||
i = next_char(str, i, space_chars, true)
|
||||
local chr = str:sub(i, i)
|
||||
i = i + 1
|
||||
if chr == "}" then break end
|
||||
if chr ~= "," then decode_error(str, i, "expected '}' or ','") end
|
||||
end
|
||||
return res, i
|
||||
end
|
||||
|
||||
|
||||
local char_func_map = {
|
||||
[ '"' ] = parse_string,
|
||||
[ "0" ] = parse_number,
|
||||
[ "1" ] = parse_number,
|
||||
[ "2" ] = parse_number,
|
||||
[ "3" ] = parse_number,
|
||||
[ "4" ] = parse_number,
|
||||
[ "5" ] = parse_number,
|
||||
[ "6" ] = parse_number,
|
||||
[ "7" ] = parse_number,
|
||||
[ "8" ] = parse_number,
|
||||
[ "9" ] = parse_number,
|
||||
[ "-" ] = parse_number,
|
||||
[ "t" ] = parse_literal,
|
||||
[ "f" ] = parse_literal,
|
||||
[ "n" ] = parse_literal,
|
||||
[ "[" ] = parse_array,
|
||||
[ "{" ] = parse_object,
|
||||
}
|
||||
|
||||
|
||||
parse = function(str, idx)
|
||||
local chr = str:sub(idx, idx)
|
||||
local f = char_func_map[chr]
|
||||
if f then
|
||||
return f(str, idx)
|
||||
end
|
||||
decode_error(str, idx, "unexpected character '" .. chr .. "'")
|
||||
end
|
||||
|
||||
|
||||
function json.decode(str)
|
||||
if type(str) ~= "string" then
|
||||
error("expected argument of type string, got " .. type(str))
|
||||
end
|
||||
local res, idx = parse(str, next_char(str, 1, space_chars, true))
|
||||
idx = next_char(str, idx, space_chars, true)
|
||||
if idx <= #str then
|
||||
decode_error(str, idx, "trailing garbage")
|
||||
end
|
||||
return res
|
||||
end
|
||||
|
||||
return json
|
40
generator/output/cimgui_impl.h
Normal file
40
generator/output/cimgui_impl.h
Normal file
@@ -0,0 +1,40 @@
|
||||
typedef struct SDL_Window SDL_Window;
|
||||
typedef struct GLFWmonitor GLFWmonitor;
|
||||
typedef struct GLFWwindow GLFWwindow;
|
||||
|
||||
struct GLFWwindow;
|
||||
struct GLFWmonitor;
|
||||
|
||||
struct SDL_Window;
|
||||
typedef union SDL_Event SDL_Event;CIMGUI_API bool ImGui_ImplGlfw_InitForOpenGL(GLFWwindow* window,bool install_callbacks);
|
||||
CIMGUI_API bool ImGui_ImplGlfw_InitForVulkan(GLFWwindow* window,bool install_callbacks);
|
||||
CIMGUI_API void ImGui_ImplGlfw_Shutdown();
|
||||
CIMGUI_API void ImGui_ImplGlfw_NewFrame();
|
||||
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 bool ImGui_ImplOpenGL3_Init(const char* glsl_version);
|
||||
CIMGUI_API void ImGui_ImplOpenGL3_Shutdown();
|
||||
CIMGUI_API void ImGui_ImplOpenGL3_NewFrame();
|
||||
CIMGUI_API void ImGui_ImplOpenGL3_RenderDrawData(ImDrawData* draw_data);
|
||||
CIMGUI_API bool ImGui_ImplOpenGL3_CreateFontsTexture();
|
||||
CIMGUI_API void ImGui_ImplOpenGL3_DestroyFontsTexture();
|
||||
CIMGUI_API bool ImGui_ImplOpenGL3_CreateDeviceObjects();
|
||||
CIMGUI_API void ImGui_ImplOpenGL3_DestroyDeviceObjects();
|
||||
CIMGUI_API bool ImGui_ImplOpenGL2_Init();
|
||||
CIMGUI_API void ImGui_ImplOpenGL2_Shutdown();
|
||||
CIMGUI_API void ImGui_ImplOpenGL2_NewFrame();
|
||||
CIMGUI_API void ImGui_ImplOpenGL2_RenderDrawData(ImDrawData* draw_data);
|
||||
CIMGUI_API bool ImGui_ImplOpenGL2_CreateFontsTexture();
|
||||
CIMGUI_API void ImGui_ImplOpenGL2_DestroyFontsTexture();
|
||||
CIMGUI_API bool ImGui_ImplOpenGL2_CreateDeviceObjects();
|
||||
CIMGUI_API void ImGui_ImplOpenGL2_DestroyDeviceObjects();
|
||||
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 void ImGui_ImplSDL2_Shutdown();
|
||||
CIMGUI_API void ImGui_ImplSDL2_NewFrame(SDL_Window* window);
|
||||
CIMGUI_API bool ImGui_ImplSDL2_ProcessEvent(const SDL_Event* event);
|
29142
generator/output/definitions.json
Normal file
29142
generator/output/definitions.json
Normal file
File diff suppressed because it is too large
Load Diff
24620
generator/output/definitions.lua
Normal file
24620
generator/output/definitions.lua
Normal file
File diff suppressed because it is too large
Load Diff
652
generator/output/impl_definitions.json
Normal file
652
generator/output/impl_definitions.json
Normal file
@@ -0,0 +1,652 @@
|
||||
{
|
||||
"ImGui_ImplGlfw_CharCallback": [
|
||||
{
|
||||
"args": "(GLFWwindow* window,unsigned int c)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": "GLFWwindow*"
|
||||
},
|
||||
{
|
||||
"name": "c",
|
||||
"type": "unsigned int"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(GLFWwindow* window,unsigned int c)",
|
||||
"call_args": "(window,c)",
|
||||
"cimguiname": "ImGui_ImplGlfw_CharCallback",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplGlfw_CharCallback",
|
||||
"location": "imgui_impl_glfw:40",
|
||||
"ov_cimguiname": "ImGui_ImplGlfw_CharCallback",
|
||||
"ret": "void",
|
||||
"signature": "(GLFWwindow*,unsigned int)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplGlfw_InitForOpenGL": [
|
||||
{
|
||||
"args": "(GLFWwindow* window,bool install_callbacks)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": "GLFWwindow*"
|
||||
},
|
||||
{
|
||||
"name": "install_callbacks",
|
||||
"type": "bool"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(GLFWwindow* window,bool install_callbacks)",
|
||||
"call_args": "(window,install_callbacks)",
|
||||
"cimguiname": "ImGui_ImplGlfw_InitForOpenGL",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplGlfw_InitForOpenGL",
|
||||
"location": "imgui_impl_glfw:29",
|
||||
"ov_cimguiname": "ImGui_ImplGlfw_InitForOpenGL",
|
||||
"ret": "bool",
|
||||
"signature": "(GLFWwindow*,bool)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplGlfw_InitForVulkan": [
|
||||
{
|
||||
"args": "(GLFWwindow* window,bool install_callbacks)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": "GLFWwindow*"
|
||||
},
|
||||
{
|
||||
"name": "install_callbacks",
|
||||
"type": "bool"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(GLFWwindow* window,bool install_callbacks)",
|
||||
"call_args": "(window,install_callbacks)",
|
||||
"cimguiname": "ImGui_ImplGlfw_InitForVulkan",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplGlfw_InitForVulkan",
|
||||
"location": "imgui_impl_glfw:30",
|
||||
"ov_cimguiname": "ImGui_ImplGlfw_InitForVulkan",
|
||||
"ret": "bool",
|
||||
"signature": "(GLFWwindow*,bool)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplGlfw_KeyCallback": [
|
||||
{
|
||||
"args": "(GLFWwindow* window,int key,int scancode,int action,int mods)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": "GLFWwindow*"
|
||||
},
|
||||
{
|
||||
"name": "key",
|
||||
"type": "int"
|
||||
},
|
||||
{
|
||||
"name": "scancode",
|
||||
"type": "int"
|
||||
},
|
||||
{
|
||||
"name": "action",
|
||||
"type": "int"
|
||||
},
|
||||
{
|
||||
"name": "mods",
|
||||
"type": "int"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(GLFWwindow* window,int key,int scancode,int action,int mods)",
|
||||
"call_args": "(window,key,scancode,action,mods)",
|
||||
"cimguiname": "ImGui_ImplGlfw_KeyCallback",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplGlfw_KeyCallback",
|
||||
"location": "imgui_impl_glfw:39",
|
||||
"ov_cimguiname": "ImGui_ImplGlfw_KeyCallback",
|
||||
"ret": "void",
|
||||
"signature": "(GLFWwindow*,int,int,int,int)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplGlfw_MonitorCallback": [
|
||||
{
|
||||
"args": "(GLFWmonitor* monitor,int event)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "monitor",
|
||||
"type": "GLFWmonitor*"
|
||||
},
|
||||
{
|
||||
"name": "event",
|
||||
"type": "int"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(GLFWmonitor* monitor,int event)",
|
||||
"call_args": "(monitor,event)",
|
||||
"cimguiname": "ImGui_ImplGlfw_MonitorCallback",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplGlfw_MonitorCallback",
|
||||
"location": "imgui_impl_glfw:41",
|
||||
"ov_cimguiname": "ImGui_ImplGlfw_MonitorCallback",
|
||||
"ret": "void",
|
||||
"signature": "(GLFWmonitor*,int)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplGlfw_MouseButtonCallback": [
|
||||
{
|
||||
"args": "(GLFWwindow* window,int button,int action,int mods)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": "GLFWwindow*"
|
||||
},
|
||||
{
|
||||
"name": "button",
|
||||
"type": "int"
|
||||
},
|
||||
{
|
||||
"name": "action",
|
||||
"type": "int"
|
||||
},
|
||||
{
|
||||
"name": "mods",
|
||||
"type": "int"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(GLFWwindow* window,int button,int action,int mods)",
|
||||
"call_args": "(window,button,action,mods)",
|
||||
"cimguiname": "ImGui_ImplGlfw_MouseButtonCallback",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplGlfw_MouseButtonCallback",
|
||||
"location": "imgui_impl_glfw:37",
|
||||
"ov_cimguiname": "ImGui_ImplGlfw_MouseButtonCallback",
|
||||
"ret": "void",
|
||||
"signature": "(GLFWwindow*,int,int,int)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplGlfw_NewFrame": [
|
||||
{
|
||||
"args": "()",
|
||||
"argsT": [],
|
||||
"argsoriginal": "()",
|
||||
"call_args": "()",
|
||||
"cimguiname": "ImGui_ImplGlfw_NewFrame",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplGlfw_NewFrame",
|
||||
"location": "imgui_impl_glfw:32",
|
||||
"ov_cimguiname": "ImGui_ImplGlfw_NewFrame",
|
||||
"ret": "void",
|
||||
"signature": "()",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplGlfw_ScrollCallback": [
|
||||
{
|
||||
"args": "(GLFWwindow* window,double xoffset,double yoffset)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": "GLFWwindow*"
|
||||
},
|
||||
{
|
||||
"name": "xoffset",
|
||||
"type": "double"
|
||||
},
|
||||
{
|
||||
"name": "yoffset",
|
||||
"type": "double"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(GLFWwindow* window,double xoffset,double yoffset)",
|
||||
"call_args": "(window,xoffset,yoffset)",
|
||||
"cimguiname": "ImGui_ImplGlfw_ScrollCallback",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplGlfw_ScrollCallback",
|
||||
"location": "imgui_impl_glfw:38",
|
||||
"ov_cimguiname": "ImGui_ImplGlfw_ScrollCallback",
|
||||
"ret": "void",
|
||||
"signature": "(GLFWwindow*,double,double)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplGlfw_Shutdown": [
|
||||
{
|
||||
"args": "()",
|
||||
"argsT": [],
|
||||
"argsoriginal": "()",
|
||||
"call_args": "()",
|
||||
"cimguiname": "ImGui_ImplGlfw_Shutdown",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplGlfw_Shutdown",
|
||||
"location": "imgui_impl_glfw:31",
|
||||
"ov_cimguiname": "ImGui_ImplGlfw_Shutdown",
|
||||
"ret": "void",
|
||||
"signature": "()",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplOpenGL2_CreateDeviceObjects": [
|
||||
{
|
||||
"args": "()",
|
||||
"argsT": [],
|
||||
"argsoriginal": "()",
|
||||
"call_args": "()",
|
||||
"cimguiname": "ImGui_ImplOpenGL2_CreateDeviceObjects",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL2_CreateDeviceObjects",
|
||||
"location": "imgui_impl_opengl2:31",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL2_CreateDeviceObjects",
|
||||
"ret": "bool",
|
||||
"signature": "()",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplOpenGL2_CreateFontsTexture": [
|
||||
{
|
||||
"args": "()",
|
||||
"argsT": [],
|
||||
"argsoriginal": "()",
|
||||
"call_args": "()",
|
||||
"cimguiname": "ImGui_ImplOpenGL2_CreateFontsTexture",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL2_CreateFontsTexture",
|
||||
"location": "imgui_impl_opengl2:29",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL2_CreateFontsTexture",
|
||||
"ret": "bool",
|
||||
"signature": "()",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplOpenGL2_DestroyDeviceObjects": [
|
||||
{
|
||||
"args": "()",
|
||||
"argsT": [],
|
||||
"argsoriginal": "()",
|
||||
"call_args": "()",
|
||||
"cimguiname": "ImGui_ImplOpenGL2_DestroyDeviceObjects",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL2_DestroyDeviceObjects",
|
||||
"location": "imgui_impl_opengl2:32",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL2_DestroyDeviceObjects",
|
||||
"ret": "void",
|
||||
"signature": "()",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplOpenGL2_DestroyFontsTexture": [
|
||||
{
|
||||
"args": "()",
|
||||
"argsT": [],
|
||||
"argsoriginal": "()",
|
||||
"call_args": "()",
|
||||
"cimguiname": "ImGui_ImplOpenGL2_DestroyFontsTexture",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL2_DestroyFontsTexture",
|
||||
"location": "imgui_impl_opengl2:30",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL2_DestroyFontsTexture",
|
||||
"ret": "void",
|
||||
"signature": "()",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplOpenGL2_Init": [
|
||||
{
|
||||
"args": "()",
|
||||
"argsT": [],
|
||||
"argsoriginal": "()",
|
||||
"call_args": "()",
|
||||
"cimguiname": "ImGui_ImplOpenGL2_Init",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL2_Init",
|
||||
"location": "imgui_impl_opengl2:23",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL2_Init",
|
||||
"ret": "bool",
|
||||
"signature": "()",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplOpenGL2_NewFrame": [
|
||||
{
|
||||
"args": "()",
|
||||
"argsT": [],
|
||||
"argsoriginal": "()",
|
||||
"call_args": "()",
|
||||
"cimguiname": "ImGui_ImplOpenGL2_NewFrame",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL2_NewFrame",
|
||||
"location": "imgui_impl_opengl2:25",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL2_NewFrame",
|
||||
"ret": "void",
|
||||
"signature": "()",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplOpenGL2_RenderDrawData": [
|
||||
{
|
||||
"args": "(ImDrawData* draw_data)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "draw_data",
|
||||
"type": "ImDrawData*"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(ImDrawData* draw_data)",
|
||||
"call_args": "(draw_data)",
|
||||
"cimguiname": "ImGui_ImplOpenGL2_RenderDrawData",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL2_RenderDrawData",
|
||||
"location": "imgui_impl_opengl2:26",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL2_RenderDrawData",
|
||||
"ret": "void",
|
||||
"signature": "(ImDrawData*)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplOpenGL2_Shutdown": [
|
||||
{
|
||||
"args": "()",
|
||||
"argsT": [],
|
||||
"argsoriginal": "()",
|
||||
"call_args": "()",
|
||||
"cimguiname": "ImGui_ImplOpenGL2_Shutdown",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL2_Shutdown",
|
||||
"location": "imgui_impl_opengl2:24",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL2_Shutdown",
|
||||
"ret": "void",
|
||||
"signature": "()",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplOpenGL3_CreateDeviceObjects": [
|
||||
{
|
||||
"args": "()",
|
||||
"argsT": [],
|
||||
"argsoriginal": "()",
|
||||
"call_args": "()",
|
||||
"cimguiname": "ImGui_ImplOpenGL3_CreateDeviceObjects",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL3_CreateDeviceObjects",
|
||||
"location": "imgui_impl_opengl3:37",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL3_CreateDeviceObjects",
|
||||
"ret": "bool",
|
||||
"signature": "()",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplOpenGL3_CreateFontsTexture": [
|
||||
{
|
||||
"args": "()",
|
||||
"argsT": [],
|
||||
"argsoriginal": "()",
|
||||
"call_args": "()",
|
||||
"cimguiname": "ImGui_ImplOpenGL3_CreateFontsTexture",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL3_CreateFontsTexture",
|
||||
"location": "imgui_impl_opengl3:35",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL3_CreateFontsTexture",
|
||||
"ret": "bool",
|
||||
"signature": "()",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplOpenGL3_DestroyDeviceObjects": [
|
||||
{
|
||||
"args": "()",
|
||||
"argsT": [],
|
||||
"argsoriginal": "()",
|
||||
"call_args": "()",
|
||||
"cimguiname": "ImGui_ImplOpenGL3_DestroyDeviceObjects",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL3_DestroyDeviceObjects",
|
||||
"location": "imgui_impl_opengl3:38",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL3_DestroyDeviceObjects",
|
||||
"ret": "void",
|
||||
"signature": "()",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplOpenGL3_DestroyFontsTexture": [
|
||||
{
|
||||
"args": "()",
|
||||
"argsT": [],
|
||||
"argsoriginal": "()",
|
||||
"call_args": "()",
|
||||
"cimguiname": "ImGui_ImplOpenGL3_DestroyFontsTexture",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL3_DestroyFontsTexture",
|
||||
"location": "imgui_impl_opengl3:36",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL3_DestroyFontsTexture",
|
||||
"ret": "void",
|
||||
"signature": "()",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplOpenGL3_Init": [
|
||||
{
|
||||
"args": "(const char* glsl_version)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "glsl_version",
|
||||
"type": "const char*"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(const char* glsl_version=((void*)0))",
|
||||
"call_args": "(glsl_version)",
|
||||
"cimguiname": "ImGui_ImplOpenGL3_Init",
|
||||
"defaults": {
|
||||
"glsl_version": "((void*)0)"
|
||||
},
|
||||
"funcname": "ImGui_ImplOpenGL3_Init",
|
||||
"location": "imgui_impl_opengl3:29",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL3_Init",
|
||||
"ret": "bool",
|
||||
"signature": "(const char*)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplOpenGL3_NewFrame": [
|
||||
{
|
||||
"args": "()",
|
||||
"argsT": [],
|
||||
"argsoriginal": "()",
|
||||
"call_args": "()",
|
||||
"cimguiname": "ImGui_ImplOpenGL3_NewFrame",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL3_NewFrame",
|
||||
"location": "imgui_impl_opengl3:31",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL3_NewFrame",
|
||||
"ret": "void",
|
||||
"signature": "()",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplOpenGL3_RenderDrawData": [
|
||||
{
|
||||
"args": "(ImDrawData* draw_data)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "draw_data",
|
||||
"type": "ImDrawData*"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(ImDrawData* draw_data)",
|
||||
"call_args": "(draw_data)",
|
||||
"cimguiname": "ImGui_ImplOpenGL3_RenderDrawData",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL3_RenderDrawData",
|
||||
"location": "imgui_impl_opengl3:32",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL3_RenderDrawData",
|
||||
"ret": "void",
|
||||
"signature": "(ImDrawData*)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplOpenGL3_Shutdown": [
|
||||
{
|
||||
"args": "()",
|
||||
"argsT": [],
|
||||
"argsoriginal": "()",
|
||||
"call_args": "()",
|
||||
"cimguiname": "ImGui_ImplOpenGL3_Shutdown",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplOpenGL3_Shutdown",
|
||||
"location": "imgui_impl_opengl3:30",
|
||||
"ov_cimguiname": "ImGui_ImplOpenGL3_Shutdown",
|
||||
"ret": "void",
|
||||
"signature": "()",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplSDL2_InitForD3D": [
|
||||
{
|
||||
"args": "(SDL_Window* window)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": "SDL_Window*"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(SDL_Window* window)",
|
||||
"call_args": "(window)",
|
||||
"cimguiname": "ImGui_ImplSDL2_InitForD3D",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplSDL2_InitForD3D",
|
||||
"location": "imgui_impl_sdl:27",
|
||||
"ov_cimguiname": "ImGui_ImplSDL2_InitForD3D",
|
||||
"ret": "bool",
|
||||
"signature": "(SDL_Window*)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplSDL2_InitForMetal": [
|
||||
{
|
||||
"args": "(SDL_Window* window)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": "SDL_Window*"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(SDL_Window* window)",
|
||||
"call_args": "(window)",
|
||||
"cimguiname": "ImGui_ImplSDL2_InitForMetal",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplSDL2_InitForMetal",
|
||||
"location": "imgui_impl_sdl:28",
|
||||
"ov_cimguiname": "ImGui_ImplSDL2_InitForMetal",
|
||||
"ret": "bool",
|
||||
"signature": "(SDL_Window*)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplSDL2_InitForOpenGL": [
|
||||
{
|
||||
"args": "(SDL_Window* window,void* sdl_gl_context)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": "SDL_Window*"
|
||||
},
|
||||
{
|
||||
"name": "sdl_gl_context",
|
||||
"type": "void*"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(SDL_Window* window,void* sdl_gl_context)",
|
||||
"call_args": "(window,sdl_gl_context)",
|
||||
"cimguiname": "ImGui_ImplSDL2_InitForOpenGL",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplSDL2_InitForOpenGL",
|
||||
"location": "imgui_impl_sdl:25",
|
||||
"ov_cimguiname": "ImGui_ImplSDL2_InitForOpenGL",
|
||||
"ret": "bool",
|
||||
"signature": "(SDL_Window*,void*)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplSDL2_InitForVulkan": [
|
||||
{
|
||||
"args": "(SDL_Window* window)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": "SDL_Window*"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(SDL_Window* window)",
|
||||
"call_args": "(window)",
|
||||
"cimguiname": "ImGui_ImplSDL2_InitForVulkan",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplSDL2_InitForVulkan",
|
||||
"location": "imgui_impl_sdl:26",
|
||||
"ov_cimguiname": "ImGui_ImplSDL2_InitForVulkan",
|
||||
"ret": "bool",
|
||||
"signature": "(SDL_Window*)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplSDL2_NewFrame": [
|
||||
{
|
||||
"args": "(SDL_Window* window)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": "SDL_Window*"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(SDL_Window* window)",
|
||||
"call_args": "(window)",
|
||||
"cimguiname": "ImGui_ImplSDL2_NewFrame",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplSDL2_NewFrame",
|
||||
"location": "imgui_impl_sdl:30",
|
||||
"ov_cimguiname": "ImGui_ImplSDL2_NewFrame",
|
||||
"ret": "void",
|
||||
"signature": "(SDL_Window*)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplSDL2_ProcessEvent": [
|
||||
{
|
||||
"args": "(const SDL_Event* event)",
|
||||
"argsT": [
|
||||
{
|
||||
"name": "event",
|
||||
"type": "const SDL_Event*"
|
||||
}
|
||||
],
|
||||
"argsoriginal": "(const SDL_Event* event)",
|
||||
"call_args": "(event)",
|
||||
"cimguiname": "ImGui_ImplSDL2_ProcessEvent",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplSDL2_ProcessEvent",
|
||||
"location": "imgui_impl_sdl:31",
|
||||
"ov_cimguiname": "ImGui_ImplSDL2_ProcessEvent",
|
||||
"ret": "bool",
|
||||
"signature": "(const SDL_Event*)",
|
||||
"stname": ""
|
||||
}
|
||||
],
|
||||
"ImGui_ImplSDL2_Shutdown": [
|
||||
{
|
||||
"args": "()",
|
||||
"argsT": [],
|
||||
"argsoriginal": "()",
|
||||
"call_args": "()",
|
||||
"cimguiname": "ImGui_ImplSDL2_Shutdown",
|
||||
"defaults": {},
|
||||
"funcname": "ImGui_ImplSDL2_Shutdown",
|
||||
"location": "imgui_impl_sdl:29",
|
||||
"ov_cimguiname": "ImGui_ImplSDL2_Shutdown",
|
||||
"ret": "void",
|
||||
"signature": "()",
|
||||
"stname": ""
|
||||
}
|
||||
]
|
||||
}
|
574
generator/output/impl_definitions.lua
Normal file
574
generator/output/impl_definitions.lua
Normal file
@@ -0,0 +1,574 @@
|
||||
local defs = {}
|
||||
defs["ImGui_ImplGlfw_CharCallback"] = {}
|
||||
defs["ImGui_ImplGlfw_CharCallback"][1] = {}
|
||||
defs["ImGui_ImplGlfw_CharCallback"][1]["args"] = "(GLFWwindow* window,unsigned int c)"
|
||||
defs["ImGui_ImplGlfw_CharCallback"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplGlfw_CharCallback"][1]["argsT"][1] = {}
|
||||
defs["ImGui_ImplGlfw_CharCallback"][1]["argsT"][1]["name"] = "window"
|
||||
defs["ImGui_ImplGlfw_CharCallback"][1]["argsT"][1]["type"] = "GLFWwindow*"
|
||||
defs["ImGui_ImplGlfw_CharCallback"][1]["argsT"][2] = {}
|
||||
defs["ImGui_ImplGlfw_CharCallback"][1]["argsT"][2]["name"] = "c"
|
||||
defs["ImGui_ImplGlfw_CharCallback"][1]["argsT"][2]["type"] = "unsigned int"
|
||||
defs["ImGui_ImplGlfw_CharCallback"][1]["argsoriginal"] = "(GLFWwindow* window,unsigned int c)"
|
||||
defs["ImGui_ImplGlfw_CharCallback"][1]["call_args"] = "(window,c)"
|
||||
defs["ImGui_ImplGlfw_CharCallback"][1]["cimguiname"] = "ImGui_ImplGlfw_CharCallback"
|
||||
defs["ImGui_ImplGlfw_CharCallback"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplGlfw_CharCallback"][1]["funcname"] = "ImGui_ImplGlfw_CharCallback"
|
||||
defs["ImGui_ImplGlfw_CharCallback"][1]["location"] = "imgui_impl_glfw:40"
|
||||
defs["ImGui_ImplGlfw_CharCallback"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_CharCallback"
|
||||
defs["ImGui_ImplGlfw_CharCallback"][1]["ret"] = "void"
|
||||
defs["ImGui_ImplGlfw_CharCallback"][1]["signature"] = "(GLFWwindow*,unsigned int)"
|
||||
defs["ImGui_ImplGlfw_CharCallback"][1]["stname"] = ""
|
||||
defs["ImGui_ImplGlfw_CharCallback"]["(GLFWwindow*,unsigned int)"] = defs["ImGui_ImplGlfw_CharCallback"][1]
|
||||
defs["ImGui_ImplGlfw_InitForOpenGL"] = {}
|
||||
defs["ImGui_ImplGlfw_InitForOpenGL"][1] = {}
|
||||
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["args"] = "(GLFWwindow* window,bool install_callbacks)"
|
||||
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["argsT"][1] = {}
|
||||
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["argsT"][1]["name"] = "window"
|
||||
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["argsT"][1]["type"] = "GLFWwindow*"
|
||||
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["argsT"][2] = {}
|
||||
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["argsT"][2]["name"] = "install_callbacks"
|
||||
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["argsT"][2]["type"] = "bool"
|
||||
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["argsoriginal"] = "(GLFWwindow* window,bool install_callbacks)"
|
||||
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["call_args"] = "(window,install_callbacks)"
|
||||
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["cimguiname"] = "ImGui_ImplGlfw_InitForOpenGL"
|
||||
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["funcname"] = "ImGui_ImplGlfw_InitForOpenGL"
|
||||
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["location"] = "imgui_impl_glfw:29"
|
||||
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_InitForOpenGL"
|
||||
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["ret"] = "bool"
|
||||
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["signature"] = "(GLFWwindow*,bool)"
|
||||
defs["ImGui_ImplGlfw_InitForOpenGL"][1]["stname"] = ""
|
||||
defs["ImGui_ImplGlfw_InitForOpenGL"]["(GLFWwindow*,bool)"] = defs["ImGui_ImplGlfw_InitForOpenGL"][1]
|
||||
defs["ImGui_ImplGlfw_InitForVulkan"] = {}
|
||||
defs["ImGui_ImplGlfw_InitForVulkan"][1] = {}
|
||||
defs["ImGui_ImplGlfw_InitForVulkan"][1]["args"] = "(GLFWwindow* window,bool install_callbacks)"
|
||||
defs["ImGui_ImplGlfw_InitForVulkan"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplGlfw_InitForVulkan"][1]["argsT"][1] = {}
|
||||
defs["ImGui_ImplGlfw_InitForVulkan"][1]["argsT"][1]["name"] = "window"
|
||||
defs["ImGui_ImplGlfw_InitForVulkan"][1]["argsT"][1]["type"] = "GLFWwindow*"
|
||||
defs["ImGui_ImplGlfw_InitForVulkan"][1]["argsT"][2] = {}
|
||||
defs["ImGui_ImplGlfw_InitForVulkan"][1]["argsT"][2]["name"] = "install_callbacks"
|
||||
defs["ImGui_ImplGlfw_InitForVulkan"][1]["argsT"][2]["type"] = "bool"
|
||||
defs["ImGui_ImplGlfw_InitForVulkan"][1]["argsoriginal"] = "(GLFWwindow* window,bool install_callbacks)"
|
||||
defs["ImGui_ImplGlfw_InitForVulkan"][1]["call_args"] = "(window,install_callbacks)"
|
||||
defs["ImGui_ImplGlfw_InitForVulkan"][1]["cimguiname"] = "ImGui_ImplGlfw_InitForVulkan"
|
||||
defs["ImGui_ImplGlfw_InitForVulkan"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplGlfw_InitForVulkan"][1]["funcname"] = "ImGui_ImplGlfw_InitForVulkan"
|
||||
defs["ImGui_ImplGlfw_InitForVulkan"][1]["location"] = "imgui_impl_glfw:30"
|
||||
defs["ImGui_ImplGlfw_InitForVulkan"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_InitForVulkan"
|
||||
defs["ImGui_ImplGlfw_InitForVulkan"][1]["ret"] = "bool"
|
||||
defs["ImGui_ImplGlfw_InitForVulkan"][1]["signature"] = "(GLFWwindow*,bool)"
|
||||
defs["ImGui_ImplGlfw_InitForVulkan"][1]["stname"] = ""
|
||||
defs["ImGui_ImplGlfw_InitForVulkan"]["(GLFWwindow*,bool)"] = defs["ImGui_ImplGlfw_InitForVulkan"][1]
|
||||
defs["ImGui_ImplGlfw_KeyCallback"] = {}
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1] = {}
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["args"] = "(GLFWwindow* window,int key,int scancode,int action,int mods)"
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["argsT"][1] = {}
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["argsT"][1]["name"] = "window"
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["argsT"][1]["type"] = "GLFWwindow*"
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["argsT"][2] = {}
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["argsT"][2]["name"] = "key"
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["argsT"][2]["type"] = "int"
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["argsT"][3] = {}
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["argsT"][3]["name"] = "scancode"
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["argsT"][3]["type"] = "int"
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["argsT"][4] = {}
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["argsT"][4]["name"] = "action"
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["argsT"][4]["type"] = "int"
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["argsT"][5] = {}
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["argsT"][5]["name"] = "mods"
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["argsT"][5]["type"] = "int"
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["argsoriginal"] = "(GLFWwindow* window,int key,int scancode,int action,int mods)"
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["call_args"] = "(window,key,scancode,action,mods)"
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["cimguiname"] = "ImGui_ImplGlfw_KeyCallback"
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["funcname"] = "ImGui_ImplGlfw_KeyCallback"
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["location"] = "imgui_impl_glfw:39"
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_KeyCallback"
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["ret"] = "void"
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["signature"] = "(GLFWwindow*,int,int,int,int)"
|
||||
defs["ImGui_ImplGlfw_KeyCallback"][1]["stname"] = ""
|
||||
defs["ImGui_ImplGlfw_KeyCallback"]["(GLFWwindow*,int,int,int,int)"] = defs["ImGui_ImplGlfw_KeyCallback"][1]
|
||||
defs["ImGui_ImplGlfw_MonitorCallback"] = {}
|
||||
defs["ImGui_ImplGlfw_MonitorCallback"][1] = {}
|
||||
defs["ImGui_ImplGlfw_MonitorCallback"][1]["args"] = "(GLFWmonitor* monitor,int event)"
|
||||
defs["ImGui_ImplGlfw_MonitorCallback"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplGlfw_MonitorCallback"][1]["argsT"][1] = {}
|
||||
defs["ImGui_ImplGlfw_MonitorCallback"][1]["argsT"][1]["name"] = "monitor"
|
||||
defs["ImGui_ImplGlfw_MonitorCallback"][1]["argsT"][1]["type"] = "GLFWmonitor*"
|
||||
defs["ImGui_ImplGlfw_MonitorCallback"][1]["argsT"][2] = {}
|
||||
defs["ImGui_ImplGlfw_MonitorCallback"][1]["argsT"][2]["name"] = "event"
|
||||
defs["ImGui_ImplGlfw_MonitorCallback"][1]["argsT"][2]["type"] = "int"
|
||||
defs["ImGui_ImplGlfw_MonitorCallback"][1]["argsoriginal"] = "(GLFWmonitor* monitor,int event)"
|
||||
defs["ImGui_ImplGlfw_MonitorCallback"][1]["call_args"] = "(monitor,event)"
|
||||
defs["ImGui_ImplGlfw_MonitorCallback"][1]["cimguiname"] = "ImGui_ImplGlfw_MonitorCallback"
|
||||
defs["ImGui_ImplGlfw_MonitorCallback"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplGlfw_MonitorCallback"][1]["funcname"] = "ImGui_ImplGlfw_MonitorCallback"
|
||||
defs["ImGui_ImplGlfw_MonitorCallback"][1]["location"] = "imgui_impl_glfw:41"
|
||||
defs["ImGui_ImplGlfw_MonitorCallback"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_MonitorCallback"
|
||||
defs["ImGui_ImplGlfw_MonitorCallback"][1]["ret"] = "void"
|
||||
defs["ImGui_ImplGlfw_MonitorCallback"][1]["signature"] = "(GLFWmonitor*,int)"
|
||||
defs["ImGui_ImplGlfw_MonitorCallback"][1]["stname"] = ""
|
||||
defs["ImGui_ImplGlfw_MonitorCallback"]["(GLFWmonitor*,int)"] = defs["ImGui_ImplGlfw_MonitorCallback"][1]
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"] = {}
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1] = {}
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["args"] = "(GLFWwindow* window,int button,int action,int mods)"
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["argsT"][1] = {}
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["argsT"][1]["name"] = "window"
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["argsT"][1]["type"] = "GLFWwindow*"
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["argsT"][2] = {}
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["argsT"][2]["name"] = "button"
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["argsT"][2]["type"] = "int"
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["argsT"][3] = {}
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["argsT"][3]["name"] = "action"
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["argsT"][3]["type"] = "int"
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["argsT"][4] = {}
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["argsT"][4]["name"] = "mods"
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["argsT"][4]["type"] = "int"
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["argsoriginal"] = "(GLFWwindow* window,int button,int action,int mods)"
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["call_args"] = "(window,button,action,mods)"
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["cimguiname"] = "ImGui_ImplGlfw_MouseButtonCallback"
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["funcname"] = "ImGui_ImplGlfw_MouseButtonCallback"
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["location"] = "imgui_impl_glfw:37"
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_MouseButtonCallback"
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["ret"] = "void"
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["signature"] = "(GLFWwindow*,int,int,int)"
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"][1]["stname"] = ""
|
||||
defs["ImGui_ImplGlfw_MouseButtonCallback"]["(GLFWwindow*,int,int,int)"] = defs["ImGui_ImplGlfw_MouseButtonCallback"][1]
|
||||
defs["ImGui_ImplGlfw_NewFrame"] = {}
|
||||
defs["ImGui_ImplGlfw_NewFrame"][1] = {}
|
||||
defs["ImGui_ImplGlfw_NewFrame"][1]["args"] = "()"
|
||||
defs["ImGui_ImplGlfw_NewFrame"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplGlfw_NewFrame"][1]["argsoriginal"] = "()"
|
||||
defs["ImGui_ImplGlfw_NewFrame"][1]["call_args"] = "()"
|
||||
defs["ImGui_ImplGlfw_NewFrame"][1]["cimguiname"] = "ImGui_ImplGlfw_NewFrame"
|
||||
defs["ImGui_ImplGlfw_NewFrame"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplGlfw_NewFrame"][1]["funcname"] = "ImGui_ImplGlfw_NewFrame"
|
||||
defs["ImGui_ImplGlfw_NewFrame"][1]["location"] = "imgui_impl_glfw:32"
|
||||
defs["ImGui_ImplGlfw_NewFrame"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_NewFrame"
|
||||
defs["ImGui_ImplGlfw_NewFrame"][1]["ret"] = "void"
|
||||
defs["ImGui_ImplGlfw_NewFrame"][1]["signature"] = "()"
|
||||
defs["ImGui_ImplGlfw_NewFrame"][1]["stname"] = ""
|
||||
defs["ImGui_ImplGlfw_NewFrame"]["()"] = defs["ImGui_ImplGlfw_NewFrame"][1]
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"] = {}
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1] = {}
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1]["args"] = "(GLFWwindow* window,double xoffset,double yoffset)"
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1]["argsT"][1] = {}
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1]["argsT"][1]["name"] = "window"
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1]["argsT"][1]["type"] = "GLFWwindow*"
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1]["argsT"][2] = {}
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1]["argsT"][2]["name"] = "xoffset"
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1]["argsT"][2]["type"] = "double"
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1]["argsT"][3] = {}
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1]["argsT"][3]["name"] = "yoffset"
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1]["argsT"][3]["type"] = "double"
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1]["argsoriginal"] = "(GLFWwindow* window,double xoffset,double yoffset)"
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1]["call_args"] = "(window,xoffset,yoffset)"
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1]["cimguiname"] = "ImGui_ImplGlfw_ScrollCallback"
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1]["funcname"] = "ImGui_ImplGlfw_ScrollCallback"
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1]["location"] = "imgui_impl_glfw:38"
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_ScrollCallback"
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1]["ret"] = "void"
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1]["signature"] = "(GLFWwindow*,double,double)"
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"][1]["stname"] = ""
|
||||
defs["ImGui_ImplGlfw_ScrollCallback"]["(GLFWwindow*,double,double)"] = defs["ImGui_ImplGlfw_ScrollCallback"][1]
|
||||
defs["ImGui_ImplGlfw_Shutdown"] = {}
|
||||
defs["ImGui_ImplGlfw_Shutdown"][1] = {}
|
||||
defs["ImGui_ImplGlfw_Shutdown"][1]["args"] = "()"
|
||||
defs["ImGui_ImplGlfw_Shutdown"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplGlfw_Shutdown"][1]["argsoriginal"] = "()"
|
||||
defs["ImGui_ImplGlfw_Shutdown"][1]["call_args"] = "()"
|
||||
defs["ImGui_ImplGlfw_Shutdown"][1]["cimguiname"] = "ImGui_ImplGlfw_Shutdown"
|
||||
defs["ImGui_ImplGlfw_Shutdown"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplGlfw_Shutdown"][1]["funcname"] = "ImGui_ImplGlfw_Shutdown"
|
||||
defs["ImGui_ImplGlfw_Shutdown"][1]["location"] = "imgui_impl_glfw:31"
|
||||
defs["ImGui_ImplGlfw_Shutdown"][1]["ov_cimguiname"] = "ImGui_ImplGlfw_Shutdown"
|
||||
defs["ImGui_ImplGlfw_Shutdown"][1]["ret"] = "void"
|
||||
defs["ImGui_ImplGlfw_Shutdown"][1]["signature"] = "()"
|
||||
defs["ImGui_ImplGlfw_Shutdown"][1]["stname"] = ""
|
||||
defs["ImGui_ImplGlfw_Shutdown"]["()"] = defs["ImGui_ImplGlfw_Shutdown"][1]
|
||||
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"] = {}
|
||||
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1] = {}
|
||||
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]["args"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]["argsoriginal"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]["call_args"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]["cimguiname"] = "ImGui_ImplOpenGL2_CreateDeviceObjects"
|
||||
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]["funcname"] = "ImGui_ImplOpenGL2_CreateDeviceObjects"
|
||||
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]["location"] = "imgui_impl_opengl2:31"
|
||||
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL2_CreateDeviceObjects"
|
||||
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]["ret"] = "bool"
|
||||
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]["signature"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]["stname"] = ""
|
||||
defs["ImGui_ImplOpenGL2_CreateDeviceObjects"]["()"] = defs["ImGui_ImplOpenGL2_CreateDeviceObjects"][1]
|
||||
defs["ImGui_ImplOpenGL2_CreateFontsTexture"] = {}
|
||||
defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1] = {}
|
||||
defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]["args"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]["argsoriginal"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]["call_args"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]["cimguiname"] = "ImGui_ImplOpenGL2_CreateFontsTexture"
|
||||
defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]["funcname"] = "ImGui_ImplOpenGL2_CreateFontsTexture"
|
||||
defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]["location"] = "imgui_impl_opengl2:29"
|
||||
defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL2_CreateFontsTexture"
|
||||
defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]["ret"] = "bool"
|
||||
defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]["signature"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]["stname"] = ""
|
||||
defs["ImGui_ImplOpenGL2_CreateFontsTexture"]["()"] = defs["ImGui_ImplOpenGL2_CreateFontsTexture"][1]
|
||||
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"] = {}
|
||||
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1] = {}
|
||||
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]["args"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]["argsoriginal"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]["call_args"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]["cimguiname"] = "ImGui_ImplOpenGL2_DestroyDeviceObjects"
|
||||
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]["funcname"] = "ImGui_ImplOpenGL2_DestroyDeviceObjects"
|
||||
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]["location"] = "imgui_impl_opengl2:32"
|
||||
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL2_DestroyDeviceObjects"
|
||||
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]["ret"] = "void"
|
||||
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]["signature"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]["stname"] = ""
|
||||
defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"]["()"] = defs["ImGui_ImplOpenGL2_DestroyDeviceObjects"][1]
|
||||
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"] = {}
|
||||
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1] = {}
|
||||
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]["args"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]["argsoriginal"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]["call_args"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]["cimguiname"] = "ImGui_ImplOpenGL2_DestroyFontsTexture"
|
||||
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]["funcname"] = "ImGui_ImplOpenGL2_DestroyFontsTexture"
|
||||
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]["location"] = "imgui_impl_opengl2:30"
|
||||
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL2_DestroyFontsTexture"
|
||||
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]["ret"] = "void"
|
||||
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]["signature"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]["stname"] = ""
|
||||
defs["ImGui_ImplOpenGL2_DestroyFontsTexture"]["()"] = defs["ImGui_ImplOpenGL2_DestroyFontsTexture"][1]
|
||||
defs["ImGui_ImplOpenGL2_Init"] = {}
|
||||
defs["ImGui_ImplOpenGL2_Init"][1] = {}
|
||||
defs["ImGui_ImplOpenGL2_Init"][1]["args"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_Init"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplOpenGL2_Init"][1]["argsoriginal"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_Init"][1]["call_args"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_Init"][1]["cimguiname"] = "ImGui_ImplOpenGL2_Init"
|
||||
defs["ImGui_ImplOpenGL2_Init"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplOpenGL2_Init"][1]["funcname"] = "ImGui_ImplOpenGL2_Init"
|
||||
defs["ImGui_ImplOpenGL2_Init"][1]["location"] = "imgui_impl_opengl2:23"
|
||||
defs["ImGui_ImplOpenGL2_Init"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL2_Init"
|
||||
defs["ImGui_ImplOpenGL2_Init"][1]["ret"] = "bool"
|
||||
defs["ImGui_ImplOpenGL2_Init"][1]["signature"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_Init"][1]["stname"] = ""
|
||||
defs["ImGui_ImplOpenGL2_Init"]["()"] = defs["ImGui_ImplOpenGL2_Init"][1]
|
||||
defs["ImGui_ImplOpenGL2_NewFrame"] = {}
|
||||
defs["ImGui_ImplOpenGL2_NewFrame"][1] = {}
|
||||
defs["ImGui_ImplOpenGL2_NewFrame"][1]["args"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_NewFrame"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplOpenGL2_NewFrame"][1]["argsoriginal"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_NewFrame"][1]["call_args"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_NewFrame"][1]["cimguiname"] = "ImGui_ImplOpenGL2_NewFrame"
|
||||
defs["ImGui_ImplOpenGL2_NewFrame"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplOpenGL2_NewFrame"][1]["funcname"] = "ImGui_ImplOpenGL2_NewFrame"
|
||||
defs["ImGui_ImplOpenGL2_NewFrame"][1]["location"] = "imgui_impl_opengl2:25"
|
||||
defs["ImGui_ImplOpenGL2_NewFrame"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL2_NewFrame"
|
||||
defs["ImGui_ImplOpenGL2_NewFrame"][1]["ret"] = "void"
|
||||
defs["ImGui_ImplOpenGL2_NewFrame"][1]["signature"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_NewFrame"][1]["stname"] = ""
|
||||
defs["ImGui_ImplOpenGL2_NewFrame"]["()"] = defs["ImGui_ImplOpenGL2_NewFrame"][1]
|
||||
defs["ImGui_ImplOpenGL2_RenderDrawData"] = {}
|
||||
defs["ImGui_ImplOpenGL2_RenderDrawData"][1] = {}
|
||||
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["args"] = "(ImDrawData* draw_data)"
|
||||
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["argsT"][1] = {}
|
||||
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["argsT"][1]["name"] = "draw_data"
|
||||
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["argsT"][1]["type"] = "ImDrawData*"
|
||||
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["argsoriginal"] = "(ImDrawData* draw_data)"
|
||||
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["call_args"] = "(draw_data)"
|
||||
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["cimguiname"] = "ImGui_ImplOpenGL2_RenderDrawData"
|
||||
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["funcname"] = "ImGui_ImplOpenGL2_RenderDrawData"
|
||||
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["location"] = "imgui_impl_opengl2:26"
|
||||
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL2_RenderDrawData"
|
||||
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["ret"] = "void"
|
||||
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["signature"] = "(ImDrawData*)"
|
||||
defs["ImGui_ImplOpenGL2_RenderDrawData"][1]["stname"] = ""
|
||||
defs["ImGui_ImplOpenGL2_RenderDrawData"]["(ImDrawData*)"] = defs["ImGui_ImplOpenGL2_RenderDrawData"][1]
|
||||
defs["ImGui_ImplOpenGL2_Shutdown"] = {}
|
||||
defs["ImGui_ImplOpenGL2_Shutdown"][1] = {}
|
||||
defs["ImGui_ImplOpenGL2_Shutdown"][1]["args"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_Shutdown"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplOpenGL2_Shutdown"][1]["argsoriginal"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_Shutdown"][1]["call_args"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_Shutdown"][1]["cimguiname"] = "ImGui_ImplOpenGL2_Shutdown"
|
||||
defs["ImGui_ImplOpenGL2_Shutdown"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplOpenGL2_Shutdown"][1]["funcname"] = "ImGui_ImplOpenGL2_Shutdown"
|
||||
defs["ImGui_ImplOpenGL2_Shutdown"][1]["location"] = "imgui_impl_opengl2:24"
|
||||
defs["ImGui_ImplOpenGL2_Shutdown"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL2_Shutdown"
|
||||
defs["ImGui_ImplOpenGL2_Shutdown"][1]["ret"] = "void"
|
||||
defs["ImGui_ImplOpenGL2_Shutdown"][1]["signature"] = "()"
|
||||
defs["ImGui_ImplOpenGL2_Shutdown"][1]["stname"] = ""
|
||||
defs["ImGui_ImplOpenGL2_Shutdown"]["()"] = defs["ImGui_ImplOpenGL2_Shutdown"][1]
|
||||
defs["ImGui_ImplOpenGL3_CreateDeviceObjects"] = {}
|
||||
defs["ImGui_ImplOpenGL3_CreateDeviceObjects"][1] = {}
|
||||
defs["ImGui_ImplOpenGL3_CreateDeviceObjects"][1]["args"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_CreateDeviceObjects"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplOpenGL3_CreateDeviceObjects"][1]["argsoriginal"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_CreateDeviceObjects"][1]["call_args"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_CreateDeviceObjects"][1]["cimguiname"] = "ImGui_ImplOpenGL3_CreateDeviceObjects"
|
||||
defs["ImGui_ImplOpenGL3_CreateDeviceObjects"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplOpenGL3_CreateDeviceObjects"][1]["funcname"] = "ImGui_ImplOpenGL3_CreateDeviceObjects"
|
||||
defs["ImGui_ImplOpenGL3_CreateDeviceObjects"][1]["location"] = "imgui_impl_opengl3:37"
|
||||
defs["ImGui_ImplOpenGL3_CreateDeviceObjects"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL3_CreateDeviceObjects"
|
||||
defs["ImGui_ImplOpenGL3_CreateDeviceObjects"][1]["ret"] = "bool"
|
||||
defs["ImGui_ImplOpenGL3_CreateDeviceObjects"][1]["signature"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_CreateDeviceObjects"][1]["stname"] = ""
|
||||
defs["ImGui_ImplOpenGL3_CreateDeviceObjects"]["()"] = defs["ImGui_ImplOpenGL3_CreateDeviceObjects"][1]
|
||||
defs["ImGui_ImplOpenGL3_CreateFontsTexture"] = {}
|
||||
defs["ImGui_ImplOpenGL3_CreateFontsTexture"][1] = {}
|
||||
defs["ImGui_ImplOpenGL3_CreateFontsTexture"][1]["args"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_CreateFontsTexture"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplOpenGL3_CreateFontsTexture"][1]["argsoriginal"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_CreateFontsTexture"][1]["call_args"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_CreateFontsTexture"][1]["cimguiname"] = "ImGui_ImplOpenGL3_CreateFontsTexture"
|
||||
defs["ImGui_ImplOpenGL3_CreateFontsTexture"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplOpenGL3_CreateFontsTexture"][1]["funcname"] = "ImGui_ImplOpenGL3_CreateFontsTexture"
|
||||
defs["ImGui_ImplOpenGL3_CreateFontsTexture"][1]["location"] = "imgui_impl_opengl3:35"
|
||||
defs["ImGui_ImplOpenGL3_CreateFontsTexture"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL3_CreateFontsTexture"
|
||||
defs["ImGui_ImplOpenGL3_CreateFontsTexture"][1]["ret"] = "bool"
|
||||
defs["ImGui_ImplOpenGL3_CreateFontsTexture"][1]["signature"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_CreateFontsTexture"][1]["stname"] = ""
|
||||
defs["ImGui_ImplOpenGL3_CreateFontsTexture"]["()"] = defs["ImGui_ImplOpenGL3_CreateFontsTexture"][1]
|
||||
defs["ImGui_ImplOpenGL3_DestroyDeviceObjects"] = {}
|
||||
defs["ImGui_ImplOpenGL3_DestroyDeviceObjects"][1] = {}
|
||||
defs["ImGui_ImplOpenGL3_DestroyDeviceObjects"][1]["args"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_DestroyDeviceObjects"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplOpenGL3_DestroyDeviceObjects"][1]["argsoriginal"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_DestroyDeviceObjects"][1]["call_args"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_DestroyDeviceObjects"][1]["cimguiname"] = "ImGui_ImplOpenGL3_DestroyDeviceObjects"
|
||||
defs["ImGui_ImplOpenGL3_DestroyDeviceObjects"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplOpenGL3_DestroyDeviceObjects"][1]["funcname"] = "ImGui_ImplOpenGL3_DestroyDeviceObjects"
|
||||
defs["ImGui_ImplOpenGL3_DestroyDeviceObjects"][1]["location"] = "imgui_impl_opengl3:38"
|
||||
defs["ImGui_ImplOpenGL3_DestroyDeviceObjects"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL3_DestroyDeviceObjects"
|
||||
defs["ImGui_ImplOpenGL3_DestroyDeviceObjects"][1]["ret"] = "void"
|
||||
defs["ImGui_ImplOpenGL3_DestroyDeviceObjects"][1]["signature"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_DestroyDeviceObjects"][1]["stname"] = ""
|
||||
defs["ImGui_ImplOpenGL3_DestroyDeviceObjects"]["()"] = defs["ImGui_ImplOpenGL3_DestroyDeviceObjects"][1]
|
||||
defs["ImGui_ImplOpenGL3_DestroyFontsTexture"] = {}
|
||||
defs["ImGui_ImplOpenGL3_DestroyFontsTexture"][1] = {}
|
||||
defs["ImGui_ImplOpenGL3_DestroyFontsTexture"][1]["args"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_DestroyFontsTexture"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplOpenGL3_DestroyFontsTexture"][1]["argsoriginal"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_DestroyFontsTexture"][1]["call_args"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_DestroyFontsTexture"][1]["cimguiname"] = "ImGui_ImplOpenGL3_DestroyFontsTexture"
|
||||
defs["ImGui_ImplOpenGL3_DestroyFontsTexture"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplOpenGL3_DestroyFontsTexture"][1]["funcname"] = "ImGui_ImplOpenGL3_DestroyFontsTexture"
|
||||
defs["ImGui_ImplOpenGL3_DestroyFontsTexture"][1]["location"] = "imgui_impl_opengl3:36"
|
||||
defs["ImGui_ImplOpenGL3_DestroyFontsTexture"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL3_DestroyFontsTexture"
|
||||
defs["ImGui_ImplOpenGL3_DestroyFontsTexture"][1]["ret"] = "void"
|
||||
defs["ImGui_ImplOpenGL3_DestroyFontsTexture"][1]["signature"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_DestroyFontsTexture"][1]["stname"] = ""
|
||||
defs["ImGui_ImplOpenGL3_DestroyFontsTexture"]["()"] = defs["ImGui_ImplOpenGL3_DestroyFontsTexture"][1]
|
||||
defs["ImGui_ImplOpenGL3_Init"] = {}
|
||||
defs["ImGui_ImplOpenGL3_Init"][1] = {}
|
||||
defs["ImGui_ImplOpenGL3_Init"][1]["args"] = "(const char* glsl_version)"
|
||||
defs["ImGui_ImplOpenGL3_Init"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplOpenGL3_Init"][1]["argsT"][1] = {}
|
||||
defs["ImGui_ImplOpenGL3_Init"][1]["argsT"][1]["name"] = "glsl_version"
|
||||
defs["ImGui_ImplOpenGL3_Init"][1]["argsT"][1]["type"] = "const char*"
|
||||
defs["ImGui_ImplOpenGL3_Init"][1]["argsoriginal"] = "(const char* glsl_version=((void*)0))"
|
||||
defs["ImGui_ImplOpenGL3_Init"][1]["call_args"] = "(glsl_version)"
|
||||
defs["ImGui_ImplOpenGL3_Init"][1]["cimguiname"] = "ImGui_ImplOpenGL3_Init"
|
||||
defs["ImGui_ImplOpenGL3_Init"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplOpenGL3_Init"][1]["defaults"]["glsl_version"] = "((void*)0)"
|
||||
defs["ImGui_ImplOpenGL3_Init"][1]["funcname"] = "ImGui_ImplOpenGL3_Init"
|
||||
defs["ImGui_ImplOpenGL3_Init"][1]["location"] = "imgui_impl_opengl3:29"
|
||||
defs["ImGui_ImplOpenGL3_Init"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL3_Init"
|
||||
defs["ImGui_ImplOpenGL3_Init"][1]["ret"] = "bool"
|
||||
defs["ImGui_ImplOpenGL3_Init"][1]["signature"] = "(const char*)"
|
||||
defs["ImGui_ImplOpenGL3_Init"][1]["stname"] = ""
|
||||
defs["ImGui_ImplOpenGL3_Init"]["(const char*)"] = defs["ImGui_ImplOpenGL3_Init"][1]
|
||||
defs["ImGui_ImplOpenGL3_NewFrame"] = {}
|
||||
defs["ImGui_ImplOpenGL3_NewFrame"][1] = {}
|
||||
defs["ImGui_ImplOpenGL3_NewFrame"][1]["args"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_NewFrame"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplOpenGL3_NewFrame"][1]["argsoriginal"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_NewFrame"][1]["call_args"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_NewFrame"][1]["cimguiname"] = "ImGui_ImplOpenGL3_NewFrame"
|
||||
defs["ImGui_ImplOpenGL3_NewFrame"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplOpenGL3_NewFrame"][1]["funcname"] = "ImGui_ImplOpenGL3_NewFrame"
|
||||
defs["ImGui_ImplOpenGL3_NewFrame"][1]["location"] = "imgui_impl_opengl3:31"
|
||||
defs["ImGui_ImplOpenGL3_NewFrame"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL3_NewFrame"
|
||||
defs["ImGui_ImplOpenGL3_NewFrame"][1]["ret"] = "void"
|
||||
defs["ImGui_ImplOpenGL3_NewFrame"][1]["signature"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_NewFrame"][1]["stname"] = ""
|
||||
defs["ImGui_ImplOpenGL3_NewFrame"]["()"] = defs["ImGui_ImplOpenGL3_NewFrame"][1]
|
||||
defs["ImGui_ImplOpenGL3_RenderDrawData"] = {}
|
||||
defs["ImGui_ImplOpenGL3_RenderDrawData"][1] = {}
|
||||
defs["ImGui_ImplOpenGL3_RenderDrawData"][1]["args"] = "(ImDrawData* draw_data)"
|
||||
defs["ImGui_ImplOpenGL3_RenderDrawData"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplOpenGL3_RenderDrawData"][1]["argsT"][1] = {}
|
||||
defs["ImGui_ImplOpenGL3_RenderDrawData"][1]["argsT"][1]["name"] = "draw_data"
|
||||
defs["ImGui_ImplOpenGL3_RenderDrawData"][1]["argsT"][1]["type"] = "ImDrawData*"
|
||||
defs["ImGui_ImplOpenGL3_RenderDrawData"][1]["argsoriginal"] = "(ImDrawData* draw_data)"
|
||||
defs["ImGui_ImplOpenGL3_RenderDrawData"][1]["call_args"] = "(draw_data)"
|
||||
defs["ImGui_ImplOpenGL3_RenderDrawData"][1]["cimguiname"] = "ImGui_ImplOpenGL3_RenderDrawData"
|
||||
defs["ImGui_ImplOpenGL3_RenderDrawData"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplOpenGL3_RenderDrawData"][1]["funcname"] = "ImGui_ImplOpenGL3_RenderDrawData"
|
||||
defs["ImGui_ImplOpenGL3_RenderDrawData"][1]["location"] = "imgui_impl_opengl3:32"
|
||||
defs["ImGui_ImplOpenGL3_RenderDrawData"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL3_RenderDrawData"
|
||||
defs["ImGui_ImplOpenGL3_RenderDrawData"][1]["ret"] = "void"
|
||||
defs["ImGui_ImplOpenGL3_RenderDrawData"][1]["signature"] = "(ImDrawData*)"
|
||||
defs["ImGui_ImplOpenGL3_RenderDrawData"][1]["stname"] = ""
|
||||
defs["ImGui_ImplOpenGL3_RenderDrawData"]["(ImDrawData*)"] = defs["ImGui_ImplOpenGL3_RenderDrawData"][1]
|
||||
defs["ImGui_ImplOpenGL3_Shutdown"] = {}
|
||||
defs["ImGui_ImplOpenGL3_Shutdown"][1] = {}
|
||||
defs["ImGui_ImplOpenGL3_Shutdown"][1]["args"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_Shutdown"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplOpenGL3_Shutdown"][1]["argsoriginal"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_Shutdown"][1]["call_args"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_Shutdown"][1]["cimguiname"] = "ImGui_ImplOpenGL3_Shutdown"
|
||||
defs["ImGui_ImplOpenGL3_Shutdown"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplOpenGL3_Shutdown"][1]["funcname"] = "ImGui_ImplOpenGL3_Shutdown"
|
||||
defs["ImGui_ImplOpenGL3_Shutdown"][1]["location"] = "imgui_impl_opengl3:30"
|
||||
defs["ImGui_ImplOpenGL3_Shutdown"][1]["ov_cimguiname"] = "ImGui_ImplOpenGL3_Shutdown"
|
||||
defs["ImGui_ImplOpenGL3_Shutdown"][1]["ret"] = "void"
|
||||
defs["ImGui_ImplOpenGL3_Shutdown"][1]["signature"] = "()"
|
||||
defs["ImGui_ImplOpenGL3_Shutdown"][1]["stname"] = ""
|
||||
defs["ImGui_ImplOpenGL3_Shutdown"]["()"] = defs["ImGui_ImplOpenGL3_Shutdown"][1]
|
||||
defs["ImGui_ImplSDL2_InitForD3D"] = {}
|
||||
defs["ImGui_ImplSDL2_InitForD3D"][1] = {}
|
||||
defs["ImGui_ImplSDL2_InitForD3D"][1]["args"] = "(SDL_Window* window)"
|
||||
defs["ImGui_ImplSDL2_InitForD3D"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplSDL2_InitForD3D"][1]["argsT"][1] = {}
|
||||
defs["ImGui_ImplSDL2_InitForD3D"][1]["argsT"][1]["name"] = "window"
|
||||
defs["ImGui_ImplSDL2_InitForD3D"][1]["argsT"][1]["type"] = "SDL_Window*"
|
||||
defs["ImGui_ImplSDL2_InitForD3D"][1]["argsoriginal"] = "(SDL_Window* window)"
|
||||
defs["ImGui_ImplSDL2_InitForD3D"][1]["call_args"] = "(window)"
|
||||
defs["ImGui_ImplSDL2_InitForD3D"][1]["cimguiname"] = "ImGui_ImplSDL2_InitForD3D"
|
||||
defs["ImGui_ImplSDL2_InitForD3D"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplSDL2_InitForD3D"][1]["funcname"] = "ImGui_ImplSDL2_InitForD3D"
|
||||
defs["ImGui_ImplSDL2_InitForD3D"][1]["location"] = "imgui_impl_sdl:27"
|
||||
defs["ImGui_ImplSDL2_InitForD3D"][1]["ov_cimguiname"] = "ImGui_ImplSDL2_InitForD3D"
|
||||
defs["ImGui_ImplSDL2_InitForD3D"][1]["ret"] = "bool"
|
||||
defs["ImGui_ImplSDL2_InitForD3D"][1]["signature"] = "(SDL_Window*)"
|
||||
defs["ImGui_ImplSDL2_InitForD3D"][1]["stname"] = ""
|
||||
defs["ImGui_ImplSDL2_InitForD3D"]["(SDL_Window*)"] = defs["ImGui_ImplSDL2_InitForD3D"][1]
|
||||
defs["ImGui_ImplSDL2_InitForMetal"] = {}
|
||||
defs["ImGui_ImplSDL2_InitForMetal"][1] = {}
|
||||
defs["ImGui_ImplSDL2_InitForMetal"][1]["args"] = "(SDL_Window* window)"
|
||||
defs["ImGui_ImplSDL2_InitForMetal"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplSDL2_InitForMetal"][1]["argsT"][1] = {}
|
||||
defs["ImGui_ImplSDL2_InitForMetal"][1]["argsT"][1]["name"] = "window"
|
||||
defs["ImGui_ImplSDL2_InitForMetal"][1]["argsT"][1]["type"] = "SDL_Window*"
|
||||
defs["ImGui_ImplSDL2_InitForMetal"][1]["argsoriginal"] = "(SDL_Window* window)"
|
||||
defs["ImGui_ImplSDL2_InitForMetal"][1]["call_args"] = "(window)"
|
||||
defs["ImGui_ImplSDL2_InitForMetal"][1]["cimguiname"] = "ImGui_ImplSDL2_InitForMetal"
|
||||
defs["ImGui_ImplSDL2_InitForMetal"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplSDL2_InitForMetal"][1]["funcname"] = "ImGui_ImplSDL2_InitForMetal"
|
||||
defs["ImGui_ImplSDL2_InitForMetal"][1]["location"] = "imgui_impl_sdl:28"
|
||||
defs["ImGui_ImplSDL2_InitForMetal"][1]["ov_cimguiname"] = "ImGui_ImplSDL2_InitForMetal"
|
||||
defs["ImGui_ImplSDL2_InitForMetal"][1]["ret"] = "bool"
|
||||
defs["ImGui_ImplSDL2_InitForMetal"][1]["signature"] = "(SDL_Window*)"
|
||||
defs["ImGui_ImplSDL2_InitForMetal"][1]["stname"] = ""
|
||||
defs["ImGui_ImplSDL2_InitForMetal"]["(SDL_Window*)"] = defs["ImGui_ImplSDL2_InitForMetal"][1]
|
||||
defs["ImGui_ImplSDL2_InitForOpenGL"] = {}
|
||||
defs["ImGui_ImplSDL2_InitForOpenGL"][1] = {}
|
||||
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["args"] = "(SDL_Window* window,void* sdl_gl_context)"
|
||||
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["argsT"][1] = {}
|
||||
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["argsT"][1]["name"] = "window"
|
||||
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["argsT"][1]["type"] = "SDL_Window*"
|
||||
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["argsT"][2] = {}
|
||||
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["argsT"][2]["name"] = "sdl_gl_context"
|
||||
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["argsT"][2]["type"] = "void*"
|
||||
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["argsoriginal"] = "(SDL_Window* window,void* sdl_gl_context)"
|
||||
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["call_args"] = "(window,sdl_gl_context)"
|
||||
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["cimguiname"] = "ImGui_ImplSDL2_InitForOpenGL"
|
||||
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["funcname"] = "ImGui_ImplSDL2_InitForOpenGL"
|
||||
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["location"] = "imgui_impl_sdl:25"
|
||||
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["ov_cimguiname"] = "ImGui_ImplSDL2_InitForOpenGL"
|
||||
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["ret"] = "bool"
|
||||
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["signature"] = "(SDL_Window*,void*)"
|
||||
defs["ImGui_ImplSDL2_InitForOpenGL"][1]["stname"] = ""
|
||||
defs["ImGui_ImplSDL2_InitForOpenGL"]["(SDL_Window*,void*)"] = defs["ImGui_ImplSDL2_InitForOpenGL"][1]
|
||||
defs["ImGui_ImplSDL2_InitForVulkan"] = {}
|
||||
defs["ImGui_ImplSDL2_InitForVulkan"][1] = {}
|
||||
defs["ImGui_ImplSDL2_InitForVulkan"][1]["args"] = "(SDL_Window* window)"
|
||||
defs["ImGui_ImplSDL2_InitForVulkan"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplSDL2_InitForVulkan"][1]["argsT"][1] = {}
|
||||
defs["ImGui_ImplSDL2_InitForVulkan"][1]["argsT"][1]["name"] = "window"
|
||||
defs["ImGui_ImplSDL2_InitForVulkan"][1]["argsT"][1]["type"] = "SDL_Window*"
|
||||
defs["ImGui_ImplSDL2_InitForVulkan"][1]["argsoriginal"] = "(SDL_Window* window)"
|
||||
defs["ImGui_ImplSDL2_InitForVulkan"][1]["call_args"] = "(window)"
|
||||
defs["ImGui_ImplSDL2_InitForVulkan"][1]["cimguiname"] = "ImGui_ImplSDL2_InitForVulkan"
|
||||
defs["ImGui_ImplSDL2_InitForVulkan"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplSDL2_InitForVulkan"][1]["funcname"] = "ImGui_ImplSDL2_InitForVulkan"
|
||||
defs["ImGui_ImplSDL2_InitForVulkan"][1]["location"] = "imgui_impl_sdl:26"
|
||||
defs["ImGui_ImplSDL2_InitForVulkan"][1]["ov_cimguiname"] = "ImGui_ImplSDL2_InitForVulkan"
|
||||
defs["ImGui_ImplSDL2_InitForVulkan"][1]["ret"] = "bool"
|
||||
defs["ImGui_ImplSDL2_InitForVulkan"][1]["signature"] = "(SDL_Window*)"
|
||||
defs["ImGui_ImplSDL2_InitForVulkan"][1]["stname"] = ""
|
||||
defs["ImGui_ImplSDL2_InitForVulkan"]["(SDL_Window*)"] = defs["ImGui_ImplSDL2_InitForVulkan"][1]
|
||||
defs["ImGui_ImplSDL2_NewFrame"] = {}
|
||||
defs["ImGui_ImplSDL2_NewFrame"][1] = {}
|
||||
defs["ImGui_ImplSDL2_NewFrame"][1]["args"] = "(SDL_Window* window)"
|
||||
defs["ImGui_ImplSDL2_NewFrame"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplSDL2_NewFrame"][1]["argsT"][1] = {}
|
||||
defs["ImGui_ImplSDL2_NewFrame"][1]["argsT"][1]["name"] = "window"
|
||||
defs["ImGui_ImplSDL2_NewFrame"][1]["argsT"][1]["type"] = "SDL_Window*"
|
||||
defs["ImGui_ImplSDL2_NewFrame"][1]["argsoriginal"] = "(SDL_Window* window)"
|
||||
defs["ImGui_ImplSDL2_NewFrame"][1]["call_args"] = "(window)"
|
||||
defs["ImGui_ImplSDL2_NewFrame"][1]["cimguiname"] = "ImGui_ImplSDL2_NewFrame"
|
||||
defs["ImGui_ImplSDL2_NewFrame"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplSDL2_NewFrame"][1]["funcname"] = "ImGui_ImplSDL2_NewFrame"
|
||||
defs["ImGui_ImplSDL2_NewFrame"][1]["location"] = "imgui_impl_sdl:30"
|
||||
defs["ImGui_ImplSDL2_NewFrame"][1]["ov_cimguiname"] = "ImGui_ImplSDL2_NewFrame"
|
||||
defs["ImGui_ImplSDL2_NewFrame"][1]["ret"] = "void"
|
||||
defs["ImGui_ImplSDL2_NewFrame"][1]["signature"] = "(SDL_Window*)"
|
||||
defs["ImGui_ImplSDL2_NewFrame"][1]["stname"] = ""
|
||||
defs["ImGui_ImplSDL2_NewFrame"]["(SDL_Window*)"] = defs["ImGui_ImplSDL2_NewFrame"][1]
|
||||
defs["ImGui_ImplSDL2_ProcessEvent"] = {}
|
||||
defs["ImGui_ImplSDL2_ProcessEvent"][1] = {}
|
||||
defs["ImGui_ImplSDL2_ProcessEvent"][1]["args"] = "(const SDL_Event* event)"
|
||||
defs["ImGui_ImplSDL2_ProcessEvent"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplSDL2_ProcessEvent"][1]["argsT"][1] = {}
|
||||
defs["ImGui_ImplSDL2_ProcessEvent"][1]["argsT"][1]["name"] = "event"
|
||||
defs["ImGui_ImplSDL2_ProcessEvent"][1]["argsT"][1]["type"] = "const SDL_Event*"
|
||||
defs["ImGui_ImplSDL2_ProcessEvent"][1]["argsoriginal"] = "(const SDL_Event* event)"
|
||||
defs["ImGui_ImplSDL2_ProcessEvent"][1]["call_args"] = "(event)"
|
||||
defs["ImGui_ImplSDL2_ProcessEvent"][1]["cimguiname"] = "ImGui_ImplSDL2_ProcessEvent"
|
||||
defs["ImGui_ImplSDL2_ProcessEvent"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplSDL2_ProcessEvent"][1]["funcname"] = "ImGui_ImplSDL2_ProcessEvent"
|
||||
defs["ImGui_ImplSDL2_ProcessEvent"][1]["location"] = "imgui_impl_sdl:31"
|
||||
defs["ImGui_ImplSDL2_ProcessEvent"][1]["ov_cimguiname"] = "ImGui_ImplSDL2_ProcessEvent"
|
||||
defs["ImGui_ImplSDL2_ProcessEvent"][1]["ret"] = "bool"
|
||||
defs["ImGui_ImplSDL2_ProcessEvent"][1]["signature"] = "(const SDL_Event*)"
|
||||
defs["ImGui_ImplSDL2_ProcessEvent"][1]["stname"] = ""
|
||||
defs["ImGui_ImplSDL2_ProcessEvent"]["(const SDL_Event*)"] = defs["ImGui_ImplSDL2_ProcessEvent"][1]
|
||||
defs["ImGui_ImplSDL2_Shutdown"] = {}
|
||||
defs["ImGui_ImplSDL2_Shutdown"][1] = {}
|
||||
defs["ImGui_ImplSDL2_Shutdown"][1]["args"] = "()"
|
||||
defs["ImGui_ImplSDL2_Shutdown"][1]["argsT"] = {}
|
||||
defs["ImGui_ImplSDL2_Shutdown"][1]["argsoriginal"] = "()"
|
||||
defs["ImGui_ImplSDL2_Shutdown"][1]["call_args"] = "()"
|
||||
defs["ImGui_ImplSDL2_Shutdown"][1]["cimguiname"] = "ImGui_ImplSDL2_Shutdown"
|
||||
defs["ImGui_ImplSDL2_Shutdown"][1]["defaults"] = {}
|
||||
defs["ImGui_ImplSDL2_Shutdown"][1]["funcname"] = "ImGui_ImplSDL2_Shutdown"
|
||||
defs["ImGui_ImplSDL2_Shutdown"][1]["location"] = "imgui_impl_sdl:29"
|
||||
defs["ImGui_ImplSDL2_Shutdown"][1]["ov_cimguiname"] = "ImGui_ImplSDL2_Shutdown"
|
||||
defs["ImGui_ImplSDL2_Shutdown"][1]["ret"] = "void"
|
||||
defs["ImGui_ImplSDL2_Shutdown"][1]["signature"] = "()"
|
||||
defs["ImGui_ImplSDL2_Shutdown"][1]["stname"] = ""
|
||||
defs["ImGui_ImplSDL2_Shutdown"]["()"] = defs["ImGui_ImplSDL2_Shutdown"][1]
|
||||
|
||||
return defs
|
227
generator/output/overloads.txt
Normal file
227
generator/output/overloads.txt
Normal file
@@ -0,0 +1,227 @@
|
||||
----------------overloadings---------------------------
|
||||
ImColor_ImColor 5
|
||||
1 nil ImColor_ImColorNil ()
|
||||
2 nil ImColor_ImColorInt (int,int,int,int)
|
||||
3 nil ImColor_ImColorU32 (ImU32)
|
||||
4 nil ImColor_ImColorFloat (float,float,float,float)
|
||||
5 nil ImColor_ImColorVec4 (const ImVec4)
|
||||
ImDrawList_AddText 2
|
||||
1 void ImDrawList_AddTextVec2 (const ImVec2,ImU32,const char*,const char*)
|
||||
2 void ImDrawList_AddTextFontPtr (const ImFont*,float,const ImVec2,ImU32,const char*,const char*,float,const ImVec4*)
|
||||
ImGuiPtrOrIndex_ImGuiPtrOrIndex 2
|
||||
1 nil ImGuiPtrOrIndex_ImGuiPtrOrIndexPtr (void*)
|
||||
2 nil ImGuiPtrOrIndex_ImGuiPtrOrIndexInt (int)
|
||||
ImGuiStoragePair_ImGuiStoragePair 3
|
||||
1 nil ImGuiStoragePair_ImGuiStoragePairInt (ImGuiID,int)
|
||||
2 nil ImGuiStoragePair_ImGuiStoragePairFloat (ImGuiID,float)
|
||||
3 nil ImGuiStoragePair_ImGuiStoragePairPtr (ImGuiID,void*)
|
||||
ImGuiStyleMod_ImGuiStyleMod 3
|
||||
1 nil ImGuiStyleMod_ImGuiStyleModInt (ImGuiStyleVar,int)
|
||||
2 nil ImGuiStyleMod_ImGuiStyleModFloat (ImGuiStyleVar,float)
|
||||
3 nil ImGuiStyleMod_ImGuiStyleModVec2 (ImGuiStyleVar,ImVec2)
|
||||
ImGuiTextRange_ImGuiTextRange 2
|
||||
1 nil ImGuiTextRange_ImGuiTextRangeNil ()
|
||||
2 nil ImGuiTextRange_ImGuiTextRangeStr (const char*,const char*)
|
||||
ImGuiWindow_GetID 3
|
||||
1 ImGuiID ImGuiWindow_GetIDStr (const char*,const char*)
|
||||
2 ImGuiID ImGuiWindow_GetIDPtr (const void*)
|
||||
3 ImGuiID ImGuiWindow_GetIDInt (int)
|
||||
ImGuiWindow_GetIDNoKeepAlive 3
|
||||
1 ImGuiID ImGuiWindow_GetIDNoKeepAliveStr (const char*,const char*)
|
||||
2 ImGuiID ImGuiWindow_GetIDNoKeepAlivePtr (const void*)
|
||||
3 ImGuiID ImGuiWindow_GetIDNoKeepAliveInt (int)
|
||||
ImPool_Remove 2
|
||||
1 void ImPool_RemoveTPtr (ImGuiID,const T*)
|
||||
2 void ImPool_RemovePoolIdx (ImGuiID,ImPoolIdx)
|
||||
ImRect_Add 2
|
||||
1 void ImRect_AddVec2 (const ImVec2)
|
||||
2 void ImRect_AddRect (const ImRect)
|
||||
ImRect_Contains 2
|
||||
1 bool ImRect_ContainsVec2 (const ImVec2)const
|
||||
2 bool ImRect_ContainsRect (const ImRect)const
|
||||
ImRect_Expand 2
|
||||
1 void ImRect_ExpandFloat (const float)
|
||||
2 void ImRect_ExpandVec2 (const ImVec2)
|
||||
ImRect_ImRect 4
|
||||
1 nil ImRect_ImRectNil ()
|
||||
2 nil ImRect_ImRectVec2 (const ImVec2,const ImVec2)
|
||||
3 nil ImRect_ImRectVec4 (const ImVec4)
|
||||
4 nil ImRect_ImRectFloat (float,float,float,float)
|
||||
ImVec1_ImVec1 2
|
||||
1 nil ImVec1_ImVec1Nil ()
|
||||
2 nil ImVec1_ImVec1Float (float)
|
||||
ImVec2_ImVec2 2
|
||||
1 nil ImVec2_ImVec2Nil ()
|
||||
2 nil ImVec2_ImVec2Float (float,float)
|
||||
ImVec2ih_ImVec2ih 3
|
||||
1 nil ImVec2ih_ImVec2ihNil ()
|
||||
2 nil ImVec2ih_ImVec2ihshort (short,short)
|
||||
3 nil ImVec2ih_ImVec2ihVec2 (const ImVec2)
|
||||
ImVec4_ImVec4 2
|
||||
1 nil ImVec4_ImVec4Nil ()
|
||||
2 nil ImVec4_ImVec4Float (float,float,float,float)
|
||||
ImVector_ImVector 2
|
||||
1 nil ImVector_ImVectorNil ()
|
||||
2 nil ImVector_ImVectorVector (const ImVector)
|
||||
ImVector_back 2
|
||||
1 T* ImVector_backNil ()
|
||||
2 const T* ImVector_back_const ()const
|
||||
ImVector_begin 2
|
||||
1 T* ImVector_beginNil ()
|
||||
2 const T* ImVector_begin_const ()const
|
||||
ImVector_end 2
|
||||
1 T* ImVector_endNil ()
|
||||
2 const T* ImVector_end_const ()const
|
||||
ImVector_erase 2
|
||||
1 T* ImVector_eraseNil (const T*)
|
||||
2 T* ImVector_eraseTPtr (const T*,const T*)
|
||||
ImVector_find 2
|
||||
1 T* ImVector_findNil (const T)
|
||||
2 const T* ImVector_find_const (const T)const
|
||||
ImVector_front 2
|
||||
1 T* ImVector_frontNil ()
|
||||
2 const T* ImVector_front_const ()const
|
||||
ImVector_resize 2
|
||||
1 void ImVector_resizeNil (int)
|
||||
2 void ImVector_resizeT (int,const T)
|
||||
igBeginChild 2
|
||||
1 bool igBeginChildStr (const char*,const ImVec2,bool,ImGuiWindowFlags)
|
||||
2 bool igBeginChildID (ImGuiID,const ImVec2,bool,ImGuiWindowFlags)
|
||||
igCollapsingHeader 2
|
||||
1 bool igCollapsingHeaderTreeNodeFlags (const char*,ImGuiTreeNodeFlags)
|
||||
2 bool igCollapsingHeaderBoolPtr (const char*,bool*,ImGuiTreeNodeFlags)
|
||||
igCombo 3
|
||||
1 bool igComboStr_arr (const char*,int*,const char* const[],int,int)
|
||||
2 bool igComboStr (const char*,int*,const char*,int)
|
||||
3 bool igComboFnBoolPtr (const char*,int*,bool(*)(void*,int,const char**),void*,int,int)
|
||||
igGetBackgroundDrawList 2
|
||||
1 ImDrawList* igGetBackgroundDrawListNil ()
|
||||
2 ImDrawList* igGetBackgroundDrawListViewportPtr (ImGuiViewport*)
|
||||
igGetColorU32 3
|
||||
1 ImU32 igGetColorU32Col (ImGuiCol,float)
|
||||
2 ImU32 igGetColorU32Vec4 (const ImVec4)
|
||||
3 ImU32 igGetColorU32U32 (ImU32)
|
||||
igGetForegroundDrawList 3
|
||||
1 ImDrawList* igGetForegroundDrawListNil ()
|
||||
2 ImDrawList* igGetForegroundDrawListViewportPtr (ImGuiViewport*)
|
||||
3 ImDrawList* igGetForegroundDrawListWindowPtr (ImGuiWindow*)
|
||||
igGetID 3
|
||||
1 ImGuiID igGetIDStr (const char*)
|
||||
2 ImGuiID igGetIDStrStr (const char*,const char*)
|
||||
3 ImGuiID igGetIDPtr (const void*)
|
||||
igImAbs 2
|
||||
1 float igImAbsFloat (float)
|
||||
2 double igImAbsdouble (double)
|
||||
igImFloor 2
|
||||
1 float igImFloorFloat (float)
|
||||
2 ImVec2 igImFloorVec2 (const ImVec2)
|
||||
igImLengthSqr 2
|
||||
1 float igImLengthSqrVec2 (const ImVec2)
|
||||
2 float igImLengthSqrVec4 (const ImVec4)
|
||||
igImLerp 3
|
||||
1 ImVec2 igImLerpVec2Float (const ImVec2,const ImVec2,float)
|
||||
2 ImVec2 igImLerpVec2Vec2 (const ImVec2,const ImVec2,const ImVec2)
|
||||
3 ImVec4 igImLerpVec4 (const ImVec4,const ImVec4,float)
|
||||
igImLog 2
|
||||
1 float igImLogFloat (float)
|
||||
2 double igImLogdouble (double)
|
||||
igImPow 2
|
||||
1 float igImPowFloat (float,float)
|
||||
2 double igImPowdouble (double,double)
|
||||
igImSign 2
|
||||
1 float igImSignFloat (float)
|
||||
2 double igImSigndouble (double)
|
||||
igIsPopupOpen 2
|
||||
1 bool igIsPopupOpenStr (const char*,ImGuiPopupFlags)
|
||||
2 bool igIsPopupOpenID (ImGuiID,ImGuiPopupFlags)
|
||||
igIsRectVisible 2
|
||||
1 bool igIsRectVisibleNil (const ImVec2)
|
||||
2 bool igIsRectVisibleVec2 (const ImVec2,const ImVec2)
|
||||
igItemSize 2
|
||||
1 void igItemSizeVec2 (const ImVec2,float)
|
||||
2 void igItemSizeRect (const ImRect,float)
|
||||
igListBox 2
|
||||
1 bool igListBoxStr_arr (const char*,int*,const char* const[],int,int)
|
||||
2 bool igListBoxFnBoolPtr (const char*,int*,bool(*)(void*,int,const char**),void*,int,int)
|
||||
igListBoxHeader 2
|
||||
1 bool igListBoxHeaderVec2 (const char*,const ImVec2)
|
||||
2 bool igListBoxHeaderInt (const char*,int,int)
|
||||
igMarkIniSettingsDirty 2
|
||||
1 void igMarkIniSettingsDirtyNil ()
|
||||
2 void igMarkIniSettingsDirtyWindowPtr (ImGuiWindow*)
|
||||
igMenuItem 2
|
||||
1 bool igMenuItemBool (const char*,const char*,bool,bool)
|
||||
2 bool igMenuItemBoolPtr (const char*,const char*,bool*,bool)
|
||||
igPlotHistogram 2
|
||||
1 void igPlotHistogramFloatPtr (const char*,const float*,int,int,const char*,float,float,ImVec2,int)
|
||||
2 void igPlotHistogramFnFloatPtr (const char*,float(*)(void*,int),void*,int,int,const char*,float,float,ImVec2)
|
||||
igPlotLines 2
|
||||
1 void igPlotLinesFloatPtr (const char*,const float*,int,int,const char*,float,float,ImVec2,int)
|
||||
2 void igPlotLinesFnFloatPtr (const char*,float(*)(void*,int),void*,int,int,const char*,float,float,ImVec2)
|
||||
igPushID 4
|
||||
1 void igPushIDStr (const char*)
|
||||
2 void igPushIDStrStr (const char*,const char*)
|
||||
3 void igPushIDPtr (const void*)
|
||||
4 void igPushIDInt (int)
|
||||
igPushStyleColor 2
|
||||
1 void igPushStyleColorU32 (ImGuiCol,ImU32)
|
||||
2 void igPushStyleColorVec4 (ImGuiCol,const ImVec4)
|
||||
igPushStyleVar 2
|
||||
1 void igPushStyleVarFloat (ImGuiStyleVar,float)
|
||||
2 void igPushStyleVarVec2 (ImGuiStyleVar,const ImVec2)
|
||||
igRadioButton 2
|
||||
1 bool igRadioButtonBool (const char*,bool)
|
||||
2 bool igRadioButtonIntPtr (const char*,int*,int)
|
||||
igSelectable 2
|
||||
1 bool igSelectableBool (const char*,bool,ImGuiSelectableFlags,const ImVec2)
|
||||
2 bool igSelectableBoolPtr (const char*,bool*,ImGuiSelectableFlags,const ImVec2)
|
||||
igSetScrollFromPosX 2
|
||||
1 void igSetScrollFromPosXFloat (float,float)
|
||||
2 void igSetScrollFromPosXWindowPtr (ImGuiWindow*,float,float)
|
||||
igSetScrollFromPosY 2
|
||||
1 void igSetScrollFromPosYFloat (float,float)
|
||||
2 void igSetScrollFromPosYWindowPtr (ImGuiWindow*,float,float)
|
||||
igSetScrollX 2
|
||||
1 void igSetScrollXFloat (float)
|
||||
2 void igSetScrollXWindowPtr (ImGuiWindow*,float)
|
||||
igSetScrollY 2
|
||||
1 void igSetScrollYFloat (float)
|
||||
2 void igSetScrollYWindowPtr (ImGuiWindow*,float)
|
||||
igSetWindowCollapsed 3
|
||||
1 void igSetWindowCollapsedBool (bool,ImGuiCond)
|
||||
2 void igSetWindowCollapsedStr (const char*,bool,ImGuiCond)
|
||||
3 void igSetWindowCollapsedWindowPtr (ImGuiWindow*,bool,ImGuiCond)
|
||||
igSetWindowFocus 2
|
||||
1 void igSetWindowFocusNil ()
|
||||
2 void igSetWindowFocusStr (const char*)
|
||||
igSetWindowPos 3
|
||||
1 void igSetWindowPosVec2 (const ImVec2,ImGuiCond)
|
||||
2 void igSetWindowPosStr (const char*,const ImVec2,ImGuiCond)
|
||||
3 void igSetWindowPosWindowPtr (ImGuiWindow*,const ImVec2,ImGuiCond)
|
||||
igSetWindowSize 3
|
||||
1 void igSetWindowSizeVec2 (const ImVec2,ImGuiCond)
|
||||
2 void igSetWindowSizeStr (const char*,const ImVec2,ImGuiCond)
|
||||
3 void igSetWindowSizeWindowPtr (ImGuiWindow*,const ImVec2,ImGuiCond)
|
||||
igTreeNode 3
|
||||
1 bool igTreeNodeStr (const char*)
|
||||
2 bool igTreeNodeStrStr (const char*,const char*,...)
|
||||
3 bool igTreeNodePtr (const void*,const char*,...)
|
||||
igTreeNodeEx 3
|
||||
1 bool igTreeNodeExStr (const char*,ImGuiTreeNodeFlags)
|
||||
2 bool igTreeNodeExStrStr (const char*,ImGuiTreeNodeFlags,const char*,...)
|
||||
3 bool igTreeNodeExPtr (const void*,ImGuiTreeNodeFlags,const char*,...)
|
||||
igTreeNodeExV 2
|
||||
1 bool igTreeNodeExVStr (const char*,ImGuiTreeNodeFlags,const char*,va_list)
|
||||
2 bool igTreeNodeExVPtr (const void*,ImGuiTreeNodeFlags,const char*,va_list)
|
||||
igTreeNodeV 2
|
||||
1 bool igTreeNodeVStr (const char*,const char*,va_list)
|
||||
2 bool igTreeNodeVPtr (const void*,const char*,va_list)
|
||||
igTreePush 2
|
||||
1 void igTreePushStr (const char*)
|
||||
2 void igTreePushPtr (const void*)
|
||||
igValue 4
|
||||
1 void igValueBool (const char*,bool)
|
||||
2 void igValueInt (const char*,int)
|
||||
3 void igValueUint (const char*,unsigned int)
|
||||
4 void igValueFloat (const char*,float,const char*)
|
||||
158 overloaded
|
7144
generator/output/structs_and_enums.json
Normal file
7144
generator/output/structs_and_enums.json
Normal file
File diff suppressed because it is too large
Load Diff
5497
generator/output/structs_and_enums.lua
Normal file
5497
generator/output/structs_and_enums.lua
Normal file
File diff suppressed because it is too large
Load Diff
137
generator/output/typedefs_dict.json
Normal file
137
generator/output/typedefs_dict.json
Normal file
@@ -0,0 +1,137 @@
|
||||
{
|
||||
"ImBitVector": "struct ImBitVector",
|
||||
"ImColor": "struct ImColor",
|
||||
"ImDrawCallback": "void(*)(const ImDrawList* parent_list,const ImDrawCmd* cmd);",
|
||||
"ImDrawChannel": "struct ImDrawChannel",
|
||||
"ImDrawCmd": "struct ImDrawCmd",
|
||||
"ImDrawCornerFlags": "int",
|
||||
"ImDrawData": "struct ImDrawData",
|
||||
"ImDrawDataBuilder": "struct ImDrawDataBuilder",
|
||||
"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",
|
||||
"ImFontConfig": "struct ImFontConfig",
|
||||
"ImFontGlyph": "struct ImFontGlyph",
|
||||
"ImFontGlyphRangesBuilder": "struct ImFontGlyphRangesBuilder",
|
||||
"ImGuiBackendFlags": "int",
|
||||
"ImGuiButtonFlags": "int",
|
||||
"ImGuiCol": "int",
|
||||
"ImGuiColorEditFlags": "int",
|
||||
"ImGuiColorMod": "struct ImGuiColorMod",
|
||||
"ImGuiColumnData": "struct ImGuiColumnData",
|
||||
"ImGuiColumns": "struct ImGuiColumns",
|
||||
"ImGuiColumnsFlags": "int",
|
||||
"ImGuiComboFlags": "int",
|
||||
"ImGuiCond": "int",
|
||||
"ImGuiConfigFlags": "int",
|
||||
"ImGuiContext": "struct ImGuiContext",
|
||||
"ImGuiDataAuthority": "int",
|
||||
"ImGuiDataType": "int",
|
||||
"ImGuiDataTypeInfo": "struct ImGuiDataTypeInfo",
|
||||
"ImGuiDataTypeTempStorage": "struct ImGuiDataTypeTempStorage",
|
||||
"ImGuiDir": "int",
|
||||
"ImGuiDockContext": "struct ImGuiDockContext",
|
||||
"ImGuiDockNode": "struct ImGuiDockNode",
|
||||
"ImGuiDockNodeFlags": "int",
|
||||
"ImGuiDockNodeSettings": "struct ImGuiDockNodeSettings",
|
||||
"ImGuiDockRequest": "struct ImGuiDockRequest",
|
||||
"ImGuiDragDropFlags": "int",
|
||||
"ImGuiFocusedFlags": "int",
|
||||
"ImGuiGroupData": "struct ImGuiGroupData",
|
||||
"ImGuiHoveredFlags": "int",
|
||||
"ImGuiID": "unsigned int",
|
||||
"ImGuiIO": "struct ImGuiIO",
|
||||
"ImGuiInputTextCallback": "int(*)(ImGuiInputTextCallbackData* data);",
|
||||
"ImGuiInputTextCallbackData": "struct ImGuiInputTextCallbackData",
|
||||
"ImGuiInputTextFlags": "int",
|
||||
"ImGuiInputTextState": "struct ImGuiInputTextState",
|
||||
"ImGuiItemFlags": "int",
|
||||
"ImGuiItemStatusFlags": "int",
|
||||
"ImGuiKey": "int",
|
||||
"ImGuiKeyModFlags": "int",
|
||||
"ImGuiLastItemDataBackup": "struct ImGuiLastItemDataBackup",
|
||||
"ImGuiLayoutType": "int",
|
||||
"ImGuiListClipper": "struct ImGuiListClipper",
|
||||
"ImGuiMenuColumns": "struct ImGuiMenuColumns",
|
||||
"ImGuiMouseButton": "int",
|
||||
"ImGuiMouseCursor": "int",
|
||||
"ImGuiNavDirSourceFlags": "int",
|
||||
"ImGuiNavHighlightFlags": "int",
|
||||
"ImGuiNavInput": "int",
|
||||
"ImGuiNavMoveFlags": "int",
|
||||
"ImGuiNavMoveResult": "struct ImGuiNavMoveResult",
|
||||
"ImGuiNextItemData": "struct ImGuiNextItemData",
|
||||
"ImGuiNextItemDataFlags": "int",
|
||||
"ImGuiNextWindowData": "struct ImGuiNextWindowData",
|
||||
"ImGuiNextWindowDataFlags": "int",
|
||||
"ImGuiOnceUponAFrame": "struct ImGuiOnceUponAFrame",
|
||||
"ImGuiPayload": "struct ImGuiPayload",
|
||||
"ImGuiPlatformIO": "struct ImGuiPlatformIO",
|
||||
"ImGuiPlatformMonitor": "struct ImGuiPlatformMonitor",
|
||||
"ImGuiPopupData": "struct ImGuiPopupData",
|
||||
"ImGuiPopupFlags": "int",
|
||||
"ImGuiPtrOrIndex": "struct ImGuiPtrOrIndex",
|
||||
"ImGuiSelectableFlags": "int",
|
||||
"ImGuiSeparatorFlags": "int",
|
||||
"ImGuiSettingsHandler": "struct ImGuiSettingsHandler",
|
||||
"ImGuiShrinkWidthItem": "struct ImGuiShrinkWidthItem",
|
||||
"ImGuiSizeCallback": "void(*)(ImGuiSizeCallbackData* data);",
|
||||
"ImGuiSizeCallbackData": "struct ImGuiSizeCallbackData",
|
||||
"ImGuiSliderFlags": "int",
|
||||
"ImGuiStorage": "struct ImGuiStorage",
|
||||
"ImGuiStoragePair": "struct ImGuiStoragePair",
|
||||
"ImGuiStyle": "struct ImGuiStyle",
|
||||
"ImGuiStyleMod": "struct ImGuiStyleMod",
|
||||
"ImGuiStyleVar": "int",
|
||||
"ImGuiTabBar": "struct ImGuiTabBar",
|
||||
"ImGuiTabBarFlags": "int",
|
||||
"ImGuiTabItem": "struct ImGuiTabItem",
|
||||
"ImGuiTabItemFlags": "int",
|
||||
"ImGuiTextBuffer": "struct ImGuiTextBuffer",
|
||||
"ImGuiTextFilter": "struct ImGuiTextFilter",
|
||||
"ImGuiTextFlags": "int",
|
||||
"ImGuiTextRange": "struct ImGuiTextRange",
|
||||
"ImGuiTooltipFlags": "int",
|
||||
"ImGuiTreeNodeFlags": "int",
|
||||
"ImGuiViewport": "struct ImGuiViewport",
|
||||
"ImGuiViewportFlags": "int",
|
||||
"ImGuiViewportP": "struct ImGuiViewportP",
|
||||
"ImGuiWindow": "struct ImGuiWindow",
|
||||
"ImGuiWindowClass": "struct ImGuiWindowClass",
|
||||
"ImGuiWindowFlags": "int",
|
||||
"ImGuiWindowSettings": "struct ImGuiWindowSettings",
|
||||
"ImGuiWindowTempData": "struct ImGuiWindowTempData",
|
||||
"ImPoolIdx": "int",
|
||||
"ImRect": "struct ImRect",
|
||||
"ImS16": "signed short",
|
||||
"ImS32": "signed int",
|
||||
"ImS64": "int64_t",
|
||||
"ImS8": "signed char",
|
||||
"ImTextureID": "void*",
|
||||
"ImU16": "unsigned short",
|
||||
"ImU32": "unsigned int",
|
||||
"ImU64": "uint64_t",
|
||||
"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",
|
||||
"StbTexteditRow": "struct StbTexteditRow",
|
||||
"StbUndoRecord": "struct StbUndoRecord",
|
||||
"StbUndoState": "struct StbUndoState",
|
||||
"const_iterator": "const value_type*",
|
||||
"iterator": "value_type*",
|
||||
"value_type": "T"
|
||||
}
|
138
generator/output/typedefs_dict.lua
Normal file
138
generator/output/typedefs_dict.lua
Normal file
@@ -0,0 +1,138 @@
|
||||
local defs = {}
|
||||
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["ImDrawCornerFlags"] = "int"
|
||||
defs["ImDrawData"] = "struct ImDrawData"
|
||||
defs["ImDrawDataBuilder"] = "struct ImDrawDataBuilder"
|
||||
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["ImFontConfig"] = "struct ImFontConfig"
|
||||
defs["ImFontGlyph"] = "struct ImFontGlyph"
|
||||
defs["ImFontGlyphRangesBuilder"] = "struct ImFontGlyphRangesBuilder"
|
||||
defs["ImGuiBackendFlags"] = "int"
|
||||
defs["ImGuiButtonFlags"] = "int"
|
||||
defs["ImGuiCol"] = "int"
|
||||
defs["ImGuiColorEditFlags"] = "int"
|
||||
defs["ImGuiColorMod"] = "struct ImGuiColorMod"
|
||||
defs["ImGuiColumnData"] = "struct ImGuiColumnData"
|
||||
defs["ImGuiColumns"] = "struct ImGuiColumns"
|
||||
defs["ImGuiColumnsFlags"] = "int"
|
||||
defs["ImGuiComboFlags"] = "int"
|
||||
defs["ImGuiCond"] = "int"
|
||||
defs["ImGuiConfigFlags"] = "int"
|
||||
defs["ImGuiContext"] = "struct ImGuiContext"
|
||||
defs["ImGuiDataAuthority"] = "int"
|
||||
defs["ImGuiDataType"] = "int"
|
||||
defs["ImGuiDataTypeInfo"] = "struct ImGuiDataTypeInfo"
|
||||
defs["ImGuiDataTypeTempStorage"] = "struct ImGuiDataTypeTempStorage"
|
||||
defs["ImGuiDir"] = "int"
|
||||
defs["ImGuiDockContext"] = "struct ImGuiDockContext"
|
||||
defs["ImGuiDockNode"] = "struct ImGuiDockNode"
|
||||
defs["ImGuiDockNodeFlags"] = "int"
|
||||
defs["ImGuiDockNodeSettings"] = "struct ImGuiDockNodeSettings"
|
||||
defs["ImGuiDockRequest"] = "struct ImGuiDockRequest"
|
||||
defs["ImGuiDragDropFlags"] = "int"
|
||||
defs["ImGuiFocusedFlags"] = "int"
|
||||
defs["ImGuiGroupData"] = "struct ImGuiGroupData"
|
||||
defs["ImGuiHoveredFlags"] = "int"
|
||||
defs["ImGuiID"] = "unsigned int"
|
||||
defs["ImGuiIO"] = "struct ImGuiIO"
|
||||
defs["ImGuiInputTextCallback"] = "int(*)(ImGuiInputTextCallbackData* data);"
|
||||
defs["ImGuiInputTextCallbackData"] = "struct ImGuiInputTextCallbackData"
|
||||
defs["ImGuiInputTextFlags"] = "int"
|
||||
defs["ImGuiInputTextState"] = "struct ImGuiInputTextState"
|
||||
defs["ImGuiItemFlags"] = "int"
|
||||
defs["ImGuiItemStatusFlags"] = "int"
|
||||
defs["ImGuiKey"] = "int"
|
||||
defs["ImGuiKeyModFlags"] = "int"
|
||||
defs["ImGuiLastItemDataBackup"] = "struct ImGuiLastItemDataBackup"
|
||||
defs["ImGuiLayoutType"] = "int"
|
||||
defs["ImGuiListClipper"] = "struct ImGuiListClipper"
|
||||
defs["ImGuiMenuColumns"] = "struct ImGuiMenuColumns"
|
||||
defs["ImGuiMouseButton"] = "int"
|
||||
defs["ImGuiMouseCursor"] = "int"
|
||||
defs["ImGuiNavDirSourceFlags"] = "int"
|
||||
defs["ImGuiNavHighlightFlags"] = "int"
|
||||
defs["ImGuiNavInput"] = "int"
|
||||
defs["ImGuiNavMoveFlags"] = "int"
|
||||
defs["ImGuiNavMoveResult"] = "struct ImGuiNavMoveResult"
|
||||
defs["ImGuiNextItemData"] = "struct ImGuiNextItemData"
|
||||
defs["ImGuiNextItemDataFlags"] = "int"
|
||||
defs["ImGuiNextWindowData"] = "struct ImGuiNextWindowData"
|
||||
defs["ImGuiNextWindowDataFlags"] = "int"
|
||||
defs["ImGuiOnceUponAFrame"] = "struct ImGuiOnceUponAFrame"
|
||||
defs["ImGuiPayload"] = "struct ImGuiPayload"
|
||||
defs["ImGuiPlatformIO"] = "struct ImGuiPlatformIO"
|
||||
defs["ImGuiPlatformMonitor"] = "struct ImGuiPlatformMonitor"
|
||||
defs["ImGuiPopupData"] = "struct ImGuiPopupData"
|
||||
defs["ImGuiPopupFlags"] = "int"
|
||||
defs["ImGuiPtrOrIndex"] = "struct ImGuiPtrOrIndex"
|
||||
defs["ImGuiSelectableFlags"] = "int"
|
||||
defs["ImGuiSeparatorFlags"] = "int"
|
||||
defs["ImGuiSettingsHandler"] = "struct ImGuiSettingsHandler"
|
||||
defs["ImGuiShrinkWidthItem"] = "struct ImGuiShrinkWidthItem"
|
||||
defs["ImGuiSizeCallback"] = "void(*)(ImGuiSizeCallbackData* data);"
|
||||
defs["ImGuiSizeCallbackData"] = "struct ImGuiSizeCallbackData"
|
||||
defs["ImGuiSliderFlags"] = "int"
|
||||
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["ImGuiTextBuffer"] = "struct ImGuiTextBuffer"
|
||||
defs["ImGuiTextFilter"] = "struct ImGuiTextFilter"
|
||||
defs["ImGuiTextFlags"] = "int"
|
||||
defs["ImGuiTextRange"] = "struct ImGuiTextRange"
|
||||
defs["ImGuiTooltipFlags"] = "int"
|
||||
defs["ImGuiTreeNodeFlags"] = "int"
|
||||
defs["ImGuiViewport"] = "struct ImGuiViewport"
|
||||
defs["ImGuiViewportFlags"] = "int"
|
||||
defs["ImGuiViewportP"] = "struct ImGuiViewportP"
|
||||
defs["ImGuiWindow"] = "struct ImGuiWindow"
|
||||
defs["ImGuiWindowClass"] = "struct ImGuiWindowClass"
|
||||
defs["ImGuiWindowFlags"] = "int"
|
||||
defs["ImGuiWindowSettings"] = "struct ImGuiWindowSettings"
|
||||
defs["ImGuiWindowTempData"] = "struct ImGuiWindowTempData"
|
||||
defs["ImPoolIdx"] = "int"
|
||||
defs["ImRect"] = "struct ImRect"
|
||||
defs["ImS16"] = "signed short"
|
||||
defs["ImS32"] = "signed int"
|
||||
defs["ImS64"] = "int64_t"
|
||||
defs["ImS8"] = "signed char"
|
||||
defs["ImTextureID"] = "void*"
|
||||
defs["ImU16"] = "unsigned short"
|
||||
defs["ImU32"] = "unsigned int"
|
||||
defs["ImU64"] = "uint64_t"
|
||||
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["StbTexteditRow"] = "struct StbTexteditRow"
|
||||
defs["StbUndoRecord"] = "struct StbUndoRecord"
|
||||
defs["StbUndoState"] = "struct StbUndoState"
|
||||
defs["const_iterator"] = "const value_type*"
|
||||
defs["iterator"] = "value_type*"
|
||||
defs["value_type"] = "T"
|
||||
|
||||
return defs
|
2
imgui
2
imgui
Submodule imgui updated: 55a6209931...682249396f
BIN
menus-api.gif
BIN
menus-api.gif
Binary file not shown.
Before Width: | Height: | Size: 195 KiB |
BIN
screenshot.png
BIN
screenshot.png
Binary file not shown.
Before Width: | Height: | Size: 65 KiB |
11
test/CMakeLists.txt
Normal file
11
test/CMakeLists.txt
Normal file
@@ -0,0 +1,11 @@
|
||||
file(GLOB CIMGUI_TEST_SOURCES
|
||||
main.c
|
||||
)
|
||||
|
||||
add_executable(cimgui_test ${CIMGUI_TEST_SOURCES})
|
||||
|
||||
set_target_properties(cimgui_test PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
||||
set_property(TARGET cimgui_test PROPERTY C_STANDARD 99)
|
||||
|
||||
target_compile_definitions(cimgui_test PRIVATE CIMGUI_DEFINE_ENUMS_AND_STRUCTS=1)
|
||||
target_link_libraries(cimgui_test PRIVATE cimgui)
|
41
test/main.c
Normal file
41
test/main.c
Normal file
@@ -0,0 +1,41 @@
|
||||
#include <stdio.h>
|
||||
#include <assert.h>
|
||||
#include "../cimgui.h"
|
||||
|
||||
int main(void)
|
||||
{
|
||||
assert(igDebugCheckVersionAndDataLayout(igGetVersion(), sizeof(ImGuiIO), sizeof(ImGuiStyle),
|
||||
sizeof(ImVec2), sizeof(ImVec4), sizeof(ImDrawVert),
|
||||
sizeof(ImDrawIdx)));
|
||||
printf("CreateContext() - v%s\n", igGetVersion());
|
||||
igCreateContext(NULL);
|
||||
ImGuiIO *io = igGetIO();
|
||||
|
||||
unsigned char *text_pixels = NULL;
|
||||
int text_w, text_h;
|
||||
ImFontAtlas_GetTexDataAsRGBA32(io->Fonts, &text_pixels, &text_w, &text_h, NULL);
|
||||
|
||||
for (int n = 0; n < 20; n++) {
|
||||
printf("NewFrame() %d\n", n);
|
||||
|
||||
ImVec2 display_size;
|
||||
display_size.x = 1920;
|
||||
display_size.y = 1080;
|
||||
io->DisplaySize = display_size;
|
||||
io->DeltaTime = 1.0f / 60.0f;
|
||||
igNewFrame();
|
||||
|
||||
static float f = 0.0f;
|
||||
igText("Hello World!");
|
||||
igSliderFloat("float", &f, 0.0f, 1.0f, "%.3f", 1.0f);
|
||||
igText("Application average %.3f ms/frame (%.1f FPS)", 1000.0f / io->Framerate, io->Framerate);
|
||||
igShowDemoWindow(NULL);
|
||||
|
||||
igRender();
|
||||
}
|
||||
|
||||
printf("DestroyContext()\n");
|
||||
igDestroyContext(NULL);
|
||||
|
||||
return 0;
|
||||
}
|
Reference in New Issue
Block a user