/****************************************************************************
- * Copyright (c) 2008 Free Software Foundation, Inc. *
+ * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2008-2014,2017 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 *
* authorization. *
****************************************************************************/
/*
- * $Id: insdelln.c,v 1.1 2008/12/20 22:06:52 tom Exp $
+ * $Id: insdelln.c,v 1.14 2020/02/02 23:34:34 tom Exp $
*
* test-driver for deleteln, wdeleteln, insdelln, winsdelln, insertln, winsertln
*/
#include <test.priv.h>
+#if HAVE_WINSDELLN
+
+#include <popup_msg.h>
+
#define SHOW(n) ((n) == ERR ? "ERR" : "OK")
#define COLOR_DEFAULT (-1)
{
/* *INDENT-OFF* */
static struct {
- int pair;
- int fg, bg;
+ short pair;
+ short fg, bg;
const char *msg;
} table[] = {
{ 0, COLOR_DEFAULT, COLOR_DEFAULT, "default" },
};
/* *INDENT-ON* */
- static bool first = TRUE;
const char *result = 0;
if (has_colors()) {
+ static bool first = TRUE;
if (first) {
unsigned n;
fill_window(WINDOW *win)
{
int y, x;
+ int y0 = -1, x0 = -1;
getyx(win, y, x);
- wmove(win, 1, 0);
+ 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);
}
delwin(win1);
touchwin(win);
} else {
+ if (win1)
+ delwin(win1);
beep();
}
}
,"q quit"
,"= resets count to zero."
,"? shows this help-window"
- ,""
- ,""
+ ,0
};
- int y_max, x_max;
- int row;
-
- getmaxyx(win, y_max, x_max);
- for (row = 0; row < (int) SIZEOF(table) && row < y_max; ++row) {
- mvwprintw(win, row, 0, "%.*s", x_max, table[row]);
- }
- while (wgetch(win) != 'q')
- beep();
+ popup_msg(win, table);
}
static void
sp->count = 0;
show_status(win, sp);
break;
- case '?':
- do_subwindow(win, sp, show_help);
+ case HELP_KEY_1:
+ show_help(win);
break;
default:
if (isdigit(sp->ch)) {
init_status(win, &st);
do {
- wattrset(win, st.attr | COLOR_PAIR(st.pair));
+ (void) wattrset(win, AttrArg(COLOR_PAIR(st.pair), st.attr));
switch (st.ch) {
case 'i':
for (n = 0; n < st.count; ++n)
init_status(stdscr, &st);
do {
- attrset(st.attr | COLOR_PAIR(st.pair));
+ (void) attrset(AttrArg(COLOR_PAIR(st.pair), st.attr));
switch (st.ch) {
case 'i':
for (n = 0; n < st.count; ++n)
ExitProgram(EXIT_SUCCESS);
}
+
+#else
+int
+main(void)
+{
+ printf("This program requires the curses winsdelln function\n");
+ ExitProgram(EXIT_FAILURE);
+}
+#endif