viewport->LastPlatformPos=viewport->LastPlatformSize=ImVec2(FLT_MAX,FLT_MAX);// By clearing those we'll enforce a call to Platform_SetWindowPos/Platform_SetWindowSize before Platform_ShowWindow
viewport->LastRendererSize=viewport->Size;
viewport->CreatedPlatformWindow =true;
viewport->PlatformWindowCreated=true;
}
// Apply Position and Size (from ImGui to Platform/Renderer back-ends)
float(*Platform_GetWindowDpiScale)(ImGuiViewport*vp);// (Optional) DPI handling: Return DPI scale for this viewport. 1.0f = 96 DPI. (FIXME-DPI)
void(*Platform_OnChangedViewport)(ImGuiViewport*vp);// (Optional) DPI handling: Called during Begin() every time the viewport we are outputting into changes, so back-end has a chance to swap fonts to adjust style.
float(*Platform_GetWindowDpiScale)(ImGuiViewport*vp);// (Optional) [BETA] (FIXME-DPI) DPI handling: Return DPI scale for this viewport. 1.0f = 96 DPI. IMPORTANT: this will be called _before_ the window is created, in which case the implementation is expected to use the viewport->Pos/Size fields to estimate DPI value.
void(*Platform_OnChangedViewport)(ImGuiViewport*vp);// (Optional) [BETA] (FIXME-DPI) DPI handling: Called during Begin() every time the viewport we are outputting into changes, so back-end has a chance to swap fonts to adjust style.
void(*Platform_SetImeInputPos)(ImGuiViewport*vp,ImVec2pos);// (Optional) Set IME (Input Method Editor, e.g. for Asian languages) input position, so text preview appears over the imgui input box.
int(*Platform_CreateVkSurface)(ImGuiViewport*vp,ImU64vk_inst,constvoid*vk_allocators,ImU64*out_vk_surface);// (Optional) For Renderer to call into Platform code
@ -662,11 +662,11 @@ struct ImGuiViewportP : public ImGuiViewport
intLastFrontMostStampCount;// Last stamp number from when a window hosted by this viewport was made front-most (by comparing this value between two viewport we have an implicit viewport z-order
ImGuiIDLastNameHash;
ImVec2LastPos;
boolCreatedPlatformWindow;
floatAlpha;// Window opacity (when dragging dockable windows/viewports we make them transparent)
floatLastAlpha;
intPlatformMonitor;
boolPlatformIsMinimized;
boolPlatformWindowCreated;
boolPlatformWindowMinimized;
ImGuiWindow*Window;// Set when the viewport is owned by a window
ImDrawList*OverlayDrawList;// For convenience, a draw list we can render to that's always rendered last (we use it to draw software mouse cursor when io.MouseDrawCursor is set)
ImDrawDataDrawDataP;
@ -675,7 +675,7 @@ struct ImGuiViewportP : public ImGuiViewport