Example #1
0
        /// <summary>
        /// Funzione che setta il menù corrente a quello del tipo passato.
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <returns>Ritorna la conferma dell'azione eseguita</returns>
        public bool SetCurrentMenu <T>() where T : UIControllerBase
        {
            UIControllerBase menuToSet = GetMenu <T>();

            if (menuToSet == null)
            {
                // non ho trovato il tipo del menù
                return(false);
            }
            else if (currentMenu != null && currentMenu.GetType() == typeof(T))
            {
                // sto riaccendendo il menù corrente
                return(true);
            }
            else
            {
                // cambio effettivamente menù
                for (int i = 0; i < menus.Count; i++)
                {
                    menus[i].ToggleMenu(false);
                }

                currentMenu = menuToSet;
                currentMenu.ToggleMenu(true);
                OnCurrentMenuChange(currentMenu);
                return(true);
            }
        }