import 'package:cssd/config/colors.dart'; import 'package:cssd/providers/packages.dart'; import '../../../config/routes.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; class PackageUpdateButton extends StatelessWidget { const PackageUpdateButton({ Key? key, required GlobalKey form, required this.id, required this.descriptionCTRL, required this.nameCTRL, // required this.udiCTRL, required this.itemCTRL, required double deviceBlockSize, }) : _form = form, _deviceBlockSize = deviceBlockSize, super(key: key); final GlobalKey _form; final String id; final TextEditingController descriptionCTRL; final TextEditingController nameCTRL; // final TextEditingController udiCTRL; final TextEditingController itemCTRL; final double _deviceBlockSize; @override Widget build(BuildContext context) { return InkWell( onTap: () { if (!_form.currentState!.validate()) { return; } Provider.of(context, listen: false) .updatePackageResult( id, nameCTRL.text, // udiCTRL.text, descriptionCTRL.text, int.parse(itemCTRL.text), ); showDialog( context: context, builder: (ctx) => AlertDialog( content: Text('Package updated.'), actions: [ TextButton( onPressed: () { Navigator.of(ctx).pop(); }, child: Text('Ok'), ) ], ), ).then((_) { Navigator.of(context) .pushReplacementNamed(Routes.packageResultScreen); }); }, child: Container( padding: EdgeInsets.symmetric( horizontal: 5 * _deviceBlockSize, vertical: 10, ), // margin: // EdgeInsets.symmetric(horizontal: 35, vertical: 15), decoration: BoxDecoration( gradient: LinearGradient( colors: [kPurple, kPurpleSub], ), borderRadius: BorderRadius.circular(7), ), child: Align( alignment: Alignment.center, child: Text( 'Update', style: TextStyle( color: Colors.white, fontSize: 5 * _deviceBlockSize, ), ), ), ), ); } }