Skip to content
Snippets Groups Projects
Select Git revision
  • 5b4999f0014e5c2113c4113593631ab7a947b63c
  • master default protected
  • 61-upgrade-framework-and-dependencies
  • 44-improve-app-metadata
  • Release_0.10.0_57 protected
  • Release_0.9.2_56 protected
  • Release_0.9.1_55 protected
  • Release_0.9.0_54 protected
  • Release_0.8.0_53 protected
  • Release_0.7.0_52 protected
  • Release_0.6.0_51 protected
  • Release_0.5.3_50 protected
  • Release_0.5.2_49 protected
  • Release_0.5.1_48 protected
  • Release_0.5.0_47 protected
  • Release_0.4.1_46 protected
  • Release_0.4.0_45 protected
  • Release_0.3.1_44 protected
  • Release_0.3.0_43 protected
  • Release_0.2.1_42 protected
  • Release_0.2.0_41 protected
  • Release_0.1.19_40 protected
  • Release_0.1.18_39 protected
  • Release_0.1.17_38 protected
24 results

menu.dart

Blame
  • menu.dart 1.18 KiB
    import 'package:flutter/material.dart';
    import 'package:unicons/unicons.dart';
    
    import 'package:minehunter/ui/screens/page_about.dart';
    import 'package:minehunter/ui/screens/page_game.dart';
    import 'package:minehunter/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;
    }