mirror of
				https://github.com/ocornut/imgui.git
				synced 2025-11-04 09:44:29 +00:00 
			
		
		
		
	PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets.
This commit is contained in:
		@@ -41,6 +41,7 @@ All changes:
 | 
				
			|||||||
  is scaled. Scaling wasn't taken into account, leading to ellipsis character straying
 | 
					  is scaled. Scaling wasn't taken into account, leading to ellipsis character straying
 | 
				
			||||||
  slightly out of its expected boundaries. (#2775)
 | 
					  slightly out of its expected boundaries. (#2775)
 | 
				
			||||||
- Text: Tweaked rendering of three-dots "..." ellipsis variant. (#2775, #4269)
 | 
					- Text: Tweaked rendering of three-dots "..." ellipsis variant. (#2775, #4269)
 | 
				
			||||||
 | 
					- PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
-----------------------------------------------------------------------
 | 
					-----------------------------------------------------------------------
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -3130,7 +3130,7 @@ namespace ImGui
 | 
				
			|||||||
    IMGUI_API void          ColorPickerOptionsPopup(const float* ref_col, ImGuiColorEditFlags flags);
 | 
					    IMGUI_API void          ColorPickerOptionsPopup(const float* ref_col, ImGuiColorEditFlags flags);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    // Plot
 | 
					    // Plot
 | 
				
			||||||
    IMGUI_API int           PlotEx(ImGuiPlotType plot_type, const char* label, float (*values_getter)(void* data, int idx), void* data, int values_count, int values_offset, const char* overlay_text, float scale_min, float scale_max, ImVec2 frame_size);
 | 
					    IMGUI_API int           PlotEx(ImGuiPlotType plot_type, const char* label, float (*values_getter)(void* data, int idx), void* data, int values_count, int values_offset, const char* overlay_text, float scale_min, float scale_max, const ImVec2& size_arg);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    // Shade functions (write over already created vertices)
 | 
					    // Shade functions (write over already created vertices)
 | 
				
			||||||
    IMGUI_API void          ShadeVertsLinearColorGradientKeepAlpha(ImDrawList* draw_list, int vert_start_idx, int vert_end_idx, ImVec2 gradient_p0, ImVec2 gradient_p1, ImU32 col0, ImU32 col1);
 | 
					    IMGUI_API void          ShadeVertsLinearColorGradientKeepAlpha(ImDrawList* draw_list, int vert_start_idx, int vert_end_idx, ImVec2 gradient_p0, ImVec2 gradient_p1, ImU32 col0, ImU32 col1);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -6546,7 +6546,7 @@ bool ImGui::ListBox(const char* label, int* current_item, bool (*items_getter)(v
 | 
				
			|||||||
// - others https://github.com/ocornut/imgui/wiki/Useful-Extensions
 | 
					// - others https://github.com/ocornut/imgui/wiki/Useful-Extensions
 | 
				
			||||||
//-------------------------------------------------------------------------
 | 
					//-------------------------------------------------------------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
int ImGui::PlotEx(ImGuiPlotType plot_type, const char* label, float (*values_getter)(void* data, int idx), void* data, int values_count, int values_offset, const char* overlay_text, float scale_min, float scale_max, ImVec2 frame_size)
 | 
					int ImGui::PlotEx(ImGuiPlotType plot_type, const char* label, float (*values_getter)(void* data, int idx), void* data, int values_count, int values_offset, const char* overlay_text, float scale_min, float scale_max, const ImVec2& size_arg)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    ImGuiContext& g = *GImGui;
 | 
					    ImGuiContext& g = *GImGui;
 | 
				
			||||||
    ImGuiWindow* window = GetCurrentWindow();
 | 
					    ImGuiWindow* window = GetCurrentWindow();
 | 
				
			||||||
@@ -6557,10 +6557,7 @@ int ImGui::PlotEx(ImGuiPlotType plot_type, const char* label, float (*values_get
 | 
				
			|||||||
    const ImGuiID id = window->GetID(label);
 | 
					    const ImGuiID id = window->GetID(label);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    const ImVec2 label_size = CalcTextSize(label, NULL, true);
 | 
					    const ImVec2 label_size = CalcTextSize(label, NULL, true);
 | 
				
			||||||
    if (frame_size.x == 0.0f)
 | 
					    const ImVec2 frame_size = CalcItemSize(size_arg, CalcItemWidth(), label_size.y + style.FramePadding.y * 2.0f);
 | 
				
			||||||
        frame_size.x = CalcItemWidth();
 | 
					 | 
				
			||||||
    if (frame_size.y == 0.0f)
 | 
					 | 
				
			||||||
        frame_size.y = label_size.y + (style.FramePadding.y * 2);
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
    const ImRect frame_bb(window->DC.CursorPos, window->DC.CursorPos + frame_size);
 | 
					    const ImRect frame_bb(window->DC.CursorPos, window->DC.CursorPos + frame_size);
 | 
				
			||||||
    const ImRect inner_bb(frame_bb.Min + style.FramePadding, frame_bb.Max - style.FramePadding);
 | 
					    const ImRect inner_bb(frame_bb.Min + style.FramePadding, frame_bb.Max - style.FramePadding);
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user