mirror of
				https://github.com/Drezil/imgui.git
				synced 2025-11-04 07:01:04 +01:00 
			
		
		
		
	Viewport: Exposed GetOverlayDrawList(ImGuiViewport* viewport) in public API. (#1542, #1660, #1878, etc.)
This commit is contained in:
		@@ -2919,10 +2919,11 @@ int ImGui::GetFrameCount()
 | 
			
		||||
    return GImGui->FrameCount;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
ImDrawList* ImGui::GetOverlayDrawList(ImGuiViewportP* viewport)
 | 
			
		||||
ImDrawList* ImGui::GetOverlayDrawList(ImGuiViewport* viewport_public)
 | 
			
		||||
{
 | 
			
		||||
    // Create the draw list on demand, because it is not frequently used for all viewports
 | 
			
		||||
    ImGuiContext& g = *GImGui;
 | 
			
		||||
    ImGuiViewportP* viewport = (ImGuiViewportP*)viewport_public;
 | 
			
		||||
    if (viewport->OverlayDrawList == NULL)
 | 
			
		||||
    {
 | 
			
		||||
        viewport->OverlayDrawList = IM_NEW(ImDrawList)(&g.DrawListSharedData);
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										3
									
								
								imgui.h
									
									
									
									
									
								
							
							
						
						
									
										3
									
								
								imgui.h
									
									
									
									
									
								
							@@ -558,7 +558,8 @@ namespace ImGui
 | 
			
		||||
    IMGUI_API bool          IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max);      // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side.
 | 
			
		||||
    IMGUI_API double        GetTime();
 | 
			
		||||
    IMGUI_API int           GetFrameCount();
 | 
			
		||||
    IMGUI_API ImDrawList*   GetOverlayDrawList();                                               // this draw list will be the last rendered. it covers the entire current viewport. useful to quickly draw overlays shapes/text
 | 
			
		||||
    IMGUI_API ImDrawList*   GetOverlayDrawList();                                               // get overlay draw list for the viewport associated to the current window. this draw list will be the last rendered. useful to quickly draw overlays shapes/text.
 | 
			
		||||
    IMGUI_API ImDrawList*   GetOverlayDrawList(ImGuiViewport* viewport);                        // get overlay draw list for the given viewport. 
 | 
			
		||||
    IMGUI_API ImDrawListSharedData* GetDrawListSharedData();                                    // you may use this when creating your own ImDrawList instances
 | 
			
		||||
    IMGUI_API const char*   GetStyleColorName(ImGuiCol idx);
 | 
			
		||||
    IMGUI_API void          SetStateStorage(ImGuiStorage* storage);                             // replace current window storage with our own (if you want to manipulate it yourself, typically clear subsection of it)
 | 
			
		||||
 
 | 
			
		||||
@@ -1189,7 +1189,6 @@ namespace ImGui
 | 
			
		||||
 | 
			
		||||
    IMGUI_API void          SetCurrentFont(ImFont* font);
 | 
			
		||||
    inline ImFont*          GetDefaultFont() { ImGuiContext& g = *GImGui; return g.IO.FontDefault ? g.IO.FontDefault : g.IO.Fonts->Fonts[0]; }
 | 
			
		||||
    IMGUI_API ImDrawList*   GetOverlayDrawList(ImGuiViewportP* viewport);
 | 
			
		||||
    inline ImDrawList*      GetOverlayDrawList(ImGuiWindow* window) { return GetOverlayDrawList(window->Viewport); }
 | 
			
		||||
 | 
			
		||||
    // Init
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user