mirror of
				https://github.com/Drezil/imgui.git
				synced 2025-10-31 13:11:05 +01:00 
			
		
		
		
	Comments about limiting WindowRounding to a reasonable size.
This commit is contained in:
		| @@ -1008,7 +1008,7 @@ ImGuiStyle::ImGuiStyle() | |||||||
| { | { | ||||||
|     Alpha                   = 1.0f;             // Global alpha applies to everything in ImGui |     Alpha                   = 1.0f;             // Global alpha applies to everything in ImGui | ||||||
|     WindowPadding           = ImVec2(8,8);      // Padding within a window |     WindowPadding           = ImVec2(8,8);      // Padding within a window | ||||||
|     WindowRounding          = 7.0f;             // Radius of window corners rounding. Set to 0.0f to have rectangular windows |     WindowRounding          = 7.0f;             // Radius of window corners rounding. Set to 0.0f to have rectangular windows. Large values tend to lead to variety of artifacts and are not recommended. | ||||||
|     WindowBorderSize        = 1.0f;             // Thickness of border around windows. Generally set to 0.0f or 1.0f. Other values not well tested. |     WindowBorderSize        = 1.0f;             // Thickness of border around windows. Generally set to 0.0f or 1.0f. Other values not well tested. | ||||||
|     WindowMinSize           = ImVec2(32,32);    // Minimum window size |     WindowMinSize           = ImVec2(32,32);    // Minimum window size | ||||||
|     WindowTitleAlign        = ImVec2(0.0f,0.5f);// Alignment for title bar text |     WindowTitleAlign        = ImVec2(0.0f,0.5f);// Alignment for title bar text | ||||||
| @@ -5757,8 +5757,13 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags) | |||||||
|         window->Pos = ImFloor(window->Pos); |         window->Pos = ImFloor(window->Pos); | ||||||
|  |  | ||||||
|         // Lock window rounding for the frame (so that altering them doesn't cause inconsistencies) |         // Lock window rounding for the frame (so that altering them doesn't cause inconsistencies) | ||||||
|  |         // Large values tend to lead to variety of artifacts and are not recommended. | ||||||
|         window->WindowRounding = (flags & ImGuiWindowFlags_ChildWindow) ? style.ChildRounding : ((flags & ImGuiWindowFlags_Popup) && !(flags & ImGuiWindowFlags_Modal)) ? style.PopupRounding : style.WindowRounding; |         window->WindowRounding = (flags & ImGuiWindowFlags_ChildWindow) ? style.ChildRounding : ((flags & ImGuiWindowFlags_Popup) && !(flags & ImGuiWindowFlags_Modal)) ? style.PopupRounding : style.WindowRounding; | ||||||
|  |  | ||||||
|  |         // For windows with title bar or menu bar, we clamp to FrameHeight(FontSize + FramePadding.y * 2.0f) to completely hide artifacts. | ||||||
|  |         //if ((window->Flags & ImGuiWindowFlags_MenuBar) || !(window->Flags & ImGuiWindowFlags_NoTitleBar)) | ||||||
|  |         //    window->WindowRounding = ImMin(window->WindowRounding, g.FontSize + style.FramePadding.y * 2.0f); | ||||||
|  |  | ||||||
|         // Apply window focus (new and reactivated windows are moved to front) |         // Apply window focus (new and reactivated windows are moved to front) | ||||||
|         bool want_focus = false; |         bool want_focus = false; | ||||||
|         if (window_just_activated_by_user && !(flags & ImGuiWindowFlags_NoFocusOnAppearing)) |         if (window_just_activated_by_user && !(flags & ImGuiWindowFlags_NoFocusOnAppearing)) | ||||||
|   | |||||||
							
								
								
									
										2
									
								
								imgui.h
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								imgui.h
									
									
									
									
									
								
							| @@ -1371,7 +1371,7 @@ struct ImGuiStyle | |||||||
| { | { | ||||||
|     float       Alpha;                      // Global alpha applies to everything in Dear ImGui. |     float       Alpha;                      // Global alpha applies to everything in Dear ImGui. | ||||||
|     ImVec2      WindowPadding;              // Padding within a window. |     ImVec2      WindowPadding;              // Padding within a window. | ||||||
|     float       WindowRounding;             // Radius of window corners rounding. Set to 0.0f to have rectangular windows. |     float       WindowRounding;             // Radius of window corners rounding. Set to 0.0f to have rectangular windows. Large values tend to lead to variety of artifacts and are not recommended. | ||||||
|     float       WindowBorderSize;           // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). |     float       WindowBorderSize;           // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). | ||||||
|     ImVec2      WindowMinSize;              // Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints(). |     ImVec2      WindowMinSize;              // Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints(). | ||||||
|     ImVec2      WindowTitleAlign;           // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. |     ImVec2      WindowTitleAlign;           // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. | ||||||
|   | |||||||
| @@ -1561,7 +1561,7 @@ struct IMGUI_API ImGuiWindow | |||||||
|     ImVec2                  ContentSize;                        // Size of contents/scrollable client area (calculated from the extents reach of the cursor) from previous frame. Does not include window decoration or window padding. |     ImVec2                  ContentSize;                        // Size of contents/scrollable client area (calculated from the extents reach of the cursor) from previous frame. Does not include window decoration or window padding. | ||||||
|     ImVec2                  ContentSizeExplicit;                // Size of contents/scrollable client area explicitly request by the user via SetNextWindowContentSize(). |     ImVec2                  ContentSizeExplicit;                // Size of contents/scrollable client area explicitly request by the user via SetNextWindowContentSize(). | ||||||
|     ImVec2                  WindowPadding;                      // Window padding at the time of Begin(). |     ImVec2                  WindowPadding;                      // Window padding at the time of Begin(). | ||||||
|     float                   WindowRounding;                     // Window rounding at the time of Begin(). |     float                   WindowRounding;                     // Window rounding at the time of Begin(). May be clamped lower to avoid rendering artifacts with title bar, menu bar etc. | ||||||
|     float                   WindowBorderSize;                   // Window border size at the time of Begin(). |     float                   WindowBorderSize;                   // Window border size at the time of Begin(). | ||||||
|     int                     NameBufLen;                         // Size of buffer storing Name. May be larger than strlen(Name)! |     int                     NameBufLen;                         // Size of buffer storing Name. May be larger than strlen(Name)! | ||||||
|     ImGuiID                 MoveId;                             // == window->GetID("#MOVE") |     ImGuiID                 MoveId;                             // == window->GetID("#MOVE") | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user