import "package:flutter/material.dart"; import "package:prod/models/editor.dart"; import "package:prod/models/globalModel.dart"; import "package:provider/provider.dart"; class EditorFAB extends StatelessWidget { const EditorFAB({super.key}); @override Widget build(BuildContext context) { return FloatingActionButton( onPressed: () { TextEditingController nameController = TextEditingController(); TextEditingController commandController = TextEditingController(); TextEditingController commandTemplateController = TextEditingController(); showDialog( context: context, builder: (context) => SimpleDialog( title: Row( mainAxisAlignment: .spaceBetween, children: [ FilledButton( child: Text("Cancel"), onPressed: () => Navigator.pop(context), ), Text("Add Editor"), ElevatedButton( child: Text(" Add "), onPressed: () { Provider.of(context, listen: false).addEdt( Editor.create( nameController.text, commandController.text, commandTemplateController.text, ), ); Navigator.pop(context); }, ), ], ), children: [ Padding( padding: const EdgeInsets.all(8.0), child: TextField( autofocus: true, controller: nameController, decoration: InputDecoration(labelText: "Editor Name"), ), ), Padding( padding: const EdgeInsets.all(8.0), child: TextField( controller: commandController, decoration: InputDecoration(labelText: "Command"), ), ), Padding( padding: const EdgeInsets.all(8.0), child: TextField( controller: commandTemplateController, decoration: InputDecoration(labelText: "Command Template"), ), ), Padding( child: const Text("Example: zed -n \$path"), padding: const EdgeInsets.all(9.0), ), ], ), ); }, child: Icon(Icons.add), ); } }