mirror of
https://github.com/ocornut/imgui.git
synced 2024-11-24 07:40:22 +01:00
BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names.
When the later is fixed we can re-enable this. Essentially reverts 8ee8513
.
This commit is contained in:
parent
46843b683b
commit
afadf74a53
@ -119,10 +119,6 @@ Other changes:
|
||||
- BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(),
|
||||
use it to make child window use FrameBg, FrameRounding, FrameBorderSize, FramePadding
|
||||
instead of ChildBg, ChildRounding, ChildBorderSize, WindowPadding.
|
||||
- BeginChild(): Internal name used by child windows now omits the hash/id if the child
|
||||
window is submitted in root of id stack of parent window.
|
||||
So "Parent/Child_XXXXXXX" becomes "Parent/Child" when in root of id stack.
|
||||
Makes debugging/metrics easier and shorter to read in many cases.
|
||||
- Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value
|
||||
to false when popup is closed in ways other than clicking the close button. (#6900)
|
||||
- Double-clicking lower-left resize grip auto-resize (like lower-right one).
|
||||
|
@ -5495,10 +5495,13 @@ bool ImGui::BeginChildEx(const char* name, ImGuiID id, const ImVec2& size_arg, I
|
||||
SetNextWindowSize(size);
|
||||
|
||||
// Build up name. If you need to append to a same child from multiple location in the ID stack, use BeginChild(ImGuiID id) with a stable value.
|
||||
// FIXME: 2023/11/14: commented out shorted version. We had an issue with multiple ### in child window path names, which the trailing hash helped workaround.
|
||||
// e.g. "ParentName###ParentIdentifier/ChildName###ChildIdentifier" would get hashed incorrectly by ImHashStr(), trailing _%08X somehow fixes it.
|
||||
const char* temp_window_name;
|
||||
if (name && parent_window->IDStack.back() == parent_window->ID)
|
||||
/*if (name && parent_window->IDStack.back() == parent_window->ID)
|
||||
ImFormatStringToTempBuffer(&temp_window_name, NULL, "%s/%s", parent_window->Name, name); // May omit ID if in root of ID stack
|
||||
else if (name)
|
||||
else*/
|
||||
if (name)
|
||||
ImFormatStringToTempBuffer(&temp_window_name, NULL, "%s/%s_%08X", parent_window->Name, name, id);
|
||||
else
|
||||
ImFormatStringToTempBuffer(&temp_window_name, NULL, "%s/%08X", parent_window->Name, id);
|
||||
|
Loading…
Reference in New Issue
Block a user