1
0

nav_drawer.dart 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. import 'package:flutter/material.dart';
  2. import 'package:go_router/go_router.dart';
  3. import 'package:tp5/ftl/view/ftl_page.dart';
  4. import 'package:tp5/lido/view/lidolist_page.dart';
  5. class NavDrawer extends StatelessWidget {
  6. const NavDrawer({super.key});
  7. @override
  8. Widget build(BuildContext context) {
  9. return Drawer(
  10. child: ListView(
  11. padding: EdgeInsets.zero,
  12. children: <Widget>[
  13. const DrawerHeader(
  14. decoration: BoxDecoration(
  15. color: Colors.black54,
  16. image: DecorationImage(
  17. fit: BoxFit.fill, image: AssetImage('assets/logo.png'))),
  18. child: Text(
  19. 'Side menu',
  20. style: TextStyle(color: Colors.white, fontSize: 25),
  21. ),
  22. ),
  23. ListTile(
  24. leading: const Icon(Icons.input),
  25. title: const Text('Crewlink Roster'),
  26. onTap: () => context.go("/crewlink/roster"),
  27. ),
  28. ListTile(
  29. leading: const Icon(Icons.verified_user),
  30. title: const Text('Crewlink Crewlist'),
  31. onTap: () => context.go("/crewlink/crewlist"),
  32. ),
  33. ListTile(
  34. leading: const Icon(Icons.verified_user),
  35. title: const Text('Flight Time Limitations'),
  36. onTap: () => context.go("/ftl",
  37. extra: const FtlPageParams(
  38. /*datestart: "01Nov23", dateend: "30Nov23"*/)),
  39. ),
  40. ListTile(
  41. leading: const Icon(Icons.verified_user),
  42. title: const Text('Lido'),
  43. onTap: () => context.go("/lido/list",
  44. extra: const LidolistPageParams(
  45. /*datestart: "01Nov23", dateend: "30Nov23"*/)),
  46. ),
  47. ListTile(
  48. leading: const Icon(Icons.verified_user),
  49. title: const Text('Rosters'),
  50. onTap: () => context.go("/rosters")),
  51. ListTile(
  52. leading: const Icon(Icons.verified_user),
  53. title: const Text('Fligths List'),
  54. onTap: () => context.go("/flightslist")),
  55. ListTile(
  56. leading: const Icon(Icons.settings),
  57. title: const Text('Settings'),
  58. onTap: () => {Navigator.of(context).pop()},
  59. ),
  60. ListTile(
  61. leading: const Icon(Icons.border_color),
  62. title: const Text('Feedback'),
  63. onTap: () => {Navigator.of(context).pop()},
  64. ),
  65. ListTile(
  66. leading: const Icon(Icons.exit_to_app),
  67. title: const Text('Logout'),
  68. onTap: () => {Navigator.of(context).pop()},
  69. ),
  70. ],
  71. ),
  72. );
  73. }
  74. }