mirror of
				https://github.com/Drezil/imgui.git
				synced 2025-10-30 20:51:06 +01:00 
			
		
		
		
	Tables: Expose TableSetColumnEnabled() in public api. (#3935)
This commit is contained in:
		| @@ -41,6 +41,7 @@ Other Changes: | |||||||
|  |  | ||||||
| - Scrolling: Fix scroll tracking with e.g. SetScrollHereX/Y() when WindowPadding < ItemSpacing. | - Scrolling: Fix scroll tracking with e.g. SetScrollHereX/Y() when WindowPadding < ItemSpacing. | ||||||
| - Scrolling: Fix scroll snapping on edge of scroll region when both scrollbars are enabled. | - Scrolling: Fix scroll snapping on edge of scroll region when both scrollbars are enabled. | ||||||
|  | - Tables: Expose TableSetColumnEnabled() in public api. (#3935) | ||||||
| - Drags, Sliders, Inputs: Specifying a NULL format to Float functions default them to "%.3f" to be | - Drags, Sliders, Inputs: Specifying a NULL format to Float functions default them to "%.3f" to be | ||||||
|   consistent with the compile-time default. (#3922) |   consistent with the compile-time default. (#3922) | ||||||
| - DragScalar: Add default value for v_speed argument to match higher-level functions. (#3922) [@eliasdaler] | - DragScalar: Add default value for v_speed argument to match higher-level functions. (#3922) [@eliasdaler] | ||||||
|   | |||||||
| @@ -7091,7 +7091,7 @@ static void ImGui::ErrorCheckNewFrameSanityChecks() | |||||||
|     ImGuiContext& g = *GImGui; |     ImGuiContext& g = *GImGui; | ||||||
|  |  | ||||||
|     // Check user IM_ASSERT macro |     // Check user IM_ASSERT macro | ||||||
|     // (IF YOU GET A WARNING OR COMPILE ERROR HERE: it means you assert macro is incorrectly defined! |     // (IF YOU GET A WARNING OR COMPILE ERROR HERE: it means your assert macro is incorrectly defined! | ||||||
|     //  If your macro uses multiple statements, it NEEDS to be surrounded by a 'do { ... } while (0)' block. |     //  If your macro uses multiple statements, it NEEDS to be surrounded by a 'do { ... } while (0)' block. | ||||||
|     //  This is a common C/C++ idiom to allow multiple statements macros to be used in control flow blocks.) |     //  This is a common C/C++ idiom to allow multiple statements macros to be used in control flow blocks.) | ||||||
|     // #define IM_ASSERT(EXPR)   if (SomeCode(EXPR)) SomeMoreCode();                    // Wrong! |     // #define IM_ASSERT(EXPR)   if (SomeCode(EXPR)) SomeMoreCode();                    // Wrong! | ||||||
|   | |||||||
							
								
								
									
										1
									
								
								imgui.h
									
									
									
									
									
								
							
							
						
						
									
										1
									
								
								imgui.h
									
									
									
									
									
								
							| @@ -723,6 +723,7 @@ namespace ImGui | |||||||
|     IMGUI_API int                   TableGetRowIndex();                         // return current row index. |     IMGUI_API int                   TableGetRowIndex();                         // return current row index. | ||||||
|     IMGUI_API const char*           TableGetColumnName(int column_n = -1);      // return "" if column didn't have a name declared by TableSetupColumn(). Pass -1 to use current column. |     IMGUI_API const char*           TableGetColumnName(int column_n = -1);      // return "" if column didn't have a name declared by TableSetupColumn(). Pass -1 to use current column. | ||||||
|     IMGUI_API ImGuiTableColumnFlags TableGetColumnFlags(int column_n = -1);     // return column flags so you can query their Enabled/Visible/Sorted/Hovered status flags. Pass -1 to use current column. |     IMGUI_API ImGuiTableColumnFlags TableGetColumnFlags(int column_n = -1);     // return column flags so you can query their Enabled/Visible/Sorted/Hovered status flags. Pass -1 to use current column. | ||||||
|  |     IMGUI_API void                  TableSetColumnEnabled(int column_n, bool v);// change enabled/disabled state of a column, set to false to hide the column. Note that end-user can use the context menu to change this themselves (right-click in headers, or right-click in columns body with ImGuiTableFlags_ContextMenuInBody) | ||||||
|     IMGUI_API void                  TableSetBgColor(ImGuiTableBgTarget target, ImU32 color, int column_n = -1);  // change the color of a cell, row, or column. See ImGuiTableBgTarget_ flags for details. |     IMGUI_API void                  TableSetBgColor(ImGuiTableBgTarget target, ImU32 color, int column_n = -1);  // change the color of a cell, row, or column. See ImGuiTableBgTarget_ flags for details. | ||||||
|  |  | ||||||
|     // Legacy Columns API (2020: prefer using Tables!) |     // Legacy Columns API (2020: prefer using Tables!) | ||||||
|   | |||||||
| @@ -2361,7 +2361,6 @@ namespace ImGui | |||||||
|  |  | ||||||
|     // Tables: Candidates for public API |     // Tables: Candidates for public API | ||||||
|     IMGUI_API void          TableOpenContextMenu(int column_n = -1); |     IMGUI_API void          TableOpenContextMenu(int column_n = -1); | ||||||
|     IMGUI_API void          TableSetColumnEnabled(int column_n, bool enabled); |  | ||||||
|     IMGUI_API void          TableSetColumnWidth(int column_n, float width); |     IMGUI_API void          TableSetColumnWidth(int column_n, float width); | ||||||
|     IMGUI_API void          TableSetColumnSortDirection(int column_n, ImGuiSortDirection sort_direction, bool append_to_sort_specs); |     IMGUI_API void          TableSetColumnSortDirection(int column_n, ImGuiSortDirection sort_direction, bool append_to_sort_specs); | ||||||
|     IMGUI_API int           TableGetHoveredColumn(); // May use (TableGetColumnFlags() & ImGuiTableColumnFlags_IsHovered) instead. Return hovered column. return -1 when table is not hovered. return columns_count if the unused space at the right of visible columns is hovered. |     IMGUI_API int           TableGetHoveredColumn(); // May use (TableGetColumnFlags() & ImGuiTableColumnFlags_IsHovered) instead. Return hovered column. return -1 when table is not hovered. return columns_count if the unused space at the right of visible columns is hovered. | ||||||
|   | |||||||
| @@ -1491,6 +1491,9 @@ const char* ImGui::TableGetColumnName(const ImGuiTable* table, int column_n) | |||||||
|     return &table->ColumnsNames.Buf[column->NameOffset]; |     return &table->ColumnsNames.Buf[column->NameOffset]; | ||||||
| } | } | ||||||
|  |  | ||||||
|  | // Request enabling/disabling a column (often perceived as "showing/hiding" from users point of view) | ||||||
|  | // Note that end-user can use the context menu to change this themselves (right-click in headers, or right-click in columns body with ImGuiTableFlags_ContextMenuInBody) | ||||||
|  | // Request will be applied during next layout, which happens on the first call to TableNextRow() after BeginTable() | ||||||
| // For the getter you can use (TableGetColumnFlags() & ImGuiTableColumnFlags_IsEnabled) | // For the getter you can use (TableGetColumnFlags() & ImGuiTableColumnFlags_IsEnabled) | ||||||
| void ImGui::TableSetColumnEnabled(int column_n, bool enabled) | void ImGui::TableSetColumnEnabled(int column_n, bool enabled) | ||||||
| { | { | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user