public TelaPrincipal() : base("Tela Principal") { PopularAplicacao(); while (true) { TelaBase tb = ObterTela(); if (tb == null) { ApresentarMensagem("Opção inválida", TipoMensagem.Erro); continue; } tb.Menu(); } }
public ICadastravel ObterOpcao() { TelaBase telaSelecionada = null; string opcao; do { Console.WriteLine("Digite 1 para o Cadastro de Caixas"); Console.WriteLine("Digite 2 para o Cadastro de Revistas"); Console.WriteLine("Digite 3 para o Cadastro de Amigos"); Console.WriteLine("Digite 4 para o Controle de Empréstimos"); Console.WriteLine("Digite S para Sair"); opcao = Console.ReadLine(); if (opcao == "1") { telaSelecionada = new TelaCaixa(controladorCaixa, controladorRevista); } else if (opcao == "2") { telaSelecionada = new TelaRevista(controladorRevista, controladorCaixa); } else if (opcao == "3") { telaSelecionada = new TelaAmigo(controladorAmigo); } else if (opcao == "4") { telaSelecionada = new TelaEmprestimo(controladorEmprestimo, controladorAmigo, controladorCaixa, controladorRevista); } else if (opcao.Equals("s", StringComparison.OrdinalIgnoreCase)) { telaSelecionada = null; } } while (OpcaoInvalida(opcao)); return((ICadastravel)telaSelecionada); }