doMenuItemAction method

void doMenuItemAction(
  1. dynamic menuItem
)

Implementation

void doMenuItemAction(dynamic menuItem) async {
  if (menuItem is MPCategory) {
    final query = MPQuery.builder().build();
    final filterBuilder = MPFilter.builder()
      ..setCategories(<String>[menuItem.key]);
    if (selectedVenueId != null) {
      filterBuilder.setParents([selectedVenueId!]);
      filterBuilder.setDepth(4);
    }
    List<MPLocation>? locs = await getLocationsByQuery(
        query: query, filter: filterBuilder.build());
    if (locs != null) {
      menuItems.clear();
      menuItems.addAll(locs);
      setState(() {});
    }
  } else if (menuItem is MPLocation) {
    await mapController.goTo(menuItem);
    await mapController.selectLocation(menuItem);
    scaffoldKey.currentState?.closeEndDrawer();
  }
}