using Model; using DataPersistence; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using ConsoleApp.Menu.Core; using Model.Managers; namespace ConsoleApp.Menu { /// /// Main menu of the console. Contain the first interaction menus. /// internal class MainMenu : Menu { public MainMenu(MasterManager masterManager) : base("Main menu") { _allSelectors.Add(new Selector( new SearcherRecipe(masterManager.DataMgr.GetRecipes("search")), "Recipe search")); _allSelectors.Add(MasterManager.CurrentConnectedUser is null ? new Selector(new ConnectionMenu(), "Connection") : new Selector(new PlainText("User profile"), "User profile")); } protected override List> SearchInSelection() { List> selectors = base.SearchInSelection(); if (MasterManager.CurrentConnectedUser == null) return selectors.Except(selectors.Where(s => s.Line == "User profile")).ToList(); else return selectors.Except(selectors.Where(s => s.Line == "Connection")).ToList(); } } }