diff --git a/imgui.ini b/imgui.ini index dcee242bfba92fad1f1f4d3abb7eaab3e1302c3c..2e48e74b349c3bbcd12327c7522a6279afdb2541 100644 --- a/imgui.ini +++ b/imgui.ini @@ -4,14 +4,14 @@ Size=400,400 Collapsed=0 [Window][Hello, world!] -Pos=247,642 -Size=641,293 +Pos=745,530 +Size=643,193 Collapsed=0 DockId=0x00000003,0 [Window][Dear ImGui Demo] -Pos=247,34 -Size=641,606 +Pos=745,128 +Size=643,400 Collapsed=0 DockId=0x00000002,0 @@ -81,7 +81,7 @@ Size=771,465 Collapsed=0 [Docking][Data] -DockNode ID=0x00000001 Pos=247,34 Size=641,901 Split=Y +DockNode ID=0x00000001 Pos=745,146 Size=643,595 Split=Y DockNode ID=0x00000002 Parent=0x00000001 SizeRef=849,526 Selected=0xE927CF2F DockNode ID=0x00000003 Parent=0x00000001 SizeRef=849,254 Selected=0xEBE6C6E6 diff --git a/main.cpp b/main.cpp index ca1bac1bf15328e41a8a0b8a62054a42cec2e2ed..0fb0e249dae723ba9f232c057099d502261dc268 100644 --- a/main.cpp +++ b/main.cpp @@ -96,9 +96,7 @@ int main(int argc, char **argv) ImGuiIO& io = ImGui::GetIO(); (void)io; io.ConfigFlags |= ImGuiConfigFlags_DockingEnable; io.ConfigFlags |= ImGuiConfigFlags_NavEnableKeyboard; - //io.ConfigFlags |= ImGuiConfigFlags_NavEnableKeyboard; // Enable Keyboard Controls - //io.ConfigFlags |= ImGuiConfigFlags_NavEnableGamepad; // Enable Gamepad Controls - // Setup Dear ImGui style + io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable; ImGui::StyleColorsDark(); ImGui_ImplSDL2_InitForOpenGL(window, gl_context); ImGui_ImplOpenGL3_Init(glsl_version); @@ -231,6 +229,16 @@ int main(int argc, char **argv) // Rendering ImGui::Render(); ImGui_ImplOpenGL3_RenderDrawData(ImGui::GetDrawData()); + + if (io.ConfigFlags & ImGuiConfigFlags_ViewportsEnable) + { + SDL_Window* backup_current_window = SDL_GL_GetCurrentWindow(); + SDL_GLContext backup_current_context = SDL_GL_GetCurrentContext(); + ImGui::UpdatePlatformWindows(); + ImGui::RenderPlatformWindowsDefault(); + SDL_GL_MakeCurrent(backup_current_window, backup_current_context); + } + SDL_GL_SwapWindow(window); }