mirror of
				https://github.com/Drezil/imgui.git
				synced 2025-10-31 21:21:06 +01:00 
			
		
		
		
	Removed per-window ImGuiWindowFlags_ResizeFromAnySide beta flag in favor io.OptResizeWindowsFromEdges=true to enable the feature globally. (#1495) The feature is not currently enabled by default because it is not satisfying enough.
				
					
				
			This commit is contained in:
		| @@ -33,16 +33,23 @@ HOW TO UPDATE? | ||||
|  VERSION 1.63 WIP (IN PROGRESS) | ||||
| ----------------------------------------------------------------------- | ||||
|  | ||||
| Breaking Changes: | ||||
|  | ||||
|  - Removed per-window ImGuiWindowFlags_ResizeFromAnySide beta flag in favor `io.OptResizeWindowsFromEdges=true` to enable the feature globally. (#1495) | ||||
|    The feature is not currently enabled by default because it is not satisfying enough. | ||||
|  | ||||
| Other Changes: | ||||
|  | ||||
|  - ArrowButton: Fixed to honor PushButtonRepeat() setting (and internals' ImGuiItemFlags_ButtonRepeat). | ||||
|  - ArrowButton: Setup current line text baseline so that ArrowButton() + SameLine() + Text() are aligned properly. | ||||
|  - Window: Allow menu windows from ignoring the style.WindowMinSize values so short menus are not padded. (#1909) | ||||
|  - Window: Added global io.OptResizeWindowsFromEdges option to enable resizing windows from their edges and from the lower-left corner. (#1495) | ||||
|  - Misc: Added ImGuiMouseCursor_Hand cursor enum + corresponding software cursor. (#1913, 1914) [@aiekick, @ocornut]  | ||||
|  - Misc: Tweaked software mouse cursor offset to match the offset of the corresponding Windows 10 cursors. | ||||
|  - Fixed a include build issue for Cygwin in non-POSIX (Win32) mode. (#1917, #1319, #276) | ||||
|  - Examples: Win32, Glfw, SDL: Added support for the ImGuiMouseCursor_Hand cursor. | ||||
|  | ||||
|  | ||||
| ----------------------------------------------------------------------- | ||||
|  VERSION 1.62 (Released 2018-06-22) | ||||
| ----------------------------------------------------------------------- | ||||
|   | ||||
| @@ -305,6 +305,7 @@ | ||||
|  When you are not sure about a old symbol or function name, try using the Search/Find function of your IDE to look for comments or references in all imgui files. | ||||
|  You can read releases logs https://github.com/ocornut/imgui/releases for more details. | ||||
|  | ||||
|  - 2018/07/06 (1.63) - removed per-window ImGuiWindowFlags_ResizeFromAnySide beta flag in favor of a global io.OptResizeWindowsFromEdges to enable the feature. | ||||
|  - 2018/06/06 (1.62) - renamed GetGlyphRangesChinese() to GetGlyphRangesChineseFull() to distinguish other variants and discourage using the full set. | ||||
|  - 2018/06/06 (1.62) - TreeNodeEx()/TreeNodeBehavior(): the ImGuiTreeNodeFlags_CollapsingHeader helper now include the ImGuiTreeNodeFlags_NoTreePushOnOpen flag. See Changelog for details.  | ||||
|  - 2018/05/03 (1.61) - DragInt(): the default compile-time format string has been changed from "%.0f" to "%d", as we are not using integers internally any more. | ||||
| @@ -3715,6 +3716,10 @@ void ImGui::NewFrame() | ||||
|     if (g.IO.ConfigFlags & ImGuiConfigFlags_NavEnableKeyboard) | ||||
|         IM_ASSERT(g.IO.KeyMap[ImGuiKey_Space] != -1 && "ImGuiKey_Space is not mapped, required for keyboard navigation."); | ||||
|  | ||||
|     // The beta io.OptResizeWindowsFromEdges option requires back-end to honor mouse cursor changes and set the ImGuiBackendFlags_HasMouseCursors flag accordingly. | ||||
|     if (g.IO.OptResizeWindowsFromEdges && !(g.IO.BackendFlags & ImGuiBackendFlags_HasMouseCursors)) | ||||
|         g.IO.OptResizeWindowsFromEdges = false; | ||||
|  | ||||
|     // Load settings on first frame (if not explicitly loaded manually before) | ||||
|     if (!g.SettingsLoaded) | ||||
|     { | ||||
| @@ -5936,7 +5941,7 @@ static void ImGui::UpdateManualResize(ImGuiWindow* window, const ImVec2& size_au | ||||
|     if ((flags & ImGuiWindowFlags_NoResize) || (flags & ImGuiWindowFlags_AlwaysAutoResize) || window->AutoFitFramesX > 0 || window->AutoFitFramesY > 0) | ||||
|         return; | ||||
|  | ||||
|     const int resize_border_count = (flags & ImGuiWindowFlags_ResizeFromAnySide) ? 4 : 0; | ||||
|     const int resize_border_count = g.IO.OptResizeWindowsFromEdges ? 4 : 0; | ||||
|     const float grip_draw_size = (float)(int)ImMax(g.FontSize * 1.35f, window->WindowRounding + 1.0f + g.FontSize * 0.2f); | ||||
|     const float grip_hover_size = (float)(int)(grip_draw_size * 0.75f); | ||||
|  | ||||
| @@ -6337,7 +6342,7 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) | ||||
|         // Handle manual resize: Resize Grips, Borders, Gamepad | ||||
|         int border_held = -1; | ||||
|         ImU32 resize_grip_col[4] = { 0 }; | ||||
|         const int resize_grip_count = (flags & ImGuiWindowFlags_ResizeFromAnySide) ? 2 : 1; // 4 | ||||
|         const int resize_grip_count = g.IO.OptResizeWindowsFromEdges ? 2 : 1; // 4 | ||||
|         const float grip_draw_size = (float)(int)ImMax(g.FontSize * 1.35f, window->WindowRounding + 1.0f + g.FontSize * 0.2f); | ||||
|         if (!window->Collapsed) | ||||
|             UpdateManualResize(window, size_auto_fit, &border_held, resize_grip_count, &resize_grip_col[0]); | ||||
|   | ||||
							
								
								
									
										9
									
								
								imgui.h
									
									
									
									
									
								
							
							
						
						
									
										9
									
								
								imgui.h
									
									
									
									
									
								
							| @@ -595,7 +595,6 @@ enum ImGuiWindowFlags_ | ||||
|     ImGuiWindowFlags_NoScrollWithMouse      = 1 << 4,   // Disable user vertically scrolling with mouse wheel. On child window, mouse wheel will be forwarded to the parent unless NoScrollbar is also set. | ||||
|     ImGuiWindowFlags_NoCollapse             = 1 << 5,   // Disable user collapsing window by double-clicking on it | ||||
|     ImGuiWindowFlags_AlwaysAutoResize       = 1 << 6,   // Resize every window to its content every frame | ||||
|     //ImGuiWindowFlags_ShowBorders          = 1 << 7,   // Show borders around windows and items (OBSOLETE! Use e.g. style.FrameBorderSize=1.0f to enable borders). | ||||
|     ImGuiWindowFlags_NoSavedSettings        = 1 << 8,   // Never load/save settings in .ini file | ||||
|     ImGuiWindowFlags_NoInputs               = 1 << 9,   // Disable catching mouse or keyboard inputs, hovering test with pass through. | ||||
|     ImGuiWindowFlags_MenuBar                = 1 << 10,  // Has a menu-bar | ||||
| @@ -605,7 +604,6 @@ enum ImGuiWindowFlags_ | ||||
|     ImGuiWindowFlags_AlwaysVerticalScrollbar= 1 << 14,  // Always show vertical scrollbar (even if ContentSize.y < Size.y) | ||||
|     ImGuiWindowFlags_AlwaysHorizontalScrollbar=1<< 15,  // Always show horizontal scrollbar (even if ContentSize.x < Size.x) | ||||
|     ImGuiWindowFlags_AlwaysUseWindowPadding = 1 << 16,  // Ensure child windows without border uses style.WindowPadding (ignored by default for non-bordered child windows, because more convenient) | ||||
|     ImGuiWindowFlags_ResizeFromAnySide      = 1 << 17,  // [BETA] Enable resize from any corners and borders. Your back-end needs to honor the different values of io.MouseCursor set by imgui. | ||||
|     ImGuiWindowFlags_NoNavInputs            = 1 << 18,  // No gamepad/keyboard navigation within the window | ||||
|     ImGuiWindowFlags_NoNavFocus             = 1 << 19,  // No focusing toward this window with gamepad/keyboard navigation (e.g. skipped by CTRL+TAB) | ||||
|     ImGuiWindowFlags_NoNav                  = ImGuiWindowFlags_NoNavInputs | ImGuiWindowFlags_NoNavFocus, | ||||
| @@ -617,6 +615,10 @@ enum ImGuiWindowFlags_ | ||||
|     ImGuiWindowFlags_Popup                  = 1 << 26,  // Don't use! For internal use by BeginPopup() | ||||
|     ImGuiWindowFlags_Modal                  = 1 << 27,  // Don't use! For internal use by BeginPopupModal() | ||||
|     ImGuiWindowFlags_ChildMenu              = 1 << 28   // Don't use! For internal use by BeginMenu() | ||||
|  | ||||
|     // [Obsolete] | ||||
|     //ImGuiWindowFlags_ShowBorders          = 1 << 7,   // --> Set style.FrameBorderSize=1.0f / style.WindowBorderSize=1.0f to enable borders around windows and items | ||||
|     //ImGuiWindowFlags_ResizeFromAnySide    = 1 << 17,  // --> Set io.OptResizeWindowsFromEdges and make sure mouse cursors are supported by back-end (io.BackendFlags & ImGuiBackendFlags_HasMouseCursors) | ||||
| }; | ||||
|  | ||||
| // Flags for ImGui::InputText() | ||||
| @@ -1079,9 +1081,10 @@ struct ImGuiIO | ||||
|     ImVec2        DisplayVisibleMin;        // <unset> (0.0f,0.0f)  // If you use DisplaySize as a virtual space larger than your screen, set DisplayVisibleMin/Max to the visible area. | ||||
|     ImVec2        DisplayVisibleMax;        // <unset> (0.0f,0.0f)  // If the values are the same, we defaults to Min=(0.0f) and Max=DisplaySize | ||||
|  | ||||
|     // Advanced/subtle behaviors | ||||
|     // Miscellaneous options | ||||
|     bool          OptMacOSXBehaviors;       // = defined(__APPLE__) // OS X style: Text editing cursor movement using Alt instead of Ctrl, Shortcuts using Cmd/Super instead of Ctrl, Line/Text Start and End using Cmd+Arrows instead of Home/End, Double click selects by word instead of selecting whole text, Multi-selection in lists uses Cmd/Super instead of Ctrl | ||||
|     bool          OptCursorBlink;           // = true               // Enable blinking cursor, for users who consider it annoying. | ||||
|     bool          OptResizeWindowsFromEdges;// = false              // [BETA] Enable resizing of windows from their edges and from the lower-left corner. This requires (io.BackendFlags & ImGuiBackendFlags_HasMouseCursors) because it needs mouse cursor feedback. (This used to be the ImGuiWindowFlags_ResizeFromAnySide flag) | ||||
|  | ||||
|     //------------------------------------------------------------------ | ||||
|     // Settings (User Functions) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user