mirror of
				https://github.com/Drezil/imgui.git
				synced 2025-11-03 22:51:06 +01:00 
			
		
		
		
	Viewport: Fixed software mouse cursor from appearing in all multiple lists simultaneously. (#1542)
This commit is contained in:
		@@ -4422,12 +4422,14 @@ void ImGui::Render()
 | 
			
		||||
        const ImVec2 pos = g.IO.MousePos - offset;
 | 
			
		||||
        const ImTextureID tex_id = g.IO.Fonts->TexID;
 | 
			
		||||
        const float sc = g.Style.MouseCursorScale;
 | 
			
		||||
        g.OverlayDrawList.PushClipRect(g.MouseViewport->Pos, g.MouseViewport->Pos + g.MouseViewport->Size);
 | 
			
		||||
        g.OverlayDrawList.PushTextureID(tex_id);
 | 
			
		||||
        g.OverlayDrawList.AddImage(tex_id, pos + ImVec2(1,0)*sc, pos+ImVec2(1,0)*sc + size*sc, uv[2], uv[3], IM_COL32(0,0,0,48));        // Shadow
 | 
			
		||||
        g.OverlayDrawList.AddImage(tex_id, pos + ImVec2(2,0)*sc, pos+ImVec2(2,0)*sc + size*sc, uv[2], uv[3], IM_COL32(0,0,0,48));        // Shadow
 | 
			
		||||
        g.OverlayDrawList.AddImage(tex_id, pos,                  pos + size*sc,                uv[2], uv[3], IM_COL32(0,0,0,255));       // Black border
 | 
			
		||||
        g.OverlayDrawList.AddImage(tex_id, pos,                  pos + size*sc,                uv[0], uv[1], IM_COL32(255,255,255,255)); // White fill
 | 
			
		||||
        g.OverlayDrawList.PopTextureID();
 | 
			
		||||
        g.OverlayDrawList.PopClipRect();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // Setup ImDrawData structures for end-user
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										2
									
								
								imgui.h
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								imgui.h
									
									
									
									
									
								
							@@ -492,7 +492,7 @@ 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 float         GetTime();
 | 
			
		||||
    IMGUI_API int           GetFrameCount();
 | 
			
		||||
    IMGUI_API ImDrawList*   GetOverlayDrawList();                                               // this draw list will be the last rendered one, useful to quickly draw overlays shapes/text
 | 
			
		||||
    IMGUI_API ImDrawList*   GetOverlayDrawList();                                               // this draw list will be the last rendered one, it covers all viewports. useful to quickly draw overlays shapes/text
 | 
			
		||||
    IMGUI_API ImDrawListSharedData* GetDrawListSharedData();
 | 
			
		||||
    IMGUI_API const char*   GetStyleColorName(ImGuiCol idx);
 | 
			
		||||
    IMGUI_API ImVec2        CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f);
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user