Viewport: Coupling non-main viewport to one window. Viewport name derived from the window. Added ImGuiConfigFlags_PlatformNoTaskBar, off by default (aka re-established task-bars by default for now). (#1542)
// Note: SDL 2.0.6+ has a SDL_WINDOW_SKIP_TASKBAR flag which is supported under Windows but the way it create the window breaks our seamless transition.
ImGuiConfigFlags_EnableViewports=1<<4,// Viewport enable flags (require both ImGuiConfigFlags_PlatformHasViewports + ImGuiConfigFlags_RendererHasViewports set by the respective back-ends)
ImGuiConfigFlags_PlatformHasMouseHoveredViewport=1<<6,// Back-end Platform supports setting io.MouseHoveredViewport to the viewport directly under the mouse _IGNORING_ viewports with the ImGuiViewportFlags_NoInputs flag and _REGARDLESS_ of whether another viewport is focused and may be capturing the mouse. This information is _NOT EASY_ to provide correctly with most high-level engines. Don't see this without studying how the examples/ back-end handle it.
ImGuiConfigFlags_PlatformHasWantMoveMouseSupport=1<<7,// Back-end Platform supports io.WantMoveMouse request by updating the OS mouse cursor position (currently only used by ImGuiConfigFlags_NavMoveMouse feature, will be useful for widgets teleporting/wrapping the cursor)
ImGuiConfigFlags_PlatformHasWindowAlpha=1<<8,// Back-end Platform supports transparent windows
ImGuiConfigFlags_PlatformHasMouseHoveredViewport=1<<7,// Back-end Platform supports setting io.MouseHoveredViewport to the viewport directly under the mouse _IGNORING_ viewports with the ImGuiViewportFlags_NoInputs flag and _REGARDLESS_ of whether another viewport is focused and may be capturing the mouse. This information is _NOT EASY_ to provide correctly with most high-level engines. Don't see this without studying how the examples/ back-end handle it.
ImGuiConfigFlags_PlatformHasWantMoveMouseSupport=1<<8,// Back-end Platform supports io.WantMoveMouse request by updating the OS mouse cursor position (currently only used by ImGuiConfigFlags_NavMoveMouse feature, will be useful for widgets teleporting/wrapping the cursor)
ImGuiConfigFlags_PlatformHasWindowAlpha=1<<9,// Back-end Platform supports transparent windows
// Platform Info (free of use, for user/application convenience)
ImGuiConfigFlags_IsSRGB=1<<10,// Back-end is SRGB-aware (Storage flag to allow your back-end to communicate to shared widgets. Not used by core ImGui)
ImGuiConfigFlags_IsTouchScreen=1<<11,// Back-end is using a touch screen instead of a mouse (Storage flag to allow your back-end to communicate to shared widgets. Not used by core ImGui)
ImGuiConfigFlags_IsOnScreenKeyboard=1<<12 // Back-end uses an on-screen keyboard when io.WantTextInput is set.
ImGuiConfigFlags_IsSRGB=1<<20,// Back-end is SRGB-aware (Storage flag to allow your back-end to communicate to shared widgets. Not used by core ImGui)
ImGuiConfigFlags_IsTouchScreen=1<<21,// Back-end is using a touch screen instead of a mouse (Storage flag to allow your back-end to communicate to shared widgets. Not used by core ImGui)
ImGuiConfigFlags_IsOnScreenKeyboard=1<<22 // Back-end uses an on-screen keyboard when io.WantTextInput is set.
};
// Enumeration for PushStyleColor() / PopStyleColor()
void*RendererUserData;// void* to hold custom data structure for the renderer (e.g. framebuffer)
ImGuiViewport(ImGuiIDid,intidx){ID=id;Idx=idx;Flags=0;LastFrameActive=LastFrameAsRefViewport=-1; Name =NULL;PlatformUserData=PlatformHandle=NULL;PlatformRequestClose=PlatformRequestResize=false;RendererUserData=NULL;}
IMGUI_APIvoidShutdown(ImGuiContext*context);// Since 1.60 this is a _private_ function. You can call DestroyContext() to destroy the context created by CreateContext().
// Viewports
IMGUI_APIImGuiViewport*Viewport(ImGuiID id,ImGuiViewportFlagsflags,constImVec2&os_desktop_pos,constImVec2&size);// os_desktop_pos allows imgui to reposition windows relative to each order when moving from one viewport to the other.
IMGUI_APIImGuiViewport*Viewport(ImGuiWindow*window,ImGuiID id,ImGuiViewportFlagsflags,constImVec2&os_desktop_pos,constImVec2&size);// os_desktop_pos allows imgui to reposition windows relative to each order when moving from one viewport to the other.