Internals: Nav: PushFocusScope, PopFocusScope, GetFocusScopeID() helpers

This commit is contained in:
omar
2020-01-14 20:34:26 +01:00
parent 2ebe08be40
commit f6d6880a61
2 changed files with 21 additions and 0 deletions

View File

@ -1703,6 +1703,11 @@ namespace ImGui
IMGUI_API void SetNavID(ImGuiID id, int nav_layer, int focus_scope_id);
IMGUI_API void SetNavIDWithRectRel(ImGuiID id, int nav_layer, int focus_scope_id, const ImRect& rect_rel);
// Focus scope (WIP)
IMGUI_API void PushFocusScope(ImGuiID id); // Note: this is storing in same stack as IDStack, so Push/Pop mismatch will be reported there.
IMGUI_API void PopFocusScope();
inline ImGuiID GetFocusScopeID() { ImGuiContext& g = *GImGui; return g.NavFocusScopeId; }
// Inputs
// FIXME: Eventually we should aim to move e.g. IsActiveIdUsingKey() into IsKeyXXX functions.
inline bool IsActiveIdUsingNavDir(ImGuiDir dir) { ImGuiContext& g = *GImGui; return (g.ActiveIdUsingNavDirMask & (1 << dir)) != 0; }