toChannelRepresentation method

  1. @override
Iterable<Map<String, Object?>> toChannelRepresentation(
  1. PlatformMenuDelegate delegate, {
  2. required MenuItemSerializableIdGenerator getId,
})
override

Converts the representation of this item into a map suitable for sending over the default "flutter/menu" channel used by DefaultPlatformMenuDelegate.

The delegate is the PlatformMenuDelegate that is requesting the serialization.

The getId parameter is a MenuItemSerializableIdGenerator function that generates a unique ID for each menu item, which is to be returned in the "id" field of the menu item data.

Implementation

@override
Iterable<Map<String, Object?>> toChannelRepresentation(
  PlatformMenuDelegate delegate, {
  required MenuItemSerializableIdGenerator getId,
}) sync* {
  for (final m in super.toChannelRepresentation(delegate, getId: getId)) {
    m['checked'] = checked;
    if (icon != null) icon!.serialize();
    yield m;
  }
}