/*--------------------------------------------------------------------
 * FICHERO:  UsrConsu.c
 * OBJETIVO: Definir la fucin Usr_Consulta()
 * AUTOR:    Pedro Reina
 * FECHA:    M.25.4.1995
 *------------------------------------------------------------------*/

#include "Usuario.h"

/*--------------------------------------------------------------------
 * Definicin de funciones
 *------------------------------------------------------------------*/

/*--------------------------------------------------------------Olimpo
 * FUNCION:  Usr_Consulta()
 * OBJETIVO: Preguntar algo al usuario
 * ENTRADAS: El texto de la pregunta
 * SALIDAS:  Lgica, segn la contestacin del usuario
 * EJEMPLO:  Usr_Consulta ( "Quieres seguir?" )
 * ALGORITMO:
 *      Borrar con negro la zona del usuario
 *      Indicar las opciones de contestacin, en verde
 *      Escribir la pregunta, en blanco
 *      Pedir una tecla en el rango adecuado
 *      Borrar con negro la zona del usuario
 *      Devolver la respuesta
 *------------------------------------------------------------------*/
logico Usr_Consulta (Texto)
cadena Texto;
  {
  logico Respuesta;
  tecla  Tecla;
  static tecla Opcion[] = { TEC_S, TEC_MAY_S, TEC_ENTER,
                            TEC_N, TEC_MAY_N, TEC_ESC, NIL };

  Usr_BorraZona ( NEGRO );

  Pan_Color ( NEGRO,VERDE );
  Pan_PonTexto (USR_MENSAJE+1,0,"ENTER, s: S.  ESC, n: No");
  Pan_Tinta ( BLANCO );
  Pan_PonTextoControlado (USR_MENSAJE,0,Texto,Pan_Ancho());
  Pan_Cursor (USR_MENSAJE,Cad_Longitud(Texto)+1);
  Pan_CursorVisible (SI);

  Tecla = Tec_Validada (Opcion);
  switch ( Tecla )
    {
    case TEC_S:
    case TEC_MAY_S:
    case TEC_ENTER:  Respuesta = SI;  break;

    case TEC_N:
    case TEC_MAY_N:
    case TEC_ESC:    Respuesta = NO;  break;
    }

  Usr_BorraZona ( NEGRO );
  return ( Respuesta );
  }