@ -6218,7 +6218,10 @@ bool ImGui::BeginTabItem(const char* label, bool* p_open, ImGuiTabItemFlags f
ImGuiTabBar * tab_bar = g . CurrentTabBar . back ( ) ;
ImGuiTabBar * tab_bar = g . CurrentTabBar . back ( ) ;
bool ret = TabItemEx ( tab_bar , label , p_open , flags ) ;
bool ret = TabItemEx ( tab_bar , label , p_open , flags ) ;
if ( ret & & ! ( flags & ImGuiTabItemFlags_NoPushId ) )
if ( ret & & ! ( flags & ImGuiTabItemFlags_NoPushId ) )
PushID ( tab_bar - > Tabs [ tab_bar - > LastTabItemIdx ] . ID ) ;
{
ImGuiTabItem * tab = & tab_bar - > Tabs [ tab_bar - > LastTabItemIdx ] ;
g . CurrentWindow - > IDStack . push_back ( tab - > ID ) ; // We already hashed 'label' so push into the ID stack directly instead of doing another hash through PushID(label)
}
return ret ;
return ret ;
}
}
@ -6232,7 +6235,7 @@ void ImGui::EndTabItem()
ImGuiTabBar * tab_bar = g . CurrentTabBar . back ( ) ;
ImGuiTabBar * tab_bar = g . CurrentTabBar . back ( ) ;
ImGuiTabItem * tab = & tab_bar - > Tabs [ tab_bar - > LastTabItemIdx ] ;
ImGuiTabItem * tab = & tab_bar - > Tabs [ tab_bar - > LastTabItemIdx ] ;
if ( ! ( tab - > Flags & ImGuiTabItemFlags_NoPushId ) )
if ( ! ( tab - > Flags & ImGuiTabItemFlags_NoPushId ) )
PopID ( ) ;
g. CurrentWindow - > IDStack . pop_back ( ) ;
}
}
bool ImGui : : TabItemEx ( ImGuiTabBar * tab_bar , const char * label , bool * p_open , ImGuiTabItemFlags flags )
bool ImGui : : TabItemEx ( ImGuiTabBar * tab_bar , const char * label , bool * p_open , ImGuiTabItemFlags flags )