diff options
Diffstat (limited to 'mixedgauge.c')
| -rw-r--r-- | mixedgauge.c | 35 | 
1 files changed, 23 insertions, 12 deletions
diff --git a/mixedgauge.c b/mixedgauge.c index b300e078a62a0..30f0b69a12197 100644 --- a/mixedgauge.c +++ b/mixedgauge.c @@ -1,9 +1,9 @@  /* - *  $Id: mixedgauge.c,v 1.30 2012/11/18 16:30:20 tom Exp $ + *  $Id: mixedgauge.c,v 1.34 2018/06/18 22:09:31 tom Exp $   *   *  mixedgauge.c -- implements the mixedgauge dialog   * - *  Copyright 2007-2011,2012	Thomas E. Dickey + *  Copyright 2007-2012,2018	Thomas E. Dickey   *   *  This program is free software; you can redistribute it and/or modify   *  it under the terms of the GNU Lesser General Public License, version 2.1 @@ -89,7 +89,7 @@ status_string(char *given, char **freeMe)  	    break;  	}      } else if (*given == '-') { -	size_t need = strlen(++given); +	size_t need = strlen(++given) + 4;  	char *temp = dlg_malloc(char, need);  	*freeMe = temp;  	sprintf(temp, "%3s%%", given); @@ -135,6 +135,7 @@ myprint_status(DIALOG_MIXEDGAUGE * dlg)  	    continue;  	(void) wmove(win, y, 2 * MARGIN); +	dlg_attrset(win, dialog_attr);  	dlg_print_text(win, dlg->list[item].name, lm, &attr);  	(void) wmove(win, y, lm); @@ -142,7 +143,7 @@ myprint_status(DIALOG_MIXEDGAUGE * dlg)  	(void) wmove(win, y, lm + (cells - (int) strlen(status)) / 2);  	if (freeMe) {  	    (void) wmove(win, y, lm + 1); -	    (void) wattrset(win, title_attr); +	    dlg_attrset(win, title_attr);  	    for (j = 0; j < cells; j++)  		(void) waddch(win, ' '); @@ -150,9 +151,9 @@ myprint_status(DIALOG_MIXEDGAUGE * dlg)  	    (void) waddstr(win, status);  	    if ((title_attr & A_REVERSE) != 0) { -		wattroff(win, A_REVERSE); +		dlg_attroff(win, A_REVERSE);  	    } else { -		(void) wattrset(win, A_REVERSE); +		dlg_attrset(win, A_REVERSE);  	    }  	    (void) wmove(win, y, lm + 1); @@ -173,6 +174,7 @@ myprint_status(DIALOG_MIXEDGAUGE * dlg)  	    (void) waddstr(win, status);  	}  	(void) wmove(win, y, limit_x - 3); +	dlg_attrset(win, dialog_attr);  	(void) waddch(win, ']');  	(void) wnoutrefresh(win);      } @@ -189,10 +191,10 @@ mydraw_mixed_box(WINDOW *win, int y, int x, int height, int width,  	chtype attr = A_NORMAL;  	const char *message = _("Overall Progress");  	chtype save2 = dlg_get_attrs(win); -	(void) wattrset(win, title_attr); +	dlg_attrset(win, title_attr);  	(void) wmove(win, y, x + 2);  	dlg_print_text(win, message, width, &attr); -	(void) wattrset(win, save2); +	dlg_attrset(win, save2);      }  } @@ -220,7 +222,7 @@ dlg_update_mixedgauge(DIALOG_MIXEDGAUGE * dlg, int percent)       * attribute.       */      (void) wmove(dlg->dialog, dlg->height - 3, 4); -    (void) wattrset(dlg->dialog, gauge_attr); +    dlg_attrset(dlg->dialog, gauge_attr);      for (i = 0; i < (dlg->width - 2 * (3 + MARGIN)); i++)  	(void) waddch(dlg->dialog, ' '); @@ -235,9 +237,9 @@ dlg_update_mixedgauge(DIALOG_MIXEDGAUGE * dlg, int percent)       */      x = (percent * (dlg->width - 2 * (3 + MARGIN))) / 100;      if ((title_attr & A_REVERSE) != 0) { -	wattroff(dlg->dialog, A_REVERSE); +	dlg_attroff(dlg->dialog, A_REVERSE);      } else { -	(void) wattrset(dlg->dialog, A_REVERSE); +	dlg_attrset(dlg->dialog, A_REVERSE);      }      (void) wmove(dlg->dialog, dlg->height - 3, 4);      for (i = 0; i < x; i++) { @@ -338,7 +340,7 @@ dlg_begin_mixedgauge(DIALOG_MIXEDGAUGE * dlg,  				      dlg->width,  				      y + dlg->item_no + (2 * MARGIN),  				      x); -	(void) wattrset(dlg->caption, dialog_attr); +	dlg_attrset(dlg->caption, dialog_attr);  	dlg_print_autowrap(dlg->caption, dlg->prompt, dlg->height, dlg->width);      } @@ -383,6 +385,15 @@ dialog_mixedgauge(const char *title,      DIALOG_MIXEDGAUGE dlg;      int began = 0; +    DLG_TRACE(("# mixedgauge args:\n")); +    DLG_TRACE2S("title", title); +    DLG_TRACE2S("message", cprompt); +    DLG_TRACE2N("height", height); +    DLG_TRACE2N("width", width); +    DLG_TRACE2N("percent", percent); +    DLG_TRACE2N("llength", item_no); +    /* FIXME dump the items[][] too */ +      dlg_begin_mixedgauge(&dlg, &began, title, cprompt, height,  			 width, item_no, items);  | 
