add renderer abstraction
This commit is contained in:
@@ -55,6 +55,19 @@ target_include_directories(imgui PUBLIC
|
||||
target_link_libraries(imgui PRIVATE SDL3::SDL3 wgpu)
|
||||
target_compile_definitions(imgui PRIVATE IMGUI_IMPL_WEBGPU_BACKEND_WGPU=1)
|
||||
|
||||
# Dear ImGui C bindings
|
||||
add_library(dcimgui STATIC
|
||||
libs/dcimgui/dcimgui.cpp
|
||||
libs/dcimgui/dcimgui_internal.cpp
|
||||
libs/dcimgui/backends/dcimgui_impl_sdl3.cpp
|
||||
libs/dcimgui/backends/dcimgui_impl_wgpu.cpp
|
||||
)
|
||||
target_include_directories(dcimgui PUBLIC
|
||||
libs/dcimgui
|
||||
libs/dcimgui/backends
|
||||
)
|
||||
target_link_libraries(dcimgui PRIVATE imgui SDL3::SDL3 wgpu)
|
||||
|
||||
# stb_image
|
||||
add_library(stb_image STATIC libs/stb/stb_image.c)
|
||||
target_include_directories(stb_image INTERFACE libs/stb)
|
||||
@@ -67,6 +80,7 @@ add_executable(mikemon
|
||||
src/smol-atlas.cpp
|
||||
src/change_directory.c
|
||||
src/shaders/shaders.c
|
||||
src/renderer_wgpu.c
|
||||
src/main.cpp
|
||||
)
|
||||
target_link_libraries(mikemon
|
||||
@@ -76,6 +90,7 @@ target_link_libraries(mikemon
|
||||
SDL3_mixer::SDL3_mixer
|
||||
stb_image
|
||||
imgui
|
||||
dcimgui
|
||||
TracyClient
|
||||
wgpu
|
||||
)
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2014-2026 Omar Cornut
|
||||
|
||||
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.
|
||||
@@ -0,0 +1,142 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
#include "imgui.h"
|
||||
#include "imgui_impl_allegro5.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
// Wrap this in a namespace to keep it separate from the C++ API
|
||||
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
|
||||
// and thus generating redefinition warnings
|
||||
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
namespace cimgui
|
||||
{
|
||||
#include "dcimgui_impl_allegro5.h"
|
||||
}
|
||||
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
// By-value struct conversions
|
||||
|
||||
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
|
||||
{
|
||||
cimgui::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
|
||||
{
|
||||
::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
|
||||
{
|
||||
cimgui::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
|
||||
{
|
||||
::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
|
||||
{
|
||||
cimgui::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
|
||||
{
|
||||
::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
|
||||
{
|
||||
cimgui::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
|
||||
{
|
||||
::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
// Function stubs
|
||||
|
||||
#ifndef IMGUI_DISABLE
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplAllegro5_Init(cimgui::ALLEGRO_DISPLAY* display)
|
||||
{
|
||||
return ::ImGui_ImplAllegro5_Init(reinterpret_cast<::ALLEGRO_DISPLAY*>(display));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplAllegro5_Shutdown(void)
|
||||
{
|
||||
::ImGui_ImplAllegro5_Shutdown();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplAllegro5_NewFrame(void)
|
||||
{
|
||||
::ImGui_ImplAllegro5_NewFrame();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplAllegro5_RenderDrawData(cimgui::ImDrawData* draw_data)
|
||||
{
|
||||
::ImGui_ImplAllegro5_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplAllegro5_ProcessEvent(cimgui::ALLEGRO_EVENT* event)
|
||||
{
|
||||
return ::ImGui_ImplAllegro5_ProcessEvent(reinterpret_cast<::ALLEGRO_EVENT*>(event));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplAllegro5_SetDisplay(cimgui::ALLEGRO_DISPLAY* display)
|
||||
{
|
||||
::ImGui_ImplAllegro5_SetDisplay(reinterpret_cast<::ALLEGRO_DISPLAY*>(display));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplAllegro5_CreateDeviceObjects(void)
|
||||
{
|
||||
return ::ImGui_ImplAllegro5_CreateDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplAllegro5_InvalidateDeviceObjects(void)
|
||||
{
|
||||
::ImGui_ImplAllegro5_InvalidateDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplAllegro5_UpdateTexture(cimgui::ImTextureData* tex)
|
||||
{
|
||||
::ImGui_ImplAllegro5_UpdateTexture(reinterpret_cast<::ImTextureData*>(tex));
|
||||
}
|
||||
|
||||
#endif // #ifndef IMGUI_DISABLE
|
||||
@@ -0,0 +1,62 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
// dear imgui: Renderer + Platform Backend for Allegro 5
|
||||
// ImDrawIdx: vertex index. [Compile-time configurable type]
|
||||
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
|
||||
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
|
||||
#ifndef ImDrawIdx
|
||||
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
|
||||
#endif // #ifndef ImDrawIdx
|
||||
// (Info: Allegro 5 is a cross-platform general purpose library for handling windows, inputs, graphics, etc.)
|
||||
|
||||
// Implemented features:
|
||||
// [X] Renderer: User texture binding. Use 'ALLEGRO_BITMAP*' as texture identifier. Read the FAQ about ImTextureID/ImTextureRef!
|
||||
// [X] Renderer: Texture updates support for dynamic font atlas (ImGuiBackendFlags_RendererHasTextures).
|
||||
// [X] Platform: Keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy ALLEGRO_KEY_* values are obsolete since 1.87 and not supported since 1.91.5]
|
||||
// [X] Platform: Clipboard support (from Allegro 5.1.12).
|
||||
// [X] Platform: Mouse cursor shape and visibility (ImGuiBackendFlags_HasMouseCursors). Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange'.
|
||||
// Missing features or Issues:
|
||||
// [ ] Renderer: The renderer is suboptimal as we need to unindex our buffers and convert vertices manually.
|
||||
// [ ] Platform: Missing gamepad support.
|
||||
// [ ] Renderer: Multi-viewport support (multiple windows).
|
||||
|
||||
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
|
||||
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
|
||||
// Learn about Dear ImGui:
|
||||
// - FAQ https://dearimgui.com/faq
|
||||
// - Getting Started https://dearimgui.com/getting-started
|
||||
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
|
||||
// - Introduction, links and more at the top of imgui.cpp
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
#include "dcimgui.h"
|
||||
#ifndef IMGUI_DISABLE
|
||||
typedef struct ALLEGRO_DISPLAY_t ALLEGRO_DISPLAY;
|
||||
typedef union ALLEGRO_EVENT_t ALLEGRO_EVENT;
|
||||
|
||||
typedef struct ImDrawData_t ImDrawData;
|
||||
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
|
||||
CIMGUI_IMPL_API bool cImGui_ImplAllegro5_Init(ALLEGRO_DISPLAY* display);
|
||||
CIMGUI_IMPL_API void cImGui_ImplAllegro5_Shutdown(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplAllegro5_NewFrame(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplAllegro5_RenderDrawData(ImDrawData* draw_data);
|
||||
CIMGUI_IMPL_API bool cImGui_ImplAllegro5_ProcessEvent(ALLEGRO_EVENT* event);
|
||||
CIMGUI_IMPL_API void cImGui_ImplAllegro5_SetDisplay(ALLEGRO_DISPLAY* display);
|
||||
|
||||
// Use if you want to reset your rendering device without losing Dear ImGui state.
|
||||
CIMGUI_IMPL_API bool cImGui_ImplAllegro5_CreateDeviceObjects(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplAllegro5_InvalidateDeviceObjects(void);
|
||||
|
||||
// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually.
|
||||
CIMGUI_IMPL_API void cImGui_ImplAllegro5_UpdateTexture(ImTextureData* tex);
|
||||
#endif// #ifndef IMGUI_DISABLE
|
||||
#ifdef __cplusplus
|
||||
} // End of extern "C" block
|
||||
#endif
|
||||
@@ -0,0 +1,382 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [
|
||||
{
|
||||
"name": "ImDrawIdx",
|
||||
"type": {
|
||||
"declaration": "unsigned short",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "unsigned_short"
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
|
||||
},
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "ifndef",
|
||||
"expression": "ImDrawIdx"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_allegro5.h"
|
||||
}
|
||||
}
|
||||
],
|
||||
"structs": [
|
||||
{
|
||||
"name": "ALLEGRO_DISPLAY",
|
||||
"original_fully_qualified_name": "ALLEGRO_DISPLAY",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_allegro5.h",
|
||||
"line": 27
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ALLEGRO_EVENT",
|
||||
"original_fully_qualified_name": "ALLEGRO_EVENT",
|
||||
"kind": "union",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_allegro5.h",
|
||||
"line": 28
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImDrawData",
|
||||
"original_fully_qualified_name": "ImDrawData",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_allegro5.h",
|
||||
"line": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"functions": [
|
||||
{
|
||||
"name": "cImGui_ImplAllegro5_Init",
|
||||
"original_fully_qualified_name": "ImGui_ImplAllegro5_Init",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "display",
|
||||
"type": {
|
||||
"declaration": "ALLEGRO_DISPLAY*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ALLEGRO_DISPLAY"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_allegro5.h",
|
||||
"line": 31
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplAllegro5_Shutdown",
|
||||
"original_fully_qualified_name": "ImGui_ImplAllegro5_Shutdown",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_allegro5.h",
|
||||
"line": 32
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplAllegro5_NewFrame",
|
||||
"original_fully_qualified_name": "ImGui_ImplAllegro5_NewFrame",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_allegro5.h",
|
||||
"line": 33
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplAllegro5_RenderDrawData",
|
||||
"original_fully_qualified_name": "ImGui_ImplAllegro5_RenderDrawData",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "draw_data",
|
||||
"type": {
|
||||
"declaration": "ImDrawData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImDrawData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_allegro5.h",
|
||||
"line": 34
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplAllegro5_ProcessEvent",
|
||||
"original_fully_qualified_name": "ImGui_ImplAllegro5_ProcessEvent",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "event",
|
||||
"type": {
|
||||
"declaration": "ALLEGRO_EVENT*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ALLEGRO_EVENT"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_allegro5.h",
|
||||
"line": 35
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplAllegro5_SetDisplay",
|
||||
"original_fully_qualified_name": "ImGui_ImplAllegro5_SetDisplay",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "display",
|
||||
"type": {
|
||||
"declaration": "ALLEGRO_DISPLAY*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ALLEGRO_DISPLAY"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_allegro5.h",
|
||||
"line": 36
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplAllegro5_CreateDeviceObjects",
|
||||
"original_fully_qualified_name": "ImGui_ImplAllegro5_CreateDeviceObjects",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Use if you want to reset your rendering device without losing Dear ImGui state."
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_allegro5.h",
|
||||
"line": 39
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplAllegro5_InvalidateDeviceObjects",
|
||||
"original_fully_qualified_name": "ImGui_ImplAllegro5_InvalidateDeviceObjects",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_allegro5.h",
|
||||
"line": 40
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplAllegro5_UpdateTexture",
|
||||
"original_fully_qualified_name": "ImGui_ImplAllegro5_UpdateTexture",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "tex",
|
||||
"type": {
|
||||
"declaration": "ImTextureData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImTextureData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually."
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_allegro5.h",
|
||||
"line": 43
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [],
|
||||
"structs": [],
|
||||
"functions": []
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,117 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
#include "imgui.h"
|
||||
#include "imgui_impl_android.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
// Wrap this in a namespace to keep it separate from the C++ API
|
||||
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
|
||||
// and thus generating redefinition warnings
|
||||
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
namespace cimgui
|
||||
{
|
||||
#include "dcimgui_impl_android.h"
|
||||
}
|
||||
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
// By-value struct conversions
|
||||
|
||||
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
|
||||
{
|
||||
cimgui::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
|
||||
{
|
||||
::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
|
||||
{
|
||||
cimgui::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
|
||||
{
|
||||
::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
|
||||
{
|
||||
cimgui::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
|
||||
{
|
||||
::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
|
||||
{
|
||||
cimgui::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
|
||||
{
|
||||
::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
// Function stubs
|
||||
|
||||
#ifndef IMGUI_DISABLE
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplAndroid_Init(cimgui::ANativeWindow* window)
|
||||
{
|
||||
return ::ImGui_ImplAndroid_Init(reinterpret_cast<::ANativeWindow*>(window));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API int32_t cimgui::cImGui_ImplAndroid_HandleInputEvent(const cimgui::AInputEvent* input_event)
|
||||
{
|
||||
return ::ImGui_ImplAndroid_HandleInputEvent(reinterpret_cast<const ::AInputEvent*>(input_event));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplAndroid_Shutdown(void)
|
||||
{
|
||||
::ImGui_ImplAndroid_Shutdown();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplAndroid_NewFrame(void)
|
||||
{
|
||||
::ImGui_ImplAndroid_NewFrame();
|
||||
}
|
||||
|
||||
#endif // #ifndef IMGUI_DISABLE
|
||||
@@ -0,0 +1,55 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
// dear imgui: Platform Binding for Android native app
|
||||
// ImDrawIdx: vertex index. [Compile-time configurable type]
|
||||
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
|
||||
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
|
||||
#ifndef ImDrawIdx
|
||||
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
|
||||
#endif // #ifndef ImDrawIdx
|
||||
// This needs to be used along with the OpenGL 3 Renderer (imgui_impl_opengl3)
|
||||
|
||||
// Implemented features:
|
||||
// [X] Platform: Keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy AKEYCODE_* values are obsolete since 1.87 and not supported since 1.91.5]
|
||||
// [X] Platform: Mouse support. Can discriminate Mouse/TouchScreen/Pen.
|
||||
// Missing features or Issues:
|
||||
// [ ] Platform: Clipboard support.
|
||||
// [ ] Platform: Gamepad support.
|
||||
// [ ] Platform: Mouse cursor shape and visibility (ImGuiBackendFlags_HasMouseCursors). Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange'. FIXME: Check if this is even possible with Android.
|
||||
// [ ] Platform: Multi-viewport support (multiple windows). Not meaningful on Android.
|
||||
// Important:
|
||||
// - Consider using SDL or GLFW backend on Android, which will be more full-featured than this.
|
||||
// - FIXME: On-screen keyboard currently needs to be enabled by the application (see examples/ and issue #3446)
|
||||
// - FIXME: Unicode character inputs needs to be passed by Dear ImGui by the application (see examples/ and issue #3446)
|
||||
|
||||
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
|
||||
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
|
||||
// Learn about Dear ImGui:
|
||||
// - FAQ https://dearimgui.com/faq
|
||||
// - Getting Started https://dearimgui.com/getting-started
|
||||
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
|
||||
// - Introduction, links and more at the top of imgui.cpp
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
#include "dcimgui.h"
|
||||
#ifndef IMGUI_DISABLE
|
||||
typedef struct ANativeWindow_t ANativeWindow;
|
||||
typedef struct AInputEvent_t AInputEvent;
|
||||
|
||||
typedef struct ImDrawData_t ImDrawData;
|
||||
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
|
||||
CIMGUI_IMPL_API bool cImGui_ImplAndroid_Init(ANativeWindow* window);
|
||||
CIMGUI_IMPL_API int32_t cImGui_ImplAndroid_HandleInputEvent(const AInputEvent* input_event);
|
||||
CIMGUI_IMPL_API void cImGui_ImplAndroid_Shutdown(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplAndroid_NewFrame(void);
|
||||
#endif// #ifndef IMGUI_DISABLE
|
||||
#ifdef __cplusplus
|
||||
} // End of extern "C" block
|
||||
#endif
|
||||
@@ -0,0 +1,209 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [
|
||||
{
|
||||
"name": "ImDrawIdx",
|
||||
"type": {
|
||||
"declaration": "unsigned short",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "unsigned_short"
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
|
||||
},
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "ifndef",
|
||||
"expression": "ImDrawIdx"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_android.h"
|
||||
}
|
||||
}
|
||||
],
|
||||
"structs": [
|
||||
{
|
||||
"name": "ANativeWindow",
|
||||
"original_fully_qualified_name": "ANativeWindow",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_android.h",
|
||||
"line": 29
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "AInputEvent",
|
||||
"original_fully_qualified_name": "AInputEvent",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_android.h",
|
||||
"line": 30
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImDrawData",
|
||||
"original_fully_qualified_name": "ImDrawData",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_android.h",
|
||||
"line": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"functions": [
|
||||
{
|
||||
"name": "cImGui_ImplAndroid_Init",
|
||||
"original_fully_qualified_name": "ImGui_ImplAndroid_Init",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": {
|
||||
"declaration": "ANativeWindow*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ANativeWindow"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_android.h",
|
||||
"line": 33
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplAndroid_HandleInputEvent",
|
||||
"original_fully_qualified_name": "ImGui_ImplAndroid_HandleInputEvent",
|
||||
"return_type": {
|
||||
"declaration": "int32_t",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "int32_t"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "input_event",
|
||||
"type": {
|
||||
"declaration": "const AInputEvent*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "AInputEvent",
|
||||
"storage_classes": [
|
||||
"const"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_android.h",
|
||||
"line": 34
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplAndroid_Shutdown",
|
||||
"original_fully_qualified_name": "ImGui_ImplAndroid_Shutdown",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_android.h",
|
||||
"line": 35
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplAndroid_NewFrame",
|
||||
"original_fully_qualified_name": "ImGui_ImplAndroid_NewFrame",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_android.h",
|
||||
"line": 36
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [],
|
||||
"structs": [],
|
||||
"functions": []
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,133 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
#include "imgui.h"
|
||||
#include "imgui_impl_dx10.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
// Wrap this in a namespace to keep it separate from the C++ API
|
||||
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
|
||||
// and thus generating redefinition warnings
|
||||
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
namespace cimgui
|
||||
{
|
||||
#include "dcimgui_impl_dx10.h"
|
||||
}
|
||||
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
|
||||
// By-value struct conversions
|
||||
|
||||
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
|
||||
{
|
||||
cimgui::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
|
||||
{
|
||||
::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
|
||||
{
|
||||
cimgui::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
|
||||
{
|
||||
::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
|
||||
{
|
||||
cimgui::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
|
||||
{
|
||||
::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
|
||||
{
|
||||
cimgui::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
|
||||
{
|
||||
::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
// Function stubs
|
||||
|
||||
#ifndef IMGUI_DISABLE
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplDX10_Init(cimgui::ID3D10Device* device)
|
||||
{
|
||||
return ::ImGui_ImplDX10_Init(reinterpret_cast<::ID3D10Device*>(device));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX10_Shutdown(void)
|
||||
{
|
||||
::ImGui_ImplDX10_Shutdown();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX10_NewFrame(void)
|
||||
{
|
||||
::ImGui_ImplDX10_NewFrame();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX10_RenderDrawData(cimgui::ImDrawData* draw_data)
|
||||
{
|
||||
::ImGui_ImplDX10_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplDX10_CreateDeviceObjects(void)
|
||||
{
|
||||
return ::ImGui_ImplDX10_CreateDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX10_InvalidateDeviceObjects(void)
|
||||
{
|
||||
::ImGui_ImplDX10_InvalidateDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX10_UpdateTexture(cimgui::ImTextureData* tex)
|
||||
{
|
||||
::ImGui_ImplDX10_UpdateTexture(reinterpret_cast<::ImTextureData*>(tex));
|
||||
}
|
||||
|
||||
#endif // #ifndef IMGUI_DISABLE
|
||||
@@ -0,0 +1,69 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
// dear imgui: Renderer Backend for DirectX10
|
||||
// Auto-generated forward declarations for C header
|
||||
typedef struct ImGui_ImplDX10_RenderState_t ImGui_ImplDX10_RenderState;
|
||||
// ImDrawIdx: vertex index. [Compile-time configurable type]
|
||||
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
|
||||
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
|
||||
#ifndef ImDrawIdx
|
||||
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
|
||||
#endif // #ifndef ImDrawIdx
|
||||
// This needs to be used along with a Platform Backend (e.g. Win32)
|
||||
|
||||
// Implemented features:
|
||||
// [X] Renderer: User texture binding. Use 'ID3D10ShaderResourceView*' as texture identifier. Read the FAQ about ImTextureID/ImTextureRef!
|
||||
// [X] Renderer: Large meshes support (64k+ vertices) even with 16-bit indices (ImGuiBackendFlags_RendererHasVtxOffset).
|
||||
// [X] Renderer: Texture updates support for dynamic font atlas (ImGuiBackendFlags_RendererHasTextures).
|
||||
// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'.
|
||||
|
||||
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
|
||||
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
|
||||
// Learn about Dear ImGui:
|
||||
// - FAQ https://dearimgui.com/faq
|
||||
// - Getting Started https://dearimgui.com/getting-started
|
||||
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
|
||||
// - Introduction, links and more at the top of imgui.cpp
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
#include "dcimgui.h"
|
||||
#ifndef IMGUI_DISABLE
|
||||
typedef struct ID3D10Device_t ID3D10Device;
|
||||
typedef struct ID3D10SamplerState_t ID3D10SamplerState;
|
||||
typedef struct ID3D10Buffer_t ID3D10Buffer;
|
||||
|
||||
typedef struct ImDrawData_t ImDrawData;
|
||||
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
|
||||
CIMGUI_IMPL_API bool cImGui_ImplDX10_Init(ID3D10Device* device);
|
||||
CIMGUI_IMPL_API void cImGui_ImplDX10_Shutdown(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplDX10_NewFrame(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplDX10_RenderDrawData(ImDrawData* draw_data);
|
||||
|
||||
// Use if you want to reset your rendering device without losing Dear ImGui state.
|
||||
CIMGUI_IMPL_API bool cImGui_ImplDX10_CreateDeviceObjects(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplDX10_InvalidateDeviceObjects(void);
|
||||
|
||||
// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually.
|
||||
CIMGUI_IMPL_API void cImGui_ImplDX10_UpdateTexture(ImTextureData* tex);
|
||||
|
||||
// [BETA] Selected render state data shared with callbacks.
|
||||
// This is temporarily stored in GetPlatformIO().Renderer_RenderState during the ImGui_ImplDX10_RenderDrawData() call.
|
||||
// (Please open an issue if you feel you need access to more data)
|
||||
struct ImGui_ImplDX10_RenderState_t
|
||||
{
|
||||
ID3D10Device* Device;
|
||||
ID3D10SamplerState* SamplerLinear;
|
||||
ID3D10SamplerState* SamplerNearest;
|
||||
ID3D10Buffer* VertexConstantBuffer;
|
||||
};
|
||||
#endif// #ifndef IMGUI_DISABLE
|
||||
#ifdef __cplusplus
|
||||
} // End of extern "C" block
|
||||
#endif
|
||||
@@ -0,0 +1,418 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [
|
||||
{
|
||||
"name": "ImDrawIdx",
|
||||
"type": {
|
||||
"declaration": "unsigned short",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "unsigned_short"
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
|
||||
},
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "ifndef",
|
||||
"expression": "ImDrawIdx"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx10.h"
|
||||
}
|
||||
}
|
||||
],
|
||||
"structs": [
|
||||
{
|
||||
"name": "ID3D10Device",
|
||||
"original_fully_qualified_name": "ID3D10Device",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx10.h",
|
||||
"line": 22
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ID3D10SamplerState",
|
||||
"original_fully_qualified_name": "ID3D10SamplerState",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx10.h",
|
||||
"line": 23
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ID3D10Buffer",
|
||||
"original_fully_qualified_name": "ID3D10Buffer",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx10.h",
|
||||
"line": 24
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImDrawData",
|
||||
"original_fully_qualified_name": "ImDrawData",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx10.h",
|
||||
"line": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImGui_ImplDX10_RenderState",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX10_RenderState",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": false,
|
||||
"is_anonymous": false,
|
||||
"fields": [
|
||||
{
|
||||
"name": "Device",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "ID3D10Device*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ID3D10Device"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx10.h",
|
||||
"line": 44
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "SamplerLinear",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "ID3D10SamplerState*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ID3D10SamplerState"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx10.h",
|
||||
"line": 45
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "SamplerNearest",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "ID3D10SamplerState*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ID3D10SamplerState"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx10.h",
|
||||
"line": 46
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "VertexConstantBuffer",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "ID3D10Buffer*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ID3D10Buffer"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx10.h",
|
||||
"line": 47
|
||||
}
|
||||
}
|
||||
],
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// [BETA] Selected render state data shared with callbacks.",
|
||||
"// This is temporarily stored in GetPlatformIO().Renderer_RenderState during the ImGui_ImplDX10_RenderDrawData() call.",
|
||||
"// (Please open an issue if you feel you need access to more data)"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx10.h",
|
||||
"line": 42
|
||||
}
|
||||
}
|
||||
],
|
||||
"functions": [
|
||||
{
|
||||
"name": "cImGui_ImplDX10_Init",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX10_Init",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "device",
|
||||
"type": {
|
||||
"declaration": "ID3D10Device*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ID3D10Device"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx10.h",
|
||||
"line": 27
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX10_Shutdown",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX10_Shutdown",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx10.h",
|
||||
"line": 28
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX10_NewFrame",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX10_NewFrame",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx10.h",
|
||||
"line": 29
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX10_RenderDrawData",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX10_RenderDrawData",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "draw_data",
|
||||
"type": {
|
||||
"declaration": "ImDrawData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImDrawData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx10.h",
|
||||
"line": 30
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX10_CreateDeviceObjects",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX10_CreateDeviceObjects",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Use if you want to reset your rendering device without losing Dear ImGui state."
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx10.h",
|
||||
"line": 33
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX10_InvalidateDeviceObjects",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX10_InvalidateDeviceObjects",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx10.h",
|
||||
"line": 34
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX10_UpdateTexture",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX10_UpdateTexture",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "tex",
|
||||
"type": {
|
||||
"declaration": "ImTextureData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImTextureData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually."
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx10.h",
|
||||
"line": 37
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [],
|
||||
"structs": [],
|
||||
"functions": []
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,133 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
#include "imgui.h"
|
||||
#include "imgui_impl_dx11.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
// Wrap this in a namespace to keep it separate from the C++ API
|
||||
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
|
||||
// and thus generating redefinition warnings
|
||||
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
namespace cimgui
|
||||
{
|
||||
#include "dcimgui_impl_dx11.h"
|
||||
}
|
||||
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
|
||||
// By-value struct conversions
|
||||
|
||||
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
|
||||
{
|
||||
cimgui::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
|
||||
{
|
||||
::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
|
||||
{
|
||||
cimgui::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
|
||||
{
|
||||
::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
|
||||
{
|
||||
cimgui::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
|
||||
{
|
||||
::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
|
||||
{
|
||||
cimgui::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
|
||||
{
|
||||
::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
// Function stubs
|
||||
|
||||
#ifndef IMGUI_DISABLE
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplDX11_Init(ID3D11Device* device, ID3D11DeviceContext* device_context)
|
||||
{
|
||||
return ::ImGui_ImplDX11_Init(device, device_context);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX11_Shutdown(void)
|
||||
{
|
||||
::ImGui_ImplDX11_Shutdown();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX11_NewFrame(void)
|
||||
{
|
||||
::ImGui_ImplDX11_NewFrame();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX11_RenderDrawData(cimgui::ImDrawData* draw_data)
|
||||
{
|
||||
::ImGui_ImplDX11_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplDX11_CreateDeviceObjects(void)
|
||||
{
|
||||
return ::ImGui_ImplDX11_CreateDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX11_InvalidateDeviceObjects(void)
|
||||
{
|
||||
::ImGui_ImplDX11_InvalidateDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX11_UpdateTexture(cimgui::ImTextureData* tex)
|
||||
{
|
||||
::ImGui_ImplDX11_UpdateTexture(reinterpret_cast<::ImTextureData*>(tex));
|
||||
}
|
||||
|
||||
#endif // #ifndef IMGUI_DISABLE
|
||||
@@ -0,0 +1,67 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
// dear imgui: Renderer Backend for DirectX11
|
||||
// Auto-generated forward declarations for C header
|
||||
typedef struct ImGui_ImplDX11_RenderState_t ImGui_ImplDX11_RenderState;
|
||||
// ImDrawIdx: vertex index. [Compile-time configurable type]
|
||||
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
|
||||
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
|
||||
#ifndef ImDrawIdx
|
||||
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
|
||||
#endif // #ifndef ImDrawIdx
|
||||
// This needs to be used along with a Platform Backend (e.g. Win32)
|
||||
|
||||
// Implemented features:
|
||||
// [X] Renderer: User texture binding. Use 'ID3D11ShaderResourceView*' as texture identifier. Read the FAQ about ImTextureID/ImTextureRef!
|
||||
// [X] Renderer: Large meshes support (64k+ vertices) even with 16-bit indices (ImGuiBackendFlags_RendererHasVtxOffset).
|
||||
// [X] Renderer: Texture updates support for dynamic font atlas (ImGuiBackendFlags_RendererHasTextures).
|
||||
// [X] Renderer: Expose selected render state for draw callbacks to use. Access in '(ImGui_ImplXXXX_RenderState*)GetPlatformIO().Renderer_RenderState'.
|
||||
// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'.
|
||||
|
||||
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
|
||||
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
|
||||
// Learn about Dear ImGui:
|
||||
// - FAQ https://dearimgui.com/faq
|
||||
// - Getting Started https://dearimgui.com/getting-started
|
||||
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
|
||||
// - Introduction, links and more at the top of imgui.cpp
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
#include "dcimgui.h"
|
||||
#ifndef IMGUI_DISABLE
|
||||
typedef struct ImDrawData_t ImDrawData;
|
||||
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
|
||||
CIMGUI_IMPL_API bool cImGui_ImplDX11_Init(ID3D11Device* device, ID3D11DeviceContext* device_context);
|
||||
CIMGUI_IMPL_API void cImGui_ImplDX11_Shutdown(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplDX11_NewFrame(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplDX11_RenderDrawData(ImDrawData* draw_data);
|
||||
|
||||
// Use if you want to reset your rendering device without losing Dear ImGui state.
|
||||
CIMGUI_IMPL_API bool cImGui_ImplDX11_CreateDeviceObjects(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplDX11_InvalidateDeviceObjects(void);
|
||||
|
||||
// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually.
|
||||
CIMGUI_IMPL_API void cImGui_ImplDX11_UpdateTexture(ImTextureData* tex);
|
||||
|
||||
// [BETA] Selected render state data shared with callbacks.
|
||||
// This is temporarily stored in GetPlatformIO().Renderer_RenderState during the ImGui_ImplDX11_RenderDrawData() call.
|
||||
// (Please open an issue if you feel you need access to more data)
|
||||
struct ImGui_ImplDX11_RenderState_t
|
||||
{
|
||||
ID3D11Device* Device;
|
||||
ID3D11DeviceContext* DeviceContext;
|
||||
ID3D11SamplerState* SamplerLinear;
|
||||
ID3D11SamplerState* SamplerNearest;
|
||||
ID3D11Buffer* VertexConstantBuffer;
|
||||
};
|
||||
#endif// #ifndef IMGUI_DISABLE
|
||||
#ifdef __cplusplus
|
||||
} // End of extern "C" block
|
||||
#endif
|
||||
@@ -0,0 +1,412 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [
|
||||
{
|
||||
"name": "ImDrawIdx",
|
||||
"type": {
|
||||
"declaration": "unsigned short",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "unsigned_short"
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
|
||||
},
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "ifndef",
|
||||
"expression": "ImDrawIdx"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx11.h"
|
||||
}
|
||||
}
|
||||
],
|
||||
"structs": [
|
||||
{
|
||||
"name": "ImDrawData",
|
||||
"original_fully_qualified_name": "ImDrawData",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx11.h",
|
||||
"line": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImGui_ImplDX11_RenderState",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX11_RenderState",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": false,
|
||||
"is_anonymous": false,
|
||||
"fields": [
|
||||
{
|
||||
"name": "Device",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "ID3D11Device*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ID3D11Device"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx11.h",
|
||||
"line": 46
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "DeviceContext",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "ID3D11DeviceContext*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ID3D11DeviceContext"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx11.h",
|
||||
"line": 47
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "SamplerLinear",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "ID3D11SamplerState*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ID3D11SamplerState"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx11.h",
|
||||
"line": 48
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "SamplerNearest",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "ID3D11SamplerState*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ID3D11SamplerState"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx11.h",
|
||||
"line": 49
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "VertexConstantBuffer",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "ID3D11Buffer*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ID3D11Buffer"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx11.h",
|
||||
"line": 50
|
||||
}
|
||||
}
|
||||
],
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// [BETA] Selected render state data shared with callbacks.",
|
||||
"// This is temporarily stored in GetPlatformIO().Renderer_RenderState during the ImGui_ImplDX11_RenderDrawData() call.",
|
||||
"// (Please open an issue if you feel you need access to more data)"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx11.h",
|
||||
"line": 44
|
||||
}
|
||||
}
|
||||
],
|
||||
"functions": [
|
||||
{
|
||||
"name": "cImGui_ImplDX11_Init",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX11_Init",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "device",
|
||||
"type": {
|
||||
"declaration": "ID3D11Device*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ID3D11Device"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "device_context",
|
||||
"type": {
|
||||
"declaration": "ID3D11DeviceContext*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ID3D11DeviceContext"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx11.h",
|
||||
"line": 29
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX11_Shutdown",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX11_Shutdown",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx11.h",
|
||||
"line": 30
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX11_NewFrame",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX11_NewFrame",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx11.h",
|
||||
"line": 31
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX11_RenderDrawData",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX11_RenderDrawData",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "draw_data",
|
||||
"type": {
|
||||
"declaration": "ImDrawData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImDrawData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx11.h",
|
||||
"line": 32
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX11_CreateDeviceObjects",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX11_CreateDeviceObjects",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Use if you want to reset your rendering device without losing Dear ImGui state."
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx11.h",
|
||||
"line": 35
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX11_InvalidateDeviceObjects",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX11_InvalidateDeviceObjects",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx11.h",
|
||||
"line": 36
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX11_UpdateTexture",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX11_UpdateTexture",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "tex",
|
||||
"type": {
|
||||
"declaration": "ImTextureData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImTextureData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually."
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx11.h",
|
||||
"line": 39
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [],
|
||||
"structs": [],
|
||||
"functions": []
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,143 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
#include "imgui.h"
|
||||
#include "imgui_impl_dx12.h"
|
||||
|
||||
#include <stdio.h>
|
||||
#include <d3d12.h>
|
||||
|
||||
// Wrap this in a namespace to keep it separate from the C++ API
|
||||
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
|
||||
// and thus generating redefinition warnings
|
||||
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
namespace cimgui
|
||||
{
|
||||
#include "dcimgui_impl_dx12.h"
|
||||
}
|
||||
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
|
||||
// By-value struct conversions
|
||||
|
||||
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
|
||||
{
|
||||
cimgui::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
|
||||
{
|
||||
::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
|
||||
{
|
||||
cimgui::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
|
||||
{
|
||||
::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
|
||||
{
|
||||
cimgui::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
|
||||
{
|
||||
::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
|
||||
{
|
||||
cimgui::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
|
||||
{
|
||||
::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
// Function stubs
|
||||
|
||||
#ifndef IMGUI_DISABLE
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplDX12_Init(cimgui::ImGui_ImplDX12_InitInfo* info)
|
||||
{
|
||||
return ::ImGui_ImplDX12_Init(reinterpret_cast<::ImGui_ImplDX12_InitInfo*>(info));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX12_Shutdown(void)
|
||||
{
|
||||
::ImGui_ImplDX12_Shutdown();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX12_NewFrame(void)
|
||||
{
|
||||
::ImGui_ImplDX12_NewFrame();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX12_RenderDrawData(cimgui::ImDrawData* draw_data, ID3D12GraphicsCommandList* graphics_command_list)
|
||||
{
|
||||
::ImGui_ImplDX12_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data), graphics_command_list);
|
||||
}
|
||||
|
||||
#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplDX12_InitID3D12DevicePtr(ID3D12Device* device, int num_frames_in_flight, DXGI_FORMAT rtv_format, ID3D12DescriptorHeap* srv_descriptor_heap, D3D12_CPU_DESCRIPTOR_HANDLE font_srv_cpu_desc_handle, D3D12_GPU_DESCRIPTOR_HANDLE font_srv_gpu_desc_handle)
|
||||
{
|
||||
return ::ImGui_ImplDX12_Init(device, num_frames_in_flight, rtv_format, srv_descriptor_heap, font_srv_cpu_desc_handle, font_srv_gpu_desc_handle);
|
||||
}
|
||||
|
||||
#endif // #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplDX12_CreateDeviceObjects(void)
|
||||
{
|
||||
return ::ImGui_ImplDX12_CreateDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX12_InvalidateDeviceObjects(void)
|
||||
{
|
||||
::ImGui_ImplDX12_InvalidateDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX12_UpdateTexture(cimgui::ImTextureData* tex)
|
||||
{
|
||||
::ImGui_ImplDX12_UpdateTexture(reinterpret_cast<::ImTextureData*>(tex));
|
||||
}
|
||||
|
||||
#endif // #ifndef IMGUI_DISABLE
|
||||
@@ -0,0 +1,106 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
// dear imgui: Renderer Backend for DirectX12
|
||||
// Auto-generated forward declarations for C header
|
||||
typedef struct ImGui_ImplDX12_InitInfo_t ImGui_ImplDX12_InitInfo;
|
||||
typedef struct ImGui_ImplDX12_RenderState_t ImGui_ImplDX12_RenderState;
|
||||
// ImDrawIdx: vertex index. [Compile-time configurable type]
|
||||
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
|
||||
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
|
||||
#ifndef ImDrawIdx
|
||||
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
|
||||
#endif // #ifndef ImDrawIdx
|
||||
// This needs to be used along with a Platform Backend (e.g. Win32)
|
||||
|
||||
// Implemented features:
|
||||
// [X] Renderer: User texture binding. Use 'D3D12_GPU_DESCRIPTOR_HANDLE' as texture identifier. Read the FAQ about ImTextureID/ImTextureRef!
|
||||
// [X] Renderer: Large meshes support (64k+ vertices) even with 16-bit indices (ImGuiBackendFlags_RendererHasVtxOffset).
|
||||
// [X] Renderer: Texture updates support for dynamic font atlas (ImGuiBackendFlags_RendererHasTextures).
|
||||
// [X] Renderer: Expose selected render state for draw callbacks to use. Access in '(ImGui_ImplXXXX_RenderState*)GetPlatformIO().Renderer_RenderState'.
|
||||
// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'.
|
||||
|
||||
// The aim of imgui_impl_dx12.h/.cpp is to be usable in your engine without any modification.
|
||||
// IF YOU FEEL YOU NEED TO MAKE ANY CHANGE TO THIS CODE, please share them and your feedback at https://github.com/ocornut/imgui/
|
||||
|
||||
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
|
||||
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
|
||||
// Learn about Dear ImGui:
|
||||
// - FAQ https://dearimgui.com/faq
|
||||
// - Getting Started https://dearimgui.com/getting-started
|
||||
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
|
||||
// - Introduction, links and more at the top of imgui.cpp
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
#include "dcimgui.h"
|
||||
#ifndef IMGUI_DISABLE
|
||||
#include <dxgiformat.h>
|
||||
#include <d3d12.h>
|
||||
// Clang/GCC warnings with -Weverything
|
||||
#if defined(__clang__)
|
||||
#pragma clang diagnostic push
|
||||
#pragma clang diagnostic ignored "-Wold-style-cast" // warning: use of old-style cast
|
||||
#endif // #if defined(__clang__)
|
||||
typedef struct ImGui_ImplDX12_InitInfo_ImDrawData_t ImGui_ImplDX12_InitInfo_ImDrawData;
|
||||
// Initialization data, for ImGui_ImplDX12_Init()
|
||||
struct ImGui_ImplDX12_InitInfo_t
|
||||
{
|
||||
ID3D12Device* Device;
|
||||
ID3D12CommandQueue* CommandQueue; // Command queue used for queuing texture uploads.
|
||||
int NumFramesInFlight;
|
||||
DXGI_FORMAT RTVFormat; // RenderTarget format.
|
||||
DXGI_FORMAT DSVFormat; // DepthStencilView format.
|
||||
void* UserData;
|
||||
|
||||
// Allocating SRV descriptors for textures is up to the application, so we provide callbacks.
|
||||
// (current version of the backend will only allocate one descriptor, from 1.92 the backend will need to allocate more)
|
||||
ID3D12DescriptorHeap* SrvDescriptorHeap;
|
||||
void (*SrvDescriptorAllocFn)(ImGui_ImplDX12_InitInfo* info, D3D12_CPU_DESCRIPTOR_HANDLE* out_cpu_desc_handle, D3D12_GPU_DESCRIPTOR_HANDLE* out_gpu_desc_handle);
|
||||
void (*SrvDescriptorFreeFn)(ImGui_ImplDX12_InitInfo* info, D3D12_CPU_DESCRIPTOR_HANDLE cpu_desc_handle, D3D12_GPU_DESCRIPTOR_HANDLE gpu_desc_handle);
|
||||
#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS
|
||||
D3D12_CPU_DESCRIPTOR_HANDLE LegacySingleSrvCpuDescriptor; // To facilitate transition from single descriptor to allocator callback, you may use those.
|
||||
D3D12_GPU_DESCRIPTOR_HANDLE LegacySingleSrvGpuDescriptor;
|
||||
#endif // #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS
|
||||
};
|
||||
|
||||
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
|
||||
CIMGUI_IMPL_API bool cImGui_ImplDX12_Init(ImGui_ImplDX12_InitInfo* info);
|
||||
CIMGUI_IMPL_API void cImGui_ImplDX12_Shutdown(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplDX12_NewFrame(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplDX12_RenderDrawData(ImDrawData* draw_data, ID3D12GraphicsCommandList* graphics_command_list);
|
||||
|
||||
#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS
|
||||
// Legacy initialization API Obsoleted in 1.91.5
|
||||
// - font_srv_cpu_desc_handle and font_srv_gpu_desc_handle are handles to a single SRV descriptor to use for the internal font texture, they must be in 'srv_descriptor_heap'
|
||||
// - When we introduced the ImGui_ImplDX12_InitInfo struct we also added a 'ID3D12CommandQueue* CommandQueue' field.
|
||||
CIMGUI_IMPL_API bool cImGui_ImplDX12_InitID3D12DevicePtr(ID3D12Device* device, int num_frames_in_flight, DXGI_FORMAT rtv_format, ID3D12DescriptorHeap* srv_descriptor_heap, D3D12_CPU_DESCRIPTOR_HANDLE font_srv_cpu_desc_handle, D3D12_GPU_DESCRIPTOR_HANDLE font_srv_gpu_desc_handle);
|
||||
#endif // #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS
|
||||
// Use if you want to reset your rendering device without losing Dear ImGui state.
|
||||
CIMGUI_IMPL_API bool cImGui_ImplDX12_CreateDeviceObjects(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplDX12_InvalidateDeviceObjects(void);
|
||||
|
||||
// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually.
|
||||
CIMGUI_IMPL_API void cImGui_ImplDX12_UpdateTexture(ImTextureData* tex);
|
||||
|
||||
// [BETA] Selected render state data shared with callbacks.
|
||||
// This is temporarily stored in GetPlatformIO().Renderer_RenderState during the ImGui_ImplDX12_RenderDrawData() call.
|
||||
// (Please open an issue if you feel you need access to more data)
|
||||
struct ImGui_ImplDX12_RenderState_t
|
||||
{
|
||||
ID3D12Device* Device;
|
||||
ID3D12GraphicsCommandList* CommandList;
|
||||
};
|
||||
|
||||
#if defined(__clang__)
|
||||
#pragma clang diagnostic pop
|
||||
#endif // #if defined(__clang__)
|
||||
#endif// #ifndef IMGUI_DISABLE
|
||||
#ifdef __cplusplus
|
||||
} // End of extern "C" block
|
||||
#endif
|
||||
@@ -0,0 +1,918 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [
|
||||
{
|
||||
"name": "ImDrawIdx",
|
||||
"type": {
|
||||
"declaration": "unsigned short",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "unsigned_short"
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
|
||||
},
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "ifndef",
|
||||
"expression": "ImDrawIdx"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h"
|
||||
}
|
||||
}
|
||||
],
|
||||
"structs": [
|
||||
{
|
||||
"name": "ImGui_ImplDX12_InitInfo_ImDrawData",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX12_InitInfo_ImDrawData",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImGui_ImplDX12_InitInfo",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX12_InitInfo",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": false,
|
||||
"is_anonymous": false,
|
||||
"fields": [
|
||||
{
|
||||
"name": "Device",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "ID3D12Device*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ID3D12Device"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 37
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "CommandQueue",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "ID3D12CommandQueue*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ID3D12CommandQueue"
|
||||
}
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// Command queue used for queuing texture uploads."
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 38
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "NumFramesInFlight",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 39
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "RTVFormat",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "DXGI_FORMAT",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "DXGI_FORMAT"
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// RenderTarget format."
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 40
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "DSVFormat",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "DXGI_FORMAT",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "DXGI_FORMAT"
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// DepthStencilView format."
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 41
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "UserData",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "void*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 42
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "SrvDescriptorHeap",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "ID3D12DescriptorHeap*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ID3D12DescriptorHeap"
|
||||
}
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Allocating SRV descriptors for textures is up to the application, so we provide callbacks.",
|
||||
"// (current version of the backend will only allocate one descriptor, from 1.92 the backend will need to allocate more)"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 46
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "SrvDescriptorAllocFn",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "void (*SrvDescriptorAllocFn)(ImGui_ImplDX12_InitInfo* info, D3D12_CPU_DESCRIPTOR_HANDLE* out_cpu_desc_handle, D3D12_GPU_DESCRIPTOR_HANDLE* out_gpu_desc_handle)",
|
||||
"type_details": {
|
||||
"flavour": "function_pointer",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "info",
|
||||
"type": {
|
||||
"declaration": "ImGui_ImplDX12_InitInfo*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImGui_ImplDX12_InitInfo"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "out_cpu_desc_handle",
|
||||
"type": {
|
||||
"declaration": "D3D12_CPU_DESCRIPTOR_HANDLE*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "D3D12_CPU_DESCRIPTOR_HANDLE"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "out_gpu_desc_handle",
|
||||
"type": {
|
||||
"declaration": "D3D12_GPU_DESCRIPTOR_HANDLE*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "D3D12_GPU_DESCRIPTOR_HANDLE"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"description": {
|
||||
"kind": "Type",
|
||||
"name": "SrvDescriptorAllocFn",
|
||||
"inner_type": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "Function",
|
||||
"return_type": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
},
|
||||
"parameters": [
|
||||
{
|
||||
"kind": "Type",
|
||||
"name": "info",
|
||||
"inner_type": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImGui_ImplDX12_InitInfo"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"kind": "Type",
|
||||
"name": "out_cpu_desc_handle",
|
||||
"inner_type": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "D3D12_CPU_DESCRIPTOR_HANDLE"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"kind": "Type",
|
||||
"name": "out_gpu_desc_handle",
|
||||
"inner_type": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "D3D12_GPU_DESCRIPTOR_HANDLE"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "SrvDescriptorFreeFn",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "void (*SrvDescriptorFreeFn)(ImGui_ImplDX12_InitInfo* info, D3D12_CPU_DESCRIPTOR_HANDLE cpu_desc_handle, D3D12_GPU_DESCRIPTOR_HANDLE gpu_desc_handle)",
|
||||
"type_details": {
|
||||
"flavour": "function_pointer",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "info",
|
||||
"type": {
|
||||
"declaration": "ImGui_ImplDX12_InitInfo*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImGui_ImplDX12_InitInfo"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "cpu_desc_handle",
|
||||
"type": {
|
||||
"declaration": "D3D12_CPU_DESCRIPTOR_HANDLE",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "D3D12_CPU_DESCRIPTOR_HANDLE"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "gpu_desc_handle",
|
||||
"type": {
|
||||
"declaration": "D3D12_GPU_DESCRIPTOR_HANDLE",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "D3D12_GPU_DESCRIPTOR_HANDLE"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"description": {
|
||||
"kind": "Type",
|
||||
"name": "SrvDescriptorFreeFn",
|
||||
"inner_type": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "Function",
|
||||
"return_type": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
},
|
||||
"parameters": [
|
||||
{
|
||||
"kind": "Type",
|
||||
"name": "info",
|
||||
"inner_type": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImGui_ImplDX12_InitInfo"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"kind": "Type",
|
||||
"name": "cpu_desc_handle",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "D3D12_CPU_DESCRIPTOR_HANDLE"
|
||||
}
|
||||
},
|
||||
{
|
||||
"kind": "Type",
|
||||
"name": "gpu_desc_handle",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "D3D12_GPU_DESCRIPTOR_HANDLE"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "LegacySingleSrvCpuDescriptor",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "D3D12_CPU_DESCRIPTOR_HANDLE",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "D3D12_CPU_DESCRIPTOR_HANDLE"
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// To facilitate transition from single descriptor to allocator callback, you may use those."
|
||||
},
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "ifndef",
|
||||
"expression": "IMGUI_DISABLE_OBSOLETE_FUNCTIONS"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 50
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "LegacySingleSrvGpuDescriptor",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "D3D12_GPU_DESCRIPTOR_HANDLE",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "D3D12_GPU_DESCRIPTOR_HANDLE"
|
||||
}
|
||||
},
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "ifndef",
|
||||
"expression": "IMGUI_DISABLE_OBSOLETE_FUNCTIONS"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 51
|
||||
}
|
||||
}
|
||||
],
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Initialization data, for ImGui_ImplDX12_Init()"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 35
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImGui_ImplDX12_RenderState",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX12_RenderState",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": false,
|
||||
"is_anonymous": false,
|
||||
"fields": [
|
||||
{
|
||||
"name": "Device",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "ID3D12Device*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ID3D12Device"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 82
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "CommandList",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "ID3D12GraphicsCommandList*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ID3D12GraphicsCommandList"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 83
|
||||
}
|
||||
}
|
||||
],
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// [BETA] Selected render state data shared with callbacks.",
|
||||
"// This is temporarily stored in GetPlatformIO().Renderer_RenderState during the ImGui_ImplDX12_RenderDrawData() call.",
|
||||
"// (Please open an issue if you feel you need access to more data)"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 80
|
||||
}
|
||||
}
|
||||
],
|
||||
"functions": [
|
||||
{
|
||||
"name": "cImGui_ImplDX12_Init",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX12_Init",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "info",
|
||||
"type": {
|
||||
"declaration": "ImGui_ImplDX12_InitInfo*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImGui_ImplDX12_InitInfo"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 58
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX12_Shutdown",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX12_Shutdown",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 59
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX12_NewFrame",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX12_NewFrame",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 60
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX12_RenderDrawData",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX12_RenderDrawData",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "draw_data",
|
||||
"type": {
|
||||
"declaration": "ImDrawData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImDrawData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "graphics_command_list",
|
||||
"type": {
|
||||
"declaration": "ID3D12GraphicsCommandList*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ID3D12GraphicsCommandList"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 61
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX12_InitID3D12DevicePtr",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX12_Init",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "device",
|
||||
"type": {
|
||||
"declaration": "ID3D12Device*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ID3D12Device"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "num_frames_in_flight",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "rtv_format",
|
||||
"type": {
|
||||
"declaration": "DXGI_FORMAT",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "DXGI_FORMAT"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "srv_descriptor_heap",
|
||||
"type": {
|
||||
"declaration": "ID3D12DescriptorHeap*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ID3D12DescriptorHeap"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "font_srv_cpu_desc_handle",
|
||||
"type": {
|
||||
"declaration": "D3D12_CPU_DESCRIPTOR_HANDLE",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "D3D12_CPU_DESCRIPTOR_HANDLE"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "font_srv_gpu_desc_handle",
|
||||
"type": {
|
||||
"declaration": "D3D12_GPU_DESCRIPTOR_HANDLE",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "D3D12_GPU_DESCRIPTOR_HANDLE"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Legacy initialization API Obsoleted in 1.91.5",
|
||||
"// - font_srv_cpu_desc_handle and font_srv_gpu_desc_handle are handles to a single SRV descriptor to use for the internal font texture, they must be in 'srv_descriptor_heap'",
|
||||
"// - When we introduced the ImGui_ImplDX12_InitInfo struct we also added a 'ID3D12CommandQueue* CommandQueue' field."
|
||||
]
|
||||
},
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "ifndef",
|
||||
"expression": "IMGUI_DISABLE_OBSOLETE_FUNCTIONS"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 67
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX12_CreateDeviceObjects",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX12_CreateDeviceObjects",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Use if you want to reset your rendering device without losing Dear ImGui state."
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 71
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX12_InvalidateDeviceObjects",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX12_InvalidateDeviceObjects",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 72
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX12_UpdateTexture",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX12_UpdateTexture",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "tex",
|
||||
"type": {
|
||||
"declaration": "ImTextureData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImTextureData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually."
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx12.h",
|
||||
"line": 75
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [],
|
||||
"structs": [],
|
||||
"functions": []
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,133 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
#include "imgui.h"
|
||||
#include "imgui_impl_dx9.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
// Wrap this in a namespace to keep it separate from the C++ API
|
||||
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
|
||||
// and thus generating redefinition warnings
|
||||
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
namespace cimgui
|
||||
{
|
||||
#include "dcimgui_impl_dx9.h"
|
||||
}
|
||||
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
|
||||
// By-value struct conversions
|
||||
|
||||
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
|
||||
{
|
||||
cimgui::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
|
||||
{
|
||||
::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
|
||||
{
|
||||
cimgui::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
|
||||
{
|
||||
::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
|
||||
{
|
||||
cimgui::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
|
||||
{
|
||||
::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
|
||||
{
|
||||
cimgui::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
|
||||
{
|
||||
::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
// Function stubs
|
||||
|
||||
#ifndef IMGUI_DISABLE
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplDX9_Init(cimgui::IDirect3DDevice9* device)
|
||||
{
|
||||
return ::ImGui_ImplDX9_Init(reinterpret_cast<::IDirect3DDevice9*>(device));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX9_Shutdown(void)
|
||||
{
|
||||
::ImGui_ImplDX9_Shutdown();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX9_NewFrame(void)
|
||||
{
|
||||
::ImGui_ImplDX9_NewFrame();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX9_RenderDrawData(cimgui::ImDrawData* draw_data)
|
||||
{
|
||||
::ImGui_ImplDX9_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplDX9_CreateDeviceObjects(void)
|
||||
{
|
||||
return ::ImGui_ImplDX9_CreateDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX9_InvalidateDeviceObjects(void)
|
||||
{
|
||||
::ImGui_ImplDX9_InvalidateDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX9_UpdateTexture(cimgui::ImTextureData* tex)
|
||||
{
|
||||
::ImGui_ImplDX9_UpdateTexture(reinterpret_cast<::ImTextureData*>(tex));
|
||||
}
|
||||
|
||||
#endif // #ifndef IMGUI_DISABLE
|
||||
@@ -0,0 +1,55 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
// dear imgui: Renderer Backend for DirectX9
|
||||
// ImDrawIdx: vertex index. [Compile-time configurable type]
|
||||
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
|
||||
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
|
||||
#ifndef ImDrawIdx
|
||||
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
|
||||
#endif // #ifndef ImDrawIdx
|
||||
// This needs to be used along with a Platform Backend (e.g. Win32)
|
||||
|
||||
// Implemented features:
|
||||
// [X] Renderer: User texture binding. Use 'LPDIRECT3DTEXTURE9' as texture identifier. Read the FAQ about ImTextureID/ImTextureRef!
|
||||
// [X] Renderer: Large meshes support (64k+ vertices) even with 16-bit indices (ImGuiBackendFlags_RendererHasVtxOffset).
|
||||
// [X] Renderer: Texture updates support for dynamic font atlas (ImGuiBackendFlags_RendererHasTextures).
|
||||
// [X] Renderer: IMGUI_USE_BGRA_PACKED_COLOR support, as this is the optimal color encoding for DirectX9.
|
||||
// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'.
|
||||
|
||||
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
|
||||
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
|
||||
// Learn about Dear ImGui:
|
||||
// - FAQ https://dearimgui.com/faq
|
||||
// - Getting Started https://dearimgui.com/getting-started
|
||||
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
|
||||
// - Introduction, links and more at the top of imgui.cpp
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
#include "dcimgui.h"
|
||||
#ifndef IMGUI_DISABLE
|
||||
typedef struct IDirect3DDevice9 IDirect3DDevice9;
|
||||
|
||||
typedef struct ImDrawData_t ImDrawData;
|
||||
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
|
||||
CIMGUI_IMPL_API bool cImGui_ImplDX9_Init(IDirect3DDevice9* device);
|
||||
CIMGUI_IMPL_API void cImGui_ImplDX9_Shutdown(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplDX9_NewFrame(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplDX9_RenderDrawData(ImDrawData* draw_data);
|
||||
|
||||
// Use if you want to reset your rendering device without losing Dear ImGui state.
|
||||
CIMGUI_IMPL_API bool cImGui_ImplDX9_CreateDeviceObjects(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplDX9_InvalidateDeviceObjects(void);
|
||||
|
||||
// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually.
|
||||
CIMGUI_IMPL_API void cImGui_ImplDX9_UpdateTexture(ImTextureData* tex);
|
||||
#endif// #ifndef IMGUI_DISABLE
|
||||
#ifdef __cplusplus
|
||||
} // End of extern "C" block
|
||||
#endif
|
||||
@@ -0,0 +1,288 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [
|
||||
{
|
||||
"name": "ImDrawIdx",
|
||||
"type": {
|
||||
"declaration": "unsigned short",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "unsigned_short"
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
|
||||
},
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "ifndef",
|
||||
"expression": "ImDrawIdx"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx9.h"
|
||||
}
|
||||
}
|
||||
],
|
||||
"structs": [
|
||||
{
|
||||
"name": "IDirect3DDevice9",
|
||||
"original_fully_qualified_name": "IDirect3DDevice9",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx9.h",
|
||||
"line": 23
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImDrawData",
|
||||
"original_fully_qualified_name": "ImDrawData",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx9.h",
|
||||
"line": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"functions": [
|
||||
{
|
||||
"name": "cImGui_ImplDX9_Init",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX9_Init",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "device",
|
||||
"type": {
|
||||
"declaration": "IDirect3DDevice9*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "IDirect3DDevice9"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx9.h",
|
||||
"line": 26
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX9_Shutdown",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX9_Shutdown",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx9.h",
|
||||
"line": 27
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX9_NewFrame",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX9_NewFrame",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx9.h",
|
||||
"line": 28
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX9_RenderDrawData",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX9_RenderDrawData",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "draw_data",
|
||||
"type": {
|
||||
"declaration": "ImDrawData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImDrawData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx9.h",
|
||||
"line": 29
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX9_CreateDeviceObjects",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX9_CreateDeviceObjects",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Use if you want to reset your rendering device without losing Dear ImGui state."
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx9.h",
|
||||
"line": 32
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX9_InvalidateDeviceObjects",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX9_InvalidateDeviceObjects",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx9.h",
|
||||
"line": 33
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplDX9_UpdateTexture",
|
||||
"original_fully_qualified_name": "ImGui_ImplDX9_UpdateTexture",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "tex",
|
||||
"type": {
|
||||
"declaration": "ImTextureData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImTextureData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually."
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_dx9.h",
|
||||
"line": 36
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [],
|
||||
"structs": [],
|
||||
"functions": []
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,202 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
#include "imgui.h"
|
||||
#include "imgui_impl_glfw.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
// Wrap this in a namespace to keep it separate from the C++ API
|
||||
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
|
||||
// and thus generating redefinition warnings
|
||||
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
namespace cimgui
|
||||
{
|
||||
#include "dcimgui_impl_glfw.h"
|
||||
}
|
||||
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
|
||||
// By-value struct conversions
|
||||
|
||||
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
|
||||
{
|
||||
cimgui::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
|
||||
{
|
||||
::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
|
||||
{
|
||||
cimgui::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
|
||||
{
|
||||
::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
|
||||
{
|
||||
cimgui::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
|
||||
{
|
||||
::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
|
||||
{
|
||||
cimgui::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
|
||||
{
|
||||
::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
// Function stubs
|
||||
|
||||
#ifndef IMGUI_DISABLE
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplGlfw_InitForOpenGL(cimgui::GLFWwindow* window, bool install_callbacks)
|
||||
{
|
||||
return ::ImGui_ImplGlfw_InitForOpenGL(reinterpret_cast<::GLFWwindow*>(window), install_callbacks);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplGlfw_InitForVulkan(cimgui::GLFWwindow* window, bool install_callbacks)
|
||||
{
|
||||
return ::ImGui_ImplGlfw_InitForVulkan(reinterpret_cast<::GLFWwindow*>(window), install_callbacks);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplGlfw_InitForOther(cimgui::GLFWwindow* window, bool install_callbacks)
|
||||
{
|
||||
return ::ImGui_ImplGlfw_InitForOther(reinterpret_cast<::GLFWwindow*>(window), install_callbacks);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_Shutdown(void)
|
||||
{
|
||||
::ImGui_ImplGlfw_Shutdown();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_NewFrame(void)
|
||||
{
|
||||
::ImGui_ImplGlfw_NewFrame();
|
||||
}
|
||||
|
||||
#ifdef __EMSCRIPTEN__
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_InstallEmscriptenCallbacks(cimgui::GLFWwindow* window, const char* canvas_selector)
|
||||
{
|
||||
::ImGui_ImplGlfw_InstallEmscriptenCallbacks(reinterpret_cast<::GLFWwindow*>(window), canvas_selector);
|
||||
}
|
||||
|
||||
#endif // #ifdef __EMSCRIPTEN__
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_InstallCallbacks(cimgui::GLFWwindow* window)
|
||||
{
|
||||
::ImGui_ImplGlfw_InstallCallbacks(reinterpret_cast<::GLFWwindow*>(window));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_RestoreCallbacks(cimgui::GLFWwindow* window)
|
||||
{
|
||||
::ImGui_ImplGlfw_RestoreCallbacks(reinterpret_cast<::GLFWwindow*>(window));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_SetCallbacksChainForAllWindows(bool chain_for_all_windows)
|
||||
{
|
||||
::ImGui_ImplGlfw_SetCallbacksChainForAllWindows(chain_for_all_windows);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_WindowFocusCallback(cimgui::GLFWwindow* window, int focused)
|
||||
{
|
||||
::ImGui_ImplGlfw_WindowFocusCallback(reinterpret_cast<::GLFWwindow*>(window), focused);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_CursorEnterCallback(cimgui::GLFWwindow* window, int entered)
|
||||
{
|
||||
::ImGui_ImplGlfw_CursorEnterCallback(reinterpret_cast<::GLFWwindow*>(window), entered);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_CursorPosCallback(cimgui::GLFWwindow* window, double x, double y)
|
||||
{
|
||||
::ImGui_ImplGlfw_CursorPosCallback(reinterpret_cast<::GLFWwindow*>(window), x, y);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_MouseButtonCallback(cimgui::GLFWwindow* window, int button, int action, int mods)
|
||||
{
|
||||
::ImGui_ImplGlfw_MouseButtonCallback(reinterpret_cast<::GLFWwindow*>(window), button, action, mods);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_ScrollCallback(cimgui::GLFWwindow* window, double xoffset, double yoffset)
|
||||
{
|
||||
::ImGui_ImplGlfw_ScrollCallback(reinterpret_cast<::GLFWwindow*>(window), xoffset, yoffset);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_KeyCallback(cimgui::GLFWwindow* window, int key, int scancode, int action, int mods)
|
||||
{
|
||||
::ImGui_ImplGlfw_KeyCallback(reinterpret_cast<::GLFWwindow*>(window), key, scancode, action, mods);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_CharCallback(cimgui::GLFWwindow* window, unsigned int c)
|
||||
{
|
||||
::ImGui_ImplGlfw_CharCallback(reinterpret_cast<::GLFWwindow*>(window), c);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_MonitorCallback(cimgui::GLFWmonitor* monitor, int event)
|
||||
{
|
||||
::ImGui_ImplGlfw_MonitorCallback(reinterpret_cast<::GLFWmonitor*>(monitor), event);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_Sleep(int milliseconds)
|
||||
{
|
||||
::ImGui_ImplGlfw_Sleep(milliseconds);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API float cimgui::cImGui_ImplGlfw_GetContentScaleForWindow(cimgui::GLFWwindow* window)
|
||||
{
|
||||
return ::ImGui_ImplGlfw_GetContentScaleForWindow(reinterpret_cast<::GLFWwindow*>(window));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API float cimgui::cImGui_ImplGlfw_GetContentScaleForMonitor(cimgui::GLFWmonitor* monitor)
|
||||
{
|
||||
return ::ImGui_ImplGlfw_GetContentScaleForMonitor(reinterpret_cast<::GLFWmonitor*>(monitor));
|
||||
}
|
||||
|
||||
#endif // #ifndef IMGUI_DISABLE
|
||||
@@ -0,0 +1,88 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
// dear imgui: Platform Backend for GLFW
|
||||
// ImDrawIdx: vertex index. [Compile-time configurable type]
|
||||
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
|
||||
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
|
||||
#ifndef ImDrawIdx
|
||||
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
|
||||
#endif // #ifndef ImDrawIdx
|
||||
// This needs to be used along with a Renderer (e.g. OpenGL3, Vulkan, WebGPU..)
|
||||
// (Info: GLFW is a cross-platform general purpose library for handling windows, inputs, OpenGL/Vulkan graphics context creation, etc.)
|
||||
// (Requires: GLFW 3.0+. Prefer GLFW 3.3+/3.4+ for full feature support.)
|
||||
|
||||
// Implemented features:
|
||||
// [X] Platform: Clipboard support.
|
||||
// [X] Platform: Mouse support. Can discriminate Mouse/TouchScreen/Pen (Windows only).
|
||||
// [X] Platform: Keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy GLFW_KEY_* values are obsolete since 1.87 and not supported since 1.91.5]
|
||||
// [X] Platform: Gamepad support. Enable with 'io.ConfigFlags |= ImGuiConfigFlags_NavEnableGamepad'.
|
||||
// [X] Platform: Mouse cursor shape and visibility (ImGuiBackendFlags_HasMouseCursors) with GLFW 3.1+. Resizing cursors requires GLFW 3.4+! Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange'.
|
||||
// [X] Platform: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'.
|
||||
// [X] Multiple Dear ImGui contexts support.
|
||||
// Missing features or Issues:
|
||||
// [ ] Platform: Touch events are only correctly identified as Touch on Windows. This create issues with some interactions. GLFW doesn't provide a way to identify touch inputs from mouse inputs, we cannot call io.AddMouseSourceEvent() to identify the source. We provide a Windows-specific workaround.
|
||||
// [ ] Platform: Missing ImGuiMouseCursor_Wait and ImGuiMouseCursor_Progress cursors.
|
||||
// [ ] Platform: Multi-viewport: Missing ImGuiBackendFlags_HasParentViewport support. The viewport->ParentViewportID field is ignored, and therefore io.ConfigViewportsNoDefaultParent has no effect either.
|
||||
|
||||
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
|
||||
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
|
||||
// Learn about Dear ImGui:
|
||||
// - FAQ https://dearimgui.com/faq
|
||||
// - Getting Started https://dearimgui.com/getting-started
|
||||
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
|
||||
// - Introduction, links and more at the top of imgui.cpp
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
#include "dcimgui.h"
|
||||
#ifndef IMGUI_DISABLE
|
||||
typedef struct GLFWwindow GLFWwindow;
|
||||
typedef struct GLFWmonitor GLFWmonitor;
|
||||
|
||||
typedef struct ImDrawData_t ImDrawData;
|
||||
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
|
||||
CIMGUI_IMPL_API bool cImGui_ImplGlfw_InitForOpenGL(GLFWwindow* window, bool install_callbacks);
|
||||
CIMGUI_IMPL_API bool cImGui_ImplGlfw_InitForVulkan(GLFWwindow* window, bool install_callbacks);
|
||||
CIMGUI_IMPL_API bool cImGui_ImplGlfw_InitForOther(GLFWwindow* window, bool install_callbacks);
|
||||
CIMGUI_IMPL_API void cImGui_ImplGlfw_Shutdown(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplGlfw_NewFrame(void);
|
||||
|
||||
// Emscripten related initialization phase methods (call after ImGui_ImplGlfw_InitForOpenGL)
|
||||
#ifdef __EMSCRIPTEN__
|
||||
CIMGUI_IMPL_API void cImGui_ImplGlfw_InstallEmscriptenCallbacks(GLFWwindow* window, const char* canvas_selector);
|
||||
//static inline void ImGui_ImplGlfw_InstallEmscriptenCanvasResizeCallback(const char* canvas_selector) { ImGui_ImplGlfw_InstallEmscriptenCallbacks(nullptr, canvas_selector); } } // Renamed in 1.91.0
|
||||
#endif // #ifdef __EMSCRIPTEN__
|
||||
// GLFW callbacks install
|
||||
// - When calling Init with 'install_callbacks=true': ImGui_ImplGlfw_InstallCallbacks() is called. GLFW callbacks will be installed for you. They will chain-call user's previously installed callbacks, if any.
|
||||
// - When calling Init with 'install_callbacks=false': GLFW callbacks won't be installed. You will need to call individual function yourself from your own GLFW callbacks.
|
||||
CIMGUI_IMPL_API void cImGui_ImplGlfw_InstallCallbacks(GLFWwindow* window);
|
||||
CIMGUI_IMPL_API void cImGui_ImplGlfw_RestoreCallbacks(GLFWwindow* window);
|
||||
|
||||
// GLFW callbacks options:
|
||||
// - Set 'chain_for_all_windows=true' to enable chaining callbacks for all windows (including secondary viewports created by backends or by user)
|
||||
CIMGUI_IMPL_API void cImGui_ImplGlfw_SetCallbacksChainForAllWindows(bool chain_for_all_windows);
|
||||
|
||||
// GLFW callbacks (individual callbacks to call yourself if you didn't install callbacks)
|
||||
CIMGUI_IMPL_API void cImGui_ImplGlfw_WindowFocusCallback(GLFWwindow* window, int focused); // Since 1.84
|
||||
CIMGUI_IMPL_API void cImGui_ImplGlfw_CursorEnterCallback(GLFWwindow* window, int entered); // Since 1.84
|
||||
CIMGUI_IMPL_API void cImGui_ImplGlfw_CursorPosCallback(GLFWwindow* window, double x, double y); // Since 1.87
|
||||
CIMGUI_IMPL_API void cImGui_ImplGlfw_MouseButtonCallback(GLFWwindow* window, int button, int action, int mods);
|
||||
CIMGUI_IMPL_API void cImGui_ImplGlfw_ScrollCallback(GLFWwindow* window, double xoffset, double yoffset);
|
||||
CIMGUI_IMPL_API void cImGui_ImplGlfw_KeyCallback(GLFWwindow* window, int key, int scancode, int action, int mods);
|
||||
CIMGUI_IMPL_API void cImGui_ImplGlfw_CharCallback(GLFWwindow* window, unsigned int c);
|
||||
CIMGUI_IMPL_API void cImGui_ImplGlfw_MonitorCallback(GLFWmonitor* monitor, int event);
|
||||
|
||||
// GLFW helpers
|
||||
CIMGUI_IMPL_API void cImGui_ImplGlfw_Sleep(int milliseconds);
|
||||
CIMGUI_IMPL_API float cImGui_ImplGlfw_GetContentScaleForWindow(GLFWwindow* window);
|
||||
CIMGUI_IMPL_API float cImGui_ImplGlfw_GetContentScaleForMonitor(GLFWmonitor* monitor);
|
||||
#endif// #ifndef IMGUI_DISABLE
|
||||
#ifdef __cplusplus
|
||||
} // End of extern "C" block
|
||||
#endif
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [],
|
||||
"structs": [],
|
||||
"functions": []
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,158 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
#include "imgui.h"
|
||||
#include "imgui_impl_glut.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
// Wrap this in a namespace to keep it separate from the C++ API
|
||||
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
|
||||
// and thus generating redefinition warnings
|
||||
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
namespace cimgui
|
||||
{
|
||||
#include "dcimgui_impl_glut.h"
|
||||
}
|
||||
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
|
||||
// By-value struct conversions
|
||||
|
||||
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
|
||||
{
|
||||
cimgui::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
|
||||
{
|
||||
::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
|
||||
{
|
||||
cimgui::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
|
||||
{
|
||||
::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
|
||||
{
|
||||
cimgui::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
|
||||
{
|
||||
::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
|
||||
{
|
||||
cimgui::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
|
||||
{
|
||||
::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
// Function stubs
|
||||
|
||||
#ifndef IMGUI_DISABLE
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplGLUT_Init(void)
|
||||
{
|
||||
return ::ImGui_ImplGLUT_Init();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_InstallFuncs(void)
|
||||
{
|
||||
::ImGui_ImplGLUT_InstallFuncs();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_Shutdown(void)
|
||||
{
|
||||
::ImGui_ImplGLUT_Shutdown();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_NewFrame(void)
|
||||
{
|
||||
::ImGui_ImplGLUT_NewFrame();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_ReshapeFunc(int w, int h)
|
||||
{
|
||||
::ImGui_ImplGLUT_ReshapeFunc(w, h);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_MotionFunc(int x, int y)
|
||||
{
|
||||
::ImGui_ImplGLUT_MotionFunc(x, y);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_MouseFunc(int button, int state, int x, int y)
|
||||
{
|
||||
::ImGui_ImplGLUT_MouseFunc(button, state, x, y);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_MouseWheelFunc(int button, int dir, int x, int y)
|
||||
{
|
||||
::ImGui_ImplGLUT_MouseWheelFunc(button, dir, x, y);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_KeyboardFunc(unsigned char c, int x, int y)
|
||||
{
|
||||
::ImGui_ImplGLUT_KeyboardFunc(c, x, y);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_KeyboardUpFunc(unsigned char c, int x, int y)
|
||||
{
|
||||
::ImGui_ImplGLUT_KeyboardUpFunc(c, x, y);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_SpecialFunc(int key, int x, int y)
|
||||
{
|
||||
::ImGui_ImplGLUT_SpecialFunc(key, x, y);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_SpecialUpFunc(int key, int x, int y)
|
||||
{
|
||||
::ImGui_ImplGLUT_SpecialUpFunc(key, x, y);
|
||||
}
|
||||
|
||||
#endif // #ifndef IMGUI_DISABLE
|
||||
@@ -0,0 +1,65 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
// dear imgui: Platform Backend for GLUT/FreeGLUT
|
||||
// ImDrawIdx: vertex index. [Compile-time configurable type]
|
||||
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
|
||||
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
|
||||
#ifndef ImDrawIdx
|
||||
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
|
||||
#endif // #ifndef ImDrawIdx
|
||||
// This needs to be used along with a Renderer (e.g. OpenGL2)
|
||||
|
||||
// !!! GLUT/FreeGLUT IS OBSOLETE PREHISTORIC SOFTWARE. Using GLUT is not recommended unless you really miss the 90's. !!!
|
||||
// !!! If someone or something is teaching you GLUT today, you are being abused. Please show some resistance. !!!
|
||||
// !!! Nowadays, prefer using GLFW or SDL instead!
|
||||
|
||||
// Implemented features:
|
||||
// [X] Platform: Partial keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy GLUT values are obsolete since 1.87 and not supported since 1.91.5]
|
||||
// Missing features or Issues:
|
||||
// [ ] Platform: GLUT is unable to distinguish e.g. Backspace from CTRL+H or TAB from CTRL+I
|
||||
// [ ] Platform: Missing horizontal mouse wheel support.
|
||||
// [ ] Platform: Missing mouse cursor shape/visibility support.
|
||||
// [ ] Platform: Missing clipboard support (not supported by Glut).
|
||||
// [ ] Platform: Missing gamepad support.
|
||||
// [ ] Platform: Missing multi-viewport support (multiple windows).
|
||||
|
||||
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
|
||||
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
|
||||
// Learn about Dear ImGui:
|
||||
// - FAQ https://dearimgui.com/faq
|
||||
// - Getting Started https://dearimgui.com/getting-started
|
||||
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
|
||||
// - Introduction, links and more at the top of imgui.cpp
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
#ifndef IMGUI_DISABLE
|
||||
#include "dcimgui.h"
|
||||
typedef struct ImDrawData_t ImDrawData;
|
||||
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
|
||||
CIMGUI_IMPL_API bool cImGui_ImplGLUT_Init(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplGLUT_InstallFuncs(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplGLUT_Shutdown(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplGLUT_NewFrame(void);
|
||||
|
||||
// You can call ImGui_ImplGLUT_InstallFuncs() to get all those functions installed automatically,
|
||||
// or call them yourself from your own GLUT handlers. We are using the same weird names as GLUT for consistency..
|
||||
//------------------------------------ GLUT name ---------------------------------------------- Decent Name ---------
|
||||
CIMGUI_IMPL_API void cImGui_ImplGLUT_ReshapeFunc(int w, int h); // ~ ResizeFunc
|
||||
CIMGUI_IMPL_API void cImGui_ImplGLUT_MotionFunc(int x, int y); // ~ MouseMoveFunc
|
||||
CIMGUI_IMPL_API void cImGui_ImplGLUT_MouseFunc(int button, int state, int x, int y); // ~ MouseButtonFunc
|
||||
CIMGUI_IMPL_API void cImGui_ImplGLUT_MouseWheelFunc(int button, int dir, int x, int y); // ~ MouseWheelFunc
|
||||
CIMGUI_IMPL_API void cImGui_ImplGLUT_KeyboardFunc(unsigned char c, int x, int y); // ~ CharPressedFunc
|
||||
CIMGUI_IMPL_API void cImGui_ImplGLUT_KeyboardUpFunc(unsigned char c, int x, int y); // ~ CharReleasedFunc
|
||||
CIMGUI_IMPL_API void cImGui_ImplGLUT_SpecialFunc(int key, int x, int y); // ~ KeyPressedFunc
|
||||
CIMGUI_IMPL_API void cImGui_ImplGLUT_SpecialUpFunc(int key, int x, int y); // ~ KeyReleasedFunc
|
||||
#endif// #ifndef IMGUI_DISABLE
|
||||
#ifdef __cplusplus
|
||||
} // End of extern "C" block
|
||||
#endif
|
||||
@@ -0,0 +1,677 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [
|
||||
{
|
||||
"name": "ImDrawIdx",
|
||||
"type": {
|
||||
"declaration": "unsigned short",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "unsigned_short"
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
|
||||
},
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "ifndef",
|
||||
"expression": "ImDrawIdx"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_glut.h"
|
||||
}
|
||||
}
|
||||
],
|
||||
"structs": [
|
||||
{
|
||||
"name": "ImDrawData",
|
||||
"original_fully_qualified_name": "ImDrawData",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_glut.h",
|
||||
"line": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"functions": [
|
||||
{
|
||||
"name": "cImGui_ImplGLUT_Init",
|
||||
"original_fully_qualified_name": "ImGui_ImplGLUT_Init",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_glut.h",
|
||||
"line": 31
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplGLUT_InstallFuncs",
|
||||
"original_fully_qualified_name": "ImGui_ImplGLUT_InstallFuncs",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_glut.h",
|
||||
"line": 32
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplGLUT_Shutdown",
|
||||
"original_fully_qualified_name": "ImGui_ImplGLUT_Shutdown",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_glut.h",
|
||||
"line": 33
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplGLUT_NewFrame",
|
||||
"original_fully_qualified_name": "ImGui_ImplGLUT_NewFrame",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_glut.h",
|
||||
"line": 34
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplGLUT_ReshapeFunc",
|
||||
"original_fully_qualified_name": "ImGui_ImplGLUT_ReshapeFunc",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "w",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "h",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// You can call ImGui_ImplGLUT_InstallFuncs() to get all those functions installed automatically,",
|
||||
"// or call them yourself from your own GLUT handlers. We are using the same weird names as GLUT for consistency..",
|
||||
"//------------------------------------ GLUT name ---------------------------------------------- Decent Name ---------"
|
||||
],
|
||||
"attached": "// ~ ResizeFunc"
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_glut.h",
|
||||
"line": 39
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplGLUT_MotionFunc",
|
||||
"original_fully_qualified_name": "ImGui_ImplGLUT_MotionFunc",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "x",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "y",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"attached": "// ~ MouseMoveFunc"
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_glut.h",
|
||||
"line": 40
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplGLUT_MouseFunc",
|
||||
"original_fully_qualified_name": "ImGui_ImplGLUT_MouseFunc",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "button",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "state",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "x",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "y",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"attached": "// ~ MouseButtonFunc"
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_glut.h",
|
||||
"line": 41
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplGLUT_MouseWheelFunc",
|
||||
"original_fully_qualified_name": "ImGui_ImplGLUT_MouseWheelFunc",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "button",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "dir",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "x",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "y",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"attached": "// ~ MouseWheelFunc"
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_glut.h",
|
||||
"line": 42
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplGLUT_KeyboardFunc",
|
||||
"original_fully_qualified_name": "ImGui_ImplGLUT_KeyboardFunc",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "c",
|
||||
"type": {
|
||||
"declaration": "unsigned char",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "unsigned_char"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "x",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "y",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"attached": "// ~ CharPressedFunc"
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_glut.h",
|
||||
"line": 43
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplGLUT_KeyboardUpFunc",
|
||||
"original_fully_qualified_name": "ImGui_ImplGLUT_KeyboardUpFunc",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "c",
|
||||
"type": {
|
||||
"declaration": "unsigned char",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "unsigned_char"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "x",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "y",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"attached": "// ~ CharReleasedFunc"
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_glut.h",
|
||||
"line": 44
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplGLUT_SpecialFunc",
|
||||
"original_fully_qualified_name": "ImGui_ImplGLUT_SpecialFunc",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "key",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "x",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "y",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"attached": "// ~ KeyPressedFunc"
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_glut.h",
|
||||
"line": 45
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplGLUT_SpecialUpFunc",
|
||||
"original_fully_qualified_name": "ImGui_ImplGLUT_SpecialUpFunc",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "key",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "x",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "y",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"attached": "// ~ KeyReleasedFunc"
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_glut.h",
|
||||
"line": 46
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [],
|
||||
"structs": [],
|
||||
"functions": []
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,148 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
#include "imgui.h"
|
||||
#include "imgui_impl_null.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
// Wrap this in a namespace to keep it separate from the C++ API
|
||||
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
|
||||
// and thus generating redefinition warnings
|
||||
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
namespace cimgui
|
||||
{
|
||||
#include "dcimgui_impl_null.h"
|
||||
}
|
||||
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
|
||||
// By-value struct conversions
|
||||
|
||||
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
|
||||
{
|
||||
cimgui::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
|
||||
{
|
||||
::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
|
||||
{
|
||||
cimgui::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
|
||||
{
|
||||
::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
|
||||
{
|
||||
cimgui::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
|
||||
{
|
||||
::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
|
||||
{
|
||||
cimgui::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
|
||||
{
|
||||
::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
// Function stubs
|
||||
|
||||
#ifndef IMGUI_DISABLE
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplNull_Init(void)
|
||||
{
|
||||
return ::ImGui_ImplNull_Init();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplNull_Shutdown(void)
|
||||
{
|
||||
::ImGui_ImplNull_Shutdown();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplNull_NewFrame(void)
|
||||
{
|
||||
::ImGui_ImplNull_NewFrame();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplNullPlatform_Init(void)
|
||||
{
|
||||
return ::ImGui_ImplNullPlatform_Init();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplNullPlatform_Shutdown(void)
|
||||
{
|
||||
::ImGui_ImplNullPlatform_Shutdown();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplNullPlatform_NewFrame(void)
|
||||
{
|
||||
::ImGui_ImplNullPlatform_NewFrame();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplNullRender_Init(void)
|
||||
{
|
||||
return ::ImGui_ImplNullRender_Init();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplNullRender_Shutdown(void)
|
||||
{
|
||||
::ImGui_ImplNullRender_Shutdown();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplNullRender_NewFrame(void)
|
||||
{
|
||||
::ImGui_ImplNullRender_NewFrame();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplNullRender_RenderDrawData(cimgui::ImDrawData* draw_data)
|
||||
{
|
||||
::ImGui_ImplNullRender_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data));
|
||||
}
|
||||
|
||||
#endif // #ifndef IMGUI_DISABLE
|
||||
@@ -0,0 +1,51 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
// dear imgui: Null Platform+Renderer Backends
|
||||
// ImDrawIdx: vertex index. [Compile-time configurable type]
|
||||
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
|
||||
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
|
||||
#ifndef ImDrawIdx
|
||||
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
|
||||
#endif // #ifndef ImDrawIdx
|
||||
// This is designed if you need to use a blind Dear Imgui context with no input and no output.
|
||||
|
||||
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
|
||||
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
|
||||
// Learn about Dear ImGui:
|
||||
// - FAQ https://dearimgui.com/faq
|
||||
// - Getting Started https://dearimgui.com/getting-started
|
||||
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
|
||||
// - Introduction, links and more at the top of imgui.cpp
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
#include "dcimgui.h"
|
||||
#ifndef IMGUI_DISABLE
|
||||
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
|
||||
|
||||
typedef struct ImDrawData_t ImDrawData;
|
||||
// Null = NullPlatform + NullRender
|
||||
CIMGUI_IMPL_API bool cImGui_ImplNull_Init(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplNull_Shutdown(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplNull_NewFrame(void);
|
||||
|
||||
// Null platform only (single screen, fixed timestep, no inputs)
|
||||
CIMGUI_IMPL_API bool cImGui_ImplNullPlatform_Init(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplNullPlatform_Shutdown(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplNullPlatform_NewFrame(void);
|
||||
|
||||
// Null renderer only (no output)
|
||||
CIMGUI_IMPL_API bool cImGui_ImplNullRender_Init(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplNullRender_Shutdown(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplNullRender_NewFrame(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplNullRender_RenderDrawData(ImDrawData* draw_data);
|
||||
#endif// #ifndef IMGUI_DISABLE
|
||||
#ifdef __cplusplus
|
||||
} // End of extern "C" block
|
||||
#endif
|
||||
@@ -0,0 +1,309 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [
|
||||
{
|
||||
"name": "ImDrawIdx",
|
||||
"type": {
|
||||
"declaration": "unsigned short",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "unsigned_short"
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
|
||||
},
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "ifndef",
|
||||
"expression": "ImDrawIdx"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_null.h"
|
||||
}
|
||||
}
|
||||
],
|
||||
"structs": [
|
||||
{
|
||||
"name": "ImDrawData",
|
||||
"original_fully_qualified_name": "ImDrawData",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_null.h",
|
||||
"line": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"functions": [
|
||||
{
|
||||
"name": "cImGui_ImplNull_Init",
|
||||
"original_fully_qualified_name": "ImGui_ImplNull_Init",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Null = NullPlatform + NullRender"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_null.h",
|
||||
"line": 19
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplNull_Shutdown",
|
||||
"original_fully_qualified_name": "ImGui_ImplNull_Shutdown",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_null.h",
|
||||
"line": 20
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplNull_NewFrame",
|
||||
"original_fully_qualified_name": "ImGui_ImplNull_NewFrame",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_null.h",
|
||||
"line": 21
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplNullPlatform_Init",
|
||||
"original_fully_qualified_name": "ImGui_ImplNullPlatform_Init",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Null platform only (single screen, fixed timestep, no inputs)"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_null.h",
|
||||
"line": 24
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplNullPlatform_Shutdown",
|
||||
"original_fully_qualified_name": "ImGui_ImplNullPlatform_Shutdown",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_null.h",
|
||||
"line": 25
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplNullPlatform_NewFrame",
|
||||
"original_fully_qualified_name": "ImGui_ImplNullPlatform_NewFrame",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_null.h",
|
||||
"line": 26
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplNullRender_Init",
|
||||
"original_fully_qualified_name": "ImGui_ImplNullRender_Init",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Null renderer only (no output)"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_null.h",
|
||||
"line": 29
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplNullRender_Shutdown",
|
||||
"original_fully_qualified_name": "ImGui_ImplNullRender_Shutdown",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_null.h",
|
||||
"line": 30
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplNullRender_NewFrame",
|
||||
"original_fully_qualified_name": "ImGui_ImplNullRender_NewFrame",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_null.h",
|
||||
"line": 31
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplNullRender_RenderDrawData",
|
||||
"original_fully_qualified_name": "ImGui_ImplNullRender_RenderDrawData",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "draw_data",
|
||||
"type": {
|
||||
"declaration": "ImDrawData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImDrawData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_null.h",
|
||||
"line": 32
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [],
|
||||
"structs": [],
|
||||
"functions": []
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,133 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
#include "imgui.h"
|
||||
#include "imgui_impl_opengl2.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
// Wrap this in a namespace to keep it separate from the C++ API
|
||||
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
|
||||
// and thus generating redefinition warnings
|
||||
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
namespace cimgui
|
||||
{
|
||||
#include "dcimgui_impl_opengl2.h"
|
||||
}
|
||||
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
|
||||
// By-value struct conversions
|
||||
|
||||
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
|
||||
{
|
||||
cimgui::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
|
||||
{
|
||||
::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
|
||||
{
|
||||
cimgui::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
|
||||
{
|
||||
::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
|
||||
{
|
||||
cimgui::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
|
||||
{
|
||||
::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
|
||||
{
|
||||
cimgui::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
|
||||
{
|
||||
::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
// Function stubs
|
||||
|
||||
#ifndef IMGUI_DISABLE
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplOpenGL2_Init(void)
|
||||
{
|
||||
return ::ImGui_ImplOpenGL2_Init();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplOpenGL2_Shutdown(void)
|
||||
{
|
||||
::ImGui_ImplOpenGL2_Shutdown();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplOpenGL2_NewFrame(void)
|
||||
{
|
||||
::ImGui_ImplOpenGL2_NewFrame();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplOpenGL2_RenderDrawData(cimgui::ImDrawData* draw_data)
|
||||
{
|
||||
::ImGui_ImplOpenGL2_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplOpenGL2_CreateDeviceObjects(void)
|
||||
{
|
||||
return ::ImGui_ImplOpenGL2_CreateDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplOpenGL2_DestroyDeviceObjects(void)
|
||||
{
|
||||
::ImGui_ImplOpenGL2_DestroyDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplOpenGL2_UpdateTexture(cimgui::ImTextureData* tex)
|
||||
{
|
||||
::ImGui_ImplOpenGL2_UpdateTexture(reinterpret_cast<::ImTextureData*>(tex));
|
||||
}
|
||||
|
||||
#endif // #ifndef IMGUI_DISABLE
|
||||
@@ -0,0 +1,61 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
// dear imgui: Renderer Backend for OpenGL2 (legacy OpenGL, fixed pipeline)
|
||||
// ImDrawIdx: vertex index. [Compile-time configurable type]
|
||||
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
|
||||
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
|
||||
#ifndef ImDrawIdx
|
||||
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
|
||||
#endif // #ifndef ImDrawIdx
|
||||
// This needs to be used along with a Platform Backend (e.g. GLFW, SDL, Win32, custom..)
|
||||
|
||||
// Implemented features:
|
||||
// [X] Renderer: User texture binding. Use 'GLuint' OpenGL texture as texture identifier. Read the FAQ about ImTextureID/ImTextureRef!
|
||||
// [X] Renderer: Texture updates support for dynamic font atlas (ImGuiBackendFlags_RendererHasTextures).
|
||||
// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'.
|
||||
// Missing features or Issues:
|
||||
// [ ] Renderer: Large meshes support (64k+ vertices) even with 16-bit indices (ImGuiBackendFlags_RendererHasVtxOffset).
|
||||
|
||||
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
|
||||
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
|
||||
// Learn about Dear ImGui:
|
||||
// - FAQ https://dearimgui.com/faq
|
||||
// - Getting Started https://dearimgui.com/getting-started
|
||||
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
|
||||
// - Introduction, links and more at the top of imgui.cpp
|
||||
|
||||
// **DO NOT USE THIS CODE IF YOUR CODE/ENGINE IS USING MODERN OPENGL (SHADERS, VBO, VAO, etc.)**
|
||||
// **Prefer using the code in imgui_impl_opengl3.cpp**
|
||||
// This code is mostly provided as a reference to learn how ImGui integration works, because it is shorter to read.
|
||||
// If your code is using GL3+ context or any semi modern OpenGL calls, using this is likely to make everything more
|
||||
// complicated, will require your code to reset every single OpenGL attributes to their initial state, and might
|
||||
// confuse your GPU driver.
|
||||
// The GL2 code is unable to reset attributes or even call e.g. "glUseProgram(0)" because they don't exist in that API.
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
#include "dcimgui.h"
|
||||
#ifndef IMGUI_DISABLE
|
||||
typedef struct ImDrawData_t ImDrawData;
|
||||
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
|
||||
CIMGUI_IMPL_API bool cImGui_ImplOpenGL2_Init(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplOpenGL2_Shutdown(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplOpenGL2_NewFrame(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplOpenGL2_RenderDrawData(ImDrawData* draw_data);
|
||||
|
||||
// Called by Init/NewFrame/Shutdown
|
||||
CIMGUI_IMPL_API bool cImGui_ImplOpenGL2_CreateDeviceObjects(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplOpenGL2_DestroyDeviceObjects(void);
|
||||
|
||||
// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually.
|
||||
CIMGUI_IMPL_API void cImGui_ImplOpenGL2_UpdateTexture(ImTextureData* tex);
|
||||
#endif// #ifndef IMGUI_DISABLE
|
||||
#ifdef __cplusplus
|
||||
} // End of extern "C" block
|
||||
#endif
|
||||
@@ -0,0 +1,257 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [
|
||||
{
|
||||
"name": "ImDrawIdx",
|
||||
"type": {
|
||||
"declaration": "unsigned short",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "unsigned_short"
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
|
||||
},
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "ifndef",
|
||||
"expression": "ImDrawIdx"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_opengl2.h"
|
||||
}
|
||||
}
|
||||
],
|
||||
"structs": [
|
||||
{
|
||||
"name": "ImDrawData",
|
||||
"original_fully_qualified_name": "ImDrawData",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_opengl2.h",
|
||||
"line": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"functions": [
|
||||
{
|
||||
"name": "cImGui_ImplOpenGL2_Init",
|
||||
"original_fully_qualified_name": "ImGui_ImplOpenGL2_Init",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_opengl2.h",
|
||||
"line": 32
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplOpenGL2_Shutdown",
|
||||
"original_fully_qualified_name": "ImGui_ImplOpenGL2_Shutdown",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_opengl2.h",
|
||||
"line": 33
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplOpenGL2_NewFrame",
|
||||
"original_fully_qualified_name": "ImGui_ImplOpenGL2_NewFrame",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_opengl2.h",
|
||||
"line": 34
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplOpenGL2_RenderDrawData",
|
||||
"original_fully_qualified_name": "ImGui_ImplOpenGL2_RenderDrawData",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "draw_data",
|
||||
"type": {
|
||||
"declaration": "ImDrawData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImDrawData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_opengl2.h",
|
||||
"line": 35
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplOpenGL2_CreateDeviceObjects",
|
||||
"original_fully_qualified_name": "ImGui_ImplOpenGL2_CreateDeviceObjects",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Called by Init/NewFrame/Shutdown"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_opengl2.h",
|
||||
"line": 38
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplOpenGL2_DestroyDeviceObjects",
|
||||
"original_fully_qualified_name": "ImGui_ImplOpenGL2_DestroyDeviceObjects",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_opengl2.h",
|
||||
"line": 39
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplOpenGL2_UpdateTexture",
|
||||
"original_fully_qualified_name": "ImGui_ImplOpenGL2_UpdateTexture",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "tex",
|
||||
"type": {
|
||||
"declaration": "ImTextureData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImTextureData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually."
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_opengl2.h",
|
||||
"line": 42
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [],
|
||||
"structs": [],
|
||||
"functions": []
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,138 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
#include "imgui.h"
|
||||
#include "imgui_impl_opengl3.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
// Wrap this in a namespace to keep it separate from the C++ API
|
||||
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
|
||||
// and thus generating redefinition warnings
|
||||
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
namespace cimgui
|
||||
{
|
||||
#include "dcimgui_impl_opengl3.h"
|
||||
}
|
||||
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
|
||||
// By-value struct conversions
|
||||
|
||||
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
|
||||
{
|
||||
cimgui::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
|
||||
{
|
||||
::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
|
||||
{
|
||||
cimgui::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
|
||||
{
|
||||
::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
|
||||
{
|
||||
cimgui::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
|
||||
{
|
||||
::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
|
||||
{
|
||||
cimgui::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
|
||||
{
|
||||
::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
// Function stubs
|
||||
|
||||
#ifndef IMGUI_DISABLE
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplOpenGL3_Init(void)
|
||||
{
|
||||
return ::ImGui_ImplOpenGL3_Init();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplOpenGL3_InitEx(const char* glsl_version)
|
||||
{
|
||||
return ::ImGui_ImplOpenGL3_Init(glsl_version);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplOpenGL3_Shutdown(void)
|
||||
{
|
||||
::ImGui_ImplOpenGL3_Shutdown();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplOpenGL3_NewFrame(void)
|
||||
{
|
||||
::ImGui_ImplOpenGL3_NewFrame();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplOpenGL3_RenderDrawData(cimgui::ImDrawData* draw_data)
|
||||
{
|
||||
::ImGui_ImplOpenGL3_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplOpenGL3_CreateDeviceObjects(void)
|
||||
{
|
||||
return ::ImGui_ImplOpenGL3_CreateDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplOpenGL3_DestroyDeviceObjects(void)
|
||||
{
|
||||
::ImGui_ImplOpenGL3_DestroyDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplOpenGL3_UpdateTexture(cimgui::ImTextureData* tex)
|
||||
{
|
||||
::ImGui_ImplOpenGL3_UpdateTexture(reinterpret_cast<::ImTextureData*>(tex));
|
||||
}
|
||||
|
||||
#endif // #ifndef IMGUI_DISABLE
|
||||
@@ -0,0 +1,87 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
// dear imgui: Renderer Backend for modern OpenGL with shaders / programmatic pipeline
|
||||
// ImDrawIdx: vertex index. [Compile-time configurable type]
|
||||
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
|
||||
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
|
||||
#ifndef ImDrawIdx
|
||||
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
|
||||
#endif // #ifndef ImDrawIdx
|
||||
// - Desktop GL: 2.x 3.x 4.x
|
||||
// - Embedded GL: ES 2.0 (WebGL 1.0), ES 3.0 (WebGL 2.0)
|
||||
// This needs to be used along with a Platform Backend (e.g. GLFW, SDL, Win32, custom..)
|
||||
|
||||
// Implemented features:
|
||||
// [X] Renderer: User texture binding. Use 'GLuint' OpenGL texture as texture identifier. Read the FAQ about ImTextureID/ImTextureRef!
|
||||
// [x] Renderer: Large meshes support (64k+ vertices) even with 16-bit indices (ImGuiBackendFlags_RendererHasVtxOffset) [Desktop OpenGL only!]
|
||||
// [X] Renderer: Texture updates support for dynamic font atlas (ImGuiBackendFlags_RendererHasTextures).
|
||||
// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'.
|
||||
|
||||
// About WebGL/ES:
|
||||
// - You need to '#define IMGUI_IMPL_OPENGL_ES2' or '#define IMGUI_IMPL_OPENGL_ES3' to use WebGL or OpenGL ES.
|
||||
// - This is done automatically on iOS, Android and Emscripten targets.
|
||||
// - For other targets, the define needs to be visible from the imgui_impl_opengl3.cpp compilation unit. If unsure, define globally or in imconfig.h.
|
||||
|
||||
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
|
||||
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
|
||||
// Learn about Dear ImGui:
|
||||
// - FAQ https://dearimgui.com/faq
|
||||
// - Getting Started https://dearimgui.com/getting-started
|
||||
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
|
||||
// - Introduction, links and more at the top of imgui.cpp
|
||||
|
||||
// About GLSL version:
|
||||
// The 'glsl_version' initialization parameter should be nullptr (default) or a "#version XXX" string.
|
||||
// On computer platform the GLSL version default to "#version 130". On OpenGL ES 3 platform it defaults to "#version 300 es"
|
||||
// Only override if your GL version doesn't handle this GLSL version. See GLSL version table at the top of imgui_impl_opengl3.cpp.
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
#include "dcimgui.h"
|
||||
#ifndef IMGUI_DISABLE
|
||||
typedef struct ImDrawData_t ImDrawData;
|
||||
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
|
||||
CIMGUI_IMPL_API bool cImGui_ImplOpenGL3_Init(void); // Implied glsl_version = nullptr
|
||||
CIMGUI_IMPL_API bool cImGui_ImplOpenGL3_InitEx(const char* glsl_version /* = nullptr */);
|
||||
CIMGUI_IMPL_API void cImGui_ImplOpenGL3_Shutdown(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplOpenGL3_NewFrame(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplOpenGL3_RenderDrawData(ImDrawData* draw_data);
|
||||
|
||||
// (Optional) Called by Init/NewFrame/Shutdown
|
||||
CIMGUI_IMPL_API bool cImGui_ImplOpenGL3_CreateDeviceObjects(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplOpenGL3_DestroyDeviceObjects(void);
|
||||
|
||||
// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually.
|
||||
CIMGUI_IMPL_API void cImGui_ImplOpenGL3_UpdateTexture(ImTextureData* tex);
|
||||
|
||||
// Configuration flags to add in your imconfig file:
|
||||
//#define IMGUI_IMPL_OPENGL_ES2 // Enable ES 2 (Auto-detected on Emscripten)
|
||||
//#define IMGUI_IMPL_OPENGL_ES3 // Enable ES 3 (Auto-detected on iOS/Android)
|
||||
|
||||
// You can explicitly select GLES2 or GLES3 API by using one of the '#define IMGUI_IMPL_OPENGL_LOADER_XXX' in imconfig.h or compiler command-line.
|
||||
#if !defined(IMGUI_IMPL_OPENGL_ES2)\
|
||||
&&!defined(IMGUI_IMPL_OPENGL_ES3)
|
||||
// Try to detect GLES on matching platforms
|
||||
#if defined(__APPLE__)
|
||||
#include <TargetConditionals.h>
|
||||
#endif // #if defined(__APPLE__)
|
||||
#if (defined(__APPLE__)&&(TARGET_OS_IOS || TARGET_OS_TV))||(defined(__ANDROID__))
|
||||
#define IMGUI_IMPL_OPENGL_ES3 // iOS, Android -> GL ES 3, "#version 300 es"
|
||||
#else
|
||||
#if defined(__EMSCRIPTEN__)|| defined(__amigaos4__)
|
||||
#define IMGUI_IMPL_OPENGL_ES2 // Emscripten -> GL ES 2, "#version 100"
|
||||
#else
|
||||
// Otherwise imgui_impl_opengl3_loader.h will be used.
|
||||
#endif // #if defined(__EMSCRIPTEN__)|| defined(__amigaos4__)
|
||||
#endif // #if (defined(__APPLE__)&&(TARGET_OS_IOS || TARGET_OS_TV))||(defined(__ANDROID__))
|
||||
#endif // #if !defined(IMGUI_IMPL_OPENGL_ES2) &&!defined(IMGUI_IMPL_OPENGL_ES3)
|
||||
#endif// #ifndef IMGUI_DISABLE
|
||||
#ifdef __cplusplus
|
||||
} // End of extern "C" block
|
||||
#endif
|
||||
@@ -0,0 +1,349 @@
|
||||
{
|
||||
"defines": [
|
||||
{
|
||||
"name": "IMGUI_IMPL_OPENGL_ES3",
|
||||
"comments": {
|
||||
"attached": "// iOS, Android -> GL ES 3, \"#version 300 es\""
|
||||
},
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "if",
|
||||
"expression": "!defined(IMGUI_IMPL_OPENGL_ES2)\\\n &&!defined(IMGUI_IMPL_OPENGL_ES3)"
|
||||
},
|
||||
{
|
||||
"condition": "if",
|
||||
"expression": "(defined(__APPLE__)&&(TARGET_OS_IOS || TARGET_OS_TV))||(defined(__ANDROID__))"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_opengl3.h",
|
||||
"line": 60
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "IMGUI_IMPL_OPENGL_ES2",
|
||||
"comments": {
|
||||
"attached": "// Emscripten -> GL ES 2, \"#version 100\""
|
||||
},
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "if",
|
||||
"expression": "!defined(IMGUI_IMPL_OPENGL_ES2)\\\n &&!defined(IMGUI_IMPL_OPENGL_ES3)"
|
||||
},
|
||||
{
|
||||
"condition": "ifnot",
|
||||
"expression": "(defined(__APPLE__)&&(TARGET_OS_IOS || TARGET_OS_TV))||(defined(__ANDROID__))"
|
||||
},
|
||||
{
|
||||
"condition": "if",
|
||||
"expression": "defined(__EMSCRIPTEN__)|| defined(__amigaos4__)"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_opengl3.h",
|
||||
"line": 62
|
||||
}
|
||||
}
|
||||
],
|
||||
"enums": [],
|
||||
"typedefs": [
|
||||
{
|
||||
"name": "ImDrawIdx",
|
||||
"type": {
|
||||
"declaration": "unsigned short",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "unsigned_short"
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
|
||||
},
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "ifndef",
|
||||
"expression": "ImDrawIdx"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_opengl3.h"
|
||||
}
|
||||
}
|
||||
],
|
||||
"structs": [
|
||||
{
|
||||
"name": "ImDrawData",
|
||||
"original_fully_qualified_name": "ImDrawData",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_opengl3.h",
|
||||
"line": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"functions": [
|
||||
{
|
||||
"name": "cImGui_ImplOpenGL3_Init",
|
||||
"original_fully_qualified_name": "ImGui_ImplOpenGL3_Init",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": true,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
|
||||
],
|
||||
"attached": "// Implied glsl_version = nullptr"
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_opengl3.h",
|
||||
"line": 35
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplOpenGL3_InitEx",
|
||||
"original_fully_qualified_name": "ImGui_ImplOpenGL3_Init",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "glsl_version",
|
||||
"type": {
|
||||
"declaration": "const char*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "char",
|
||||
"storage_classes": [
|
||||
"const"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"default_value": "nullptr",
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_opengl3.h",
|
||||
"line": 35
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplOpenGL3_Shutdown",
|
||||
"original_fully_qualified_name": "ImGui_ImplOpenGL3_Shutdown",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_opengl3.h",
|
||||
"line": 36
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplOpenGL3_NewFrame",
|
||||
"original_fully_qualified_name": "ImGui_ImplOpenGL3_NewFrame",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_opengl3.h",
|
||||
"line": 37
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplOpenGL3_RenderDrawData",
|
||||
"original_fully_qualified_name": "ImGui_ImplOpenGL3_RenderDrawData",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "draw_data",
|
||||
"type": {
|
||||
"declaration": "ImDrawData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImDrawData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_opengl3.h",
|
||||
"line": 38
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplOpenGL3_CreateDeviceObjects",
|
||||
"original_fully_qualified_name": "ImGui_ImplOpenGL3_CreateDeviceObjects",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// (Optional) Called by Init/NewFrame/Shutdown"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_opengl3.h",
|
||||
"line": 41
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplOpenGL3_DestroyDeviceObjects",
|
||||
"original_fully_qualified_name": "ImGui_ImplOpenGL3_DestroyDeviceObjects",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_opengl3.h",
|
||||
"line": 42
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplOpenGL3_UpdateTexture",
|
||||
"original_fully_qualified_name": "ImGui_ImplOpenGL3_UpdateTexture",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "tex",
|
||||
"type": {
|
||||
"declaration": "ImTextureData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImTextureData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually."
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_opengl3.h",
|
||||
"line": 45
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [],
|
||||
"structs": [],
|
||||
"functions": []
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,168 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
#include "imgui.h"
|
||||
#include "imgui_impl_sdl2.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
// Wrap this in a namespace to keep it separate from the C++ API
|
||||
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
|
||||
// and thus generating redefinition warnings
|
||||
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
namespace cimgui
|
||||
{
|
||||
#include "dcimgui_impl_sdl2.h"
|
||||
}
|
||||
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
|
||||
// By-value struct conversions
|
||||
|
||||
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
|
||||
{
|
||||
cimgui::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
|
||||
{
|
||||
::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
|
||||
{
|
||||
cimgui::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
|
||||
{
|
||||
::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
|
||||
{
|
||||
cimgui::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
|
||||
{
|
||||
::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
|
||||
{
|
||||
cimgui::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
|
||||
{
|
||||
::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
// Function stubs
|
||||
|
||||
#ifndef IMGUI_DISABLE
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplSDL2_InitForOpenGL(cimgui::SDL_Window* window, void* sdl_gl_context)
|
||||
{
|
||||
return ::ImGui_ImplSDL2_InitForOpenGL(reinterpret_cast<::SDL_Window*>(window), sdl_gl_context);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplSDL2_InitForVulkan(cimgui::SDL_Window* window)
|
||||
{
|
||||
return ::ImGui_ImplSDL2_InitForVulkan(reinterpret_cast<::SDL_Window*>(window));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplSDL2_InitForD3D(cimgui::SDL_Window* window)
|
||||
{
|
||||
return ::ImGui_ImplSDL2_InitForD3D(reinterpret_cast<::SDL_Window*>(window));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplSDL2_InitForMetal(cimgui::SDL_Window* window)
|
||||
{
|
||||
return ::ImGui_ImplSDL2_InitForMetal(reinterpret_cast<::SDL_Window*>(window));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplSDL2_InitForSDLRenderer(cimgui::SDL_Window* window, cimgui::SDL_Renderer* renderer)
|
||||
{
|
||||
return ::ImGui_ImplSDL2_InitForSDLRenderer(reinterpret_cast<::SDL_Window*>(window), reinterpret_cast<::SDL_Renderer*>(renderer));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplSDL2_InitForOther(cimgui::SDL_Window* window)
|
||||
{
|
||||
return ::ImGui_ImplSDL2_InitForOther(reinterpret_cast<::SDL_Window*>(window));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDL2_Shutdown(void)
|
||||
{
|
||||
::ImGui_ImplSDL2_Shutdown();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDL2_NewFrame(void)
|
||||
{
|
||||
::ImGui_ImplSDL2_NewFrame();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplSDL2_ProcessEvent(const SDL_Event* event)
|
||||
{
|
||||
return ::ImGui_ImplSDL2_ProcessEvent(event);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API float cimgui::cImGui_ImplSDL2_GetContentScaleForWindow(cimgui::SDL_Window* window)
|
||||
{
|
||||
return ::ImGui_ImplSDL2_GetContentScaleForWindow(reinterpret_cast<::SDL_Window*>(window));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API float cimgui::cImGui_ImplSDL2_GetContentScaleForDisplay(int display_index)
|
||||
{
|
||||
return ::ImGui_ImplSDL2_GetContentScaleForDisplay(display_index);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDL2_SetGamepadMode(cimgui::ImGui_ImplSDL2_GamepadMode mode)
|
||||
{
|
||||
::ImGui_ImplSDL2_SetGamepadMode(static_cast<::ImGui_ImplSDL2_GamepadMode>(mode));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDL2_SetGamepadModeEx(cimgui::ImGui_ImplSDL2_GamepadMode mode, struct cimgui::_SDL_GameController** manual_gamepads_array, int manual_gamepads_count)
|
||||
{
|
||||
::ImGui_ImplSDL2_SetGamepadMode(static_cast<::ImGui_ImplSDL2_GamepadMode>(mode), reinterpret_cast<struct ::_SDL_GameController**>(manual_gamepads_array), manual_gamepads_count);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDL2_SetMouseCaptureMode(cimgui::ImGui_ImplSDL2_MouseCaptureMode mode)
|
||||
{
|
||||
::ImGui_ImplSDL2_SetMouseCaptureMode(static_cast<::ImGui_ImplSDL2_MouseCaptureMode>(mode));
|
||||
}
|
||||
|
||||
#endif // #ifndef IMGUI_DISABLE
|
||||
@@ -0,0 +1,89 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
// dear imgui: Platform Backend for SDL2
|
||||
// ImDrawIdx: vertex index. [Compile-time configurable type]
|
||||
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
|
||||
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
|
||||
#ifndef ImDrawIdx
|
||||
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
|
||||
#endif // #ifndef ImDrawIdx
|
||||
// This needs to be used along with a Renderer (e.g. DirectX11, OpenGL3, Vulkan..)
|
||||
// (Info: SDL2 is a cross-platform general purpose library for handling windows, inputs, graphics context creation, etc.)
|
||||
|
||||
// Implemented features:
|
||||
// [X] Platform: Clipboard support.
|
||||
// [X] Platform: Mouse support. Can discriminate Mouse/TouchScreen.
|
||||
// [X] Platform: Keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy SDL_SCANCODE_* values are obsolete since 1.87 and not supported since 1.91.5]
|
||||
// [X] Platform: Gamepad support.
|
||||
// [X] Platform: Mouse cursor shape and visibility (ImGuiBackendFlags_HasMouseCursors). Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange'.
|
||||
// [X] Platform: Basic IME support. App needs to call 'SDL_SetHint(SDL_HINT_IME_SHOW_UI, "1");' before SDL_CreateWindow()!.
|
||||
// [X] Platform: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'.
|
||||
// Missing features or Issues:
|
||||
// [ ] Platform: Multi-viewport: Minimized windows seems to break mouse wheel events (at least under Windows).
|
||||
// [ ] Platform: Multi-viewport: Missing ImGuiBackendFlags_HasParentViewport support. The viewport->ParentViewportID field is ignored, and therefore io.ConfigViewportsNoDefaultParent has no effect either.
|
||||
|
||||
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
|
||||
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
|
||||
// Learn about Dear ImGui:
|
||||
// - FAQ https://dearimgui.com/faq
|
||||
// - Getting Started https://dearimgui.com/getting-started
|
||||
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
|
||||
// - Introduction, links and more at the top of imgui.cpp
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
#include "dcimgui.h"
|
||||
#ifndef IMGUI_DISABLE
|
||||
typedef struct SDL_Window SDL_Window;
|
||||
typedef struct SDL_Renderer SDL_Renderer;
|
||||
typedef struct _SDL_GameController _SDL_GameController;
|
||||
typedef union SDL_Event SDL_Event;
|
||||
|
||||
typedef struct ImDrawData_t ImDrawData;
|
||||
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
|
||||
CIMGUI_IMPL_API bool cImGui_ImplSDL2_InitForOpenGL(SDL_Window* window, void* sdl_gl_context);
|
||||
CIMGUI_IMPL_API bool cImGui_ImplSDL2_InitForVulkan(SDL_Window* window);
|
||||
CIMGUI_IMPL_API bool cImGui_ImplSDL2_InitForD3D(SDL_Window* window);
|
||||
CIMGUI_IMPL_API bool cImGui_ImplSDL2_InitForMetal(SDL_Window* window);
|
||||
CIMGUI_IMPL_API bool cImGui_ImplSDL2_InitForSDLRenderer(SDL_Window* window, SDL_Renderer* renderer);
|
||||
CIMGUI_IMPL_API bool cImGui_ImplSDL2_InitForOther(SDL_Window* window);
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDL2_Shutdown(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDL2_NewFrame(void);
|
||||
CIMGUI_IMPL_API bool cImGui_ImplSDL2_ProcessEvent(const SDL_Event* event);
|
||||
|
||||
// DPI-related helpers (optional)
|
||||
CIMGUI_IMPL_API float cImGui_ImplSDL2_GetContentScaleForWindow(SDL_Window* window);
|
||||
CIMGUI_IMPL_API float cImGui_ImplSDL2_GetContentScaleForDisplay(int display_index);
|
||||
|
||||
// Gamepad selection automatically starts in AutoFirst mode, picking first available SDL_Gamepad. You may override this.
|
||||
// When using manual mode, caller is responsible for opening/closing gamepad.
|
||||
typedef enum
|
||||
{
|
||||
ImGui_ImplSDL2_GamepadMode_AutoFirst,
|
||||
ImGui_ImplSDL2_GamepadMode_AutoAll,
|
||||
ImGui_ImplSDL2_GamepadMode_Manual,
|
||||
} ImGui_ImplSDL2_GamepadMode;
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDL2_SetGamepadMode(ImGui_ImplSDL2_GamepadMode mode); // Implied manual_gamepads_array = nullptr, manual_gamepads_count = -1
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDL2_SetGamepadModeEx(ImGui_ImplSDL2_GamepadMode mode, struct _SDL_GameController** manual_gamepads_array /* = nullptr */, int manual_gamepads_count /* = -1 */);
|
||||
|
||||
// (Advanced, for X11 users) Override Mouse Capture mode. Mouse capture allows receiving updated mouse position after clicking inside our window and dragging outside it.
|
||||
// Having this 'Enabled' is in theory always better. But, on X11 if you crash/break to debugger while capture is active you may temporarily lose access to your mouse.
|
||||
// The best solution is to setup your debugger to automatically release capture, e.g. 'setxkbmap -option grab:break_actions && xdotool key XF86Ungrab' or via a GDB script. See #3650.
|
||||
// But you may independently decide on X11, when a debugger is attached, to set this value to ImGui_ImplSDL2_MouseCaptureMode_Disabled.
|
||||
typedef enum
|
||||
{
|
||||
ImGui_ImplSDL2_MouseCaptureMode_Enabled,
|
||||
ImGui_ImplSDL2_MouseCaptureMode_EnabledAfterDrag,
|
||||
ImGui_ImplSDL2_MouseCaptureMode_Disabled,
|
||||
} ImGui_ImplSDL2_MouseCaptureMode;
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDL2_SetMouseCaptureMode(ImGui_ImplSDL2_MouseCaptureMode mode);
|
||||
#endif// #ifndef IMGUI_DISABLE
|
||||
#ifdef __cplusplus
|
||||
} // End of extern "C" block
|
||||
#endif
|
||||
@@ -0,0 +1,798 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [
|
||||
{
|
||||
"name": "ImGui_ImplSDL2_GamepadMode",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL2_GamepadMode",
|
||||
"is_flags_enum": false,
|
||||
"elements": [
|
||||
{
|
||||
"name": "ImGui_ImplSDL2_GamepadMode_AutoFirst",
|
||||
"value": 0,
|
||||
"is_count": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 51
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImGui_ImplSDL2_GamepadMode_AutoAll",
|
||||
"value": 1,
|
||||
"is_count": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 51
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImGui_ImplSDL2_GamepadMode_Manual",
|
||||
"value": 2,
|
||||
"is_count": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 51
|
||||
}
|
||||
}
|
||||
],
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Gamepad selection automatically starts in AutoFirst mode, picking first available SDL_Gamepad. You may override this.",
|
||||
"// When using manual mode, caller is responsible for opening/closing gamepad."
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 51
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImGui_ImplSDL2_MouseCaptureMode",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL2_MouseCaptureMode",
|
||||
"is_flags_enum": false,
|
||||
"elements": [
|
||||
{
|
||||
"name": "ImGui_ImplSDL2_MouseCaptureMode_Enabled",
|
||||
"value": 0,
|
||||
"is_count": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 58
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImGui_ImplSDL2_MouseCaptureMode_EnabledAfterDrag",
|
||||
"value": 1,
|
||||
"is_count": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 58
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImGui_ImplSDL2_MouseCaptureMode_Disabled",
|
||||
"value": 2,
|
||||
"is_count": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 58
|
||||
}
|
||||
}
|
||||
],
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// (Advanced, for X11 users) Override Mouse Capture mode. Mouse capture allows receiving updated mouse position after clicking inside our window and dragging outside it.",
|
||||
"// Having this 'Enabled' is in theory always better. But, on X11 if you crash/break to debugger while capture is active you may temporarily lose access to your mouse.",
|
||||
"// The best solution is to setup your debugger to automatically release capture, e.g. 'setxkbmap -option grab:break_actions && xdotool key XF86Ungrab' or via a GDB script. See #3650.",
|
||||
"// But you may independently decide on X11, when a debugger is attached, to set this value to ImGui_ImplSDL2_MouseCaptureMode_Disabled."
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 58
|
||||
}
|
||||
}
|
||||
],
|
||||
"typedefs": [
|
||||
{
|
||||
"name": "ImDrawIdx",
|
||||
"type": {
|
||||
"declaration": "unsigned short",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "unsigned_short"
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
|
||||
},
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "ifndef",
|
||||
"expression": "ImDrawIdx"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "SDL_Event",
|
||||
"type": {
|
||||
"declaration": "SDL_Event",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Event"
|
||||
}
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h"
|
||||
}
|
||||
}
|
||||
],
|
||||
"structs": [
|
||||
{
|
||||
"name": "SDL_Window",
|
||||
"original_fully_qualified_name": "SDL_Window",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 29
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "SDL_Renderer",
|
||||
"original_fully_qualified_name": "SDL_Renderer",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 30
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "_SDL_GameController",
|
||||
"original_fully_qualified_name": "_SDL_GameController",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 31
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImDrawData",
|
||||
"original_fully_qualified_name": "ImDrawData",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"functions": [
|
||||
{
|
||||
"name": "cImGui_ImplSDL2_InitForOpenGL",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL2_InitForOpenGL",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": {
|
||||
"declaration": "SDL_Window*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Window"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "sdl_gl_context",
|
||||
"type": {
|
||||
"declaration": "void*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 35
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL2_InitForVulkan",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL2_InitForVulkan",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": {
|
||||
"declaration": "SDL_Window*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Window"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 36
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL2_InitForD3D",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL2_InitForD3D",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": {
|
||||
"declaration": "SDL_Window*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Window"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 37
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL2_InitForMetal",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL2_InitForMetal",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": {
|
||||
"declaration": "SDL_Window*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Window"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 38
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL2_InitForSDLRenderer",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL2_InitForSDLRenderer",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": {
|
||||
"declaration": "SDL_Window*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Window"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "renderer",
|
||||
"type": {
|
||||
"declaration": "SDL_Renderer*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Renderer"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 39
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL2_InitForOther",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL2_InitForOther",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": {
|
||||
"declaration": "SDL_Window*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Window"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 40
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL2_Shutdown",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL2_Shutdown",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 41
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL2_NewFrame",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL2_NewFrame",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 42
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL2_ProcessEvent",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL2_ProcessEvent",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "event",
|
||||
"type": {
|
||||
"declaration": "const SDL_Event*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Event",
|
||||
"storage_classes": [
|
||||
"const"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 43
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL2_GetContentScaleForWindow",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL2_GetContentScaleForWindow",
|
||||
"return_type": {
|
||||
"declaration": "float",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "float"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": {
|
||||
"declaration": "SDL_Window*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Window"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// DPI-related helpers (optional)"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 46
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL2_GetContentScaleForDisplay",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL2_GetContentScaleForDisplay",
|
||||
"return_type": {
|
||||
"declaration": "float",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "float"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "display_index",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 47
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL2_SetGamepadMode",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL2_SetGamepadMode",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "mode",
|
||||
"type": {
|
||||
"declaration": "ImGui_ImplSDL2_GamepadMode",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "ImGui_ImplSDL2_GamepadMode"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": true,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"attached": "// Implied manual_gamepads_array = nullptr, manual_gamepads_count = -1"
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 52
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL2_SetGamepadModeEx",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL2_SetGamepadMode",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "mode",
|
||||
"type": {
|
||||
"declaration": "ImGui_ImplSDL2_GamepadMode",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "ImGui_ImplSDL2_GamepadMode"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "manual_gamepads_array",
|
||||
"type": {
|
||||
"declaration": "struct _SDL_GameController**",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "_SDL_GameController"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"default_value": "nullptr",
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "manual_gamepads_count",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"default_value": "-1",
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 52
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL2_SetMouseCaptureMode",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL2_SetMouseCaptureMode",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "mode",
|
||||
"type": {
|
||||
"declaration": "ImGui_ImplSDL2_MouseCaptureMode",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "ImGui_ImplSDL2_MouseCaptureMode"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl2.h",
|
||||
"line": 59
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [],
|
||||
"structs": [],
|
||||
"functions": []
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,163 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
#include "imgui.h"
|
||||
#include "imgui_impl_sdl3.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
// Wrap this in a namespace to keep it separate from the C++ API
|
||||
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
|
||||
// and thus generating redefinition warnings
|
||||
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
namespace cimgui
|
||||
{
|
||||
#include "dcimgui_impl_sdl3.h"
|
||||
}
|
||||
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
|
||||
// By-value struct conversions
|
||||
|
||||
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
|
||||
{
|
||||
cimgui::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
|
||||
{
|
||||
::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
|
||||
{
|
||||
cimgui::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
|
||||
{
|
||||
::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
|
||||
{
|
||||
cimgui::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
|
||||
{
|
||||
::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
|
||||
{
|
||||
cimgui::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
|
||||
{
|
||||
::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
// Function stubs
|
||||
|
||||
#ifndef IMGUI_DISABLE
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplSDL3_InitForOpenGL(cimgui::SDL_Window* window, void* sdl_gl_context)
|
||||
{
|
||||
return ::ImGui_ImplSDL3_InitForOpenGL(reinterpret_cast<::SDL_Window*>(window), sdl_gl_context);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplSDL3_InitForVulkan(cimgui::SDL_Window* window)
|
||||
{
|
||||
return ::ImGui_ImplSDL3_InitForVulkan(reinterpret_cast<::SDL_Window*>(window));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplSDL3_InitForD3D(cimgui::SDL_Window* window)
|
||||
{
|
||||
return ::ImGui_ImplSDL3_InitForD3D(reinterpret_cast<::SDL_Window*>(window));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplSDL3_InitForMetal(cimgui::SDL_Window* window)
|
||||
{
|
||||
return ::ImGui_ImplSDL3_InitForMetal(reinterpret_cast<::SDL_Window*>(window));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplSDL3_InitForSDLRenderer(cimgui::SDL_Window* window, cimgui::SDL_Renderer* renderer)
|
||||
{
|
||||
return ::ImGui_ImplSDL3_InitForSDLRenderer(reinterpret_cast<::SDL_Window*>(window), reinterpret_cast<::SDL_Renderer*>(renderer));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplSDL3_InitForSDLGPU(cimgui::SDL_Window* window)
|
||||
{
|
||||
return ::ImGui_ImplSDL3_InitForSDLGPU(reinterpret_cast<::SDL_Window*>(window));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplSDL3_InitForOther(cimgui::SDL_Window* window)
|
||||
{
|
||||
return ::ImGui_ImplSDL3_InitForOther(reinterpret_cast<::SDL_Window*>(window));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDL3_Shutdown(void)
|
||||
{
|
||||
::ImGui_ImplSDL3_Shutdown();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDL3_NewFrame(void)
|
||||
{
|
||||
::ImGui_ImplSDL3_NewFrame();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplSDL3_ProcessEvent(const SDL_Event* event)
|
||||
{
|
||||
return ::ImGui_ImplSDL3_ProcessEvent(event);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDL3_SetGamepadMode(cimgui::ImGui_ImplSDL3_GamepadMode mode)
|
||||
{
|
||||
::ImGui_ImplSDL3_SetGamepadMode(static_cast<::ImGui_ImplSDL3_GamepadMode>(mode));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDL3_SetGamepadModeEx(cimgui::ImGui_ImplSDL3_GamepadMode mode, cimgui::SDL_Gamepad** manual_gamepads_array, int manual_gamepads_count)
|
||||
{
|
||||
::ImGui_ImplSDL3_SetGamepadMode(static_cast<::ImGui_ImplSDL3_GamepadMode>(mode), reinterpret_cast<::SDL_Gamepad**>(manual_gamepads_array), manual_gamepads_count);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDL3_SetMouseCaptureMode(cimgui::ImGui_ImplSDL3_MouseCaptureMode mode)
|
||||
{
|
||||
::ImGui_ImplSDL3_SetMouseCaptureMode(static_cast<::ImGui_ImplSDL3_MouseCaptureMode>(mode));
|
||||
}
|
||||
|
||||
#endif // #ifndef IMGUI_DISABLE
|
||||
@@ -0,0 +1,85 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
// dear imgui: Platform Backend for SDL3
|
||||
// ImDrawIdx: vertex index. [Compile-time configurable type]
|
||||
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
|
||||
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
|
||||
#ifndef ImDrawIdx
|
||||
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
|
||||
#endif // #ifndef ImDrawIdx
|
||||
// This needs to be used along with a Renderer (e.g. SDL_GPU, DirectX11, OpenGL3, Vulkan..)
|
||||
// (Info: SDL3 is a cross-platform general purpose library for handling windows, inputs, graphics context creation, etc.)
|
||||
|
||||
// Implemented features:
|
||||
// [X] Platform: Clipboard support.
|
||||
// [X] Platform: Mouse support. Can discriminate Mouse/TouchScreen.
|
||||
// [X] Platform: Keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy SDL_SCANCODE_* values are obsolete since 1.87 and not supported since 1.91.5]
|
||||
// [X] Platform: Gamepad support.
|
||||
// [X] Platform: Mouse cursor shape and visibility (ImGuiBackendFlags_HasMouseCursors). Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange'.
|
||||
// [x] Platform: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable' -> the OS animation effect when window gets created/destroyed is problematic. SDL2 backend doesn't have issue.
|
||||
// Missing features or Issues:
|
||||
// [ ] Platform: Multi-viewport: Minimized windows seems to break mouse wheel events (at least under Windows).
|
||||
// [x] Platform: IME support. Position somehow broken in SDL3 + app needs to call 'SDL_SetHint(SDL_HINT_IME_SHOW_UI, "1");' before SDL_CreateWindow()!.
|
||||
|
||||
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
|
||||
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
|
||||
// Learn about Dear ImGui:
|
||||
// - FAQ https://dearimgui.com/faq
|
||||
// - Getting Started https://dearimgui.com/getting-started
|
||||
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
|
||||
// - Introduction, links and more at the top of imgui.cpp
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
#include "dcimgui.h"
|
||||
#ifndef IMGUI_DISABLE
|
||||
typedef struct SDL_Window SDL_Window;
|
||||
typedef struct SDL_Renderer SDL_Renderer;
|
||||
typedef struct SDL_Gamepad SDL_Gamepad;
|
||||
typedef union SDL_Event SDL_Event;
|
||||
|
||||
typedef struct ImDrawData_t ImDrawData;
|
||||
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
|
||||
CIMGUI_IMPL_API bool cImGui_ImplSDL3_InitForOpenGL(SDL_Window* window, void* sdl_gl_context);
|
||||
CIMGUI_IMPL_API bool cImGui_ImplSDL3_InitForVulkan(SDL_Window* window);
|
||||
CIMGUI_IMPL_API bool cImGui_ImplSDL3_InitForD3D(SDL_Window* window);
|
||||
CIMGUI_IMPL_API bool cImGui_ImplSDL3_InitForMetal(SDL_Window* window);
|
||||
CIMGUI_IMPL_API bool cImGui_ImplSDL3_InitForSDLRenderer(SDL_Window* window, SDL_Renderer* renderer);
|
||||
CIMGUI_IMPL_API bool cImGui_ImplSDL3_InitForSDLGPU(SDL_Window* window);
|
||||
CIMGUI_IMPL_API bool cImGui_ImplSDL3_InitForOther(SDL_Window* window);
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDL3_Shutdown(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDL3_NewFrame(void);
|
||||
CIMGUI_IMPL_API bool cImGui_ImplSDL3_ProcessEvent(const SDL_Event* event);
|
||||
|
||||
// Gamepad selection automatically starts in AutoFirst mode, picking first available SDL_Gamepad. You may override this.
|
||||
// When using manual mode, caller is responsible for opening/closing gamepad.
|
||||
typedef enum
|
||||
{
|
||||
ImGui_ImplSDL3_GamepadMode_AutoFirst,
|
||||
ImGui_ImplSDL3_GamepadMode_AutoAll,
|
||||
ImGui_ImplSDL3_GamepadMode_Manual,
|
||||
} ImGui_ImplSDL3_GamepadMode;
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDL3_SetGamepadMode(ImGui_ImplSDL3_GamepadMode mode); // Implied manual_gamepads_array = nullptr, manual_gamepads_count = -1
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDL3_SetGamepadModeEx(ImGui_ImplSDL3_GamepadMode mode, SDL_Gamepad** manual_gamepads_array /* = nullptr */, int manual_gamepads_count /* = -1 */);
|
||||
|
||||
// (Advanced, for X11 users) Override Mouse Capture mode. Mouse capture allows receiving updated mouse position after clicking inside our window and dragging outside it.
|
||||
// Having this 'Enabled' is in theory always better. But, on X11 if you crash/break to debugger while capture is active you may temporarily lose access to your mouse.
|
||||
// The best solution is to setup your debugger to automatically release capture, e.g. 'setxkbmap -option grab:break_actions && xdotool key XF86Ungrab' or via a GDB script. See #3650.
|
||||
// But you may independently decide on X11, when a debugger is attached, to set this value to ImGui_ImplSDL3_MouseCaptureMode_Disabled.
|
||||
typedef enum
|
||||
{
|
||||
ImGui_ImplSDL3_MouseCaptureMode_Enabled,
|
||||
ImGui_ImplSDL3_MouseCaptureMode_EnabledAfterDrag,
|
||||
ImGui_ImplSDL3_MouseCaptureMode_Disabled,
|
||||
} ImGui_ImplSDL3_MouseCaptureMode;
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDL3_SetMouseCaptureMode(ImGui_ImplSDL3_MouseCaptureMode mode);
|
||||
#endif// #ifndef IMGUI_DISABLE
|
||||
#ifdef __cplusplus
|
||||
} // End of extern "C" block
|
||||
#endif
|
||||
@@ -0,0 +1,756 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [
|
||||
{
|
||||
"name": "ImGui_ImplSDL3_GamepadMode",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL3_GamepadMode",
|
||||
"is_flags_enum": false,
|
||||
"elements": [
|
||||
{
|
||||
"name": "ImGui_ImplSDL3_GamepadMode_AutoFirst",
|
||||
"value": 0,
|
||||
"is_count": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 47
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImGui_ImplSDL3_GamepadMode_AutoAll",
|
||||
"value": 1,
|
||||
"is_count": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 47
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImGui_ImplSDL3_GamepadMode_Manual",
|
||||
"value": 2,
|
||||
"is_count": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 47
|
||||
}
|
||||
}
|
||||
],
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Gamepad selection automatically starts in AutoFirst mode, picking first available SDL_Gamepad. You may override this.",
|
||||
"// When using manual mode, caller is responsible for opening/closing gamepad."
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 47
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImGui_ImplSDL3_MouseCaptureMode",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL3_MouseCaptureMode",
|
||||
"is_flags_enum": false,
|
||||
"elements": [
|
||||
{
|
||||
"name": "ImGui_ImplSDL3_MouseCaptureMode_Enabled",
|
||||
"value": 0,
|
||||
"is_count": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 54
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImGui_ImplSDL3_MouseCaptureMode_EnabledAfterDrag",
|
||||
"value": 1,
|
||||
"is_count": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 54
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImGui_ImplSDL3_MouseCaptureMode_Disabled",
|
||||
"value": 2,
|
||||
"is_count": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 54
|
||||
}
|
||||
}
|
||||
],
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// (Advanced, for X11 users) Override Mouse Capture mode. Mouse capture allows receiving updated mouse position after clicking inside our window and dragging outside it.",
|
||||
"// Having this 'Enabled' is in theory always better. But, on X11 if you crash/break to debugger while capture is active you may temporarily lose access to your mouse.",
|
||||
"// The best solution is to setup your debugger to automatically release capture, e.g. 'setxkbmap -option grab:break_actions && xdotool key XF86Ungrab' or via a GDB script. See #3650.",
|
||||
"// But you may independently decide on X11, when a debugger is attached, to set this value to ImGui_ImplSDL3_MouseCaptureMode_Disabled."
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 54
|
||||
}
|
||||
}
|
||||
],
|
||||
"typedefs": [
|
||||
{
|
||||
"name": "ImDrawIdx",
|
||||
"type": {
|
||||
"declaration": "unsigned short",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "unsigned_short"
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
|
||||
},
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "ifndef",
|
||||
"expression": "ImDrawIdx"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "SDL_Event",
|
||||
"type": {
|
||||
"declaration": "SDL_Event",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Event"
|
||||
}
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h"
|
||||
}
|
||||
}
|
||||
],
|
||||
"structs": [
|
||||
{
|
||||
"name": "SDL_Window",
|
||||
"original_fully_qualified_name": "SDL_Window",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 28
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "SDL_Renderer",
|
||||
"original_fully_qualified_name": "SDL_Renderer",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 29
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "SDL_Gamepad",
|
||||
"original_fully_qualified_name": "SDL_Gamepad",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 30
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImDrawData",
|
||||
"original_fully_qualified_name": "ImDrawData",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"functions": [
|
||||
{
|
||||
"name": "cImGui_ImplSDL3_InitForOpenGL",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL3_InitForOpenGL",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": {
|
||||
"declaration": "SDL_Window*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Window"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "sdl_gl_context",
|
||||
"type": {
|
||||
"declaration": "void*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 34
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL3_InitForVulkan",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL3_InitForVulkan",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": {
|
||||
"declaration": "SDL_Window*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Window"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 35
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL3_InitForD3D",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL3_InitForD3D",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": {
|
||||
"declaration": "SDL_Window*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Window"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 36
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL3_InitForMetal",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL3_InitForMetal",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": {
|
||||
"declaration": "SDL_Window*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Window"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 37
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL3_InitForSDLRenderer",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL3_InitForSDLRenderer",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": {
|
||||
"declaration": "SDL_Window*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Window"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "renderer",
|
||||
"type": {
|
||||
"declaration": "SDL_Renderer*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Renderer"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 38
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL3_InitForSDLGPU",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL3_InitForSDLGPU",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": {
|
||||
"declaration": "SDL_Window*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Window"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 39
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL3_InitForOther",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL3_InitForOther",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "window",
|
||||
"type": {
|
||||
"declaration": "SDL_Window*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Window"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 40
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL3_Shutdown",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL3_Shutdown",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 41
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL3_NewFrame",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL3_NewFrame",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 42
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL3_ProcessEvent",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL3_ProcessEvent",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "event",
|
||||
"type": {
|
||||
"declaration": "const SDL_Event*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Event",
|
||||
"storage_classes": [
|
||||
"const"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 43
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL3_SetGamepadMode",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL3_SetGamepadMode",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "mode",
|
||||
"type": {
|
||||
"declaration": "ImGui_ImplSDL3_GamepadMode",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "ImGui_ImplSDL3_GamepadMode"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": true,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"attached": "// Implied manual_gamepads_array = nullptr, manual_gamepads_count = -1"
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 48
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL3_SetGamepadModeEx",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL3_SetGamepadMode",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "mode",
|
||||
"type": {
|
||||
"declaration": "ImGui_ImplSDL3_GamepadMode",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "ImGui_ImplSDL3_GamepadMode"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "manual_gamepads_array",
|
||||
"type": {
|
||||
"declaration": "SDL_Gamepad**",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Gamepad"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"default_value": "nullptr",
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "manual_gamepads_count",
|
||||
"type": {
|
||||
"declaration": "int",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "int"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"default_value": "-1",
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 48
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDL3_SetMouseCaptureMode",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDL3_SetMouseCaptureMode",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "mode",
|
||||
"type": {
|
||||
"declaration": "ImGui_ImplSDL3_MouseCaptureMode",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "ImGui_ImplSDL3_MouseCaptureMode"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdl3.h",
|
||||
"line": 55
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [],
|
||||
"structs": [],
|
||||
"functions": []
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,144 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
#include "imgui.h"
|
||||
#include "imgui_impl_sdlgpu3.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
// Wrap this in a namespace to keep it separate from the C++ API
|
||||
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
|
||||
// and thus generating redefinition warnings
|
||||
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
namespace cimgui
|
||||
{
|
||||
#include "dcimgui_impl_sdlgpu3.h"
|
||||
}
|
||||
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
|
||||
|
||||
// By-value struct conversions
|
||||
|
||||
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
|
||||
{
|
||||
cimgui::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
|
||||
{
|
||||
::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
|
||||
{
|
||||
cimgui::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
|
||||
{
|
||||
::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
|
||||
{
|
||||
cimgui::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
|
||||
{
|
||||
::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
|
||||
{
|
||||
cimgui::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
|
||||
{
|
||||
::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
// Function stubs
|
||||
|
||||
#ifndef IMGUI_DISABLE
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplSDLGPU3_Init(cimgui::ImGui_ImplSDLGPU3_InitInfo* info)
|
||||
{
|
||||
return ::ImGui_ImplSDLGPU3_Init(reinterpret_cast<::ImGui_ImplSDLGPU3_InitInfo*>(info));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDLGPU3_Shutdown(void)
|
||||
{
|
||||
::ImGui_ImplSDLGPU3_Shutdown();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDLGPU3_NewFrame(void)
|
||||
{
|
||||
::ImGui_ImplSDLGPU3_NewFrame();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDLGPU3_PrepareDrawData(cimgui::ImDrawData* draw_data, SDL_GPUCommandBuffer* command_buffer)
|
||||
{
|
||||
::ImGui_ImplSDLGPU3_PrepareDrawData(reinterpret_cast<::ImDrawData*>(draw_data), command_buffer);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDLGPU3_RenderDrawData(cimgui::ImDrawData* draw_data, SDL_GPUCommandBuffer* command_buffer, SDL_GPURenderPass* render_pass)
|
||||
{
|
||||
::ImGui_ImplSDLGPU3_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data), command_buffer, render_pass);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDLGPU3_RenderDrawDataEx(cimgui::ImDrawData* draw_data, SDL_GPUCommandBuffer* command_buffer, SDL_GPURenderPass* render_pass, SDL_GPUGraphicsPipeline* pipeline)
|
||||
{
|
||||
::ImGui_ImplSDLGPU3_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data), command_buffer, render_pass, pipeline);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDLGPU3_CreateDeviceObjects(void)
|
||||
{
|
||||
::ImGui_ImplSDLGPU3_CreateDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDLGPU3_DestroyDeviceObjects(void)
|
||||
{
|
||||
::ImGui_ImplSDLGPU3_DestroyDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDLGPU3_UpdateTexture(cimgui::ImTextureData* tex)
|
||||
{
|
||||
::ImGui_ImplSDLGPU3_UpdateTexture(reinterpret_cast<::ImTextureData*>(tex));
|
||||
}
|
||||
|
||||
#endif // #ifndef IMGUI_DISABLE
|
||||
@@ -0,0 +1,86 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
// dear imgui: Renderer Backend for SDL_GPU
|
||||
// Auto-generated forward declarations for C header
|
||||
typedef struct ImGui_ImplSDLGPU3_InitInfo_t ImGui_ImplSDLGPU3_InitInfo;
|
||||
typedef struct ImGui_ImplSDLGPU3_RenderState_t ImGui_ImplSDLGPU3_RenderState;
|
||||
// ImDrawIdx: vertex index. [Compile-time configurable type]
|
||||
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
|
||||
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
|
||||
#ifndef ImDrawIdx
|
||||
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
|
||||
#endif // #ifndef ImDrawIdx
|
||||
// This needs to be used along with the SDL3 Platform Backend
|
||||
|
||||
// Implemented features:
|
||||
// [X] Renderer: User texture binding. Use 'SDL_GPUTexture*' as texture identifier. Read the FAQ about ImTextureID/ImTextureRef! **IMPORTANT** Before 2025/08/08, ImTextureID was a reference to a SDL_GPUTextureSamplerBinding struct.
|
||||
// [X] Renderer: Large meshes support (64k+ vertices) even with 16-bit indices (ImGuiBackendFlags_RendererHasVtxOffset).
|
||||
// [X] Renderer: Texture updates support for dynamic font atlas (ImGuiBackendFlags_RendererHasTextures).
|
||||
// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'.
|
||||
|
||||
// The aim of imgui_impl_sdlgpu3.h/.cpp is to be usable in your engine without any modification.
|
||||
// IF YOU FEEL YOU NEED TO MAKE ANY CHANGE TO THIS CODE, please share them and your feedback at https://github.com/ocornut/imgui/
|
||||
|
||||
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
|
||||
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
|
||||
// Learn about Dear ImGui:
|
||||
// - FAQ https://dearimgui.com/faq
|
||||
// - Getting Started https://dearimgui.com/getting-started
|
||||
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
|
||||
// - Introduction, links and more at the top of imgui.cpp
|
||||
|
||||
// Important note to the reader who wish to integrate imgui_impl_sdlgpu3.cpp/.h in their own engine/app.
|
||||
// - Unlike other backends, the user must call the function ImGui_ImplSDLGPU_PrepareDrawData BEFORE issuing a SDL_GPURenderPass containing ImGui_ImplSDLGPU_RenderDrawData.
|
||||
// Calling the function is MANDATORY, otherwise the ImGui will not upload neither the vertex nor the index buffer for the GPU. See imgui_impl_sdlgpu3.cpp for more info.
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
#include "dcimgui.h"
|
||||
#ifndef IMGUI_DISABLE
|
||||
#include <SDL3/SDL_gpu.h> // Initialization data, for ImGui_ImplSDLGPU_Init()
|
||||
// - Remember to set ColorTargetFormat to the correct format. If you're rendering to the swapchain, call SDL_GetGPUSwapchainTextureFormat() to query the right value
|
||||
struct ImGui_ImplSDLGPU3_InitInfo_t
|
||||
{
|
||||
SDL_GPUDevice* Device /* = nullptr */;
|
||||
SDL_GPUTextureFormat ColorTargetFormat /* = SDL_GPU_TEXTUREFORMAT_INVALID */;
|
||||
SDL_GPUSampleCount MSAASamples /* = SDL_GPU_SAMPLECOUNT_1 */;
|
||||
SDL_GPUSwapchainComposition SwapchainComposition /* = SDL_GPU_SWAPCHAINCOMPOSITION_SDR */; // Only used in multi-viewports mode.
|
||||
SDL_GPUPresentMode PresentMode /* = SDL_GPU_PRESENTMODE_VSYNC */; // Only used in multi-viewports mode.
|
||||
};
|
||||
|
||||
typedef struct ImDrawData_t ImDrawData;
|
||||
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
|
||||
CIMGUI_IMPL_API bool cImGui_ImplSDLGPU3_Init(ImGui_ImplSDLGPU3_InitInfo* info);
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDLGPU3_Shutdown(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDLGPU3_NewFrame(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDLGPU3_PrepareDrawData(ImDrawData* draw_data, SDL_GPUCommandBuffer* command_buffer);
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDLGPU3_RenderDrawData(ImDrawData* draw_data, SDL_GPUCommandBuffer* command_buffer, SDL_GPURenderPass* render_pass); // Implied pipeline = nullptr
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDLGPU3_RenderDrawDataEx(ImDrawData* draw_data, SDL_GPUCommandBuffer* command_buffer, SDL_GPURenderPass* render_pass, SDL_GPUGraphicsPipeline* pipeline /* = nullptr */);
|
||||
|
||||
// Use if you want to reset your rendering device without losing Dear ImGui state.
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDLGPU3_CreateDeviceObjects(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDLGPU3_DestroyDeviceObjects(void);
|
||||
|
||||
// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually.
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDLGPU3_UpdateTexture(ImTextureData* tex);
|
||||
|
||||
// [BETA] Selected render state data shared with callbacks.
|
||||
// This is temporarily stored in GetPlatformIO().Renderer_RenderState during the ImGui_ImplSDLGPU3_RenderDrawData() call.
|
||||
// (Please open an issue if you feel you need access to more data)
|
||||
struct ImGui_ImplSDLGPU3_RenderState_t
|
||||
{
|
||||
SDL_GPUDevice* Device;
|
||||
SDL_GPUSampler* SamplerLinear; // Bilinear filtering sampler
|
||||
SDL_GPUSampler* SamplerNearest; // Nearest/point filtering sampler
|
||||
SDL_GPUSampler* SamplerCurrent; // Current sampler (may be changed by callback)
|
||||
};
|
||||
#endif// #ifndef IMGUI_DISABLE
|
||||
#ifdef __cplusplus
|
||||
} // End of extern "C" block
|
||||
#endif
|
||||
@@ -0,0 +1,684 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [
|
||||
{
|
||||
"name": "ImDrawIdx",
|
||||
"type": {
|
||||
"declaration": "unsigned short",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "unsigned_short"
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
|
||||
},
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "ifndef",
|
||||
"expression": "ImDrawIdx"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h"
|
||||
}
|
||||
}
|
||||
],
|
||||
"structs": [
|
||||
{
|
||||
"name": "ImGui_ImplSDLGPU3_InitInfo",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLGPU3_InitInfo",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": false,
|
||||
"is_anonymous": false,
|
||||
"fields": [
|
||||
{
|
||||
"name": "Device",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "SDL_GPUDevice*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_GPUDevice"
|
||||
}
|
||||
}
|
||||
},
|
||||
"default_value": "nullptr",
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h",
|
||||
"line": 34
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ColorTargetFormat",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "SDL_GPUTextureFormat",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "SDL_GPUTextureFormat"
|
||||
}
|
||||
},
|
||||
"default_value": "SDL_GPU_TEXTUREFORMAT_INVALID",
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h",
|
||||
"line": 35
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "MSAASamples",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "SDL_GPUSampleCount",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "SDL_GPUSampleCount"
|
||||
}
|
||||
},
|
||||
"default_value": "SDL_GPU_SAMPLECOUNT_1",
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h",
|
||||
"line": 36
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "SwapchainComposition",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "SDL_GPUSwapchainComposition",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "SDL_GPUSwapchainComposition"
|
||||
}
|
||||
},
|
||||
"default_value": "SDL_GPU_SWAPCHAINCOMPOSITION_SDR",
|
||||
"comments": {
|
||||
"attached": "// Only used in multi-viewports mode."
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h",
|
||||
"line": 37
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "PresentMode",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "SDL_GPUPresentMode",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "SDL_GPUPresentMode"
|
||||
}
|
||||
},
|
||||
"default_value": "SDL_GPU_PRESENTMODE_VSYNC",
|
||||
"comments": {
|
||||
"attached": "// Only used in multi-viewports mode."
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h",
|
||||
"line": 38
|
||||
}
|
||||
}
|
||||
],
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// - Remember to set ColorTargetFormat to the correct format. If you're rendering to the swapchain, call SDL_GetGPUSwapchainTextureFormat() to query the right value"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h",
|
||||
"line": 32
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImDrawData",
|
||||
"original_fully_qualified_name": "ImDrawData",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h",
|
||||
"line": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImGui_ImplSDLGPU3_RenderState",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLGPU3_RenderState",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": false,
|
||||
"is_anonymous": false,
|
||||
"fields": [
|
||||
{
|
||||
"name": "Device",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "SDL_GPUDevice*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_GPUDevice"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h",
|
||||
"line": 60
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "SamplerLinear",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "SDL_GPUSampler*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_GPUSampler"
|
||||
}
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// Bilinear filtering sampler"
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h",
|
||||
"line": 61
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "SamplerNearest",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "SDL_GPUSampler*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_GPUSampler"
|
||||
}
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// Nearest/point filtering sampler"
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h",
|
||||
"line": 62
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "SamplerCurrent",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "SDL_GPUSampler*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_GPUSampler"
|
||||
}
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// Current sampler (may be changed by callback)"
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h",
|
||||
"line": 63
|
||||
}
|
||||
}
|
||||
],
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// [BETA] Selected render state data shared with callbacks.",
|
||||
"// This is temporarily stored in GetPlatformIO().Renderer_RenderState during the ImGui_ImplSDLGPU3_RenderDrawData() call.",
|
||||
"// (Please open an issue if you feel you need access to more data)"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h",
|
||||
"line": 58
|
||||
}
|
||||
}
|
||||
],
|
||||
"functions": [
|
||||
{
|
||||
"name": "cImGui_ImplSDLGPU3_Init",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLGPU3_Init",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "info",
|
||||
"type": {
|
||||
"declaration": "ImGui_ImplSDLGPU3_InitInfo*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImGui_ImplSDLGPU3_InitInfo"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h",
|
||||
"line": 42
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDLGPU3_Shutdown",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLGPU3_Shutdown",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h",
|
||||
"line": 43
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDLGPU3_NewFrame",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLGPU3_NewFrame",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h",
|
||||
"line": 44
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDLGPU3_PrepareDrawData",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLGPU3_PrepareDrawData",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "draw_data",
|
||||
"type": {
|
||||
"declaration": "ImDrawData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImDrawData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "command_buffer",
|
||||
"type": {
|
||||
"declaration": "SDL_GPUCommandBuffer*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_GPUCommandBuffer"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h",
|
||||
"line": 45
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDLGPU3_RenderDrawData",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLGPU3_RenderDrawData",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "draw_data",
|
||||
"type": {
|
||||
"declaration": "ImDrawData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImDrawData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "command_buffer",
|
||||
"type": {
|
||||
"declaration": "SDL_GPUCommandBuffer*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_GPUCommandBuffer"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "render_pass",
|
||||
"type": {
|
||||
"declaration": "SDL_GPURenderPass*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_GPURenderPass"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": true,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"attached": "// Implied pipeline = nullptr"
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h",
|
||||
"line": 46
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDLGPU3_RenderDrawDataEx",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLGPU3_RenderDrawData",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "draw_data",
|
||||
"type": {
|
||||
"declaration": "ImDrawData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImDrawData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "command_buffer",
|
||||
"type": {
|
||||
"declaration": "SDL_GPUCommandBuffer*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_GPUCommandBuffer"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "render_pass",
|
||||
"type": {
|
||||
"declaration": "SDL_GPURenderPass*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_GPURenderPass"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "pipeline",
|
||||
"type": {
|
||||
"declaration": "SDL_GPUGraphicsPipeline*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_GPUGraphicsPipeline"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"default_value": "nullptr",
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h",
|
||||
"line": 46
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDLGPU3_CreateDeviceObjects",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLGPU3_CreateDeviceObjects",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Use if you want to reset your rendering device without losing Dear ImGui state."
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h",
|
||||
"line": 49
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDLGPU3_DestroyDeviceObjects",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLGPU3_DestroyDeviceObjects",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h",
|
||||
"line": 50
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDLGPU3_UpdateTexture",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLGPU3_UpdateTexture",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "tex",
|
||||
"type": {
|
||||
"declaration": "ImTextureData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImTextureData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually."
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlgpu3.h",
|
||||
"line": 53
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [],
|
||||
"structs": [],
|
||||
"functions": []
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,133 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
#include "imgui.h"
|
||||
#include "imgui_impl_sdlrenderer2.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
// Wrap this in a namespace to keep it separate from the C++ API
|
||||
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
|
||||
// and thus generating redefinition warnings
|
||||
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
namespace cimgui
|
||||
{
|
||||
#include "dcimgui_impl_sdlrenderer2.h"
|
||||
}
|
||||
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
|
||||
// By-value struct conversions
|
||||
|
||||
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
|
||||
{
|
||||
cimgui::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
|
||||
{
|
||||
::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
|
||||
{
|
||||
cimgui::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
|
||||
{
|
||||
::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
|
||||
{
|
||||
cimgui::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
|
||||
{
|
||||
::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
|
||||
{
|
||||
cimgui::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
|
||||
{
|
||||
::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
// Function stubs
|
||||
|
||||
#ifndef IMGUI_DISABLE
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplSDLRenderer2_Init(cimgui::SDL_Renderer* renderer)
|
||||
{
|
||||
return ::ImGui_ImplSDLRenderer2_Init(reinterpret_cast<::SDL_Renderer*>(renderer));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDLRenderer2_Shutdown(void)
|
||||
{
|
||||
::ImGui_ImplSDLRenderer2_Shutdown();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDLRenderer2_NewFrame(void)
|
||||
{
|
||||
::ImGui_ImplSDLRenderer2_NewFrame();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDLRenderer2_RenderDrawData(cimgui::ImDrawData* draw_data, cimgui::SDL_Renderer* renderer)
|
||||
{
|
||||
::ImGui_ImplSDLRenderer2_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data), reinterpret_cast<::SDL_Renderer*>(renderer));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDLRenderer2_CreateDeviceObjects(void)
|
||||
{
|
||||
::ImGui_ImplSDLRenderer2_CreateDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDLRenderer2_DestroyDeviceObjects(void)
|
||||
{
|
||||
::ImGui_ImplSDLRenderer2_DestroyDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDLRenderer2_UpdateTexture(cimgui::ImTextureData* tex)
|
||||
{
|
||||
::ImGui_ImplSDLRenderer2_UpdateTexture(reinterpret_cast<::ImTextureData*>(tex));
|
||||
}
|
||||
|
||||
#endif // #ifndef IMGUI_DISABLE
|
||||
@@ -0,0 +1,74 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
// dear imgui: Renderer Backend for SDL_Renderer for SDL2
|
||||
// Auto-generated forward declarations for C header
|
||||
typedef struct ImGui_ImplSDLRenderer2_RenderState_t ImGui_ImplSDLRenderer2_RenderState;
|
||||
// ImDrawIdx: vertex index. [Compile-time configurable type]
|
||||
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
|
||||
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
|
||||
#ifndef ImDrawIdx
|
||||
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
|
||||
#endif // #ifndef ImDrawIdx
|
||||
// (Requires: SDL 2.0.17+)
|
||||
|
||||
// Note that SDL_Renderer is an _optional_ component of SDL2, which IMHO is now largely obsolete.
|
||||
// For a multi-platform app consider using other technologies:
|
||||
// - SDL3+SDL_GPU: SDL_GPU is SDL3 new graphics abstraction API. You will need to update to SDL3.
|
||||
// - SDL2+DirectX, SDL2+OpenGL, SDL2+Vulkan: combine SDL with dedicated renderers.
|
||||
// If your application wants to render any non trivial amount of graphics other than UI,
|
||||
// please be aware that SDL_Renderer currently offers a limited graphic API to the end-user
|
||||
// and it might be difficult to step out of those boundaries.
|
||||
|
||||
// Implemented features:
|
||||
// [X] Renderer: User texture binding. Use 'SDL_Texture*' as texture identifier. Read the FAQ about ImTextureID/ImTextureRef!
|
||||
// [X] Renderer: Large meshes support (64k+ vertices) even with 16-bit indices (ImGuiBackendFlags_RendererHasVtxOffset).
|
||||
// [X] Renderer: Texture updates support for dynamic font atlas (ImGuiBackendFlags_RendererHasTextures).
|
||||
// [X] Renderer: Expose selected render state for draw callbacks to use. Access in '(ImGui_ImplXXXX_RenderState*)GetPlatformIO().Renderer_RenderState'.
|
||||
// Missing features:
|
||||
// [ ] Renderer: Multi-viewport support (multiple windows).
|
||||
|
||||
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
|
||||
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
|
||||
// Learn about Dear ImGui:
|
||||
// - FAQ https://dearimgui.com/faq
|
||||
// - Getting Started https://dearimgui.com/getting-started
|
||||
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
|
||||
// - Introduction, links and more at the top of imgui.cpp
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
#ifndef IMGUI_DISABLE
|
||||
#include "dcimgui.h"
|
||||
typedef struct SDL_Renderer SDL_Renderer;
|
||||
|
||||
typedef struct ImDrawData_t ImDrawData;
|
||||
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
|
||||
CIMGUI_IMPL_API bool cImGui_ImplSDLRenderer2_Init(SDL_Renderer* renderer);
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDLRenderer2_Shutdown(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDLRenderer2_NewFrame(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDLRenderer2_RenderDrawData(ImDrawData* draw_data, SDL_Renderer* renderer);
|
||||
|
||||
// Called by Init/NewFrame/Shutdown
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDLRenderer2_CreateDeviceObjects(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDLRenderer2_DestroyDeviceObjects(void);
|
||||
|
||||
// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually.
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDLRenderer2_UpdateTexture(ImTextureData* tex);
|
||||
|
||||
// [BETA] Selected render state data shared with callbacks.
|
||||
// This is temporarily stored in GetPlatformIO().Renderer_RenderState during the ImGui_ImplSDLRenderer2_RenderDrawData() call.
|
||||
// (Please open an issue if you feel you need access to more data)
|
||||
struct ImGui_ImplSDLRenderer2_RenderState_t
|
||||
{
|
||||
SDL_Renderer* Renderer;
|
||||
};
|
||||
#endif// #ifndef IMGUI_DISABLE
|
||||
#ifdef __cplusplus
|
||||
} // End of extern "C" block
|
||||
#endif
|
||||
@@ -0,0 +1,346 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [
|
||||
{
|
||||
"name": "ImDrawIdx",
|
||||
"type": {
|
||||
"declaration": "unsigned short",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "unsigned_short"
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
|
||||
},
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "ifndef",
|
||||
"expression": "ImDrawIdx"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer2.h"
|
||||
}
|
||||
}
|
||||
],
|
||||
"structs": [
|
||||
{
|
||||
"name": "SDL_Renderer",
|
||||
"original_fully_qualified_name": "SDL_Renderer",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer2.h",
|
||||
"line": 32
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImDrawData",
|
||||
"original_fully_qualified_name": "ImDrawData",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer2.h",
|
||||
"line": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImGui_ImplSDLRenderer2_RenderState",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLRenderer2_RenderState",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": false,
|
||||
"is_anonymous": false,
|
||||
"fields": [
|
||||
{
|
||||
"name": "Renderer",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "SDL_Renderer*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Renderer"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer2.h",
|
||||
"line": 52
|
||||
}
|
||||
}
|
||||
],
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// [BETA] Selected render state data shared with callbacks.",
|
||||
"// This is temporarily stored in GetPlatformIO().Renderer_RenderState during the ImGui_ImplSDLRenderer2_RenderDrawData() call.",
|
||||
"// (Please open an issue if you feel you need access to more data)"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer2.h",
|
||||
"line": 50
|
||||
}
|
||||
}
|
||||
],
|
||||
"functions": [
|
||||
{
|
||||
"name": "cImGui_ImplSDLRenderer2_Init",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLRenderer2_Init",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "renderer",
|
||||
"type": {
|
||||
"declaration": "SDL_Renderer*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Renderer"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer2.h",
|
||||
"line": 35
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDLRenderer2_Shutdown",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLRenderer2_Shutdown",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer2.h",
|
||||
"line": 36
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDLRenderer2_NewFrame",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLRenderer2_NewFrame",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer2.h",
|
||||
"line": 37
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDLRenderer2_RenderDrawData",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLRenderer2_RenderDrawData",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "draw_data",
|
||||
"type": {
|
||||
"declaration": "ImDrawData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImDrawData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "renderer",
|
||||
"type": {
|
||||
"declaration": "SDL_Renderer*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Renderer"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer2.h",
|
||||
"line": 38
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDLRenderer2_CreateDeviceObjects",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLRenderer2_CreateDeviceObjects",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Called by Init/NewFrame/Shutdown"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer2.h",
|
||||
"line": 41
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDLRenderer2_DestroyDeviceObjects",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLRenderer2_DestroyDeviceObjects",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer2.h",
|
||||
"line": 42
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDLRenderer2_UpdateTexture",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLRenderer2_UpdateTexture",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "tex",
|
||||
"type": {
|
||||
"declaration": "ImTextureData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImTextureData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually."
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer2.h",
|
||||
"line": 45
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [],
|
||||
"structs": [],
|
||||
"functions": []
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,133 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
#include "imgui.h"
|
||||
#include "imgui_impl_sdlrenderer3.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
// Wrap this in a namespace to keep it separate from the C++ API
|
||||
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
|
||||
// and thus generating redefinition warnings
|
||||
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
namespace cimgui
|
||||
{
|
||||
#include "dcimgui_impl_sdlrenderer3.h"
|
||||
}
|
||||
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
|
||||
// By-value struct conversions
|
||||
|
||||
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
|
||||
{
|
||||
cimgui::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
|
||||
{
|
||||
::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
|
||||
{
|
||||
cimgui::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
|
||||
{
|
||||
::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
|
||||
{
|
||||
cimgui::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
|
||||
{
|
||||
::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
|
||||
{
|
||||
cimgui::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
|
||||
{
|
||||
::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
// Function stubs
|
||||
|
||||
#ifndef IMGUI_DISABLE
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplSDLRenderer3_Init(cimgui::SDL_Renderer* renderer)
|
||||
{
|
||||
return ::ImGui_ImplSDLRenderer3_Init(reinterpret_cast<::SDL_Renderer*>(renderer));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDLRenderer3_Shutdown(void)
|
||||
{
|
||||
::ImGui_ImplSDLRenderer3_Shutdown();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDLRenderer3_NewFrame(void)
|
||||
{
|
||||
::ImGui_ImplSDLRenderer3_NewFrame();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDLRenderer3_RenderDrawData(cimgui::ImDrawData* draw_data, cimgui::SDL_Renderer* renderer)
|
||||
{
|
||||
::ImGui_ImplSDLRenderer3_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data), reinterpret_cast<::SDL_Renderer*>(renderer));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDLRenderer3_CreateDeviceObjects(void)
|
||||
{
|
||||
::ImGui_ImplSDLRenderer3_CreateDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDLRenderer3_DestroyDeviceObjects(void)
|
||||
{
|
||||
::ImGui_ImplSDLRenderer3_DestroyDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplSDLRenderer3_UpdateTexture(cimgui::ImTextureData* tex)
|
||||
{
|
||||
::ImGui_ImplSDLRenderer3_UpdateTexture(reinterpret_cast<::ImTextureData*>(tex));
|
||||
}
|
||||
|
||||
#endif // #ifndef IMGUI_DISABLE
|
||||
@@ -0,0 +1,74 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
// dear imgui: Renderer Backend for SDL_Renderer for SDL3
|
||||
// Auto-generated forward declarations for C header
|
||||
typedef struct ImGui_ImplSDLRenderer3_RenderState_t ImGui_ImplSDLRenderer3_RenderState;
|
||||
// ImDrawIdx: vertex index. [Compile-time configurable type]
|
||||
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
|
||||
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
|
||||
#ifndef ImDrawIdx
|
||||
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
|
||||
#endif // #ifndef ImDrawIdx
|
||||
// (Requires: SDL 3.1.8+)
|
||||
|
||||
// Note that SDL_Renderer is an _optional_ component of SDL3, which IMHO is now largely obsolete.
|
||||
// For a multi-platform app consider using other technologies:
|
||||
// - SDL3+SDL_GPU: SDL_GPU is SDL3 new graphics abstraction API.
|
||||
// - SDL3+DirectX, SDL3+OpenGL, SDL3+Vulkan: combine SDL with dedicated renderers.
|
||||
// If your application wants to render any non trivial amount of graphics other than UI,
|
||||
// please be aware that SDL_Renderer currently offers a limited graphic API to the end-user
|
||||
// and it might be difficult to step out of those boundaries.
|
||||
|
||||
// Implemented features:
|
||||
// [X] Renderer: User texture binding. Use 'SDL_Texture*' as texture identifier. Read the FAQ about ImTextureID/ImTextureRef!
|
||||
// [X] Renderer: Large meshes support (64k+ vertices) even with 16-bit indices (ImGuiBackendFlags_RendererHasVtxOffset).
|
||||
// [X] Renderer: Texture updates support for dynamic font atlas (ImGuiBackendFlags_RendererHasTextures).
|
||||
// [X] Renderer: Expose selected render state for draw callbacks to use. Access in '(ImGui_ImplXXXX_RenderState*)GetPlatformIO().Renderer_RenderState'.
|
||||
// Missing features:
|
||||
// [ ] Renderer: Multi-viewport support (multiple windows).
|
||||
|
||||
// You can copy and use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
|
||||
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
|
||||
// Learn about Dear ImGui:
|
||||
// - FAQ https://dearimgui.com/faq
|
||||
// - Getting Started https://dearimgui.com/getting-started
|
||||
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
|
||||
// - Introduction, links and more at the top of imgui.cpp
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
#include "dcimgui.h"
|
||||
#ifndef IMGUI_DISABLE
|
||||
typedef struct SDL_Renderer SDL_Renderer;
|
||||
|
||||
typedef struct ImDrawData_t ImDrawData;
|
||||
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
|
||||
CIMGUI_IMPL_API bool cImGui_ImplSDLRenderer3_Init(SDL_Renderer* renderer);
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDLRenderer3_Shutdown(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDLRenderer3_NewFrame(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDLRenderer3_RenderDrawData(ImDrawData* draw_data, SDL_Renderer* renderer);
|
||||
|
||||
// Called by Init/NewFrame/Shutdown
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDLRenderer3_CreateDeviceObjects(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDLRenderer3_DestroyDeviceObjects(void);
|
||||
|
||||
// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually.
|
||||
CIMGUI_IMPL_API void cImGui_ImplSDLRenderer3_UpdateTexture(ImTextureData* tex);
|
||||
|
||||
// [BETA] Selected render state data shared with callbacks.
|
||||
// This is temporarily stored in GetPlatformIO().Renderer_RenderState during the ImGui_ImplSDLRenderer3_RenderDrawData() call.
|
||||
// (Please open an issue if you feel you need access to more data)
|
||||
struct ImGui_ImplSDLRenderer3_RenderState_t
|
||||
{
|
||||
SDL_Renderer* Renderer;
|
||||
};
|
||||
#endif// #ifndef IMGUI_DISABLE
|
||||
#ifdef __cplusplus
|
||||
} // End of extern "C" block
|
||||
#endif
|
||||
@@ -0,0 +1,346 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [
|
||||
{
|
||||
"name": "ImDrawIdx",
|
||||
"type": {
|
||||
"declaration": "unsigned short",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "unsigned_short"
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
|
||||
},
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "ifndef",
|
||||
"expression": "ImDrawIdx"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer3.h"
|
||||
}
|
||||
}
|
||||
],
|
||||
"structs": [
|
||||
{
|
||||
"name": "SDL_Renderer",
|
||||
"original_fully_qualified_name": "SDL_Renderer",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer3.h",
|
||||
"line": 32
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImDrawData",
|
||||
"original_fully_qualified_name": "ImDrawData",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer3.h",
|
||||
"line": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ImGui_ImplSDLRenderer3_RenderState",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLRenderer3_RenderState",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": false,
|
||||
"is_anonymous": false,
|
||||
"fields": [
|
||||
{
|
||||
"name": "Renderer",
|
||||
"is_array": false,
|
||||
"is_anonymous": false,
|
||||
"type": {
|
||||
"declaration": "SDL_Renderer*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Renderer"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer3.h",
|
||||
"line": 52
|
||||
}
|
||||
}
|
||||
],
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// [BETA] Selected render state data shared with callbacks.",
|
||||
"// This is temporarily stored in GetPlatformIO().Renderer_RenderState during the ImGui_ImplSDLRenderer3_RenderDrawData() call.",
|
||||
"// (Please open an issue if you feel you need access to more data)"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer3.h",
|
||||
"line": 50
|
||||
}
|
||||
}
|
||||
],
|
||||
"functions": [
|
||||
{
|
||||
"name": "cImGui_ImplSDLRenderer3_Init",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLRenderer3_Init",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "renderer",
|
||||
"type": {
|
||||
"declaration": "SDL_Renderer*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Renderer"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer3.h",
|
||||
"line": 35
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDLRenderer3_Shutdown",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLRenderer3_Shutdown",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer3.h",
|
||||
"line": 36
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDLRenderer3_NewFrame",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLRenderer3_NewFrame",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer3.h",
|
||||
"line": 37
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDLRenderer3_RenderDrawData",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLRenderer3_RenderDrawData",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "draw_data",
|
||||
"type": {
|
||||
"declaration": "ImDrawData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImDrawData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "renderer",
|
||||
"type": {
|
||||
"declaration": "SDL_Renderer*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "SDL_Renderer"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer3.h",
|
||||
"line": 38
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDLRenderer3_CreateDeviceObjects",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLRenderer3_CreateDeviceObjects",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Called by Init/NewFrame/Shutdown"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer3.h",
|
||||
"line": 41
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDLRenderer3_DestroyDeviceObjects",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLRenderer3_DestroyDeviceObjects",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer3.h",
|
||||
"line": 42
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplSDLRenderer3_UpdateTexture",
|
||||
"original_fully_qualified_name": "ImGui_ImplSDLRenderer3_UpdateTexture",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "tex",
|
||||
"type": {
|
||||
"declaration": "ImTextureData*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "User",
|
||||
"name": "ImTextureData"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually."
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_sdlrenderer3.h",
|
||||
"line": 45
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [],
|
||||
"structs": [],
|
||||
"functions": []
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,198 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
#include "imgui.h"
|
||||
#include "imgui_impl_vulkan.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
// Wrap this in a namespace to keep it separate from the C++ API
|
||||
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
|
||||
// and thus generating redefinition warnings
|
||||
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
namespace cimgui
|
||||
{
|
||||
#include "dcimgui_impl_vulkan.h"
|
||||
}
|
||||
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
|
||||
// By-value struct conversions
|
||||
|
||||
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
|
||||
{
|
||||
cimgui::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
|
||||
{
|
||||
::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
|
||||
{
|
||||
cimgui::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
|
||||
{
|
||||
::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
|
||||
{
|
||||
cimgui::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
|
||||
{
|
||||
::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
|
||||
{
|
||||
cimgui::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
|
||||
{
|
||||
::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
// Function stubs
|
||||
|
||||
#ifndef IMGUI_DISABLE
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplVulkan_Init(cimgui::ImGui_ImplVulkan_InitInfo* info)
|
||||
{
|
||||
return ::ImGui_ImplVulkan_Init(reinterpret_cast<::ImGui_ImplVulkan_InitInfo*>(info));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplVulkan_Shutdown(void)
|
||||
{
|
||||
::ImGui_ImplVulkan_Shutdown();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplVulkan_NewFrame(void)
|
||||
{
|
||||
::ImGui_ImplVulkan_NewFrame();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplVulkan_RenderDrawData(cimgui::ImDrawData* draw_data, VkCommandBuffer command_buffer)
|
||||
{
|
||||
::ImGui_ImplVulkan_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data), command_buffer);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplVulkan_RenderDrawDataEx(cimgui::ImDrawData* draw_data, VkCommandBuffer command_buffer, VkPipeline pipeline)
|
||||
{
|
||||
::ImGui_ImplVulkan_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data), command_buffer, pipeline);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplVulkan_SetMinImageCount(uint32_t min_image_count)
|
||||
{
|
||||
::ImGui_ImplVulkan_SetMinImageCount(min_image_count);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplVulkan_CreateMainPipeline(const cimgui::ImGui_ImplVulkan_PipelineInfo* info)
|
||||
{
|
||||
::ImGui_ImplVulkan_CreateMainPipeline(reinterpret_cast<const ::ImGui_ImplVulkan_PipelineInfo*>(info));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplVulkan_UpdateTexture(cimgui::ImTextureData* tex)
|
||||
{
|
||||
::ImGui_ImplVulkan_UpdateTexture(reinterpret_cast<::ImTextureData*>(tex));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API VkDescriptorSet cimgui::cImGui_ImplVulkan_AddTexture(VkSampler sampler, VkImageView image_view, VkImageLayout image_layout)
|
||||
{
|
||||
return ::ImGui_ImplVulkan_AddTexture(sampler, image_view, image_layout);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplVulkan_RemoveTexture(VkDescriptorSet descriptor_set)
|
||||
{
|
||||
::ImGui_ImplVulkan_RemoveTexture(descriptor_set);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplVulkan_LoadFunctions(uint32_t api_version, PFN_vkVoidFunction (*loader_func)(const char* function_name, void* user_data))
|
||||
{
|
||||
return ::ImGui_ImplVulkan_LoadFunctions(api_version, loader_func);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplVulkan_LoadFunctionsEx(uint32_t api_version, PFN_vkVoidFunction (*loader_func)(const char* function_name, void* user_data), void* user_data)
|
||||
{
|
||||
return ::ImGui_ImplVulkan_LoadFunctions(api_version, loader_func, user_data);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplVulkanH_CreateOrResizeWindow(VkInstance instance, VkPhysicalDevice physical_device, VkDevice device, cimgui::ImGui_ImplVulkanH_Window* wd, uint32_t queue_family, const VkAllocationCallbacks* allocator, int w, int h, uint32_t min_image_count, VkImageUsageFlags image_usage)
|
||||
{
|
||||
::ImGui_ImplVulkanH_CreateOrResizeWindow(instance, physical_device, device, reinterpret_cast<::ImGui_ImplVulkanH_Window*>(wd), queue_family, allocator, w, h, min_image_count, image_usage);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplVulkanH_DestroyWindow(VkInstance instance, VkDevice device, cimgui::ImGui_ImplVulkanH_Window* wd, const VkAllocationCallbacks* allocator)
|
||||
{
|
||||
::ImGui_ImplVulkanH_DestroyWindow(instance, device, reinterpret_cast<::ImGui_ImplVulkanH_Window*>(wd), allocator);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API VkSurfaceFormatKHR cimgui::cImGui_ImplVulkanH_SelectSurfaceFormat(VkPhysicalDevice physical_device, VkSurfaceKHR surface, const VkFormat* request_formats, int request_formats_count, VkColorSpaceKHR request_color_space)
|
||||
{
|
||||
return ::ImGui_ImplVulkanH_SelectSurfaceFormat(physical_device, surface, request_formats, request_formats_count, request_color_space);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API VkPresentModeKHR cimgui::cImGui_ImplVulkanH_SelectPresentMode(VkPhysicalDevice physical_device, VkSurfaceKHR surface, const VkPresentModeKHR* request_modes, int request_modes_count)
|
||||
{
|
||||
return ::ImGui_ImplVulkanH_SelectPresentMode(physical_device, surface, request_modes, request_modes_count);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API VkPhysicalDevice cimgui::cImGui_ImplVulkanH_SelectPhysicalDevice(VkInstance instance)
|
||||
{
|
||||
return ::ImGui_ImplVulkanH_SelectPhysicalDevice(instance);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API uint32_t cimgui::cImGui_ImplVulkanH_SelectQueueFamilyIndex(VkPhysicalDevice physical_device)
|
||||
{
|
||||
return ::ImGui_ImplVulkanH_SelectQueueFamilyIndex(physical_device);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API int cimgui::cImGui_ImplVulkanH_GetMinImageCountFromPresentMode(VkPresentModeKHR present_mode)
|
||||
{
|
||||
return ::ImGui_ImplVulkanH_GetMinImageCountFromPresentMode(present_mode);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API cimgui::ImGui_ImplVulkanH_Window* cimgui::cImGui_ImplVulkanH_GetWindowDataFromViewport(cimgui::ImGuiViewport* viewport)
|
||||
{
|
||||
return reinterpret_cast<::cimgui::ImGui_ImplVulkanH_Window*>(::ImGui_ImplVulkanH_GetWindowDataFromViewport(reinterpret_cast<::ImGuiViewport*>(viewport)));
|
||||
}
|
||||
|
||||
#endif // #ifndef IMGUI_DISABLE
|
||||
@@ -0,0 +1,291 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
// dear imgui: Renderer Backend for Vulkan
|
||||
// Auto-generated forward declarations for C header
|
||||
typedef struct ImVector_VkDynamicState_t ImVector_VkDynamicState;
|
||||
typedef struct ImGui_ImplVulkan_PipelineInfo_t ImGui_ImplVulkan_PipelineInfo;
|
||||
typedef struct ImGui_ImplVulkan_InitInfo_t ImGui_ImplVulkan_InitInfo;
|
||||
typedef struct ImGui_ImplVulkan_RenderState_t ImGui_ImplVulkan_RenderState;
|
||||
typedef struct ImVector_ImGui_ImplVulkanH_Frame_t ImVector_ImGui_ImplVulkanH_Frame;
|
||||
typedef struct ImGui_ImplVulkanH_FrameSemaphores_t ImGui_ImplVulkanH_FrameSemaphores;
|
||||
typedef struct ImVector_ImGui_ImplVulkanH_FrameSemaphores_t ImVector_ImGui_ImplVulkanH_FrameSemaphores;
|
||||
// ImDrawIdx: vertex index. [Compile-time configurable type]
|
||||
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
|
||||
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
|
||||
#ifndef ImDrawIdx
|
||||
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
|
||||
#endif // #ifndef ImDrawIdx
|
||||
// This needs to be used along with a Platform Backend (e.g. GLFW, SDL, Win32, custom..)
|
||||
|
||||
// Implemented features:
|
||||
// [!] Renderer: User texture binding. Use 'VkDescriptorSet' as texture identifier. Call ImGui_ImplVulkan_AddTexture() to register one. Read the FAQ about ImTextureID/ImTextureRef + https://github.com/ocornut/imgui/pull/914 for discussions.
|
||||
// [X] Renderer: Large meshes support (64k+ vertices) even with 16-bit indices (ImGuiBackendFlags_RendererHasVtxOffset).
|
||||
// [X] Renderer: Texture updates support for dynamic font atlas (ImGuiBackendFlags_RendererHasTextures).
|
||||
// [X] Renderer: Expose selected render state for draw callbacks to use. Access in '(ImGui_ImplXXXX_RenderState*)GetPlatformIO().Renderer_RenderState'.
|
||||
// [x] Renderer: Multi-viewport / platform windows. With issues (flickering when creating a new viewport).
|
||||
|
||||
// The aim of imgui_impl_vulkan.h/.cpp is to be usable in your engine without any modification.
|
||||
// IF YOU FEEL YOU NEED TO MAKE ANY CHANGE TO THIS CODE, please share them and your feedback at https://github.com/ocornut/imgui/
|
||||
|
||||
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
|
||||
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
|
||||
// Learn about Dear ImGui:
|
||||
// - FAQ https://dearimgui.com/faq
|
||||
// - Getting Started https://dearimgui.com/getting-started
|
||||
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
|
||||
// - Introduction, links and more at the top of imgui.cpp
|
||||
|
||||
// Important note to the reader who wish to integrate imgui_impl_vulkan.cpp/.h in their own engine/app.
|
||||
// - Common ImGui_ImplVulkan_XXX functions and structures are used to interface with imgui_impl_vulkan.cpp/.h.
|
||||
// You will use those if you want to use this rendering backend in your engine/app.
|
||||
// - Helper ImGui_ImplVulkanH_XXX functions and structures are only used by this example (main.cpp) and by
|
||||
// the backend itself (imgui_impl_vulkan.cpp), but should PROBABLY NOT be used by your own engine/app code.
|
||||
// Read comments in imgui_impl_vulkan.h.
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
#ifndef IMGUI_DISABLE
|
||||
#include "dcimgui.h"
|
||||
// [Configuration] in order to use a custom Vulkan function loader:
|
||||
// (1) You'll need to disable default Vulkan function prototypes.
|
||||
// We provide a '#define IMGUI_IMPL_VULKAN_NO_PROTOTYPES' convenience configuration flag.
|
||||
// In order to make sure this is visible from the imgui_impl_vulkan.cpp compilation unit:
|
||||
// - Add '#define IMGUI_IMPL_VULKAN_NO_PROTOTYPES' in your imconfig.h file
|
||||
// - Or as a compilation flag in your build system
|
||||
// - Or uncomment here (not recommended because you'd be modifying imgui sources!)
|
||||
// - Do not simply add it in a .cpp file!
|
||||
// (2) Call ImGui_ImplVulkan_LoadFunctions() before ImGui_ImplVulkan_Init() with your custom function.
|
||||
// If you have no idea what this is, leave it alone!
|
||||
//#define IMGUI_IMPL_VULKAN_NO_PROTOTYPES
|
||||
|
||||
// [Configuration] Convenience support for Volk
|
||||
// (you can also technically use IMGUI_IMPL_VULKAN_NO_PROTOTYPES + wrap Volk via ImGui_ImplVulkan_LoadFunctions().)
|
||||
// (When using Volk from directory outside your include directories list you can specify full path to the volk.h header,
|
||||
// for example when using Volk from VulkanSDK and using include_directories(${Vulkan_INCLUDE_DIRS})' from 'find_package(Vulkan REQUIRED)')
|
||||
//#define IMGUI_IMPL_VULKAN_USE_VOLK
|
||||
//#define IMGUI_IMPL_VULKAN_VOLK_FILENAME <Volk/volk.h>
|
||||
//#define IMGUI_IMPL_VULKAN_VOLK_FILENAME <volk.h> // Default
|
||||
// Reminder: make those changes in your imconfig.h file, not here!
|
||||
|
||||
// Clang/GCC warnings with -Weverything
|
||||
#if defined(__clang__)
|
||||
#pragma clang diagnostic push
|
||||
#pragma clang diagnostic ignored "-Wold-style-cast" // warning: use of old-style cast
|
||||
#endif // #if defined(__clang__)
|
||||
#if defined(IMGUI_IMPL_VULKAN_NO_PROTOTYPES)&&!defined(VK_NO_PROTOTYPES)
|
||||
#define VK_NO_PROTOTYPES
|
||||
#endif // #if defined(IMGUI_IMPL_VULKAN_NO_PROTOTYPES)&&!defined(VK_NO_PROTOTYPES)
|
||||
#if defined(VK_USE_PLATFORM_WIN32_KHR)&&!defined(NOMINMAX)
|
||||
#define NOMINMAX
|
||||
#endif // #if defined(VK_USE_PLATFORM_WIN32_KHR)&&!defined(NOMINMAX)
|
||||
// Vulkan includes
|
||||
#ifdef IMGUI_IMPL_VULKAN_USE_VOLK
|
||||
#ifdef IMGUI_IMPL_VULKAN_VOLK_FILENAME
|
||||
#include IMGUI_IMPL_VULKAN_VOLK_FILENAME
|
||||
#else
|
||||
#include <volk.h>
|
||||
#endif // #ifdef IMGUI_IMPL_VULKAN_VOLK_FILENAME
|
||||
#else
|
||||
#include <vulkan/vulkan.h>
|
||||
#endif // #ifdef IMGUI_IMPL_VULKAN_USE_VOLK
|
||||
struct ImVector_VkDynamicState_t { int Size; int Capacity; VkDynamicState* Data; }; // Instantiation of ImVector<VkDynamicState>
|
||||
#if defined(VK_VERSION_1_3)|| defined(VK_KHR_dynamic_rendering)
|
||||
#define IMGUI_IMPL_VULKAN_HAS_DYNAMIC_RENDERING
|
||||
#endif // #if defined(VK_VERSION_1_3)|| defined(VK_KHR_dynamic_rendering)
|
||||
// Backend uses a small number of descriptors per font atlas + as many as additional calls done to ImGui_ImplVulkan_AddTexture().
|
||||
#define IMGUI_IMPL_VULKAN_MINIMUM_IMAGE_SAMPLER_POOL_SIZE (8) // Minimum per atlas
|
||||
|
||||
// Specify settings to create pipeline and swapchain
|
||||
struct ImGui_ImplVulkan_PipelineInfo_t
|
||||
{
|
||||
// For Main viewport only
|
||||
VkRenderPass RenderPass; // Ignored if using dynamic rendering
|
||||
|
||||
// For Main and Secondary viewports
|
||||
uint32_t Subpass; //
|
||||
VkSampleCountFlagBits MSAASamples /* = {} */; // 0 defaults to VK_SAMPLE_COUNT_1_BIT
|
||||
ImVector_VkDynamicState ExtraDynamicStates; // Optional, allows to insert more dynamic states into our VkPipeline
|
||||
#ifdef IMGUI_IMPL_VULKAN_HAS_DYNAMIC_RENDERING
|
||||
VkPipelineRenderingCreateInfoKHR PipelineRenderingCreateInfo; // Optional, valid if .sType == VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR
|
||||
#endif // #ifdef IMGUI_IMPL_VULKAN_HAS_DYNAMIC_RENDERING
|
||||
// For Secondary viewports only (created/managed by backend)
|
||||
VkImageUsageFlags SwapChainImageUsage; // Extra flags for vkCreateSwapchainKHR() calls for secondary viewports. We automatically add VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT. You can add e.g. VK_IMAGE_USAGE_TRANSFER_SRC_BIT if you need to capture from viewports.
|
||||
};
|
||||
|
||||
// Initialization data, for ImGui_ImplVulkan_Init()
|
||||
// [Please zero-clear before use!]
|
||||
// - About descriptor pool:
|
||||
// - A VkDescriptorPool should be created with VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT,
|
||||
// and must contain a pool size large enough to hold a small number of VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER descriptors.
|
||||
// - As an convenience, by setting DescriptorPoolSize > 0 the backend will create one for you.
|
||||
// - About dynamic rendering:
|
||||
// - When using dynamic rendering, set UseDynamicRendering=true + fill PipelineInfoMain.PipelineRenderingCreateInfo structure.
|
||||
struct ImGui_ImplVulkan_InitInfo_t
|
||||
{
|
||||
uint32_t ApiVersion; // Fill with API version of Instance, e.g. VK_API_VERSION_1_3 or your value of VkApplicationInfo::apiVersion. May be lower than header version (VK_HEADER_VERSION_COMPLETE)
|
||||
VkInstance Instance;
|
||||
VkPhysicalDevice PhysicalDevice;
|
||||
VkDevice Device;
|
||||
uint32_t QueueFamily;
|
||||
VkQueue Queue;
|
||||
VkDescriptorPool DescriptorPool; // See requirements in note above; ignored if using DescriptorPoolSize > 0
|
||||
uint32_t DescriptorPoolSize; // Optional: set to create internal descriptor pool automatically instead of using DescriptorPool.
|
||||
uint32_t MinImageCount; // >= 2
|
||||
uint32_t ImageCount; // >= MinImageCount
|
||||
VkPipelineCache PipelineCache; // Optional
|
||||
|
||||
// Pipeline
|
||||
ImGui_ImplVulkan_PipelineInfo PipelineInfoMain; // Infos for Main Viewport (created by app/user)
|
||||
ImGui_ImplVulkan_PipelineInfo PipelineInfoForViewports; // Infos for Secondary Viewports (created by backend)
|
||||
//VkRenderPass RenderPass; // --> Since 2025/09/26: set 'PipelineInfoMain.RenderPass' instead
|
||||
//uint32_t Subpass; // --> Since 2025/09/26: set 'PipelineInfoMain.Subpass' instead
|
||||
//VkSampleCountFlagBits MSAASamples; // --> Since 2025/09/26: set 'PipelineInfoMain.MSAASamples' instead
|
||||
//VkPipelineRenderingCreateInfoKHR PipelineRenderingCreateInfo; // Since 2025/09/26: set 'PipelineInfoMain.PipelineRenderingCreateInfo' instead
|
||||
|
||||
// (Optional) Dynamic Rendering
|
||||
// Need to explicitly enable VK_KHR_dynamic_rendering extension to use this, even for Vulkan 1.3 + setup PipelineInfoMain.PipelineRenderingCreateInfo and PipelineInfoViewports.PipelineRenderingCreateInfo.
|
||||
bool UseDynamicRendering;
|
||||
|
||||
// (Optional) Allocation, Debugging
|
||||
const VkAllocationCallbacks* Allocator;
|
||||
void (*CheckVkResultFn)(VkResult err);
|
||||
VkDeviceSize MinAllocationSize; // Minimum allocation size. Set to 1024*1024 to satisfy zealous best practices validation layer and waste a little memory.
|
||||
|
||||
// (Optional) Customize default vertex/fragment shaders.
|
||||
// - if .sType == VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO we use specified structs, otherwise we use defaults.
|
||||
// - Shader inputs/outputs need to match ours. Code/data pointed to by the structure needs to survive for whole during of backend usage.
|
||||
VkShaderModuleCreateInfo CustomShaderVertCreateInfo;
|
||||
VkShaderModuleCreateInfo CustomShaderFragCreateInfo;
|
||||
};
|
||||
|
||||
typedef struct ImDrawData_t ImDrawData;
|
||||
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
|
||||
CIMGUI_IMPL_API bool cImGui_ImplVulkan_Init(ImGui_ImplVulkan_InitInfo* info);
|
||||
CIMGUI_IMPL_API void cImGui_ImplVulkan_Shutdown(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplVulkan_NewFrame(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplVulkan_RenderDrawData(ImDrawData* draw_data, VkCommandBuffer command_buffer); // Implied pipeline = VK_NULL_HANDLE
|
||||
CIMGUI_IMPL_API void cImGui_ImplVulkan_RenderDrawDataEx(ImDrawData* draw_data, VkCommandBuffer command_buffer, VkPipeline pipeline /* = VK_NULL_HANDLE */);
|
||||
CIMGUI_IMPL_API void cImGui_ImplVulkan_SetMinImageCount(uint32_t min_image_count); // To override MinImageCount after initialization (e.g. if swap chain is recreated)
|
||||
|
||||
// (Advanced) Use e.g. if you need to recreate pipeline without reinitializing the backend (see #8110, #8111)
|
||||
// The main window pipeline will be created by ImGui_ImplVulkan_Init() if possible (== RenderPass xor (UseDynamicRendering && PipelineRenderingCreateInfo->sType == VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR))
|
||||
// Else, the pipeline can be created, or re-created, using ImGui_ImplVulkan_CreateMainPipeline() before rendering.
|
||||
CIMGUI_IMPL_API void cImGui_ImplVulkan_CreateMainPipeline(const ImGui_ImplVulkan_PipelineInfo* info);
|
||||
|
||||
// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually.
|
||||
CIMGUI_IMPL_API void cImGui_ImplVulkan_UpdateTexture(ImTextureData* tex);
|
||||
|
||||
// Register a texture (VkDescriptorSet == ImTextureID)
|
||||
// FIXME: This is experimental in the sense that we are unsure how to best design/tackle this problem
|
||||
// Please post to https://github.com/ocornut/imgui/pull/914 if you have suggestions.
|
||||
CIMGUI_IMPL_API VkDescriptorSet cImGui_ImplVulkan_AddTexture(VkSampler sampler, VkImageView image_view, VkImageLayout image_layout);
|
||||
CIMGUI_IMPL_API void cImGui_ImplVulkan_RemoveTexture(VkDescriptorSet descriptor_set);
|
||||
|
||||
// Optional: load Vulkan functions with a custom function loader
|
||||
// This is only useful with IMGUI_IMPL_VULKAN_NO_PROTOTYPES / VK_NO_PROTOTYPES
|
||||
CIMGUI_IMPL_API bool cImGui_ImplVulkan_LoadFunctions(uint32_t api_version, PFN_vkVoidFunction (*loader_func)(const char* function_name, void* user_data)); // Implied user_data = nullptr
|
||||
CIMGUI_IMPL_API bool cImGui_ImplVulkan_LoadFunctionsEx(uint32_t api_version, PFN_vkVoidFunction (*loader_func)(const char* function_name, void* user_data), void* user_data /* = nullptr */);
|
||||
|
||||
// [BETA] Selected render state data shared with callbacks.
|
||||
// This is temporarily stored in GetPlatformIO().Renderer_RenderState during the ImGui_ImplVulkan_RenderDrawData() call.
|
||||
// (Please open an issue if you feel you need access to more data)
|
||||
struct ImGui_ImplVulkan_RenderState_t
|
||||
{
|
||||
VkCommandBuffer CommandBuffer;
|
||||
VkPipeline Pipeline;
|
||||
VkPipelineLayout PipelineLayout;
|
||||
};
|
||||
|
||||
//-------------------------------------------------------------------------
|
||||
// Internal / Miscellaneous Vulkan Helpers
|
||||
//-------------------------------------------------------------------------
|
||||
// Used by example's main.cpp. Used by multi-viewport features. PROBABLY NOT used by your own engine/app.
|
||||
//
|
||||
// You probably do NOT need to use or care about those functions.
|
||||
// WE DO NOT PROVIDE STRONG GUARANTEES OF BACKWARD/FORWARD COMPATIBILITY.
|
||||
// Those functions only exist because:
|
||||
// 1) they facilitate the readability and maintenance of the multiple main.cpp examples files.
|
||||
// 2) the multi-viewport / platform window implementation needs them internally.
|
||||
// Generally we avoid exposing any kind of superfluous high-level helpers in the backends,
|
||||
// but it is too much code to duplicate everywhere so we exceptionally expose them.
|
||||
//
|
||||
// Your engine/app will likely _already_ have code to setup all that stuff (swap chain,
|
||||
// render pass, frame buffers, etc.). You may read this code if you are curious, but
|
||||
// it is recommended you use your own custom tailored code to do equivalent work.
|
||||
//
|
||||
// The ImGui_ImplVulkanH_XXX functions should NOT interact with any of the state used
|
||||
// by the regular ImGui_ImplVulkan_XXX functions.
|
||||
//-------------------------------------------------------------------------
|
||||
|
||||
typedef struct ImGui_ImplVulkanH_Frame_t ImGui_ImplVulkanH_Frame;
|
||||
typedef struct ImGui_ImplVulkanH_Window_t ImGui_ImplVulkanH_Window;
|
||||
|
||||
// Helpers
|
||||
CIMGUI_IMPL_API void cImGui_ImplVulkanH_CreateOrResizeWindow(VkInstance instance, VkPhysicalDevice physical_device, VkDevice device, ImGui_ImplVulkanH_Window* wd, uint32_t queue_family, const VkAllocationCallbacks* allocator, int w, int h, uint32_t min_image_count, VkImageUsageFlags image_usage);
|
||||
CIMGUI_IMPL_API void cImGui_ImplVulkanH_DestroyWindow(VkInstance instance, VkDevice device, ImGui_ImplVulkanH_Window* wd, const VkAllocationCallbacks* allocator);
|
||||
CIMGUI_IMPL_API VkSurfaceFormatKHR cImGui_ImplVulkanH_SelectSurfaceFormat(VkPhysicalDevice physical_device, VkSurfaceKHR surface, const VkFormat* request_formats, int request_formats_count, VkColorSpaceKHR request_color_space);
|
||||
CIMGUI_IMPL_API VkPresentModeKHR cImGui_ImplVulkanH_SelectPresentMode(VkPhysicalDevice physical_device, VkSurfaceKHR surface, const VkPresentModeKHR* request_modes, int request_modes_count);
|
||||
CIMGUI_IMPL_API VkPhysicalDevice cImGui_ImplVulkanH_SelectPhysicalDevice(VkInstance instance);
|
||||
CIMGUI_IMPL_API uint32_t cImGui_ImplVulkanH_SelectQueueFamilyIndex(VkPhysicalDevice physical_device);
|
||||
CIMGUI_IMPL_API int cImGui_ImplVulkanH_GetMinImageCountFromPresentMode(VkPresentModeKHR present_mode);
|
||||
CIMGUI_IMPL_API ImGui_ImplVulkanH_Window* cImGui_ImplVulkanH_GetWindowDataFromViewport(ImGuiViewport* viewport); // Access to Vulkan objects associated with a viewport (e.g to export a screenshot)
|
||||
|
||||
// Helper structure to hold the data needed by one rendering frame
|
||||
// (Used by example's main.cpp. Used by multi-viewport features. Probably NOT used by your own engine/app.)
|
||||
// [Please zero-clear before use!]
|
||||
struct ImGui_ImplVulkanH_Frame_t
|
||||
{
|
||||
VkCommandPool CommandPool;
|
||||
VkCommandBuffer CommandBuffer;
|
||||
VkFence Fence;
|
||||
VkImage Backbuffer;
|
||||
VkImageView BackbufferView;
|
||||
VkFramebuffer Framebuffer;
|
||||
};
|
||||
struct ImVector_ImGui_ImplVulkanH_Frame_t { int Size; int Capacity; ImGui_ImplVulkanH_Frame* Data; }; // Instantiation of ImVector<ImGui_ImplVulkanH_Frame>
|
||||
|
||||
struct ImGui_ImplVulkanH_FrameSemaphores_t
|
||||
{
|
||||
VkSemaphore ImageAcquiredSemaphore;
|
||||
VkSemaphore RenderCompleteSemaphore;
|
||||
};
|
||||
struct ImVector_ImGui_ImplVulkanH_FrameSemaphores_t { int Size; int Capacity; ImGui_ImplVulkanH_FrameSemaphores* Data; }; // Instantiation of ImVector<ImGui_ImplVulkanH_FrameSemaphores>
|
||||
|
||||
// Helper structure to hold the data needed by one rendering context into one OS window
|
||||
// (Used by example's main.cpp. Used by multi-viewport features. Probably NOT used by your own engine/app.)
|
||||
struct ImGui_ImplVulkanH_Window_t
|
||||
{
|
||||
// Input
|
||||
bool UseDynamicRendering;
|
||||
VkSurfaceKHR Surface; // Surface created and destroyed by caller.
|
||||
VkSurfaceFormatKHR SurfaceFormat;
|
||||
VkPresentModeKHR PresentMode;
|
||||
VkAttachmentDescription AttachmentDesc; // RenderPass creation: main attachment description.
|
||||
VkClearValue ClearValue; // RenderPass creation: clear value when using VK_ATTACHMENT_LOAD_OP_CLEAR.
|
||||
|
||||
// Internal
|
||||
int Width; // Generally same as passed to ImGui_ImplVulkanH_CreateOrResizeWindow()
|
||||
int Height;
|
||||
VkSwapchainKHR Swapchain;
|
||||
VkRenderPass RenderPass;
|
||||
uint32_t FrameIndex; // Current frame being rendered to (0 <= FrameIndex < FrameInFlightCount)
|
||||
uint32_t ImageCount; // Number of simultaneous in-flight frames (returned by vkGetSwapchainImagesKHR, usually derived from min_image_count)
|
||||
uint32_t SemaphoreCount; // Number of simultaneous in-flight frames + 1, to be able to use it in vkAcquireNextImageKHR
|
||||
uint32_t SemaphoreIndex; // Current set of swapchain wait semaphores we're using (needs to be distinct from per frame data)
|
||||
ImVector_ImGui_ImplVulkanH_Frame Frames;
|
||||
ImVector_ImGui_ImplVulkanH_FrameSemaphores FrameSemaphores;
|
||||
};
|
||||
|
||||
#if defined(__clang__)
|
||||
#pragma clang diagnostic pop
|
||||
#endif // #if defined(__clang__)
|
||||
#endif// #ifndef IMGUI_DISABLE
|
||||
#ifdef __cplusplus
|
||||
} // End of extern "C" block
|
||||
#endif
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [],
|
||||
"structs": [],
|
||||
"functions": []
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,191 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
#include "imgui.h"
|
||||
#include "imgui_impl_wgpu.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
// Wrap this in a namespace to keep it separate from the C++ API
|
||||
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
|
||||
// and thus generating redefinition warnings
|
||||
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
namespace cimgui
|
||||
{
|
||||
#include "dcimgui_impl_wgpu.h"
|
||||
}
|
||||
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
|
||||
// By-value struct conversions
|
||||
|
||||
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
|
||||
{
|
||||
cimgui::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
|
||||
{
|
||||
::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
|
||||
{
|
||||
cimgui::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
|
||||
{
|
||||
::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
|
||||
{
|
||||
cimgui::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
|
||||
{
|
||||
::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
|
||||
{
|
||||
cimgui::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
|
||||
{
|
||||
::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
// Function stubs
|
||||
|
||||
#ifndef IMGUI_DISABLE
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplWGPU_Init(cimgui::ImGui_ImplWGPU_InitInfo* init_info)
|
||||
{
|
||||
return ::ImGui_ImplWGPU_Init(reinterpret_cast<::ImGui_ImplWGPU_InitInfo*>(init_info));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplWGPU_Shutdown(void)
|
||||
{
|
||||
::ImGui_ImplWGPU_Shutdown();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplWGPU_NewFrame(void)
|
||||
{
|
||||
::ImGui_ImplWGPU_NewFrame();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplWGPU_RenderDrawData(cimgui::ImDrawData* draw_data, WGPURenderPassEncoder pass_encoder)
|
||||
{
|
||||
::ImGui_ImplWGPU_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data), pass_encoder);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplWGPU_CreateDeviceObjects(void)
|
||||
{
|
||||
return ::ImGui_ImplWGPU_CreateDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplWGPU_InvalidateDeviceObjects(void)
|
||||
{
|
||||
::ImGui_ImplWGPU_InvalidateDeviceObjects();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplWGPU_UpdateTexture(cimgui::ImTextureData* tex)
|
||||
{
|
||||
::ImGui_ImplWGPU_UpdateTexture(reinterpret_cast<::ImTextureData*>(tex));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplWGPU_IsSurfaceStatusError(WGPUSurfaceGetCurrentTextureStatus status)
|
||||
{
|
||||
return ::ImGui_ImplWGPU_IsSurfaceStatusError(status);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplWGPU_IsSurfaceStatusSubOptimal(WGPUSurfaceGetCurrentTextureStatus status)
|
||||
{
|
||||
return ::ImGui_ImplWGPU_IsSurfaceStatusSubOptimal(status);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplWGPU_DebugPrintAdapterInfo(WGPUAdapter adapter)
|
||||
{
|
||||
::ImGui_ImplWGPU_DebugPrintAdapterInfo(reinterpret_cast<const ::WGPUAdapter&>(adapter));
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API const char* cimgui::cImGui_ImplWGPU_GetBackendTypeName(WGPUBackendType type)
|
||||
{
|
||||
return ::ImGui_ImplWGPU_GetBackendTypeName(type);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API const char* cimgui::cImGui_ImplWGPU_GetAdapterTypeName(WGPUAdapterType type)
|
||||
{
|
||||
return ::ImGui_ImplWGPU_GetAdapterTypeName(type);
|
||||
}
|
||||
|
||||
#if defined(IMGUI_IMPL_WEBGPU_BACKEND_DAWN)
|
||||
|
||||
CIMGUI_IMPL_API const char* cimgui::cImGui_ImplWGPU_GetDeviceLostReasonName(WGPUDeviceLostReason type)
|
||||
{
|
||||
return ::ImGui_ImplWGPU_GetDeviceLostReasonName(type);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API const char* cimgui::cImGui_ImplWGPU_GetErrorTypeName(WGPUErrorType type)
|
||||
{
|
||||
return ::ImGui_ImplWGPU_GetErrorTypeName(type);
|
||||
}
|
||||
|
||||
#endif // #if defined(IMGUI_IMPL_WEBGPU_BACKEND_DAWN)
|
||||
|
||||
#if !(defined(IMGUI_IMPL_WEBGPU_BACKEND_DAWN))
|
||||
#if defined(IMGUI_IMPL_WEBGPU_BACKEND_WGPU)
|
||||
|
||||
// CIMGUI_IMPL_API const char* cimgui::cImGui_ImplWGPU_GetLogLevelName(WGPULogLevel level)
|
||||
// {
|
||||
// return ::ImGui_ImplWGPU_GetLogLevelName(level);
|
||||
// }
|
||||
|
||||
#endif // #if defined(IMGUI_IMPL_WEBGPU_BACKEND_WGPU)
|
||||
#endif // #if !(defined(IMGUI_IMPL_WEBGPU_BACKEND_DAWN))
|
||||
|
||||
#ifndef __EMSCRIPTEN__
|
||||
|
||||
CIMGUI_IMPL_API WGPUSurface cimgui::cImGui_ImplWGPU_CreateWGPUSurfaceHelper(cimgui::ImGui_ImplWGPU_CreateSurfaceInfo* info)
|
||||
{
|
||||
return ::ImGui_ImplWGPU_CreateWGPUSurfaceHelper(reinterpret_cast<::ImGui_ImplWGPU_CreateSurfaceInfo*>(info));
|
||||
}
|
||||
|
||||
#endif // #ifndef __EMSCRIPTEN__
|
||||
#endif // #ifndef IMGUI_DISABLE
|
||||
@@ -0,0 +1,134 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
// dear imgui: Renderer for WebGPU
|
||||
// Auto-generated forward declarations for C header
|
||||
typedef struct ImGui_ImplWGPU_InitInfo_t ImGui_ImplWGPU_InitInfo;
|
||||
typedef struct ImGui_ImplWGPU_RenderState_t ImGui_ImplWGPU_RenderState;
|
||||
typedef struct ImGui_ImplWGPU_CreateSurfaceInfo_t ImGui_ImplWGPU_CreateSurfaceInfo;
|
||||
// ImDrawIdx: vertex index. [Compile-time configurable type]
|
||||
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
|
||||
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
|
||||
#ifndef ImDrawIdx
|
||||
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
|
||||
#endif // #ifndef ImDrawIdx
|
||||
// This needs to be used along with a Platform Binding (e.g. GLFW, SDL2, SDL3)
|
||||
// (Please note that WebGPU is a recent API, may not be supported by all browser, and its ecosystem is generally a mess)
|
||||
|
||||
// When targeting native platforms:
|
||||
// - One of IMGUI_IMPL_WEBGPU_BACKEND_DAWN, IMGUI_IMPL_WEBGPU_BACKEND_WGPU or IMGUI_IMPL_WEBGPU_BACKEND_WGVK *must* be provided.
|
||||
// When targeting Emscripten:
|
||||
// - We now defaults to IMGUI_IMPL_WEBGPU_BACKEND_DAWN and requires Emscripten 4.0.10+, which correspond to using Emscripten '--use-port=emdawnwebgpu'.
|
||||
// - Emscripten < 4.0.10 is not supported anymore (old '-sUSE_WEBGPU=1' option).
|
||||
// - We can still define IMGUI_IMPL_WEBGPU_BACKEND_WGPU to use Emscripten '-s USE_WEBGPU=1' which is marked as obsolete by Emscripten.
|
||||
// Add #define to your imconfig.h file, or as a compilation flag in your build system.
|
||||
// This requirement may be removed once WebGPU stabilizes and backends converge on a unified interface.
|
||||
//#define IMGUI_IMPL_WEBGPU_BACKEND_DAWN
|
||||
//#define IMGUI_IMPL_WEBGPU_BACKEND_WGPU
|
||||
//#define IMGUI_IMPL_WEBGPU_BACKEND_WGVK
|
||||
|
||||
// Implemented features:
|
||||
// [X] Renderer: User texture binding. Use 'WGPUTextureView' as ImTextureID. Read the FAQ about ImTextureID/ImTextureRef!
|
||||
// [X] Renderer: Large meshes support (64k+ vertices) even with 16-bit indices (ImGuiBackendFlags_RendererHasVtxOffset).
|
||||
// [X] Renderer: Expose selected render state for draw callbacks to use. Access in '(ImGui_ImplXXXX_RenderState*)GetPlatformIO().Renderer_RenderState'.
|
||||
// [X] Renderer: Texture updates support for dynamic font system (ImGuiBackendFlags_RendererHasTextures).
|
||||
// Missing features or Issues:
|
||||
// [ ] Renderer: Multi-viewport support (multiple windows), useful for desktop.
|
||||
|
||||
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
|
||||
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
|
||||
// Learn about Dear ImGui:
|
||||
// - FAQ https://dearimgui.com/faq
|
||||
// - Getting Started https://dearimgui.com/getting-started
|
||||
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
|
||||
// - Introduction, links and more at the top of imgui.cpp
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
#include "dcimgui.h"
|
||||
#ifndef IMGUI_DISABLE
|
||||
// Setup Emscripten default if not specified.
|
||||
#if defined(__EMSCRIPTEN__)&&!defined(IMGUI_IMPL_WEBGPU_BACKEND_DAWN)&&!defined(IMGUI_IMPL_WEBGPU_BACKEND_WGPU)
|
||||
#include <emscripten/version.h>
|
||||
#define IMGUI_IMPL_WEBGPU_BACKEND_DAWN
|
||||
#endif // #if defined(__EMSCRIPTEN__)&&!defined(IMGUI_IMPL_WEBGPU_BACKEND_DAWN)&&!defined(IMGUI_IMPL_WEBGPU_BACKEND_WGPU)
|
||||
#include <webgpu/webgpu.h>
|
||||
#if defined(IMGUI_IMPL_WEBGPU_BACKEND_WGPU)&&!defined(__EMSCRIPTEN__)
|
||||
#include <webgpu/wgpu.h>
|
||||
#endif // #if defined(IMGUI_IMPL_WEBGPU_BACKEND_WGPU)&&!defined(__EMSCRIPTEN__)
|
||||
typedef struct ImGui_ImplWGPU_InitInfo_ImDrawData_t ImGui_ImplWGPU_InitInfo_ImDrawData;
|
||||
// Initialization data, for ImGui_ImplWGPU_Init()
|
||||
struct ImGui_ImplWGPU_InitInfo_t
|
||||
{
|
||||
WGPUDevice Device /* = nullptr */;
|
||||
int NumFramesInFlight /* = 3 */;
|
||||
WGPUTextureFormat RenderTargetFormat /* = WGPUTextureFormat_Undefined */;
|
||||
WGPUTextureFormat DepthStencilFormat /* = WGPUTextureFormat_Undefined */;
|
||||
WGPUMultisampleState PipelineMultisampleState /* = {} */;
|
||||
};
|
||||
|
||||
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
|
||||
CIMGUI_IMPL_API bool cImGui_ImplWGPU_Init(ImGui_ImplWGPU_InitInfo* init_info);
|
||||
CIMGUI_IMPL_API void cImGui_ImplWGPU_Shutdown(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplWGPU_NewFrame(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplWGPU_RenderDrawData(ImDrawData* draw_data, WGPURenderPassEncoder pass_encoder);
|
||||
|
||||
// Use if you want to reset your rendering device without losing Dear ImGui state.
|
||||
CIMGUI_IMPL_API bool cImGui_ImplWGPU_CreateDeviceObjects(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplWGPU_InvalidateDeviceObjects(void);
|
||||
|
||||
// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually.
|
||||
CIMGUI_IMPL_API void cImGui_ImplWGPU_UpdateTexture(ImTextureData* tex);
|
||||
|
||||
// [BETA] Selected render state data shared with callbacks.
|
||||
// This is temporarily stored in GetPlatformIO().Renderer_RenderState during the ImGui_ImplWGPU_RenderDrawData() call.
|
||||
// (Please open an issue if you feel you need access to more data)
|
||||
struct ImGui_ImplWGPU_RenderState_t
|
||||
{
|
||||
WGPUDevice Device;
|
||||
WGPURenderPassEncoder RenderPassEncoder;
|
||||
};
|
||||
|
||||
//-------------------------------------------------------------------------
|
||||
// Internal Helpers
|
||||
// Those are currently used by our example applications.
|
||||
//-------------------------------------------------------------------------
|
||||
|
||||
// (Optional) Helper to wrap some of the Dawn/WGPU/Emscripten quirks
|
||||
CIMGUI_IMPL_API bool cImGui_ImplWGPU_IsSurfaceStatusError(WGPUSurfaceGetCurrentTextureStatus status);
|
||||
CIMGUI_IMPL_API bool cImGui_ImplWGPU_IsSurfaceStatusSubOptimal(WGPUSurfaceGetCurrentTextureStatus status); // Return whether the texture is suboptimal and may need to be recreated.
|
||||
|
||||
// (Optional) Helper for debugging/logging
|
||||
CIMGUI_IMPL_API void cImGui_ImplWGPU_DebugPrintAdapterInfo(WGPUAdapter adapter);
|
||||
CIMGUI_IMPL_API const char* cImGui_ImplWGPU_GetBackendTypeName(WGPUBackendType type);
|
||||
CIMGUI_IMPL_API const char* cImGui_ImplWGPU_GetAdapterTypeName(WGPUAdapterType type);
|
||||
#if defined(IMGUI_IMPL_WEBGPU_BACKEND_DAWN)
|
||||
CIMGUI_IMPL_API const char* cImGui_ImplWGPU_GetDeviceLostReasonName(WGPUDeviceLostReason type);
|
||||
CIMGUI_IMPL_API const char* cImGui_ImplWGPU_GetErrorTypeName(WGPUErrorType type);
|
||||
#else
|
||||
#if defined(IMGUI_IMPL_WEBGPU_BACKEND_WGPU)
|
||||
CIMGUI_IMPL_API const char* cImGui_ImplWGPU_GetLogLevelName(WGPULogLevel level);
|
||||
#endif // #if defined(IMGUI_IMPL_WEBGPU_BACKEND_WGPU)
|
||||
#endif // #if defined(IMGUI_IMPL_WEBGPU_BACKEND_DAWN)
|
||||
// (Optional) Helper to create a surface on macOS/Wayland/X11/Window
|
||||
#ifndef __EMSCRIPTEN__
|
||||
struct ImGui_ImplWGPU_CreateSurfaceInfo_t
|
||||
{
|
||||
WGPUInstance Instance;
|
||||
const char* System; // "cocoa" | "wayland" | "x11" | "win32"
|
||||
void* RawWindow; // NSWindow* | 0 | Window | HWND
|
||||
void* RawDisplay; // 0 | wl_display* | Display* | 0
|
||||
void* RawSurface; // | wl_surface* | 0 | 0
|
||||
void* RawInstance; // 0 | 0 | 0 | HINSTANCE
|
||||
};
|
||||
CIMGUI_IMPL_API WGPUSurface cImGui_ImplWGPU_CreateWGPUSurfaceHelper(ImGui_ImplWGPU_CreateSurfaceInfo* info);
|
||||
#endif// #ifndef __EMSCRIPTEN__
|
||||
#endif// #ifndef IMGUI_DISABLE
|
||||
#ifdef __cplusplus
|
||||
} // End of extern "C" block
|
||||
#endif
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [],
|
||||
"structs": [],
|
||||
"functions": []
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,158 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
#include "imgui.h"
|
||||
#include "imgui_impl_win32.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#ifndef WIN32_LEAN_AND_MEAN
|
||||
#define WIN32_LEAN_AND_MEAN
|
||||
#endif
|
||||
#include <windows.h>
|
||||
|
||||
// This define indicates that we have windows.h included
|
||||
#define IMGUI_BACKEND_HAS_WINDOWS_H
|
||||
|
||||
// We need to manually declare this
|
||||
extern IMGUI_IMPL_API LRESULT ImGui_ImplWin32_WndProcHandler(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
|
||||
|
||||
// Wrap this in a namespace to keep it separate from the C++ API
|
||||
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
|
||||
// and thus generating redefinition warnings
|
||||
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
namespace cimgui
|
||||
{
|
||||
#include "dcimgui_impl_win32.h"
|
||||
}
|
||||
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
|
||||
|
||||
// By-value struct conversions
|
||||
|
||||
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
|
||||
{
|
||||
cimgui::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
|
||||
{
|
||||
::ImVec2 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
|
||||
{
|
||||
cimgui::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
|
||||
{
|
||||
::ImVec4 dest;
|
||||
dest.x = src.x;
|
||||
dest.y = src.y;
|
||||
dest.z = src.z;
|
||||
dest.w = src.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
|
||||
{
|
||||
cimgui::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
|
||||
{
|
||||
::ImTextureRef dest;
|
||||
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
|
||||
dest._TexID = src._TexID;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
|
||||
{
|
||||
cimgui::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
|
||||
{
|
||||
::ImColor dest;
|
||||
dest.Value.x = src.Value.x;
|
||||
dest.Value.y = src.Value.y;
|
||||
dest.Value.z = src.Value.z;
|
||||
dest.Value.w = src.Value.w;
|
||||
return dest;
|
||||
}
|
||||
|
||||
// Function stubs
|
||||
|
||||
#ifndef IMGUI_DISABLE
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplWin32_Init(void* hwnd)
|
||||
{
|
||||
return ::ImGui_ImplWin32_Init(hwnd);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API bool cimgui::cImGui_ImplWin32_InitForOpenGL(void* hwnd)
|
||||
{
|
||||
return ::ImGui_ImplWin32_InitForOpenGL(hwnd);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplWin32_Shutdown(void)
|
||||
{
|
||||
::ImGui_ImplWin32_Shutdown();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplWin32_NewFrame(void)
|
||||
{
|
||||
::ImGui_ImplWin32_NewFrame();
|
||||
}
|
||||
|
||||
#ifdef IMGUI_BACKEND_HAS_WINDOWS_H
|
||||
|
||||
CIMGUI_IMPL_API LRESULT cimgui::cImGui_ImplWin32_WndProcHandler(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
return ::ImGui_ImplWin32_WndProcHandler(hWnd, msg, wParam, lParam);
|
||||
}
|
||||
|
||||
#endif // #ifdef IMGUI_BACKEND_HAS_WINDOWS_H
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplWin32_EnableDpiAwareness(void)
|
||||
{
|
||||
::ImGui_ImplWin32_EnableDpiAwareness();
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API float cimgui::cImGui_ImplWin32_GetDpiScaleForHwnd(void* hwnd)
|
||||
{
|
||||
return ::ImGui_ImplWin32_GetDpiScaleForHwnd(hwnd);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API float cimgui::cImGui_ImplWin32_GetDpiScaleForMonitor(void* monitor)
|
||||
{
|
||||
return ::ImGui_ImplWin32_GetDpiScaleForMonitor(monitor);
|
||||
}
|
||||
|
||||
CIMGUI_IMPL_API void cimgui::cImGui_ImplWin32_EnableAlphaCompositing(void* hwnd)
|
||||
{
|
||||
::ImGui_ImplWin32_EnableAlphaCompositing(hwnd);
|
||||
}
|
||||
|
||||
#endif // #ifndef IMGUI_DISABLE
|
||||
@@ -0,0 +1,71 @@
|
||||
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
|
||||
// **DO NOT EDIT DIRECTLY**
|
||||
// https://github.com/dearimgui/dear_bindings
|
||||
|
||||
// dear imgui: Platform Backend for Windows (standard windows API for 32-bits AND 64-bits applications)
|
||||
// ImDrawIdx: vertex index. [Compile-time configurable type]
|
||||
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
|
||||
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
|
||||
#ifndef ImDrawIdx
|
||||
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
|
||||
#endif // #ifndef ImDrawIdx
|
||||
// This needs to be used along with a Renderer (e.g. DirectX11, OpenGL3, Vulkan..)
|
||||
|
||||
// Implemented features:
|
||||
// [X] Platform: Clipboard support (for Win32 this is actually part of core dear imgui)
|
||||
// [X] Platform: Mouse support. Can discriminate Mouse/TouchScreen/Pen.
|
||||
// [X] Platform: Keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy VK_* values are obsolete since 1.87 and not supported since 1.91.5]
|
||||
// [X] Platform: Gamepad support.
|
||||
// [X] Platform: Mouse cursor shape and visibility (ImGuiBackendFlags_HasMouseCursors). Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange'.
|
||||
// [X] Platform: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'.
|
||||
|
||||
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
|
||||
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
|
||||
// Learn about Dear ImGui:
|
||||
// - FAQ https://dearimgui.com/faq
|
||||
// - Getting Started https://dearimgui.com/getting-started
|
||||
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
|
||||
// - Introduction, links and more at the top of imgui.cpp
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
#include "dcimgui.h"
|
||||
#ifndef IMGUI_DISABLE
|
||||
typedef struct ImDrawData_t ImDrawData;
|
||||
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
|
||||
CIMGUI_IMPL_API bool cImGui_ImplWin32_Init(void* hwnd);
|
||||
CIMGUI_IMPL_API bool cImGui_ImplWin32_InitForOpenGL(void* hwnd);
|
||||
CIMGUI_IMPL_API void cImGui_ImplWin32_Shutdown(void);
|
||||
CIMGUI_IMPL_API void cImGui_ImplWin32_NewFrame(void);
|
||||
|
||||
// Win32 message handler your application needs to call.
|
||||
// - Intentionally commented out in a '#if 0' block to avoid dragging dependencies on <windows.h> from this helper.
|
||||
// - You should COPY the line below into your .cpp code to forward declare the function and then you can call it.
|
||||
// - Call from your application's message handler. Keep calling your message handler unless this function returns TRUE.
|
||||
|
||||
#ifdef IMGUI_BACKEND_HAS_WINDOWS_H
|
||||
extern
|
||||
CIMGUI_IMPL_API LRESULT cImGui_ImplWin32_WndProcHandler(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
|
||||
#endif // #ifdef IMGUI_BACKEND_HAS_WINDOWS_H
|
||||
// DPI-related helpers (optional)
|
||||
// - Use to enable DPI awareness without having to create an application manifest.
|
||||
// - Your own app may already do this via a manifest or explicit calls. This is mostly useful for our examples/ apps.
|
||||
// - In theory we could call simple functions from Windows SDK such as SetProcessDPIAware(), SetProcessDpiAwareness(), etc.
|
||||
// but most of the functions provided by Microsoft require Windows 8.1/10+ SDK at compile time and Windows 8/10+ at runtime,
|
||||
// neither of which we want to require the user to have. So we dynamically select and load those functions to avoid dependencies.
|
||||
CIMGUI_IMPL_API void cImGui_ImplWin32_EnableDpiAwareness(void);
|
||||
CIMGUI_IMPL_API float cImGui_ImplWin32_GetDpiScaleForHwnd(void* hwnd); // HWND hwnd
|
||||
CIMGUI_IMPL_API float cImGui_ImplWin32_GetDpiScaleForMonitor(void* monitor); // HMONITOR monitor
|
||||
|
||||
// Transparency related helpers (optional) [experimental]
|
||||
// - Use to enable alpha compositing transparency with the desktop.
|
||||
// - Use together with e.g. clearing your framebuffer with zero-alpha.
|
||||
CIMGUI_IMPL_API void cImGui_ImplWin32_EnableAlphaCompositing(void* hwnd); // HWND hwnd
|
||||
#endif// #ifndef IMGUI_DISABLE
|
||||
#ifdef __cplusplus
|
||||
} // End of extern "C" block
|
||||
#endif
|
||||
@@ -0,0 +1,427 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [
|
||||
{
|
||||
"name": "ImDrawIdx",
|
||||
"type": {
|
||||
"declaration": "unsigned short",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "unsigned_short"
|
||||
}
|
||||
},
|
||||
"comments": {
|
||||
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
|
||||
},
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "ifndef",
|
||||
"expression": "ImDrawIdx"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_win32.h"
|
||||
}
|
||||
}
|
||||
],
|
||||
"structs": [
|
||||
{
|
||||
"name": "ImDrawData",
|
||||
"original_fully_qualified_name": "ImDrawData",
|
||||
"kind": "struct",
|
||||
"by_value": false,
|
||||
"forward_declaration": true,
|
||||
"is_anonymous": false,
|
||||
"fields": [],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_win32.h",
|
||||
"line": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"functions": [
|
||||
{
|
||||
"name": "cImGui_ImplWin32_Init",
|
||||
"original_fully_qualified_name": "ImGui_ImplWin32_Init",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "hwnd",
|
||||
"type": {
|
||||
"declaration": "void*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_win32.h",
|
||||
"line": 25
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplWin32_InitForOpenGL",
|
||||
"original_fully_qualified_name": "ImGui_ImplWin32_InitForOpenGL",
|
||||
"return_type": {
|
||||
"declaration": "bool",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "bool"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "hwnd",
|
||||
"type": {
|
||||
"declaration": "void*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_win32.h",
|
||||
"line": 26
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplWin32_Shutdown",
|
||||
"original_fully_qualified_name": "ImGui_ImplWin32_Shutdown",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_win32.h",
|
||||
"line": 27
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplWin32_NewFrame",
|
||||
"original_fully_qualified_name": "ImGui_ImplWin32_NewFrame",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_win32.h",
|
||||
"line": 28
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplWin32_WndProcHandler",
|
||||
"original_fully_qualified_name": "ImGui_ImplWin32_WndProcHandler",
|
||||
"return_type": {
|
||||
"declaration": "LRESULT",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "LRESULT"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "hWnd",
|
||||
"type": {
|
||||
"declaration": "HWND",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "HWND"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "msg",
|
||||
"type": {
|
||||
"declaration": "UINT",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "UINT"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "wParam",
|
||||
"type": {
|
||||
"declaration": "WPARAM",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "WPARAM"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
},
|
||||
{
|
||||
"name": "lParam",
|
||||
"type": {
|
||||
"declaration": "LPARAM",
|
||||
"description": {
|
||||
"kind": "User",
|
||||
"name": "LPARAM"
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"conditionals": [
|
||||
{
|
||||
"condition": "ifdef",
|
||||
"expression": "IMGUI_BACKEND_HAS_WINDOWS_H"
|
||||
}
|
||||
],
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_win32.h",
|
||||
"line": 36
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplWin32_EnableDpiAwareness",
|
||||
"original_fully_qualified_name": "ImGui_ImplWin32_EnableDpiAwareness",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// DPI-related helpers (optional)",
|
||||
"// - Use to enable DPI awareness without having to create an application manifest.",
|
||||
"// - Your own app may already do this via a manifest or explicit calls. This is mostly useful for our examples/ apps.",
|
||||
"// - In theory we could call simple functions from Windows SDK such as SetProcessDPIAware(), SetProcessDpiAwareness(), etc.",
|
||||
"// but most of the functions provided by Microsoft require Windows 8.1/10+ SDK at compile time and Windows 8/10+ at runtime,",
|
||||
"// neither of which we want to require the user to have. So we dynamically select and load those functions to avoid dependencies."
|
||||
]
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_win32.h",
|
||||
"line": 45
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplWin32_GetDpiScaleForHwnd",
|
||||
"original_fully_qualified_name": "ImGui_ImplWin32_GetDpiScaleForHwnd",
|
||||
"return_type": {
|
||||
"declaration": "float",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "float"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "hwnd",
|
||||
"type": {
|
||||
"declaration": "void*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"attached": "// HWND hwnd"
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_win32.h",
|
||||
"line": 46
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplWin32_GetDpiScaleForMonitor",
|
||||
"original_fully_qualified_name": "ImGui_ImplWin32_GetDpiScaleForMonitor",
|
||||
"return_type": {
|
||||
"declaration": "float",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "float"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "monitor",
|
||||
"type": {
|
||||
"declaration": "void*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"attached": "// HMONITOR monitor"
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_win32.h",
|
||||
"line": 47
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "cImGui_ImplWin32_EnableAlphaCompositing",
|
||||
"original_fully_qualified_name": "ImGui_ImplWin32_EnableAlphaCompositing",
|
||||
"return_type": {
|
||||
"declaration": "void",
|
||||
"description": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"name": "hwnd",
|
||||
"type": {
|
||||
"declaration": "void*",
|
||||
"description": {
|
||||
"kind": "Pointer",
|
||||
"inner_type": {
|
||||
"kind": "Builtin",
|
||||
"builtin_type": "void"
|
||||
}
|
||||
}
|
||||
},
|
||||
"is_array": false,
|
||||
"is_varargs": false,
|
||||
"is_instance_pointer": false
|
||||
}
|
||||
],
|
||||
"is_default_argument_helper": false,
|
||||
"is_manual_helper": false,
|
||||
"is_imstr_helper": false,
|
||||
"has_imstr_helper": false,
|
||||
"is_unformatted_helper": false,
|
||||
"is_static": false,
|
||||
"comments": {
|
||||
"preceding": [
|
||||
"// Transparency related helpers (optional) [experimental]",
|
||||
"// - Use to enable alpha compositing transparency with the desktop.",
|
||||
"// - Use together with e.g. clearing your framebuffer with zero-alpha."
|
||||
],
|
||||
"attached": "// HWND hwnd"
|
||||
},
|
||||
"is_internal": false,
|
||||
"source_location": {
|
||||
"filename": "imgui_impl_win32.h",
|
||||
"line": 52
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"defines": [],
|
||||
"enums": [],
|
||||
"typedefs": [],
|
||||
"structs": [],
|
||||
"functions": []
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user