mirror of
https://github.com/Drezil/imgui.git
synced 2024-11-26 13:37:00 +00:00
Begin() windows flags are locked on the first begin of the frame, allowing using to not bother passing flags for append
This commit is contained in:
parent
e5e9c5cfbe
commit
7a31030978
@ -3422,7 +3422,13 @@ bool ImGui::Begin(const char* name, bool* p_opened, const ImVec2& size_on_first_
|
|||||||
window = CreateNewWindow(name, size_on_first_use, flags);
|
window = CreateNewWindow(name, size_on_first_use, flags);
|
||||||
window_is_new = true;
|
window_is_new = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const int current_frame = ImGui::GetFrameCount();
|
||||||
|
const bool first_begin_of_the_frame = (window->LastFrameDrawn != current_frame);
|
||||||
|
if (first_begin_of_the_frame)
|
||||||
window->Flags = (ImGuiWindowFlags)flags;
|
window->Flags = (ImGuiWindowFlags)flags;
|
||||||
|
else
|
||||||
|
flags = window->Flags;
|
||||||
|
|
||||||
// Add to stack
|
// Add to stack
|
||||||
ImGuiWindow* parent_window = !g.CurrentWindowStack.empty() ? g.CurrentWindowStack.back() : NULL;
|
ImGuiWindow* parent_window = !g.CurrentWindowStack.empty() ? g.CurrentWindowStack.back() : NULL;
|
||||||
@ -3431,8 +3437,6 @@ bool ImGui::Begin(const char* name, bool* p_opened, const ImVec2& size_on_first_
|
|||||||
CheckStacksSize(window, true);
|
CheckStacksSize(window, true);
|
||||||
IM_ASSERT(parent_window != NULL || !(flags & ImGuiWindowFlags_ChildWindow));
|
IM_ASSERT(parent_window != NULL || !(flags & ImGuiWindowFlags_ChildWindow));
|
||||||
|
|
||||||
const int current_frame = ImGui::GetFrameCount();
|
|
||||||
const bool first_begin_of_the_frame = (window->LastFrameDrawn != current_frame);
|
|
||||||
bool window_was_visible = (window->LastFrameDrawn == current_frame - 1); // Not using !WasActive because the implicit "Debug" window would always toggle off->on
|
bool window_was_visible = (window->LastFrameDrawn == current_frame - 1); // Not using !WasActive because the implicit "Debug" window would always toggle off->on
|
||||||
if (flags & ImGuiWindowFlags_Popup)
|
if (flags & ImGuiWindowFlags_Popup)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user