mirror of
				https://github.com/ocornut/imgui.git
				synced 2025-11-04 09:44:29 +00:00 
			
		
		
		
	Added an assertion for the common user mistake of using "" as an identifier at the root level of a window. (#1414, #2562, #2807, #4008, #4158, #4375, #4548, #4657, #4796)
#4158, #4375, #4548, #4657, #4796)
This commit is contained in:
		@@ -41,6 +41,10 @@ Breaking Changes:
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
Other Changes:
 | 
					Other Changes:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Added an assertion for the common user mistake of using "" as an identifier at the root level of a window
 | 
				
			||||||
 | 
					  instead of using "##something". Empty identifiers are valid and useful in a very small amount of cases,
 | 
				
			||||||
 | 
					  but 99.9% of the time if you need an empty label you should use "##something". (#1414, #2562, #2807, #4008,
 | 
				
			||||||
 | 
					  #4158, #4375, #4548, #4657, #4796). READ THE FAQ ABOUT HOW THE ID STACK WORKS -> https://dearimgui.org/faq
 | 
				
			||||||
- Added GetMouseClickedCount() function, returning the number of successive clicks. (#3229) [@kudaba]
 | 
					- Added GetMouseClickedCount() function, returning the number of successive clicks. (#3229) [@kudaba]
 | 
				
			||||||
  (so IsMouseDoubleClicked(ImGuiMouseButton_Left) is same as GetMouseClickedCount(ImGuiMouseButton_Left) == 2,
 | 
					  (so IsMouseDoubleClicked(ImGuiMouseButton_Left) is same as GetMouseClickedCount(ImGuiMouseButton_Left) == 2,
 | 
				
			||||||
  but it allows testing for triple clicks and more).
 | 
					  but it allows testing for triple clicks and more).
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -7760,6 +7760,11 @@ bool ImGui::ItemAdd(const ImRect& bb, ImGuiID id, const ImRect* nav_bb_arg, ImGu
 | 
				
			|||||||
                if (window == g.NavWindow || ((window->Flags | g.NavWindow->Flags) & ImGuiWindowFlags_NavFlattened))
 | 
					                if (window == g.NavWindow || ((window->Flags | g.NavWindow->Flags) & ImGuiWindowFlags_NavFlattened))
 | 
				
			||||||
                    NavProcessItem();
 | 
					                    NavProcessItem();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        // [DEBUG] People keep stumbling on this problem and using "" as identifier in the root of a window instead of "##something".
 | 
				
			||||||
 | 
					        // Empty identifier are valid and useful in a small amount of cases, but 99.9% of the time you want to use "##something".
 | 
				
			||||||
 | 
					        // READ THE FAQ: https://dearimgui.org/faq
 | 
				
			||||||
 | 
					        IM_ASSERT(id != window->ID && "Cannot have an empty ID at the root of a window. If you need an empty label, use ## and read the FAQ about how the ID Stack works!");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        // [DEBUG] Item Picker tool, when enabling the "extended" version we perform the check in ItemAdd()
 | 
					        // [DEBUG] Item Picker tool, when enabling the "extended" version we perform the check in ItemAdd()
 | 
				
			||||||
#ifdef IMGUI_DEBUG_TOOL_ITEM_PICKER_EX
 | 
					#ifdef IMGUI_DEBUG_TOOL_ITEM_PICKER_EX
 | 
				
			||||||
        if (id == g.DebugItemPickerBreakId)
 | 
					        if (id == g.DebugItemPickerBreakId)
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user