Combo: Recycling windows by using a stack number instead of a unique id, wasitng less windows.

This commit is contained in:
omar 2017-12-08 14:48:25 +01:00
parent e998c7d3e3
commit befc58771c

View File

@ -9135,8 +9135,8 @@ bool ImGui::BeginCombo(const char* label, const char* preview_value, ImGuiComboF
SetNextWindowSizeConstraints(ImVec2(w, 0.0f), ImVec2(FLT_MAX, CalcMaxPopupHeightFromItemCount(popup_max_height_in_items))); SetNextWindowSizeConstraints(ImVec2(w, 0.0f), ImVec2(FLT_MAX, CalcMaxPopupHeightFromItemCount(popup_max_height_in_items)));
} }
char name[20]; char name[16];
ImFormatString(name, IM_ARRAYSIZE(name), "##combo_%08X", id); ImFormatString(name, IM_ARRAYSIZE(name), "##combo_%d", g.CurrentPopupStack.Size); // Recycle windows based on depth
// Peak into expected window size so we can position it // Peak into expected window size so we can position it
if (ImGuiWindow* popup_window = FindWindowByName(name)) if (ImGuiWindow* popup_window = FindWindowByName(name))