00001
00006 #include <cstdlib>
00007 #include <string>
00008
00009 #include <Slang++/slang.H>
00010
00011 using namespace std;
00012
00013 using namespace Slang;
00014
00015 int main()
00016 {
00017
00018
00019
00020 MenuSimples menu("Um menu que não faz nada...",
00021 "Perguntar se sim ou não\n"
00022 "Pedir uma cor\n"
00023 "Abrir caixa para inserir texto\n"
00024 "Abrir caixa para inserir número\n"
00025 "Sair");
00026 MenuDeSimOuNao menu_de_sim_ou_nao("Responda sim ou não:");
00027 MenuDeCores menu_de_cores("Escolha uma cor");
00028 CaixaDeTexto caixa_para_texto("Escreva um texto:");
00029 CaixaDeTexto caixa_para_numeros("Escreva um número:", "", "0123456789",
00030 true);
00031
00032 do {
00033 menu.interage();
00034
00035 Posicao const posicao_original_do_cursor = ecra.posicaoDoCursor();
00036
00037 switch(menu.opcaoActual()) {
00038 case 0: {
00039 menu_de_sim_ou_nao.interage();
00040
00041 ecra << "Escolheu: ";
00042 if(menu_de_sim_ou_nao.opcaoActual() == true)
00043 ecra << "Sim";
00044 else
00045 ecra << "Não";
00046
00047 break;
00048 }
00049 case 1: {
00050 menu_de_cores.interage();
00051
00052 ecra << "Escolheu: " << Cor(menu_de_cores.opcaoActual());
00053
00054 break;
00055 }
00056 case 2: {
00057 caixa_para_texto.interage();
00058
00059 ecra << "Texto: " << caixa_para_texto.textoActual();
00060
00061 break;
00062 }
00063 case 3: {
00064 caixa_para_numeros.interage();
00065
00066 ecra << "Número: "
00067 << atoi(caixa_para_numeros.textoActual().c_str());
00068
00069 break;
00070 }
00071 }
00072 ecra << posicao_original_do_cursor << baixaCursor << refresca;
00073 } while(menu.opcaoActual() != 4);
00074
00075 Aviso("Vou terminando...").interage();
00076 }