imgui_impl_glfw.h (imgui-1.86) | : | imgui_impl_glfw.h (imgui-1.87) | ||
---|---|---|---|---|
// dear imgui: Platform Backend for GLFW | // dear imgui: Platform Backend for GLFW | |||
// This needs to be used along with a Renderer (e.g. OpenGL3, Vulkan, WebGPU..) | // 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.) | // (Info: GLFW is a cross-platform general purpose library for handling windows, inputs, OpenGL/Vulkan graphics context creation, etc.) | |||
// Implemented features: | // Implemented features: | |||
// [X] Platform: Clipboard support. | // [X] Platform: Clipboard support. | |||
// [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 GLFW_KEY_* values will also be supported unless IMGUI_DIS ABLE_OBSOLETE_KEYIO is set] | ||||
// [X] Platform: Gamepad support. Enable with 'io.ConfigFlags |= ImGuiConfigFla gs_NavEnableGamepad'. | // [X] Platform: Gamepad support. Enable with 'io.ConfigFlags |= ImGuiConfigFla gs_NavEnableGamepad'. | |||
// [x] Platform: Mouse cursor shape and visibility. Disable with 'io.ConfigFlag | // [X] Platform: Mouse cursor shape and visibility. Disable with 'io.ConfigFlag | |||
s |= ImGuiConfigFlags_NoMouseCursorChange'. FIXME: 3 cursors types are missing f | s |= ImGuiConfigFlags_NoMouseCursorChange' (note: the resizing cursors requires | |||
rom GLFW. | GLFW 3.4+). | |||
// [X] Platform: Keyboard arrays indexed using GLFW_KEY_* codes, e.g. ImGui::Is | ||||
KeyPressed(GLFW_KEY_SPACE). | ||||
// 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 | |||
// About GLSL version: | // About GLSL version: | |||
// The 'glsl_version' initialization parameter defaults to "#version 150" if NUL L. | // The 'glsl_version' initialization parameter defaults to "#version 150" if NUL L. | |||
// Only override if your GL version doesn't handle this GLSL version. Keep NULL if unsure! | // Only override if your GL version doesn't handle this GLSL version. Keep NULL if unsure! | |||
skipping to change at line 32 | skipping to change at line 32 | |||
struct GLFWwindow; | struct GLFWwindow; | |||
struct GLFWmonitor; | struct GLFWmonitor; | |||
IMGUI_IMPL_API bool ImGui_ImplGlfw_InitForOpenGL(GLFWwindow* window, bool in stall_callbacks); | IMGUI_IMPL_API bool ImGui_ImplGlfw_InitForOpenGL(GLFWwindow* window, bool in stall_callbacks); | |||
IMGUI_IMPL_API bool ImGui_ImplGlfw_InitForVulkan(GLFWwindow* window, bool in stall_callbacks); | IMGUI_IMPL_API bool ImGui_ImplGlfw_InitForVulkan(GLFWwindow* window, bool in stall_callbacks); | |||
IMGUI_IMPL_API bool ImGui_ImplGlfw_InitForOther(GLFWwindow* window, bool ins tall_callbacks); | IMGUI_IMPL_API bool ImGui_ImplGlfw_InitForOther(GLFWwindow* window, bool ins tall_callbacks); | |||
IMGUI_IMPL_API void ImGui_ImplGlfw_Shutdown(); | IMGUI_IMPL_API void ImGui_ImplGlfw_Shutdown(); | |||
IMGUI_IMPL_API void ImGui_ImplGlfw_NewFrame(); | IMGUI_IMPL_API void ImGui_ImplGlfw_NewFrame(); | |||
// GLFW callbacks | // GLFW callbacks (installer) | |||
// - When calling Init with 'install_callbacks=true': GLFW callbacks will be ins | // - When calling Init with 'install_callbacks=true': ImGui_ImplGlfw_InstallCall | |||
talled for you. They will call user's previously installed callbacks, if any. | backs() is called. GLFW callbacks will be installed for you. They will chain-cal | |||
// - When calling Init with 'install_callbacks=false': GLFW callbacks won't be i | l user's previously installed callbacks, if any. | |||
nstalled. You will need to call those function yourself from your own GLFW callb | // - When calling Init with 'install_callbacks=false': GLFW callbacks won't be i | |||
acks. | nstalled. You will need to call individual function yourself from your own GLFW | |||
IMGUI_IMPL_API void ImGui_ImplGlfw_WindowFocusCallback(GLFWwindow* window, i | callbacks. | |||
nt focused); | IMGUI_IMPL_API void ImGui_ImplGlfw_InstallCallbacks(GLFWwindow* window); | |||
IMGUI_IMPL_API void ImGui_ImplGlfw_CursorEnterCallback(GLFWwindow* window, i | IMGUI_IMPL_API void ImGui_ImplGlfw_RestoreCallbacks(GLFWwindow* window); | |||
nt entered); | ||||
// GLFW callbacks (individual callbacks to call if you didn't install callbacks) | ||||
IMGUI_IMPL_API void ImGui_ImplGlfw_WindowFocusCallback(GLFWwindow* window, i | ||||
nt focused); // Since 1.84 | ||||
IMGUI_IMPL_API void ImGui_ImplGlfw_CursorEnterCallback(GLFWwindow* window, i | ||||
nt entered); // Since 1.84 | ||||
IMGUI_IMPL_API void ImGui_ImplGlfw_CursorPosCallback(GLFWwindow* window, dou | ||||
ble x, double y); // Since 1.87 | ||||
IMGUI_IMPL_API void ImGui_ImplGlfw_MouseButtonCallback(GLFWwindow* window, i nt button, int action, int mods); | IMGUI_IMPL_API void ImGui_ImplGlfw_MouseButtonCallback(GLFWwindow* window, i nt button, int action, int mods); | |||
IMGUI_IMPL_API void ImGui_ImplGlfw_ScrollCallback(GLFWwindow* window, double xoffset, double yoffset); | IMGUI_IMPL_API void ImGui_ImplGlfw_ScrollCallback(GLFWwindow* window, double xoffset, double yoffset); | |||
IMGUI_IMPL_API void ImGui_ImplGlfw_KeyCallback(GLFWwindow* window, int key, int scancode, int action, int mods); | IMGUI_IMPL_API void ImGui_ImplGlfw_KeyCallback(GLFWwindow* window, int key, int scancode, int action, int mods); | |||
IMGUI_IMPL_API void ImGui_ImplGlfw_CharCallback(GLFWwindow* window, unsigned int c); | IMGUI_IMPL_API void ImGui_ImplGlfw_CharCallback(GLFWwindow* window, unsigned int c); | |||
IMGUI_IMPL_API void ImGui_ImplGlfw_MonitorCallback(GLFWmonitor* monitor, int event); | IMGUI_IMPL_API void ImGui_ImplGlfw_MonitorCallback(GLFWmonitor* monitor, int event); | |||
End of changes. 3 change blocks. | ||||
15 lines changed or deleted | 21 lines changed or added |