How to apply date range filter on pluto_grid flutter

142 Views Asked by At

enter image description here

I have date filter like the above image. I want to update pluto_grid data to update when i change date range from above. My PlutoGrid widget is stateless and i have used futurebuilder to set data in plutogrid

here is code


FutureBuilder(
                future: future,
                builder: (context, snapshot) {
                  snapshot.inState(ConnectionState.none);
                  if (snapshot.connectionState == ConnectionState.waiting) {
                    return const Center(child: CircularProgressIndicator());
                  } else if (snapshot.connectionState == ConnectionState.done) {
                    if (snapshot.hasError) {
                      return Text('${snapshot.error} ${context.local.occurred}');
                    } else if (snapshot.hasData) {
                      PlutoData? plutoData = snapshot.data;
                      if (plutoData != null) {
                        return PlutoGrid(
                          columns: plutoData.columns,
                          rows: plutoData.rows,
                          noRowsWidget: Center(child: Text('${context.local.noData}')),
                         
                          onLoaded: (PlutoGridOnLoadedEvent event) {
                            event.stateManager.setShowColumnFilter(isShowFilter);
                            //event.stateManager.setSelectingMode(PlutoGridSelectingMode.cell);
                          },
                          
                          createFooter: (stateManager) {
                            stateManager.setPageSize(50, notify: false); // default 40
                            return PlutoPagination(stateManager);
                          },
                          createHeader: isShowExport ? (stateManager) => ExportButton(title: listTitle, stateManager: stateManager) : null,
                        );
                      } else {
                        return Center(child: Text(context.local.noData));
                      }
                    } else {
                      return Center(child: Text(context.local.noData));
                    }
                  } else {
                    return Center(child: Text('${context.local.state} ${snapshot.connectionState}'));
                  }
                }),
0

There are 0 best solutions below