encodePopupMenuThemeData static method

Map<String, dynamic>? encodePopupMenuThemeData(
  1. PopupMenuThemeData? value
)

Encodes the value to a JSON representation.

{
  "color": "<Color>",
  "elevation": "<double>",
  "enableFeedback": "<bool>",
  "iconColor": "<Color>",
  "iconSize": "<double>",
  "labelTextStyle": "<MaterialStateProperty<TextStyle>>",
  "mouseCursor": "<MaterialStateProperty<MouseCursor>>",
  "position": "<PopupMenuPosition>",
  "shadowColor": "<Color>",
  "shape": "<ShapeBorder>",
  "surfaceTintColor": "<Color>",
  "textStyle": "<TextStyle>"
}

See also:

Implementation

static Map<String, dynamic>? encodePopupMenuThemeData(
  PopupMenuThemeData? value,
) {
  Map<String, dynamic>? result;

  if (value != null) {
    result = <String, dynamic>{
      'color': encodeColor(value.color),
      'elevation': value.elevation,
      'enableFeedback': value.enableFeedback,
      'iconColor': encodeColor(value.iconColor),
      'iconSize': value.iconSize,
      'labelTextStyle': encodeWidgetStatePropertyTextStyle(
        value.labelTextStyle,
      ),
      'mouseCursor': encodeWidgetStatePropertyMouseCursor(
        value.mouseCursor,
      ),
      'position': encodePopupMenuPosition(value.position),
      'shadowColor': encodeColor(value.shadowColor),
      'shape': encodeShapeBorder(value.shape),
      'surfaceTintColor': encodeColor(value.surfaceTintColor),
      'textStyle': encodeTextStyle(value.textStyle),
    };
  }

  return _stripDynamicNull(result);
}