X-Git-Url: https://git.llucax.com/z.facultad/75.06/emufs.git/blobdiff_plain/5552879516ba6ae3139d3317ae17ca53540ba74b..165cd5e4fd5d2440d04531adf8c30378b0f8fef4:/gui/form.c?ds=sidebyside diff --git a/gui/form.c b/gui/form.c index 71973a9..d6a13bb 100644 --- a/gui/form.c +++ b/gui/form.c @@ -10,9 +10,10 @@ static void widget_free(t_Widget *w); * * \param tipo Debe ser INPUT * \param nombre Nombre del control (también usada como etiqueta). - * \param max Cantidad máxima de caracteres + * \param max Cantidad máxima de caracteres. + * \param defecto Valor inicial del campo. */ -static t_Widget *widget_input_create(t_Campo tipo, const char *nombre, unsigned int max); +static t_Widget *widget_input_create(t_Campo tipo, const char *nombre, unsigned int max, const char *defecto); /** Crea un nuevo RADIO Group * * \param tipo Debe ser RADIO @@ -64,7 +65,7 @@ void form_agregar_widget(t_Form *f, t_Campo tipo, const char *nombre, unsigned i /* Creo el nuevo widget segun el tipo */ switch (tipo) { case INPUT: - tmp = widget_input_create(tipo, nombre, max); + tmp = widget_input_create(tipo, nombre, max, defecto); break; case RADIO: tmp = widget_radio_create(tipo, nombre, max, defecto); @@ -129,7 +130,7 @@ char *form_obtener_valor(t_Form *f, const char *widget) return ""; } -t_Widget *widget_input_create(t_Campo tipo, const char *nombre, unsigned int max) +t_Widget *widget_input_create(t_Campo tipo, const char *nombre, unsigned int max, const char *defecto) { t_Widget *tmp = (t_Widget *)malloc(sizeof(t_Widget)); @@ -140,6 +141,7 @@ t_Widget *widget_input_create(t_Campo tipo, const char *nombre, unsigned int max tmp->max = max; tmp->valor = (char *)malloc(sizeof(char)*(max+1)); tmp->valor[0] = '\0'; + strncpy(tmp->valor, defecto, max); tmp->sig = NULL;