popValues<T> method

Widget popValues<T>({
  1. List<T>? items,
  2. List<T> builder(
    1. BuildContext
    )?,
  3. Widget display(
    1. T
    )?,
  4. required void callback(
    1. T
    ),
  5. T? initialValue,
})

Implementation

Widget popValues<T>({List<T>? items, List<T> Function(BuildContext)? builder, Widget Function(T)? display, required void Function(T) callback, T? initialValue}) {
  return PopupMenuButton<T>(
    child: this,
    onSelected: (e) => callback(e),
    position: PopupMenuPosition.under,
    initialValue: initialValue,
    itemBuilder: (BuildContext c) {
      List<T> ls = builder?.call(c) ?? items ?? [];
      return ls.mapList((e) => PopupMenuItem<T>(value: e, child: display?.call(e) ?? e.toString().text()));
    },
  );
}