using MECF.Framework.Common.Account.Extends; using System.Collections.Generic; namespace OpenSEMI.ClientBase { public class MenuManager { public List MenuItems { get; private set; } public void LoadMenu(List menuitems) { foreach (AppMenu menuitem in menuitems) { if (menuitem.MenuItems != null) { for (int num = menuitem.MenuItems.Count - 1; num >= 0; num--) { AppMenu appMenu = menuitem.MenuItems[num]; appMenu.Parent = menuitem; if (appMenu.Permission == 1) { menuitem.MenuItems.Remove(appMenu); } } } } MenuItems = menuitems; } public void FilterMenus(List pSystems) { if (pSystems != null && MenuItems != null) { foreach (AppMenu menuItem in MenuItems) { if (menuItem.MenuItems != null) { for (int num = menuItem.MenuItems.Count - 1; num >= 0; num--) { AppMenu appMenu = menuItem.MenuItems[num]; } } } } } private bool IsExist(List pSource, string pMatch) { foreach (string item in pSource) { if (pMatch.IndexOf(item) >= 0) { return true; } } return false; } public List GetAllClone() { if (MenuItems == null) { return null; } List list = new List(); foreach (AppMenu menuItem in MenuItems) { list.Add((AppMenu)menuItem.Clone(menuItem.Parent)); } return list; } } }