import 'package:flutter/material.dart'; import 'package:google_fonts/google_fonts.dart'; import 'package:hub/commons/components/molecules/menu_item/widget.dart'; import 'package:hub/commons/widgets/custom_icons.dart'; import 'package:hub/commons/widgets/flutter_flow_theme.dart'; import 'package:hub/commons/widgets/flutter_flow_util.dart'; class MenuButtonWidget extends MenuEntry { const MenuButtonWidget({ Key? key, this.action, this.title, this.icon, }) : super(key: key); final Function()? action; final String? title; final IconData? icon; @override _MenuButtonWidgetState createState() => _MenuButtonWidgetState(); } class _MenuButtonWidgetState extends State { @override Widget build(BuildContext context) { return InkWell( splashColor: Colors.transparent, focusColor: Colors.transparent, hoverColor: Colors.transparent, highlightColor: Colors.transparent, onTap: () async { await widget.action?.call(); }, child: Padding( padding: const EdgeInsetsDirectional.fromSTEB( 0.0, 0.0, 0.0, 1.0), child: Container( width: double.infinity, decoration: BoxDecoration( borderRadius: BorderRadius.circular(24.0), ), child: Padding( padding: const EdgeInsets.all(4.0), child: Row( mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Container( width: 40.0, height: 40.0, decoration: const BoxDecoration( shape: BoxShape.circle, ), child: Icon( FFIcons.kfast, color: FlutterFlowTheme.of(context) .primary, size: 20.0, ), ), Expanded( child: Padding( padding: const EdgeInsetsDirectional .fromSTEB( 10.0, 0.0, 0.0, 0.0), child: Text( widget.title ?? 'Menu Item', style: FlutterFlowTheme.of( context) .titleLarge .override( fontFamily: 'Nunito', color: FlutterFlowTheme.of( context) .primaryText, fontSize: 15.0, letterSpacing: 0.0, fontWeight: FontWeight.w500, useGoogleFonts: GoogleFonts.asMap() .containsKey( 'Nunito'), ), ), ), ), Icon( widget.icon, color: FlutterFlowTheme.of(context) .customColor1, size: 24.0, ), ], ), ), ), ), ); } }