MCPcopy Create free account
hub / github.com/Aegel5/SimpleSwitcher / DestroyPlatformWindow

Method DestroyPlatformWindow

imgui_tiny_app/imgui/imgui.cpp:17605–17628  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

17603}
17604
17605void ImGui::DestroyPlatformWindow(ImGuiViewportP* viewport)
17606{
17607 ImGuiContext& g = *GImGui;
17608 if (viewport->PlatformWindowCreated)
17609 {
17610 IMGUI_DEBUG_LOG_VIEWPORT("[viewport] Destroy Platform Window %08X '%s'\n", viewport->ID, viewport->Window ? viewport->Window->Name : "n/a");
17611 if (g.PlatformIO.Renderer_DestroyWindow)
17612 g.PlatformIO.Renderer_DestroyWindow(viewport);
17613 if (g.PlatformIO.Platform_DestroyWindow)
17614 g.PlatformIO.Platform_DestroyWindow(viewport);
17615 IM_ASSERT(viewport->RendererUserData == NULL && viewport->PlatformUserData == NULL);
17616
17617 // Don't clear PlatformWindowCreated for the main viewport, as we initially set that up to true in Initialize()
17618 // The righter way may be to leave it to the backend to set this flag all-together, and made the flag public.
17619 if (viewport->ID != IMGUI_VIEWPORT_DEFAULT_ID)
17620 viewport->PlatformWindowCreated = false;
17621 }
17622 else
17623 {
17624 IM_ASSERT(viewport->RendererUserData == NULL && viewport->PlatformUserData == NULL && viewport->PlatformHandle == NULL);
17625 }
17626 viewport->RendererUserData = viewport->PlatformUserData = viewport->PlatformHandle = NULL;
17627 viewport->ClearRequestFlags();
17628}
17629
17630void ImGui::DestroyPlatformWindows()
17631{

Callers

nothing calls this directly

Calls 1

ClearRequestFlagsMethod · 0.80

Tested by

no test coverage detected