1 /* Manejo de Formularios con CURSES */
10 #include "malloc_debug.h"
12 typedef enum {INPUT, RADIO} t_Campo;
14 typedef struct _elem_ {
15 char *nombre; /* nombre del widget */
16 t_Campo tipo; /* tipo */
18 char *valor; /* valor actual */
19 char **opciones; /* array de opciones */
21 unsigned int actual; /* En RADIO el seleccionado */
22 unsigned int max; /* INPUT: tamaƱo maximo RADIO: Cant. Opciones */
23 struct _elem_ *sig; /* siguiente en la lista de foco */
26 typedef struct _form_ {
27 t_Widget *primero, *ultimo; /* puntero a widgets */
31 /* Inicializa un formulario */
32 t_Form *form_crear(WINDOW *win);
33 /* Libera un formulario */
34 int form_destruir(t_Form *);
35 /* Agrega un nuevo campo */
36 void form_agregar_widget(t_Form *, t_Campo tipo, const char *nombre, unsigned int max, const char *defecto);
37 /* Ejecuta una entrada del formulario */
38 void form_ejecutar(t_Form *, int x, int y);
39 char *form_obtener_valor(t_Form *, const char *widget);