|  |  | @ -11662,7 +11662,7 @@ void ImGui::ShowMetricsWindow(bool* p_open) | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |         struct Funcs |  |  |  |         struct Funcs | 
			
		
	
		
		
			
				
					
					|  |  |  |         { |  |  |  |         { | 
			
		
	
		
		
			
				
					
					|  |  |  |             static void NodeDrawList(ImDrawList* draw_list, const char* label) |  |  |  |             static void NodeDrawList(ImGuiWindow* window, ImDrawList* draw_list, const char* label) | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |             { |  |  |  |             { | 
			
		
	
		
		
			
				
					
					|  |  |  |                 bool node_open = ImGui::TreeNode(draw_list, "%s: '%s' %d vtx, %d indices, %d cmds", label, draw_list->_OwnerName ? draw_list->_OwnerName : "", draw_list->VtxBuffer.Size, draw_list->IdxBuffer.Size, draw_list->CmdBuffer.Size); |  |  |  |                 bool node_open = ImGui::TreeNode(draw_list, "%s: '%s' %d vtx, %d indices, %d cmds", label, draw_list->_OwnerName ? draw_list->_OwnerName : "", draw_list->VtxBuffer.Size, draw_list->IdxBuffer.Size, draw_list->CmdBuffer.Size); | 
			
		
	
		
		
			
				
					
					|  |  |  |                 if (draw_list == ImGui::GetWindowDrawList()) |  |  |  |                 if (draw_list == ImGui::GetWindowDrawList()) | 
			
		
	
	
		
		
			
				
					|  |  | @ -11672,10 +11672,13 @@ void ImGui::ShowMetricsWindow(bool* p_open) | 
			
		
	
		
		
			
				
					
					|  |  |  |                     if (node_open) ImGui::TreePop(); |  |  |  |                     if (node_open) ImGui::TreePop(); | 
			
		
	
		
		
			
				
					
					|  |  |  |                     return; |  |  |  |                     return; | 
			
		
	
		
		
			
				
					
					|  |  |  |                 } |  |  |  |                 } | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 ImDrawList* overlay_draw_list = &GImGui->OverlayDrawList;   // Render additional visuals into the top-most draw list
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 if (window && ImGui::IsItemHovered()) | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                     overlay_draw_list->AddRect(window->Pos, window->Pos + window->Size, IM_COL32(255, 255, 0, 255)); | 
			
		
	
		
		
			
				
					
					|  |  |  |                 if (!node_open) |  |  |  |                 if (!node_open) | 
			
		
	
		
		
			
				
					
					|  |  |  |                     return; |  |  |  |                     return; | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |                 ImDrawList* overlay_draw_list = &GImGui->OverlayDrawList;   // Render additional visuals into the top-most draw list
 |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |                 int elem_offset = 0; |  |  |  |                 int elem_offset = 0; | 
			
		
	
		
		
			
				
					
					|  |  |  |                 for (const ImDrawCmd* pcmd = draw_list->CmdBuffer.begin(); pcmd < draw_list->CmdBuffer.end(); elem_offset += pcmd->ElemCount, pcmd++) |  |  |  |                 for (const ImDrawCmd* pcmd = draw_list->CmdBuffer.begin(); pcmd < draw_list->CmdBuffer.end(); elem_offset += pcmd->ElemCount, pcmd++) | 
			
		
	
		
		
			
				
					
					|  |  |  |                 { |  |  |  |                 { | 
			
		
	
	
		
		
			
				
					|  |  | @ -11741,10 +11744,8 @@ void ImGui::ShowMetricsWindow(bool* p_open) | 
			
		
	
		
		
			
				
					
					|  |  |  |             { |  |  |  |             { | 
			
		
	
		
		
			
				
					
					|  |  |  |                 if (!ImGui::TreeNode(window, "%s '%s', %d @ 0x%p", label, window->Name, window->Active || window->WasActive, window)) |  |  |  |                 if (!ImGui::TreeNode(window, "%s '%s', %d @ 0x%p", label, window->Name, window->Active || window->WasActive, window)) | 
			
		
	
		
		
			
				
					
					|  |  |  |                     return; |  |  |  |                     return; | 
			
		
	
		
		
			
				
					
					|  |  |  |                 NodeDrawList(window->DrawList, "DrawList"); |  |  |  |                 NodeDrawList(window, window->DrawList, "DrawList"); | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |                 ImGui::BulletText("Pos: (%.1f,%.1f), Size: (%.1f,%.1f), SizeContents (%.1f,%.1f)", window->Pos.x, window->Pos.y, window->Size.x, window->Size.y, window->SizeContents.x, window->SizeContents.y); |  |  |  |                 ImGui::BulletText("Pos: (%.1f,%.1f), Size: (%.1f,%.1f), SizeContents (%.1f,%.1f)", window->Pos.x, window->Pos.y, window->Size.x, window->Size.y, window->SizeContents.x, window->SizeContents.y); | 
			
		
	
		
		
			
				
					
					|  |  |  |                 if (ImGui::IsItemHovered()) |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |                     GImGui->OverlayDrawList.AddRect(window->Pos, window->Pos + window->Size, IM_COL32(255,255,0,255)); |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |                 ImGui::BulletText("Scroll: (%.2f/%.2f,%.2f/%.2f)", window->Scroll.x, GetScrollMaxX(window), window->Scroll.y, GetScrollMaxY(window)); |  |  |  |                 ImGui::BulletText("Scroll: (%.2f/%.2f,%.2f/%.2f)", window->Scroll.x, GetScrollMaxX(window), window->Scroll.y, GetScrollMaxY(window)); | 
			
		
	
		
		
			
				
					
					|  |  |  |                 ImGui::BulletText("Active: %d, WriteAccessed: %d", window->Active, window->WriteAccessed); |  |  |  |                 ImGui::BulletText("Active: %d, WriteAccessed: %d", window->Active, window->WriteAccessed); | 
			
		
	
		
		
			
				
					
					|  |  |  |                 if (window->RootWindow != window) NodeWindow(window->RootWindow, "RootWindow"); |  |  |  |                 if (window->RootWindow != window) NodeWindow(window->RootWindow, "RootWindow"); | 
			
		
	
	
		
		
			
				
					|  |  | @ -11760,7 +11761,7 @@ void ImGui::ShowMetricsWindow(bool* p_open) | 
			
		
	
		
		
			
				
					
					|  |  |  |         if (ImGui::TreeNode("DrawList", "Active DrawLists (%d)", g.DrawDataBuilder.Layers[0].Size)) |  |  |  |         if (ImGui::TreeNode("DrawList", "Active DrawLists (%d)", g.DrawDataBuilder.Layers[0].Size)) | 
			
		
	
		
		
			
				
					
					|  |  |  |         { |  |  |  |         { | 
			
		
	
		
		
			
				
					
					|  |  |  |             for (int i = 0; i < g.DrawDataBuilder.Layers[0].Size; i++) |  |  |  |             for (int i = 0; i < g.DrawDataBuilder.Layers[0].Size; i++) | 
			
		
	
		
		
			
				
					
					|  |  |  |                 Funcs::NodeDrawList(g.DrawDataBuilder.Layers[0][i], "DrawList"); |  |  |  |                 Funcs::NodeDrawList(NULL, g.DrawDataBuilder.Layers[0][i], "DrawList"); | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |             ImGui::TreePop(); |  |  |  |             ImGui::TreePop(); | 
			
		
	
		
		
			
				
					
					|  |  |  |         } |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  |         if (ImGui::TreeNode("Popups", "Open Popups Stack (%d)", g.OpenPopupStack.Size)) |  |  |  |         if (ImGui::TreeNode("Popups", "Open Popups Stack (%d)", g.OpenPopupStack.Size)) | 
			
		
	
	
		
		
			
				
					|  |  | 
 |