Thu, 23 Jul 2015 18:07:39 +0300
Added pdcurses source files, if no curses library is provided, these source files will be fallen back to instead of raising an error. Should make compiling on windows slightly less painful.
/* Public Domain Curses */ #include <curspriv.h> RCSID("$Id: delch.c,v 1.33 2008/07/13 16:08:18 wmcbrine Exp $") /*man-start************************************************************** Name: delch Synopsis: int delch(void); int wdelch(WINDOW *win); int mvdelch(int y, int x); int mvwdelch(WINDOW *win, int y, int x); Description: The character under the cursor in the window is deleted. All characters to the right on the same line are moved to the left one position and the last character on the line is filled with a blank. The cursor position does not change (after moving to y, x if coordinates are specified). Return Value: All functions return OK on success and ERR on error. Portability X/Open BSD SYS V delch Y Y Y wdelch Y Y Y mvdelch Y Y Y mvwdelch Y Y Y **man-end****************************************************************/ #include <string.h> int wdelch(WINDOW *win) { int y, x, maxx; chtype *temp1; PDC_LOG(("wdelch() - called\n")); if (!win) return ERR; y = win->_cury; x = win->_curx; maxx = win->_maxx - 1; temp1 = &win->_y[y][x]; memmove(temp1, temp1 + 1, (maxx - x) * sizeof(chtype)); /* wrs (4/10/93) account for window background */ win->_y[y][maxx] = win->_bkgd; win->_lastch[y] = maxx; if ((win->_firstch[y] == _NO_CHANGE) || (win->_firstch[y] > x)) win->_firstch[y] = x; PDC_sync(win); return OK; } int delch(void) { PDC_LOG(("delch() - called\n")); return wdelch(stdscr); } int mvdelch(int y, int x) { PDC_LOG(("mvdelch() - called\n")); if (move(y, x) == ERR) return ERR; return wdelch(stdscr); } int mvwdelch(WINDOW *win, int y, int x) { PDC_LOG(("mvwdelch() - called\n")); if (wmove(win, y, x) == ERR) return ERR; return wdelch(win); }