mirror of
				https://github.com/Drezil/imgui.git
				synced 2025-10-31 13:11:05 +01:00 
			
		
		
		
	Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows.
+ Added ImGuiDebugLogFlags_EventSelection unused in this branch.
This commit is contained in:
		| @@ -51,6 +51,8 @@ Other changes: | ||||
|   in the format string. (#6259) [@idbrii] | ||||
| - 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) | ||||
| - 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] | ||||
| - TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with | ||||
|   horizontal mouse-wheel (or Shift + WheelY). (#2702) | ||||
|   | ||||
							
								
								
									
										15
									
								
								imgui.cpp
									
									
									
									
									
								
							
							
						
						
									
										15
									
								
								imgui.cpp
									
									
									
									
									
								
							| @@ -11515,17 +11515,15 @@ void ImGui::NavMoveRequestApplyResult() | ||||
|     // Scroll to keep newly navigated item fully into view. | ||||
|     if (g.NavLayer == ImGuiNavLayer_Main) | ||||
|     { | ||||
|         ImRect rect_abs = WindowRectRelToAbs(result->Window, result->RectRel); | ||||
|         ScrollToRectEx(result->Window, rect_abs, g.NavMoveScrollFlags); | ||||
|  | ||||
|         if (g.NavMoveFlags & ImGuiNavMoveFlags_ScrollToEdgeY) | ||||
|         { | ||||
|             // FIXME: Should remove this | ||||
|             // 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); | ||||
|         } | ||||
|         else | ||||
|         { | ||||
|             ImRect rect_abs = WindowRectRelToAbs(result->Window, result->RectRel); | ||||
|             ScrollToRectEx(result->Window, rect_abs, g.NavMoveScrollFlags); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     if (g.NavWindow != result->Window) | ||||
| @@ -14359,14 +14357,13 @@ void ImGui::ShowDebugLogWindow(bool* p_open) | ||||
|         return; | ||||
|     } | ||||
|  | ||||
|     AlignTextToFramePadding(); | ||||
|     Text("Log events:"); | ||||
|     SameLine(); CheckboxFlags("All", &g.DebugLogFlags, ImGuiDebugLogFlags_EventMask_); | ||||
|     CheckboxFlags("All", &g.DebugLogFlags, ImGuiDebugLogFlags_EventMask_); | ||||
|     SameLine(); CheckboxFlags("ActiveId", &g.DebugLogFlags, ImGuiDebugLogFlags_EventActiveId); | ||||
|     SameLine(); CheckboxFlags("Focus", &g.DebugLogFlags, ImGuiDebugLogFlags_EventFocus); | ||||
|     SameLine(); CheckboxFlags("Popup", &g.DebugLogFlags, ImGuiDebugLogFlags_EventPopup); | ||||
|     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(); CheckboxFlags("Selection", &g.DebugLogFlags, ImGuiDebugLogFlags_EventSelection); | ||||
|     SameLine(); CheckboxFlags("IO", &g.DebugLogFlags, ImGuiDebugLogFlags_EventIO); | ||||
|  | ||||
|     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_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_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_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_EventNav         = 1 << 3, | ||||
|     ImGuiDebugLogFlags_EventClipper     = 1 << 4, | ||||
|     ImGuiDebugLogFlags_EventIO          = 1 << 5, | ||||
|     ImGuiDebugLogFlags_EventMask_       = ImGuiDebugLogFlags_EventActiveId  | ImGuiDebugLogFlags_EventFocus | ImGuiDebugLogFlags_EventPopup | ImGuiDebugLogFlags_EventNav | ImGuiDebugLogFlags_EventClipper | ImGuiDebugLogFlags_EventIO, | ||||
|     ImGuiDebugLogFlags_EventSelection   = 1 << 5, | ||||
|     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 | ||||
| }; | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user