flutter_table_plus library
A highly customizable and efficient table widget for Flutter.
This library provides a feature-rich table implementation with synchronized scrolling, theming support, and flexible data handling through Map-based data.
Features
- Highly Customizable Table: Flexible and efficient table widget
- Synchronized Scrolling: Horizontal and vertical scrolling between header and body
- Theming: Extensive customization through
TablePlusTheme - Column Sorting: Sortable columns with custom sort logic
- Row Selection: Single or multiple row selection with checkboxes
- Column Reordering: Drag-and-drop column reordering
- Cell Editing: Inline text field editing for specific columns
- Hover Buttons: Interactive action buttons that appear on row hover
- Expandable Rows: Collapsible summary rows for merged row groups
- Merged Rows: Visual grouping of multiple data rows with custom content
- Custom Cell Builders: Custom widget rendering in cells
- Type-Safe Column Builder: Use
TableColumnsBuilderfor safe column management
Classes
- CustomInkWell
- A custom InkWell widget that provides enhanced tap, double-tap, and secondary-tap functionalities without delaying single taps when double-tap is enabled.
-
FlutterTablePlus<
T> - A powerful, customizable table widget for Flutter.
- FlutterTooltipPlus
- A unified tooltip wrapper widget for Flutter Table Plus.
- MergeCellConfig
- Configuration for how a specific cell should be merged within a group.
-
MergedRowGroup<
T> - Represents a group of rows that should be merged together for specific columns.
- SortIcons
- Configuration for sort icons in table headers.
-
TableColumnsBuilder<
T> - A builder class for creating ordered table columns with automatic order management.
- TableColumnWidthCalculator
- Utility class for calculating column widths in FlutterTablePlus.
- TablePlusBodyTheme
- Theme configuration for the table body.
- TablePlusCheckboxTheme
- Theme configuration for table checkboxes.
-
TablePlusColumn<
T> - Defines a column in the table with its properties and behavior.
- TablePlusEditableTheme
- Theme configuration for cell editing.
- TablePlusHeaderBorderTheme
- Theme configuration for a horizontal border (top or bottom) in the header.
- TablePlusHeaderDividerTheme
- Theme configuration for the vertical divider between header columns.
- TablePlusHeaderTheme
- Theme configuration for the table header.
- TablePlusHoverButtonTheme
- Theme configuration for hover buttons in table rows.
- TablePlusResizeHandleTheme
- Theme configuration for the column resize handle in the header.
- TablePlusScrollbarTheme
- Theme configuration for scrollbars.
- TablePlusTheme
- Theme configuration for the table components.
- TablePlusTooltipTheme
- Theme configuration for cell tooltips.
- TableRowHeightCalculator
- Utility class for calculating row heights in FlutterTablePlus.
Enums
- HoverButtonPosition
- Enum that defines the positioning of hover buttons within a table row.
- LastRowBorderBehavior
- Enum for controlling when to show bottom border on the last row.
- SelectionMode
- Enum representing the selection mode for table rows.
- SortCycleOrder
- Enum representing the sorting cycle order.
- SortDirection
- Enum representing the sorting state of a column.
- TooltipAlignment
- The alignment of the tooltip along the cross-axis of the direction.
- TooltipAnimation
- The animation type used when showing and hiding the tooltip.
- TooltipBehavior
- Defines when tooltips should be shown for table cells.
- TooltipDirection
- The direction in which the tooltip appears relative to the child widget.
Typedefs
-
CellChangedCallback<
T> = void Function(T row, String columnKey, int rowIndex, dynamic oldValue, dynamic newValue) - Callback type for when a cell value is changed in editable mode.