Nav: Minor tidying up. (#787)

This commit is contained in:
omar 2018-02-05 14:53:07 +01:00
parent 2081fc15b5
commit 8ad88f725c
4 changed files with 15 additions and 15 deletions

View File

@ -5035,7 +5035,6 @@ void ImGui::EndChild()
ImGuiWindow* parent_window = g.CurrentWindow; ImGuiWindow* parent_window = g.CurrentWindow;
ImRect bb(parent_window->DC.CursorPos, parent_window->DC.CursorPos + sz); ImRect bb(parent_window->DC.CursorPos, parent_window->DC.CursorPos + sz);
ItemSize(sz); ItemSize(sz);
if ((window->DC.NavLayerActiveMask != 0 || window->DC.NavHasScroll) && !(window->Flags & ImGuiWindowFlags_NavFlattened)) if ((window->DC.NavLayerActiveMask != 0 || window->DC.NavHasScroll) && !(window->Flags & ImGuiWindowFlags_NavFlattened))
{ {
@ -6265,13 +6264,13 @@ void ImGui::FocusWindow(ImGuiWindow* window)
if (g.NavWindow != window) if (g.NavWindow != window)
{ {
g.NavId = window ? window->NavLastIds[0] : 0; // Restore NavId
g.NavIdIsAlive = false;
g.NavLayer = 0;
g.NavWindow = window; g.NavWindow = window;
if (window && g.NavDisableMouseHover) if (window && g.NavDisableMouseHover)
g.NavMousePosDirty = true; g.NavMousePosDirty = true;
g.NavInitRequest = false; g.NavInitRequest = false;
g.NavId = window ? window->NavLastIds[0] : 0; // Restore NavId
g.NavIdIsAlive = false;
g.NavLayer = 0;
} }
// Passing NULL allow to disable keyboard focus // Passing NULL allow to disable keyboard focus

View File

@ -455,6 +455,7 @@ namespace ImGui
IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL);
// Focus, Activation // Focus, Activation
// (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged)
IMGUI_API void SetItemDefaultFocus(); // make last item the default focused item of a window. Please use instead of "if (IsWindowAppearing()) SetScrollHere()" to signify "default item". IMGUI_API void SetItemDefaultFocus(); // make last item the default focused item of a window. Please use instead of "if (IsWindowAppearing()) SetScrollHere()" to signify "default item".
IMGUI_API void SetKeyboardFocusHere(int offset = 0); // focus keyboard on the next widget. Use positive 'offset' to access sub components of a multiple component widget. Use -1 to access previous widget. IMGUI_API void SetKeyboardFocusHere(int offset = 0); // focus keyboard on the next widget. Use positive 'offset' to access sub components of a multiple component widget. Use -1 to access previous widget.

View File

@ -2730,7 +2730,7 @@ struct ExampleAppConsole
// Demonstrate keeping focus on the input box // Demonstrate keeping focus on the input box
ImGui::SetItemDefaultFocus(); ImGui::SetItemDefaultFocus();
if (reclaim_focus) //|| ImGui::IsItemHovered()) if (reclaim_focus)
ImGui::SetKeyboardFocusHere(-1); // Auto focus previous widget ImGui::SetKeyboardFocusHere(-1); // Auto focus previous widget
ImGui::End(); ImGui::End();

View File

@ -247,6 +247,16 @@ enum ImGuiDataType
ImGuiDataType_Float2 ImGuiDataType_Float2
}; };
enum ImGuiDir
{
ImGuiDir_None = -1,
ImGuiDir_Left = 0,
ImGuiDir_Right = 1,
ImGuiDir_Up = 2,
ImGuiDir_Down = 3,
ImGuiDir_Count_
};
enum ImGuiInputSource enum ImGuiInputSource
{ {
ImGuiInputSource_None = 0, ImGuiInputSource_None = 0,
@ -268,16 +278,6 @@ enum ImGuiInputReadMode
ImGuiInputReadMode_RepeatFast ImGuiInputReadMode_RepeatFast
}; };
enum ImGuiDir
{
ImGuiDir_None = -1,
ImGuiDir_Left = 0,
ImGuiDir_Right = 1,
ImGuiDir_Up = 2,
ImGuiDir_Down = 3,
ImGuiDir_Count_
};
enum ImGuiNavHighlightFlags_ enum ImGuiNavHighlightFlags_
{ {
ImGuiNavHighlightFlags_TypeDefault = 1 << 0, ImGuiNavHighlightFlags_TypeDefault = 1 << 0,