Skip to content
Snippets Groups Projects
Select Git revision
  • 47fa471ec71e3e7d79ae2b44004d3697a3103420
  • master default protected
  • 46-upgrade-framework-and-dependencies
  • 29-add-difficulty-level-parameter
  • 23-improve-app-metadata
  • 3-fix-layout-on-orientation-change
  • Release_1.9.0_41 protected
  • Release_1.8.2_40 protected
  • Release_1.8.1_39 protected
  • Release_1.8.0_38 protected
  • Release_1.7.0_37 protected
  • Release_1.6.0_36 protected
  • Release_1.5.0_35 protected
  • Release_1.4.2_34 protected
  • Release_1.4.1_33 protected
  • Release_1.4.0_32 protected
  • Release_1.3.0_31 protected
  • Release_1.2.1_30 protected
  • Release_1.2.0_29 protected
  • Release_1.1.1_28 protected
  • Release_1.1.0_27 protected
  • Release_1.0.25_26 protected
  • Release_1.0.24_25 protected
  • Release_1.0.23_24 protected
  • Release_1.0.22_23 protected
  • Release_1.0.21_22 protected
26 results

menu.dart

Blame
  • menu.dart 1.19 KiB
    import 'package:flutter/material.dart';
    import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
    
    import 'package:memory/ui/screens/page_about.dart';
    import 'package:memory/ui/screens/page_game.dart';
    import 'package:memory/ui/screens/page_settings.dart';
    
    class MenuItem {
      final Icon icon;
      final Widget page;
    
      const MenuItem({
        required this.icon,
        required this.page,
      });
    }
    
    class Menu {
      static const indexGame = 0;
      static const menuItemGame = MenuItem(
        icon: Icon(UniconsLine.home),
        page: PageGame(),
      );
    
      static const indexSettings = 1;
      static const menuItemSettings = MenuItem(
        icon: Icon(UniconsLine.setting),
        page: PageSettings(),
      );
    
      static const indexAbout = 2;
      static const menuItemAbout = MenuItem(
        icon: Icon(UniconsLine.info_circle),
        page: PageAbout(),
      );
    
      static Map<int, MenuItem> items = {
        indexGame: menuItemGame,
        indexSettings: menuItemSettings,
        indexAbout: menuItemAbout,
      };
    
      static bool isIndexAllowed(int pageIndex) {
        return items.keys.contains(pageIndex);
      }
    
      static Widget getPageWidget(int pageIndex) {
        return items[pageIndex]?.page ?? menuItemGame.page;
      }
    
      static int itemsCount = Menu.items.length;
    }