volvox_data_grid library

Data-first VolvoxGrid widget for Flutter.

VolvoxDataGrid<T> wraps VolvoxGridController and VolvoxGridWidget behind a typed-row, typed-column API that does not require any generated protobuf objects in the calling code.

import 'package:volvoxgrid/volvoxgrid.dart';

VolvoxDataGrid<Product>(
  rows: products,
  columns: [
    VolvoxColumn(field: 'name', header: 'Name', value: (p) => p.name),
    VolvoxColumn(
      field: 'price',
      header: 'Price',
      value: (p) => p.price.toStringAsFixed(2),
      editable: true,
    ),
  ],
  onCellEdit: (edit) {
    setState(() {
      products[edit.rowIndex] = products[edit.rowIndex].copyWith(
        price: double.tryParse(edit.newText) ?? products[edit.rowIndex].price,
      );
    });
  },
);

Classes

VolvoxCellEdit<T>
Cell-edit details surfaced by VolvoxDataGrid.onCellEdit.
VolvoxColumn<T>
Typed column definition for VolvoxDataGrid.
VolvoxDataGrid<T>
Data-first VolvoxGrid widget. Pass typed rows and columns; the widget owns the controller lifecycle and pushes the values into the engine.