|
|
@ -5671,7 +5671,7 @@ bool ImGui::TreeNodeBehavior(ImGuiID id, ImGuiTreeNodeFlags flags, const char* l |
|
|
|
bb.Max.x += (float)(int)(window->WindowPadding.x*0.5f) - 1; |
|
|
|
} |
|
|
|
|
|
|
|
const float collapser_width = g.FontSize + (display_frame ? padding.x*2 : padding.x); |
|
|
|
const float text_offset_x = g.FontSize + (display_frame ? padding.x*3 : padding.x*2); // Collapser arrow width + Spacing
|
|
|
|
const float text_width = g.FontSize + (label_size.x > 0.0f ? label_size.x + padding.x*2 : 0.0f); // Include collapser
|
|
|
|
ItemSize(ImVec2(text_width, frame_height), text_base_offset_y); |
|
|
|
|
|
|
@ -5699,7 +5699,7 @@ bool ImGui::TreeNodeBehavior(ImGuiID id, ImGuiTreeNodeFlags flags, const char* l |
|
|
|
{ |
|
|
|
bool toggled = !(flags & (ImGuiTreeNodeFlags_OpenOnArrow | ImGuiTreeNodeFlags_OpenOnDoubleClick)); |
|
|
|
if (flags & ImGuiTreeNodeFlags_OpenOnArrow) |
|
|
|
toggled |= IsMouseHoveringRect(interact_bb.Min, ImVec2(interact_bb.Min.x + collapser_width, interact_bb.Max.y)); |
|
|
|
toggled |= IsMouseHoveringRect(interact_bb.Min, ImVec2(interact_bb.Min.x + text_offset_x, interact_bb.Max.y)); |
|
|
|
if (flags & ImGuiTreeNodeFlags_OpenOnDoubleClick) |
|
|
|
toggled |= g.IO.MouseDoubleClicked[0]; |
|
|
|
if (toggled) |
|
|
@ -5713,7 +5713,7 @@ bool ImGui::TreeNodeBehavior(ImGuiID id, ImGuiTreeNodeFlags flags, const char* l |
|
|
|
|
|
|
|
// Render
|
|
|
|
const ImU32 col = GetColorU32((held && hovered) ? ImGuiCol_HeaderActive : hovered ? ImGuiCol_HeaderHovered : ImGuiCol_Header); |
|
|
|
const ImVec2 text_pos = bb.Min + padding + ImVec2(collapser_width, text_base_offset_y); |
|
|
|
const ImVec2 text_pos = bb.Min + ImVec2(text_offset_x, padding.y + text_base_offset_y); |
|
|
|
if (display_frame) |
|
|
|
{ |
|
|
|
// Framed type
|
|
|
@ -5740,7 +5740,7 @@ bool ImGui::TreeNodeBehavior(ImGuiID id, ImGuiTreeNodeFlags flags, const char* l |
|
|
|
RenderFrame(bb.Min, bb.Max, col, false); |
|
|
|
|
|
|
|
if (flags & ImGuiTreeNodeFlags_AlwaysOpen) |
|
|
|
RenderBullet(bb.Min + ImVec2((padding.x + collapser_width) * 0.5f, g.FontSize*0.50f + text_base_offset_y)); |
|
|
|
RenderBullet(bb.Min + ImVec2(text_offset_x * 0.5f, g.FontSize*0.50f + text_base_offset_y)); |
|
|
|
else |
|
|
|
RenderCollapseTriangle(bb.Min + ImVec2(padding.x, g.FontSize*0.15f + text_base_offset_y), opened, 0.70f, false); |
|
|
|
if (g.LogEnabled) |
|
|
|