import 'package:flutter/material.dart'; import 'package:flutter_custom_toolbox/flutter_toolbox.dart'; import 'package:midisynth/ui/screens/about.dart'; import 'package:midisynth/ui/screens/activity.dart'; import 'package:midisynth/ui/screens/settings.dart'; class ScreenItem { final Icon icon; final Widget screen; final bool displayBottomNavBar; const ScreenItem({ required this.icon, required this.screen, required this.displayBottomNavBar, }); } class Screen { static const indexActivity = 0; static const screenActivity = ScreenItem( icon: Icon(UniconsLine.home), screen: ScreenActivity(), displayBottomNavBar: true, ); static const indexSettings = 1; static const screenSettings = ScreenItem( icon: Icon(UniconsLine.setting), screen: ScreenSettings(), displayBottomNavBar: false, ); static const indexAbout = 2; static const screenAbout = ScreenItem( icon: Icon(UniconsLine.info_circle), screen: ScreenAbout(), displayBottomNavBar: false, ); static Map<int, ScreenItem> items = { indexActivity: screenActivity, indexSettings: screenSettings, indexAbout: screenAbout, }; static bool isIndexAllowed(int screenIndex) { return items.keys.contains(screenIndex); } static Widget getWidget(int screenIndex) { return items[screenIndex]?.screen ?? screenActivity.screen; } static bool displayBottomNavBar(int screenIndex) { return items[screenIndex]?.displayBottomNavBar ?? screenActivity.displayBottomNavBar; } static int itemsCount = Screen.items.length; }