Skip to content

Commit adb06d8

Browse files
committed
Add dedicated style color for selected tree nodes
1 parent fcdaa32 commit adb06d8

File tree

3 files changed

+9
-2
lines changed

3 files changed

+9
-2
lines changed

imgui.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3610,6 +3610,7 @@ const char* ImGui::GetStyleColorName(ImGuiCol idx)
36103610
case ImGuiCol_Header: return "Header";
36113611
case ImGuiCol_HeaderHovered: return "HeaderHovered";
36123612
case ImGuiCol_HeaderActive: return "HeaderActive";
3613+
case ImGuiCol_HeaderSelected: return "HeaderSelected";
36133614
case ImGuiCol_Separator: return "Separator";
36143615
case ImGuiCol_SeparatorHovered: return "SeparatorHovered";
36153616
case ImGuiCol_SeparatorActive: return "SeparatorActive";

imgui.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1722,6 +1722,7 @@ enum ImGuiCol_
17221722
ImGuiCol_Header, // Header* colors are used for CollapsingHeader, TreeNode, Selectable, MenuItem
17231723
ImGuiCol_HeaderHovered,
17241724
ImGuiCol_HeaderActive,
1725+
ImGuiCol_HeaderSelected,
17251726
ImGuiCol_Separator,
17261727
ImGuiCol_SeparatorHovered,
17271728
ImGuiCol_SeparatorActive,

imgui_widgets.cpp

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6865,9 +6865,14 @@ bool ImGui::TreeNodeBehavior(ImGuiID id, ImGuiTreeNodeFlags flags, const char* l
68656865
else
68666866
{
68676867
// Unframed typed for tree nodes
6868-
if (hovered || selected)
6868+
if (selected)
6869+
{
6870+
const ImU32 bg_col = GetColorU32(ImGuiCol_HeaderSelected);
6871+
RenderFrame(frame_bb.Min, frame_bb.Max, bg_col, false);
6872+
}
6873+
if (hovered)
68696874
{
6870-
const ImU32 bg_col = GetColorU32((held && hovered) ? ImGuiCol_HeaderActive : hovered ? ImGuiCol_HeaderHovered : ImGuiCol_Header);
6875+
const ImU32 bg_col = GetColorU32((held && hovered) ? ImGuiCol_HeaderActive : ImGuiCol_HeaderHovered);
68716876
RenderFrame(frame_bb.Min, frame_bb.Max, bg_col, false);
68726877
}
68736878
RenderNavCursor(frame_bb, id, nav_render_cursor_flags);

0 commit comments

Comments
 (0)