/// <summary> /// Search for a screen /// </summary> public T SearchScreen <T>() where T : GameScreen { int index = Screens.FindIndex(s => s is T); if (index >= 0) { return((T)Screens[index]); } else { return(null); } }
/// <summary> /// Troca para próxima tela da lista. /// </summary> /// <param name="reset">True se deseja que o gerenciador chame o método Reset() da tela atual.</param> public void Next(bool reset) { int index = Screens.FindIndex(x => x.Equals(Active)); if (index >= Screens.Count - 1) { index = 0; } else { index++; } Change(Screens[index].Name, reset); }
/// <summary> /// Troca para a tela anterior da lista. /// </summary> /// <param name="reset">True se deseja que o gerenciador chame o método Reset() da tela atual.</param> public void Back(bool reset) { //Voltar a tela. int index = Screens.FindIndex(x => x.Equals(Active)); if (index <= 0) { index = Screens.Count - 1; } else { index--; } Change(Screens[index].Name, reset); }