1/*
2 * $Id: color_set.c,v 1.3 2004/04/10 20:10:28 tom Exp $
3 */
4
5#include <test.priv.h>
6
7#ifdef HAVE_COLOR_SET
8
9#define SHOW(n) ((n) == ERR ? "ERR" : "OK")
10
11int
12main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
13{
14    short f, b;
15    int i;
16
17    initscr();
18    cbreak();
19    noecho();
20
21    if (has_colors()) {
22	start_color();
23
24	pair_content(0, &f, &b);
25	printw("pair 0 contains (%d,%d)\n", f, b);
26	getch();
27
28	printw("Initializing pair 1 to red/black\n");
29	init_pair(1, COLOR_RED, COLOR_BLACK);
30	i = color_set(1, NULL);
31	printw("RED/BLACK (%s)\n", SHOW(i));
32	getch();
33
34	printw("Initializing pair 2 to white/blue\n");
35	init_pair(2, COLOR_WHITE, COLOR_BLUE);
36	i = color_set(2, NULL);
37	printw("WHITE/BLUE (%s)\n", SHOW(i));
38	getch();
39
40	printw("Resetting colors to pair 0\n");
41	i = color_set(0, NULL);
42	printw("Default Colors (%s)\n", SHOW(i));
43	getch();
44
45	printw("Resetting colors to pair 1\n");
46	i = color_set(1, NULL);
47	printw("RED/BLACK (%s)\n", SHOW(i));
48	getch();
49
50    } else {
51	printw("This demo requires a color terminal");
52	getch();
53    }
54    endwin();
55
56    ExitProgram(EXIT_SUCCESS);
57}
58#else
59int
60main(void)
61{
62    printf("This program requires the curses color_set function\n");
63    ExitProgram(EXIT_FAILURE);
64}
65#endif
66