| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- /* PDCurses */
- #include <curspriv.h>
- /*man-start**************************************************************
- beep
- ----
- ### Synopsis
- int beep(void);
- int flash(void);
- ### Description
- beep() sounds the audible bell on the terminal, if possible; if not,
- it calls flash().
- flash() "flashes" the screen, by inverting the foreground and
- background of every cell, pausing, and then restoring the original
- attributes.
- ### Return Value
- These functions return ERR if called before initscr(), otherwise OK.
- ### Portability
- X/Open ncurses NetBSD
- beep Y Y Y
- flash Y Y Y
- **man-end****************************************************************/
- int beep(void)
- {
- PDC_LOG(("beep() - called\n"));
- if (!SP)
- return ERR;
- if (SP->audible)
- PDC_beep();
- else
- flash();
- return OK;
- }
- int flash(void)
- {
- int z, y, x;
- PDC_LOG(("flash() - called\n"));
- if (!curscr)
- return ERR;
- /* Reverse each cell; wait; restore the screen */
- for (z = 0; z < 2; z++)
- {
- for (y = 0; y < LINES; y++)
- for (x = 0; x < COLS; x++)
- curscr->_y[y][x] ^= A_REVERSE;
- wrefresh(curscr);
- if (!z)
- napms(50);
- }
- return OK;
- }
|