mirror of
https://github.com/Drezil/imgui.git
synced 2025-07-07 21:39:54 +02:00
Navigation: Moving NavInitWindow() around and making it static (#323)
This commit is contained in:
36
imgui.cpp
36
imgui.cpp
@ -2265,6 +2265,24 @@ int ImGui::GetFrameCount()
|
||||
return GImGui->FrameCount;
|
||||
}
|
||||
|
||||
// This needs to be called before we submit any widget (aka in or before Begin)
|
||||
static void NavInitWindow(ImGuiWindow* window)
|
||||
{
|
||||
ImGuiContext& g = *GImGui;
|
||||
if (!(window->Flags & ImGuiWindowFlags_ChildWindow) || (window->Flags & ImGuiWindowFlags_Popup) || (window->NavLastId == 0))
|
||||
{
|
||||
g.NavId = window->NavLastId = 0;
|
||||
g.NavInitDefaultRequest = true;
|
||||
g.NavInitDefaultResultExplicit = false;
|
||||
g.NavInitDefaultResultId = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
g.NavId = window->NavLastId;
|
||||
}
|
||||
g.NavWindow = window;
|
||||
}
|
||||
|
||||
static ImVec2 NavCalcPreferredMousePos()
|
||||
{
|
||||
ImGuiContext& g = *GImGui;
|
||||
@ -5059,24 +5077,6 @@ void ImGui::FocusWindow(ImGuiWindow* window)
|
||||
g.Windows.push_back(window);
|
||||
}
|
||||
|
||||
// This needs to be called before we submit any widget (aka in or before Begin)
|
||||
void ImGui::NavInitWindow(ImGuiWindow* window)
|
||||
{
|
||||
ImGuiContext& g = *GImGui;
|
||||
if (!(window->Flags & ImGuiWindowFlags_ChildWindow) || (window->Flags & ImGuiWindowFlags_Popup) || (window->NavLastId == 0))
|
||||
{
|
||||
g.NavId = window->NavLastId = 0;
|
||||
g.NavInitDefaultRequest = true;
|
||||
g.NavInitDefaultResultExplicit = false;
|
||||
g.NavInitDefaultResultId = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
g.NavId = window->NavLastId;
|
||||
}
|
||||
g.NavWindow = window;
|
||||
}
|
||||
|
||||
void ImGui::PushItemWidth(float item_width)
|
||||
{
|
||||
ImGuiWindow* window = GetCurrentWindow();
|
||||
|
Reference in New Issue
Block a user