imgui_impl_sdl.h (imgui-1.86) | : | imgui_impl_sdl.h (imgui-1.87) | ||
---|---|---|---|---|
// dear imgui: Platform Backend for SDL2 | // dear imgui: Platform Backend for SDL2 | |||
// This needs to be used along with a Renderer (e.g. DirectX11, OpenGL3, Vulkan. .) | // 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.) | // (Info: SDL2 is a cross-platform general purpose library for handling windows, inputs, graphics context creation, etc.) | |||
// Implemented features: | // Implemented features: | |||
// [X] Platform: Mouse cursor shape and visibility. Disable with 'io.ConfigFlag s |= ImGuiConfigFlags_NoMouseCursorChange'. | ||||
// [X] Platform: Clipboard support. | // [X] Platform: Clipboard support. | |||
// [X] Platform: Keyboard arrays indexed using SDL_SCANCODE_* codes, e.g. ImGui ::IsKeyPressed(SDL_SCANCODE_SPACE). | // [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(Im GuiKey_Space). [Legacy SDL_SCANCODE_* values will also be supported unless IMGUI _DISABLE_OBSOLETE_KEYIO is set] | |||
// [X] Platform: Gamepad support. Enabled with 'io.ConfigFlags |= ImGuiConfigFl ags_NavEnableGamepad'. | // [X] Platform: Gamepad support. Enabled with 'io.ConfigFlags |= ImGuiConfigFl ags_NavEnableGamepad'. | |||
// [X] Platform: Mouse cursor shape and visibility. Disable with 'io.ConfigFlag s |= ImGuiConfigFlags_NoMouseCursorChange'. | ||||
// Missing features: | // Missing features: | |||
// [ ] Platform: SDL2 handling of IME under Windows appears to be broken and it explicitly disable the regular Windows IME. You can restore Windows IME by comp iling SDL with SDL_DISABLE_WINDOWS_IME. | // [ ] Platform: SDL2 handling of IME under Windows appears to be broken and it explicitly disable the regular Windows IME. You can restore Windows IME by comp iling SDL with SDL_DISABLE_WINDOWS_IME. | |||
// You can use unmodified imgui_impl_* files in your project. See examples/ fold er for examples of using this. | // You can use unmodified imgui_impl_* files in your project. See examples/ fold er 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. | // Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need. | |||
// If you are new to Dear ImGui, read documentation from the docs/ folder + read the top of imgui.cpp. | // If you are new to Dear ImGui, read documentation from the docs/ folder + read the top of imgui.cpp. | |||
// Read online: https://github.com/ocornut/imgui/tree/master/docs | // Read online: https://github.com/ocornut/imgui/tree/master/docs | |||
#pragma once | #pragma once | |||
#include "imgui.h" // IMGUI_IMPL_API | #include "imgui.h" // IMGUI_IMPL_API | |||
struct SDL_Window; | struct SDL_Window; | |||
struct SDL_Renderer; | ||||
typedef union SDL_Event SDL_Event; | typedef union SDL_Event SDL_Event; | |||
IMGUI_IMPL_API bool ImGui_ImplSDL2_InitForOpenGL(SDL_Window* window, void* s dl_gl_context); | IMGUI_IMPL_API bool ImGui_ImplSDL2_InitForOpenGL(SDL_Window* window, void* s dl_gl_context); | |||
IMGUI_IMPL_API bool ImGui_ImplSDL2_InitForVulkan(SDL_Window* window); | IMGUI_IMPL_API bool ImGui_ImplSDL2_InitForVulkan(SDL_Window* window); | |||
IMGUI_IMPL_API bool ImGui_ImplSDL2_InitForD3D(SDL_Window* window); | IMGUI_IMPL_API bool ImGui_ImplSDL2_InitForD3D(SDL_Window* window); | |||
IMGUI_IMPL_API bool ImGui_ImplSDL2_InitForMetal(SDL_Window* window); | IMGUI_IMPL_API bool ImGui_ImplSDL2_InitForMetal(SDL_Window* window); | |||
IMGUI_IMPL_API bool ImGui_ImplSDL2_InitForSDLRenderer(SDL_Window* window); | IMGUI_IMPL_API bool ImGui_ImplSDL2_InitForSDLRenderer(SDL_Window* window, SD L_Renderer* renderer); | |||
IMGUI_IMPL_API void ImGui_ImplSDL2_Shutdown(); | IMGUI_IMPL_API void ImGui_ImplSDL2_Shutdown(); | |||
IMGUI_IMPL_API void ImGui_ImplSDL2_NewFrame(); | IMGUI_IMPL_API void ImGui_ImplSDL2_NewFrame(); | |||
IMGUI_IMPL_API bool ImGui_ImplSDL2_ProcessEvent(const SDL_Event* event); | IMGUI_IMPL_API bool ImGui_ImplSDL2_ProcessEvent(const SDL_Event* event); | |||
#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS | #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS | |||
static inline void ImGui_ImplSDL2_NewFrame(SDL_Window*) { ImGui_ImplSDL2_NewFram e(); } // 1.84: removed unnecessary parameter | static inline void ImGui_ImplSDL2_NewFrame(SDL_Window*) { ImGui_ImplSDL2_NewFram e(); } // 1.84: removed unnecessary parameter | |||
#endif | #endif | |||
End of changes. 5 change blocks. | ||||
3 lines changed or deleted | 4 lines changed or added |