flutter_table_plus 1.5.0
flutter_table_plus: ^1.5.0 copied to clipboard
A highly customizable and efficient table widget for Flutter, featuring synchronized scrolling, theming, sorting, selection, and column reordering.
1.5.0 #
-
Added Single Selection Mode
- Introduced
SelectionMode.single
to allow only one row to be selected at a time. - When a new row is selected in single selection mode, the previous selection is automatically cleared.
- The "Select All" checkbox is now automatically hidden when in single selection mode for a cleaner UI.
- Introduced
-
Refactored Example Page
- The main example page (
table_example_page.dart
) has been significantly refactored for better readability and maintainability. - Key UI components like the app bar actions, status indicators, and documentation sections have been extracted into their own reusable widgets:
TableAppBarActions
TableStatusIndicators
ExampleDocumentation
- This improves code organization and makes the example easier to understand and adapt.
- The main example page (
1.4.0 #
-
Enhanced Feature Control Options
- Added ability to completely disable column reordering by setting
onColumnReorder: null
. This removes drag handles and disables drag-and-drop functionality entirely. - Added ability to completely disable sorting by setting
onSort: null
. This hides all sort icons and disables sorting click handlers for all columns. - Improved conditional feature control for better user experience and permissions-based functionality.
- Added ability to completely disable column reordering by setting
-
Documentation Improvements
- Added comprehensive Column Reordering section to ADVANCED_COLUMNS.md with complete implementation examples.
- Enhanced SORTING.md with detailed comparison between
sortable: false
andonSort: null
. - Updated README.md with new "Conditional Feature Control" section and examples.
- Added practical examples for dynamic feature enabling/disabling based on user permissions.
1.3.0 #
- Enabled Simultaneous Selection and Editing
- Removed the restriction that prevented
isSelectable
andisEditable
from being active at the same time. - Now, rows can be selected even when cell editing is enabled, providing greater flexibility.
- Removed the restriction that prevented
1.2.0 #
- Added Configurable Sort Cycle Order
FlutterTablePlus
now includes asortCycle
property to define the sequence of sorting states (ascending
,descending
,none
).- The default cycle is
ascending
->descending
->none
. - This allows for more flexible sorting behaviors, such as disabling the
none
state or changing the order.
1.1.2 #
- Added Hint Text and Style for Editable Cells
TablePlusColumn
now includes an optionalhintText
property to display placeholder text in editableTextField
s.TablePlusEditableTheme
now includes an optionalhintStyle
property to customize the style of the hint text.
- Added Row Double-Tap and Secondary-Tap Callbacks
FlutterTablePlus
now providesonRowDoubleTap
andonRowSecondaryTap
callbacks for row-level gesture detection.- These callbacks are active when
isSelectable
istrue
andisEditable
isfalse
. CustomInkWell
now correctly handlesonDoubleTap
andonSecondaryTap
events without interfering withonTap
.- Ensured
CustomInkWell
's internal state is preserved duringsetState
by addingkey: ValueKey(rowId)
.
1.1.1 #
- Update README.md
1.1.0 #
- Added Cell Editing Feature
Features #
- Editable Cells: Introduced
isEditable
property inFlutterTablePlus
to enable or disable cell editing. - Column-Specific Editing: Added
editable
property toTablePlusColumn
to control which columns can be edited. - Cell Change Callback: Implemented
onCellChanged
to notify when a cell's value is updated. - Theming for Editing: Added
TablePlusEditableTheme
to customize the appearance of cells in editing mode (background color, text style, borders, etc.). - Keyboard Support: Press
Enter
to save changes orEscape
to cancel editing. Editing also stops when the cell loses focus.
1.0.0 #
- Initial release of
flutter_table_plus
Features #
- Highly Customizable Table: Provides a flexible and efficient table widget.
- Synchronized Scrolling: Horizontal and vertical scrolling is synchronized between the header and body.
- Theming: Extensive customization of table appearance through
TablePlusTheme
, including headers, rows, scrollbars, and selection styles. - Column Sorting: Supports sorting columns in ascending, descending, or unsorted order. The sorting logic is handled by the parent widget.
- Row Selection: Allows for single or multiple row selection with checkboxes.
- Column Reordering: Supports drag-and-drop column reordering.
- Custom Cell Builders: Allows for custom widget rendering in cells for complex data representation.
- Type-Safe Column Builder: Use
TableColumnsBuilder
to safely create and manage column order.