X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=test%2Fchgat.c;h=bd30535c1b54bda4f10c4c7d9429c895c52f1408;hp=f55b94ebaf923d0b8ac637bd6b53d96569a55456;hb=dfaa1a3001fd447819f5edc2e523acc1a04f1440;hpb=027ae42953e3186daed8f3882da73de48291b606 diff --git a/test/chgat.c b/test/chgat.c index f55b94eb..bd30535c 100644 --- a/test/chgat.c +++ b/test/chgat.c @@ -1,5 +1,5 @@ /**************************************************************************** - * Copyright (c) 2006 Free Software Foundation, Inc. * + * Copyright (c) 2006-2008,2009 Free Software Foundation, Inc. * * * * Permission is hereby granted, free of charge, to any person obtaining a * * copy of this software and associated documentation files (the * @@ -26,14 +26,14 @@ * authorization. * ****************************************************************************/ /* - * $Id: chgat.c,v 1.5 2006/07/15 22:48:27 tom Exp $ + * $Id: chgat.c,v 1.9 2009/07/15 23:21:04 tom Exp $ * * test-driver for chgat/wchgat/mvchgat/mvwchgat */ #include -#ifdef HAVE_CHGAT +#if HAVE_CHGAT #define SHOW(n) ((n) == ERR ? "ERR" : "OK") #define COLOR_DEFAULT (-1) @@ -47,25 +47,26 @@ typedef struct { unsigned c; unsigned v; - int pair, attr; + int pair; + unsigned attr; int count; int ch; - char *c_msg; - char *v_msg; + const char *c_msg; + const char *v_msg; int y_val; int x_val; int y_beg, x_beg; int y_max, x_max; } STATUS; -static char * +static const char * color_params(unsigned state, int *pair) { /* *INDENT-OFF* */ static struct { int pair; int fg, bg; - char *msg; + const char *msg; } table[] = { { 0, COLOR_DEFAULT, COLOR_DEFAULT, "default" }, { 1, COLOR_RED, COLOR_BLACK, "red/black" }, @@ -74,7 +75,7 @@ color_params(unsigned state, int *pair) /* *INDENT-ON* */ static bool first = TRUE; - char *result = 0; + const char *result = 0; if (has_colors()) { if (first) { @@ -93,13 +94,13 @@ color_params(unsigned state, int *pair) return result; } -static char * -video_params(unsigned state, int *attr) +static const char * +video_params(unsigned state, unsigned *attr) { /* *INDENT-OFF* */ static struct { - int attr; - char *msg; + unsigned attr; + const char *msg; } table[] = { { A_NORMAL, "normal" }, { A_BOLD, "bold" }, @@ -109,7 +110,7 @@ video_params(unsigned state, int *attr) }; /* *INDENT-ON* */ - char *result = 0; + const char *result = 0; if (state < SIZEOF(table)) { *attr = table[state].attr; @@ -123,10 +124,17 @@ static void fill_window(WINDOW *win) { int y, x; + int y0 = -1, x0 = -1; getyx(win, y, x); wmove(win, 0, 0); while (waddstr(win, "0123456789 abcdefghijklmnopqrstuvwxyz ") != ERR) { + int y1, x1; + getyx(win, y1, x1); + if (y1 == y0 && x1 == x0) + break; + x0 = x1; + y0 = y1; } wmove(win, y, x); }