if(moving_window->ViewportOwned)// Synchronize viewport immediately because some overlays may relies on clipping rectangle before we Begin() into the window.
if(moving_window->ViewportOwned)// Synchronize viewport immediately because some overlays may relies on clipping rectangle before we Begin() into the window.
ImGuiViewportFlagsFlags;// See ImGuiViewportFlags_
ImGuiViewportFlagsFlags;// See ImGuiViewportFlags_
ImVec2Pos;// Main Area: Position of the viewport (the imgui coordinates are the same as OS desktop/native coordinates)
ImVec2Pos;// Main Area: Position of the viewport (Dear Imgui coordinates are the same as OS desktop/native coordinates)
ImVec2Size;// Main Area: Size of the viewport.
ImVec2Size;// Main Area: Size of the viewport.
ImVec2WorkOffsetMin;// Work Area: Offset from Pos to top-left corner of Work Area. Generally (0,0) or (0,+main_menu_bar_height). Work Area is Full Area but without menu-bars/status-bars (so WorkArea always fit inside Pos/Size!)
ImVec2WorkPos;// Work Area: Position of the viewport minus task bars, menus bars, status bars (>= Pos)
ImVec2WorkOffsetMax;// Work Area: Offset from Pos+Size to bottom-right corner of Work Area. Generally (0,0) or (0,-status_bar_height).
ImVec2WorkSize;// Work Area: Size of the viewport minus task bars, menu bars, status bars (<= Size)
floatDpiScale;// 1.0f = 96 DPI = No extra scale.
floatDpiScale;// 1.0f = 96 DPI = No extra scale.
ImGuiIDParentViewportId;// (Advanced) 0: no parent. Instruct the platform backend to setup a parent/child relationship between platform windows.
ImGuiIDParentViewportId;// (Advanced) 0: no parent. Instruct the platform backend to setup a parent/child relationship between platform windows.
ImDrawData*DrawData;// The ImDrawData corresponding to this viewport. Valid after Render() and until the next call to NewFrame().
ImDrawData*DrawData;// The ImDrawData corresponding to this viewport. Valid after Render() and until the next call to NewFrame().
@ -1316,13 +1316,16 @@ struct ImGuiViewportP : public ImGuiViewport
ImVec2LastPlatformPos;
ImVec2LastPlatformPos;
ImVec2LastPlatformSize;
ImVec2LastPlatformSize;
ImVec2LastRendererSize;
ImVec2LastRendererSize;
ImVec2CurrWorkOffsetMin;// Work area top-left offset being increased during the frame
ImVec2WorkOffsetMin;// Work Area: Offset from Pos to top-left corner of Work Area. Generally (0,0) or (0,+main_menu_bar_height). Work Area is Full Area but without menu-bars/status-bars (so WorkArea always fit inside Pos/Size!)
ImVec2CurrWorkOffsetMax;// Work area bottom-right offset being decreased during the frame
ImVec2WorkOffsetMax;// Work Area: Offset from Pos+Size to bottom-right corner of Work Area. Generally (0,0) or (0,-status_bar_height).
ImVec2CurrWorkOffsetMin;// Work Area: Offset being built/increased during current frame
ImVec2CurrWorkOffsetMax;// Work Area: Offset being built/decreased during current frame