/* Pongo las etiquetas de los campos, y me fijo el mayor offset */
while (tmp) {
my_y++;
- mvwaddstr(f->win, my_y, x, tmp->nombre);
- waddch(f->win, ':');
- waddch(f->win, ' ');
if (strlen(tmp->nombre) > offset)
offset = strlen(tmp->nombre);
tmp = tmp->sig;
}
/* Agrego el ": " al offset*/
- x += offset + 2;
+ offset += 2;
tmp = f->primero;
my_y = y-1;
while (tmp) {
++my_y;
- wmove(f->win, my_y, x);
- salida = tmp->ejecutar(f->win, x, my_y, tmp);
+ mvwaddstr(f->win, my_y, x, tmp->nombre);
+ waddch(f->win, ':');
+ waddch(f->win, ' ');
+ mvwaddstr(f->win, my_y, x+offset, tmp->valor);
+ tmp = tmp->sig;
+ }
+ wrefresh(f->win);
+
+ tmp = f->primero;
+ my_y = y-1;
+ while (tmp) {
+ ++my_y;
+ wmove(f->win, my_y, x+offset);
+ salida = tmp->ejecutar(f->win, x+offset, my_y, tmp);
+ wrefresh(f->win);
tmp = tmp->sig;
}
}
char *tmp = w->valor;
int current = 0, c;
mvwaddstr(win, y, x, w->valor);
-
+ curs_set(1);
while ((*tmp) != '\0') {
tmp++;
current++;
}
+ wrefresh(win);
while ((c=getch()) != 13) {
/* Verifico si se apreto basckspace */
if (c == KEY_BACKSPACE) {
waddch(win, ' ');
/* Este va para dejar el cursor bien, ya que addch mueve el cursor*/
wmove(win, y, x+current);
+ wrefresh(win);
continue;
}
/* Si no entra mas, ignoro toda entrada */
wmove(win, y, x+current);
waddch(win, c);
w->valor[current++] = c;
+ wrefresh(win);
}
/* Cierro el string con el \0 */
w->valor[current+1] = '\0';
wmove(win, y, xs[actual]);
waddch(win, 'X');
+ wrefresh(win);
while ((c=getch()) != 13) {
if (c == KEY_LEFT) {
wmove(win, y, xs[actual]);
wmove(win, y, xs[actual]);
waddch(win, 'X');
}
+ wrefresh(win);
}
w->actual = actual;