popPairs<T> method

Widget popPairs<T>({
  1. required List<LabelValue<T>> items,
  2. Widget display(
    1. LabelValue<T>
    )?,
  3. required void callback(
    1. LabelValue<T>
    ),
  4. T? value,
})

Implementation

Widget popPairs<T>({required List<LabelValue<T>> items, Widget Function(LabelValue<T>)? display, required void Function(LabelValue<T>) callback, T? value}) {
  return PopupMenuButton<LabelValue<T>>(
    child: this,
    onSelected: (e) => callback(e),
    position: PopupMenuPosition.under,
    initialValue: items.firstOr((e) => e.value == value),
    itemBuilder: (BuildContext c) {
      return items.mapList((e) => PopupMenuItem<LabelValue<T>>(value: e, child: display?.call(e) ?? e.label.text()));
    },
  );
}