import 'package:awesome_dialog/awesome_dialog.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; import 'package:smoke_cess_app/services/pages_service.dart'; import '../providers/input_provider.dart'; import '../providers/page_provider.dart'; import '../providers/tasks_provider.dart'; class ViewFormPage extends StatelessWidget { final Widget form; final Widget view; final Pages page; const ViewFormPage( {super.key, required this.form, required this.view, required this.page}); void showPopUp(BuildContext context) { AwesomeDialog( context: context, dialogType: DialogType.info, title: 'Schon gemacht!', desc: 'Der Eintrag wurde erfolgreich gespeichert', ).show(); } @override Widget build(BuildContext context) { PageProvider pageProvider = context.watch(); TasksProvider tasksProvider = context.watch(); return Wrap(children: [ Align( alignment: Alignment.topLeft, child: IconButton( icon: pageProvider.showForm ? const Icon(Icons.arrow_back, color: Colors.black) : const Icon(Icons.add_outlined, color: Colors.black), onPressed: tasksProvider.tasks[page] ?? true ? pageProvider.swap : () => showPopUp(context), ), ), pageProvider.showForm ? Center( child: ChangeNotifierProvider( create: (context) => InputProvider(), child: form, )) : Center(child: view) ]); } }