public bool Update(GameTime gameTime, InputManager input)
        {
            if (sysMenus.Count <= 0)
            {
                float delta = (float)(gameTime.ElapsedGameTime.TotalMilliseconds /
                                      TimeSpan.FromMilliseconds(300).TotalMilliseconds);

                fadeTransition = MathHelper.Clamp(fadeTransition - delta, 0, 1);
                return(false);
            }
            else
            {
                float delta = (float)(gameTime.ElapsedGameTime.TotalMilliseconds /
                                      TimeSpan.FromMilliseconds(300).TotalMilliseconds);

                fadeTransition = MathHelper.Clamp(fadeTransition + delta, 0, 1);
            }

            for (int x = 0; x < sysMenus.Count; x++)
            {
                SysMenu menu = sysMenus[x];
                if (menu == sysMenus[sysMenus.Count - 1])
                {
                    //update the menu at the top of the stack.
                    menu.Update(gameTime, input);
                    menu.UpdateTransition(gameTime);
                }
                else if (sysMenus[sysMenus.Count - 1].hideChildren)
                {
                    menu.UpdateTransition(gameTime);
                }
            }

            return(true);
        }
 public void UpdateTopControls(GameTime gameTime, InputManager input)
 {
     for (int x = 0; x < sysMenus.Count; x++)
     {
         SysMenu menu = sysMenus[x];
         if (menu == sysMenus[sysMenus.Count - 1])
         {
             //update the menu at the top of the stack.
             menu.Update(gameTime, input);
         }
     }
 }