PopupMenuButton< T> constructor
    Creates a button that shows a popup menu.
The itemBuilder argument must not be null.
Implementation
const PopupMenuButton({
  Key key,
  @required this.itemBuilder,
  this.initialValue,
  this.onSelected,
  this.onCanceled,
  this.tooltip,
  this.elevation = 8.0,
  this.padding = const EdgeInsets.all(8.0),
  this.child,
  this.icon,
  this.offset = Offset.zero,
}) : assert(itemBuilder != null),
     assert(offset != null),
     assert(!(child != null && icon != null)), // fails if passed both parameters
     super(key: key);