mirror of
				https://github.com/Drezil/imgui.git
				synced 2025-10-31 05:01:05 +01:00 
			
		
		
		
	Bits / comments
This commit is contained in:
		| @@ -87,11 +87,12 @@ Other changes: | |||||||
| - Windows: | - Windows: | ||||||
|   - BeginChild(): Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY to allow resizing |   - BeginChild(): Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY to allow resizing | ||||||
|     child windows from the bottom/right border (toward layout direction). Resized child windows |     child windows from the bottom/right border (toward layout direction). Resized child windows | ||||||
|     settings are saved and persistent in .ini file. (#1666, #1496, #1395, #1710) |     settings are saved and persistent in .ini file. (#1710) | ||||||
|   - BeginChild(): Added ImGuiChildFlags_Border as a replacement for 'bool border = true' parameter. |   - BeginChild(): Added ImGuiChildFlags_Border as a replacement for 'bool border = true' parameter. | ||||||
|   - BeginChild(): Internal name used by child windows now omits the hash/id if the child |   - BeginChild(): Internal name used by child windows now omits the hash/id if the child | ||||||
|     window is submitted in root of id stack of parent window. Makes debugging/metrics easier |     window is submitted in root of id stack of parent window. | ||||||
|     and shorter to read in many cases. |     So "Parent/Child_XXXXXXX" becomes "Parent/Child" when in root of id stack. | ||||||
|  |     Makes debugging/metrics easier and shorter to read in many cases. | ||||||
|   - Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value |   - Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value | ||||||
|     to false when popup is closed in ways other than clicking the close button. (#6900) |     to false when popup is closed in ways other than clicking the close button. (#6900) | ||||||
|   - Double-clicking lower-left resize grip auto-resize (like lower-right one). |   - Double-clicking lower-left resize grip auto-resize (like lower-right one). | ||||||
| @@ -182,6 +183,7 @@ Other changes: | |||||||
| - ImDrawList: Added AddEllipse(), AddEllipseFilled(), PathEllipticalArcTo(). (#2743) [@Doohl] | - ImDrawList: Added AddEllipse(), AddEllipseFilled(), PathEllipticalArcTo(). (#2743) [@Doohl] | ||||||
| - ImVector: Added find_index() helper. | - ImVector: Added find_index() helper. | ||||||
| - Demo: Added "Drag and Drop -> Tooltip at target location" demo. | - Demo: Added "Drag and Drop -> Tooltip at target location" demo. | ||||||
|  | - Demo: Added "Layout -> Child Windows -> Manual-resize" demo. (#1710) | ||||||
| - Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) [@halx99] | - Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) [@halx99] | ||||||
| - Backends: GLFW: Added support for F13 to F24 function keys. (#6891) | - Backends: GLFW: Added support for F13 to F24 function keys. (#6891) | ||||||
| - Backends: SDL2, SDL3: Added support for F13 to F24 function keys, AppBack, AppForward. (#6891) | - Backends: SDL2, SDL3: Added support for F13 to F24 function keys, AppBack, AppForward. (#6891) | ||||||
|   | |||||||
							
								
								
									
										16
									
								
								imgui.h
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								imgui.h
									
									
									
									
									
								
							| @@ -329,9 +329,9 @@ namespace ImGui | |||||||
|     //   Some information such as 'flags' or 'p_open' will only be considered by the first call to Begin(). |     //   Some information such as 'flags' or 'p_open' will only be considered by the first call to Begin(). | ||||||
|     // - Begin() return false to indicate the window is collapsed or fully clipped, so you may early out and omit submitting |     // - Begin() return false to indicate the window is collapsed or fully clipped, so you may early out and omit submitting | ||||||
|     //   anything to the window. Always call a matching End() for each Begin() call, regardless of its return value! |     //   anything to the window. Always call a matching End() for each Begin() call, regardless of its return value! | ||||||
|     //   [Important: due to legacy reason, this is inconsistent with most other functions such as BeginMenu/EndMenu, |     //   [Important: due to legacy reason, Begin/End and BeginChild/EndChild are inconsistent with all other functions | ||||||
|     //    BeginPopup/EndPopup, etc. where the EndXXX call should only be called if the corresponding BeginXXX function |     //    such as BeginMenu/EndMenu, BeginPopup/EndPopup, etc. where the EndXXX call should only be called if the corresponding | ||||||
|     //    returned true. Begin and BeginChild are the only odd ones out. Will be fixed in a future update.] |     //    BeginXXX function returned true. Begin and BeginChild are the only odd ones out. Will be fixed in a future update.] | ||||||
|     // - Note that the bottom of window stack always contains a window called "Debug". |     // - Note that the bottom of window stack always contains a window called "Debug". | ||||||
|     IMGUI_API bool          Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); |     IMGUI_API bool          Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); | ||||||
|     IMGUI_API void          End(); |     IMGUI_API void          End(); | ||||||
| @@ -339,11 +339,11 @@ namespace ImGui | |||||||
|     // Child Windows |     // Child Windows | ||||||
|     // - Use child windows to begin into a self-contained independent scrolling/clipping regions within a host window. Child windows can embed their own child. |     // - Use child windows to begin into a self-contained independent scrolling/clipping regions within a host window. Child windows can embed their own child. | ||||||
|     // - For each independent axis of 'size': ==0.0f: use remaining host window size / >0.0f: fixed size / <0.0f: use remaining window size minus abs(size) / Each axis can use a different mode, e.g. ImVec2(0,400). |     // - For each independent axis of 'size': ==0.0f: use remaining host window size / >0.0f: fixed size / <0.0f: use remaining window size minus abs(size) / Each axis can use a different mode, e.g. ImVec2(0,400). | ||||||
|     // - BeginChild() returns false to indicate the window is collapsed or fully clipped, so you may early out and omit submitting anything to the window. |     // - BeginChild() returns false to indicate the window is collapsed or fully clipped, so you may early out and omit submitting | ||||||
|     //   Always call a matching EndChild() for each BeginChild() call, regardless of its return value. |     //   anything to the window. Always call a matching EndChild() for each BeginChild() call, regardless of its return value. | ||||||
|     //   [Important: due to legacy reason, this is inconsistent with most other functions such as BeginMenu/EndMenu, |     //   [Important: due to legacy reason, Begin/End and BeginChild/EndChild are inconsistent with all other functions | ||||||
|     //    BeginPopup/EndPopup, etc. where the EndXXX call should only be called if the corresponding BeginXXX function |     //    such as BeginMenu/EndMenu, BeginPopup/EndPopup, etc. where the EndXXX call should only be called if the corresponding | ||||||
|     //    returned true. Begin and BeginChild are the only odd ones out. Will be fixed in a future update.] |     //    BeginXXX function returned true. Begin and BeginChild are the only odd ones out. Will be fixed in a future update.] | ||||||
|     IMGUI_API bool          BeginChild(const char* str_id, const ImVec2& size = ImVec2(0, 0), ImGuiChildFlags child_flags = 0, ImGuiWindowFlags window_flags = 0); |     IMGUI_API bool          BeginChild(const char* str_id, const ImVec2& size = ImVec2(0, 0), ImGuiChildFlags child_flags = 0, ImGuiWindowFlags window_flags = 0); | ||||||
|     IMGUI_API bool          BeginChild(ImGuiID id, const ImVec2& size = ImVec2(0, 0), ImGuiChildFlags child_flags = 0, ImGuiWindowFlags window_flags = 0); |     IMGUI_API bool          BeginChild(ImGuiID id, const ImVec2& size = ImVec2(0, 0), ImGuiChildFlags child_flags = 0, ImGuiWindowFlags window_flags = 0); | ||||||
|     IMGUI_API void          EndChild(); |     IMGUI_API void          EndChild(); | ||||||
|   | |||||||
| @@ -2769,10 +2769,10 @@ static void ShowDemoWindowLayout() | |||||||
|         { |         { | ||||||
|             HelpMarker("Drag bottom border to resize. Double-click bottom border to auto-fit to vertical contents."); |             HelpMarker("Drag bottom border to resize. Double-click bottom border to auto-fit to vertical contents."); | ||||||
|             ImGui::PushStyleColor(ImGuiCol_ChildBg, ImGui::GetStyleColorVec4(ImGuiCol_FrameBg)); |             ImGui::PushStyleColor(ImGuiCol_ChildBg, ImGui::GetStyleColorVec4(ImGuiCol_FrameBg)); | ||||||
|             ImGui::BeginChild("ResizableChild", ImVec2(-FLT_MIN, ImGui::GetTextLineHeightWithSpacing() * 8), ImGuiChildFlags_Border | ImGuiChildFlags_ResizeY); |             if (ImGui::BeginChild("ResizableChild", ImVec2(-FLT_MIN, ImGui::GetTextLineHeightWithSpacing() * 8), ImGuiChildFlags_Border | ImGuiChildFlags_ResizeY)) | ||||||
|             ImGui::PopStyleColor(); |  | ||||||
|                 for (int n = 0; n < 10; n++) |                 for (int n = 0; n < 10; n++) | ||||||
|                     ImGui::Text("Line %04d", n); |                     ImGui::Text("Line %04d", n); | ||||||
|  |             ImGui::PopStyleColor(); | ||||||
|             ImGui::EndChild(); |             ImGui::EndChild(); | ||||||
|         } |         } | ||||||
|  |  | ||||||
| @@ -5065,6 +5065,7 @@ static void ShowDemoWindowTables() | |||||||
|         ImGui::CheckboxFlags("ImGuiTreeNodeFlags_SpanFullWidth", &tree_node_flags, ImGuiTreeNodeFlags_SpanFullWidth); |         ImGui::CheckboxFlags("ImGuiTreeNodeFlags_SpanFullWidth", &tree_node_flags, ImGuiTreeNodeFlags_SpanFullWidth); | ||||||
|         ImGui::CheckboxFlags("ImGuiTreeNodeFlags_SpanAllColumns", &tree_node_flags, ImGuiTreeNodeFlags_SpanAllColumns); |         ImGui::CheckboxFlags("ImGuiTreeNodeFlags_SpanAllColumns", &tree_node_flags, ImGuiTreeNodeFlags_SpanAllColumns); | ||||||
|  |  | ||||||
|  |         HelpMarker("See \"Columns flags\" section to configure how indentation is applied to individual columns."); | ||||||
|         if (ImGui::BeginTable("3ways", 3, flags)) |         if (ImGui::BeginTable("3ways", 3, flags)) | ||||||
|         { |         { | ||||||
|             // The first column will use the default _WidthStretch when ScrollX is Off and _WidthFixed when ScrollX is On |             // The first column will use the default _WidthStretch when ScrollX is Off and _WidthFixed when ScrollX is On | ||||||
|   | |||||||
| @@ -321,7 +321,7 @@ bool    ImGui::BeginTableEx(const char* name, ImGuiID id, int columns_count, ImG | |||||||
|     const ImVec2 avail_size = GetContentRegionAvail(); |     const ImVec2 avail_size = GetContentRegionAvail(); | ||||||
|     const ImVec2 actual_outer_size = CalcItemSize(outer_size, ImMax(avail_size.x, 1.0f), use_child_window ? ImMax(avail_size.y, 1.0f) : 0.0f); |     const ImVec2 actual_outer_size = CalcItemSize(outer_size, ImMax(avail_size.x, 1.0f), use_child_window ? ImMax(avail_size.y, 1.0f) : 0.0f); | ||||||
|     const ImRect outer_rect(outer_window->DC.CursorPos, outer_window->DC.CursorPos + actual_outer_size); |     const ImRect outer_rect(outer_window->DC.CursorPos, outer_window->DC.CursorPos + actual_outer_size); | ||||||
|     const bool outer_window_is_measuring_size = (outer_window->AutoFitFramesX > 0) || (outer_window->AutoFitFramesY > 0); // Doesn't apply to auto-fitting windows! |     const bool outer_window_is_measuring_size = (outer_window->AutoFitFramesX > 0) || (outer_window->AutoFitFramesY > 0); // Doesn't apply to AlwaysAutoResize windows! | ||||||
|     if (use_child_window && IsClippedEx(outer_rect, 0) && !outer_window_is_measuring_size) |     if (use_child_window && IsClippedEx(outer_rect, 0) && !outer_window_is_measuring_size) | ||||||
|     { |     { | ||||||
|         ItemSize(outer_rect); |         ItemSize(outer_rect); | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user