mirror of
https://github.com/Drezil/imgui.git
synced 2024-11-22 20:07:01 +00:00
Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows.
+ Added ImGuiDebugLogFlags_EventSelection unused in this branch.
This commit is contained in:
parent
d81f2ae4fb
commit
995f92a456
@ -51,6 +51,8 @@ Other changes:
|
|||||||
in the format string. (#6259) [@idbrii]
|
in the format string. (#6259) [@idbrii]
|
||||||
- Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier so
|
- Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier so
|
||||||
it doesn't interfere with other code when remapping those actions. (#4828, #3255, #5641)
|
it doesn't interfere with other code when remapping those actions. (#4828, #3255, #5641)
|
||||||
|
- Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows when
|
||||||
|
necessary to make the target location fully visible (same as e.g. arrow keys).
|
||||||
- ColorEdit: Fixed shading of S/V triangle in Hue Wheel mode. (#5200, #6254) [@jamesthomasgriffin]
|
- ColorEdit: Fixed shading of S/V triangle in Hue Wheel mode. (#5200, #6254) [@jamesthomasgriffin]
|
||||||
- TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with
|
- TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with
|
||||||
horizontal mouse-wheel (or Shift + WheelY). (#2702)
|
horizontal mouse-wheel (or Shift + WheelY). (#2702)
|
||||||
|
19
imgui.cpp
19
imgui.cpp
@ -11514,17 +11514,15 @@ void ImGui::NavMoveRequestApplyResult()
|
|||||||
|
|
||||||
// Scroll to keep newly navigated item fully into view.
|
// Scroll to keep newly navigated item fully into view.
|
||||||
if (g.NavLayer == ImGuiNavLayer_Main)
|
if (g.NavLayer == ImGuiNavLayer_Main)
|
||||||
{
|
|
||||||
if (g.NavMoveFlags & ImGuiNavMoveFlags_ScrollToEdgeY)
|
|
||||||
{
|
|
||||||
// FIXME: Should remove this
|
|
||||||
float scroll_target = (g.NavMoveDir == ImGuiDir_Up) ? result->Window->ScrollMax.y : 0.0f;
|
|
||||||
SetScrollY(result->Window, scroll_target);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
ImRect rect_abs = WindowRectRelToAbs(result->Window, result->RectRel);
|
ImRect rect_abs = WindowRectRelToAbs(result->Window, result->RectRel);
|
||||||
ScrollToRectEx(result->Window, rect_abs, g.NavMoveScrollFlags);
|
ScrollToRectEx(result->Window, rect_abs, g.NavMoveScrollFlags);
|
||||||
|
|
||||||
|
if (g.NavMoveFlags & ImGuiNavMoveFlags_ScrollToEdgeY)
|
||||||
|
{
|
||||||
|
// FIXME: Should remove this? Or make more precise: use ScrollToRectEx() with edge?
|
||||||
|
float scroll_target = (g.NavMoveDir == ImGuiDir_Up) ? result->Window->ScrollMax.y : 0.0f;
|
||||||
|
SetScrollY(result->Window, scroll_target);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -14359,14 +14357,13 @@ void ImGui::ShowDebugLogWindow(bool* p_open)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
AlignTextToFramePadding();
|
CheckboxFlags("All", &g.DebugLogFlags, ImGuiDebugLogFlags_EventMask_);
|
||||||
Text("Log events:");
|
|
||||||
SameLine(); CheckboxFlags("All", &g.DebugLogFlags, ImGuiDebugLogFlags_EventMask_);
|
|
||||||
SameLine(); CheckboxFlags("ActiveId", &g.DebugLogFlags, ImGuiDebugLogFlags_EventActiveId);
|
SameLine(); CheckboxFlags("ActiveId", &g.DebugLogFlags, ImGuiDebugLogFlags_EventActiveId);
|
||||||
SameLine(); CheckboxFlags("Focus", &g.DebugLogFlags, ImGuiDebugLogFlags_EventFocus);
|
SameLine(); CheckboxFlags("Focus", &g.DebugLogFlags, ImGuiDebugLogFlags_EventFocus);
|
||||||
SameLine(); CheckboxFlags("Popup", &g.DebugLogFlags, ImGuiDebugLogFlags_EventPopup);
|
SameLine(); CheckboxFlags("Popup", &g.DebugLogFlags, ImGuiDebugLogFlags_EventPopup);
|
||||||
SameLine(); CheckboxFlags("Nav", &g.DebugLogFlags, ImGuiDebugLogFlags_EventNav);
|
SameLine(); CheckboxFlags("Nav", &g.DebugLogFlags, ImGuiDebugLogFlags_EventNav);
|
||||||
SameLine(); if (CheckboxFlags("Clipper", &g.DebugLogFlags, ImGuiDebugLogFlags_EventClipper)) { g.DebugLogClipperAutoDisableFrames = 2; } if (IsItemHovered()) SetTooltip("Clipper log auto-disabled after 2 frames");
|
SameLine(); if (CheckboxFlags("Clipper", &g.DebugLogFlags, ImGuiDebugLogFlags_EventClipper)) { g.DebugLogClipperAutoDisableFrames = 2; } if (IsItemHovered()) SetTooltip("Clipper log auto-disabled after 2 frames");
|
||||||
|
//SameLine(); CheckboxFlags("Selection", &g.DebugLogFlags, ImGuiDebugLogFlags_EventSelection);
|
||||||
SameLine(); CheckboxFlags("IO", &g.DebugLogFlags, ImGuiDebugLogFlags_EventIO);
|
SameLine(); CheckboxFlags("IO", &g.DebugLogFlags, ImGuiDebugLogFlags_EventIO);
|
||||||
|
|
||||||
if (SmallButton("Clear"))
|
if (SmallButton("Clear"))
|
||||||
|
@ -230,6 +230,7 @@ namespace ImStb
|
|||||||
#define IMGUI_DEBUG_LOG_FOCUS(...) do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventFocus) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0)
|
#define IMGUI_DEBUG_LOG_FOCUS(...) do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventFocus) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0)
|
||||||
#define IMGUI_DEBUG_LOG_POPUP(...) do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventPopup) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0)
|
#define IMGUI_DEBUG_LOG_POPUP(...) do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventPopup) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0)
|
||||||
#define IMGUI_DEBUG_LOG_NAV(...) do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventNav) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0)
|
#define IMGUI_DEBUG_LOG_NAV(...) do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventNav) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0)
|
||||||
|
#define IMGUI_DEBUG_LOG_SELECTION(...) do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventSelection)IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0)
|
||||||
#define IMGUI_DEBUG_LOG_CLIPPER(...) do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventClipper) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0)
|
#define IMGUI_DEBUG_LOG_CLIPPER(...) do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventClipper) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0)
|
||||||
#define IMGUI_DEBUG_LOG_IO(...) do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventIO) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0)
|
#define IMGUI_DEBUG_LOG_IO(...) do { if (g.DebugLogFlags & ImGuiDebugLogFlags_EventIO) IMGUI_DEBUG_LOG(__VA_ARGS__); } while (0)
|
||||||
|
|
||||||
@ -1670,8 +1671,9 @@ enum ImGuiDebugLogFlags_
|
|||||||
ImGuiDebugLogFlags_EventPopup = 1 << 2,
|
ImGuiDebugLogFlags_EventPopup = 1 << 2,
|
||||||
ImGuiDebugLogFlags_EventNav = 1 << 3,
|
ImGuiDebugLogFlags_EventNav = 1 << 3,
|
||||||
ImGuiDebugLogFlags_EventClipper = 1 << 4,
|
ImGuiDebugLogFlags_EventClipper = 1 << 4,
|
||||||
ImGuiDebugLogFlags_EventIO = 1 << 5,
|
ImGuiDebugLogFlags_EventSelection = 1 << 5,
|
||||||
ImGuiDebugLogFlags_EventMask_ = ImGuiDebugLogFlags_EventActiveId | ImGuiDebugLogFlags_EventFocus | ImGuiDebugLogFlags_EventPopup | ImGuiDebugLogFlags_EventNav | ImGuiDebugLogFlags_EventClipper | ImGuiDebugLogFlags_EventIO,
|
ImGuiDebugLogFlags_EventIO = 1 << 6,
|
||||||
|
ImGuiDebugLogFlags_EventMask_ = ImGuiDebugLogFlags_EventActiveId | ImGuiDebugLogFlags_EventFocus | ImGuiDebugLogFlags_EventPopup | ImGuiDebugLogFlags_EventNav | ImGuiDebugLogFlags_EventClipper | ImGuiDebugLogFlags_EventSelection | ImGuiDebugLogFlags_EventIO,
|
||||||
ImGuiDebugLogFlags_OutputToTTY = 1 << 10, // Also send output to TTY
|
ImGuiDebugLogFlags_OutputToTTY = 1 << 10, // Also send output to TTY
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user