]> git.llucax.com Git - z.facultad/75.06/emufs.git/blobdiff - emufs_gui/form.h
super test, cargando 10000 registros con claves random y el arbol se arma, al parecer...
[z.facultad/75.06/emufs.git] / emufs_gui / form.h
index 8316e8556a11cae3c426f224503d68088c99f38c..d78d2e07397f778905c5fa9b2137e879159870dc 100644 (file)
@@ -7,8 +7,6 @@
 #include <stdlib.h>
 #include <curses.h>
 
-#include "malloc_debug.h"
-
 /** Tipos de Widgets válidos */
 typedef enum {INPUT, RADIO} t_Campo;
 
@@ -44,6 +42,8 @@ typedef struct _elem_ {
        /** Siguiente elemento */
        struct _elem_ *sig;
 
+       int modificable;
+
        /* Métodos */
        int (*ejecutar)(WINDOW *win, int x, int y, struct _elem_ *w);
        void (*destruir)(struct _elem_ *);
@@ -62,6 +62,7 @@ t_Form *form_crear(WINDOW *win);
 
 /** Libera un formulario */
 int form_destruir(t_Form *);
+
 /** Agrega un nuevo campo
  *
  *  Significado de <em>max</em> según tipo:
@@ -93,6 +94,26 @@ void form_agregar_widget(t_Form *f, t_Campo tipo, const char *nombre, unsigned i
  */
 void form_ejecutar(t_Form *f, int x, int y);
 
+/** Establece si un Widget puede ser modificado
+ *
+ *  \param f Formulario.
+ *  \param widget Nombre del Widget.
+ *  \param b Valor booleano
+ */
+void form_es_modificable(t_Form *f, const char *widget, int b);
+
+/** Setea el valor de un widget
+ *
+ *  Para campos de texto solamente!.
+ *
+ *  Pone en el campo valor el texto pasado por parametro.
+ *
+ *  \param f Formulario.
+ *  \param widget Nombre del widget.
+ *  \param s Texto a poner.
+ */
+void form_set_valor(t_Form *f, const char *widget, const char *s);
+
 /** Obtiene el valor asociado a un campo como char *
  *
  *  \param f Formulario.