# Ncurses Terminal Screen Control

- Introduction
- Installing/Configuring
  - Requirements
  - Installation
  - Runtime Configuration
  - Resource Types
- Predefined Constants
  - Error codes
  - Colors
  - Keys
  - Mouse
- Ncurses Functions
  - ncurses_addch — Add character at current position and advance cursor
  - ncurses_addchnstr — Add attributed string with specified length at current position
  - ncurses_addchstr — Add attributed string at current position
  - ncurses_addnstr — Add string with specified length at current position
  - ncurses_addstr — Output text at current position
  - ncurses_assume_default_colors — Define default colors for color 0
  - ncurses_attroff — Turn off the given attributes
  - ncurses_attron — Turn on the given attributes
  - ncurses_attrset — Set given attributes
  - ncurses_baudrate — Returns baudrate of terminal
  - ncurses_beep — Let the terminal beep
  - ncurses_bkgd — Set background property for terminal screen
  - ncurses_bkgdset — Control screen background
  - ncurses_border — Draw a border around the screen using attributed characters
  - ncurses_bottom_panel — Moves a visible panel to the bottom of the stack
  - ncurses_can_change_color — Checks if terminal color definitions can be changed
  - ncurses_cbreak — Switch off input buffering
  - ncurses_clear — Clear screen
  - ncurses_clrtobot — Clear screen from current position to bottom
  - ncurses_clrtoeol — Clear screen from current position to end of line
  - ncurses_color_content — Retrieves RGB components of a color
  - ncurses_color_set — Set active foreground and background colors
  - ncurses_curs_set — Set cursor state
  - ncurses_def_prog_mode — Saves terminals (program) mode
  - ncurses_def_shell_mode — Saves terminals (shell) mode
  - ncurses_define_key — Define a keycode
  - ncurses_del_panel — Remove panel from the stack and delete it (but not the associated window)
  - ncurses_delay_output — Delay output on terminal using padding characters
  - ncurses_delch — Delete character at current position, move rest of line left
  - ncurses_deleteln — Delete line at current position, move rest of screen up
  - ncurses_delwin — Delete a ncurses window
  - ncurses_doupdate — Write all prepared refreshes to terminal
  - ncurses_echo — Activate keyboard input echo
  - ncurses_echochar — Single character output including refresh
  - ncurses_end — Stop using ncurses, clean up the screen
  - ncurses_erase — Erase terminal screen
  - ncurses_erasechar — Returns current erase character
  - ncurses_filter — Set LINES for iniscr() and newterm() to 1
  - ncurses_flash — Flash terminal screen (visual bell)
  - ncurses_flushinp — Flush keyboard input buffer
  - ncurses_getch — Read a character from keyboard
  - ncurses_getmaxyx — Returns the size of a window
  - ncurses_getmouse — Reads mouse event
  - ncurses_getyx — Returns the current cursor position for a window
  - ncurses_halfdelay — Put terminal into halfdelay mode
  - ncurses_has_colors — Checks if terminal has color capabilities
  - ncurses_has_ic — Check for insert- and delete-capabilities
  - ncurses_has_il — Check for line insert- and delete-capabilities
  - ncurses_has_key — Check for presence of a function key on terminal keyboard
  - ncurses_hide_panel — Remove panel from the stack, making it invisible
  - ncurses_hline — Draw a horizontal line at current position using an attributed character and max. n characters long
  - ncurses_inch — Get character and attribute at current position
  - ncurses_init_color — Define a terminal color
  - ncurses_init_pair — Define a color pair
  - ncurses_init — Initialize ncurses
  - ncurses_insch — Insert character moving rest of line including character at current position
  - ncurses_insdelln — Insert lines before current line scrolling down (negative numbers delete and scroll up)
  - ncurses_insertln — Insert a line, move rest of screen down
  - ncurses_insstr — Insert string at current position, moving rest of line right
  - ncurses_instr — Reads string from terminal screen
  - ncurses_isendwin — Ncurses is in endwin mode, normal screen output may be performed
  - ncurses_keyok — Enable or disable a keycode
  - ncurses_keypad — Turns keypad on or off
  - ncurses_killchar — Returns current line kill character
  - ncurses_longname — Returns terminals description
  - ncurses_meta — Enables/Disable 8-bit meta key information
  - ncurses_mouse_trafo — Transforms coordinates
  - ncurses_mouseinterval — Set timeout for mouse button clicks
  - ncurses_mousemask — Sets mouse options
  - ncurses_move_panel — Moves a panel so that its upper-left corner is at [startx, starty]
  - ncurses_move — Move output position
  - ncurses_mvaddch — Move current position and add character
  - ncurses_mvaddchnstr — Move position and add attributed string with specified length
  - ncurses_mvaddchstr — Move position and add attributed string
  - ncurses_mvaddnstr — Move position and add string with specified length
  - ncurses_mvaddstr — Move position and add string
  - ncurses_mvcur — Move cursor immediately
  - ncurses_mvdelch — Move position and delete character, shift rest of line left
  - ncurses_mvgetch — Move position and get character at new position
  - ncurses_mvhline — Set new position and draw a horizontal line using an attributed character and max. n characters long
  - ncurses_mvinch — Move position and get attributed character at new position
  - ncurses_mvvline — Set new position and draw a vertical line using an attributed character and max. n characters long
  - ncurses_mvwaddstr — Add string at new position in window
  - ncurses_napms — Sleep
  - ncurses_new_panel — Create a new panel and associate it with window
  - ncurses_newpad — Creates a new pad (window)
  - ncurses_newwin — Create a new window
  - ncurses_nl — Translate newline and carriage return / line feed
  - ncurses_nocbreak — Switch terminal to cooked mode
  - ncurses_noecho — Switch off keyboard input echo
  - ncurses_nonl — Do not translate newline and carriage return / line feed
  - ncurses_noqiflush — Do not flush on signal characters
  - ncurses_noraw — Switch terminal out of raw mode
  - ncurses_pair_content — Retrieves foreground and background colors of a color pair
  - ncurses_panel_above — Returns the panel above panel
  - ncurses_panel_below — Returns the panel below panel
  - ncurses_panel_window — Returns the window associated with panel
  - ncurses_pnoutrefresh — Copies a region from a pad into the virtual screen
  - ncurses_prefresh — Copies a region from a pad into the virtual screen
  - ncurses_putp — Apply padding information to the string and output it
  - ncurses_qiflush — Flush on signal characters
  - ncurses_raw — Switch terminal into raw mode
  - ncurses_refresh — Refresh screen
  - ncurses_replace_panel — Replaces the window associated with panel
  - ncurses_reset_prog_mode — Resets the prog mode saved by def_prog_mode
  - ncurses_reset_shell_mode — Resets the shell mode saved by def_shell_mode
  - ncurses_resetty — Restores saved terminal state
  - ncurses_savetty — Saves terminal state
  - ncurses_scr_dump — Dump screen content to file
  - ncurses_scr_init — Initialize screen from file dump
  - ncurses_scr_restore — Restore screen from file dump
  - ncurses_scr_set — Inherit screen from file dump
  - ncurses_scrl — Scroll window content up or down without changing current position
  - ncurses_show_panel — Places an invisible panel on top of the stack, making it visible
  - ncurses_slk_attr — Returns current soft label key attribute
  - ncurses_slk_attroff — Turn off the given attributes for soft function-key labels
  - ncurses_slk_attron — Turn on the given attributes for soft function-key labels
  - ncurses_slk_attrset — Set given attributes for soft function-key labels
  - ncurses_slk_clear — Clears soft labels from screen
  - ncurses_slk_color — Sets color for soft label keys
  - ncurses_slk_init — Initializes soft label key functions
  - ncurses_slk_noutrefresh — Copies soft label keys to virtual screen
  - ncurses_slk_refresh — Copies soft label keys to screen
  - ncurses_slk_restore — Restores soft label keys
  - ncurses_slk_set — Sets function key labels
  - ncurses_slk_touch — Forces output when ncurses_slk_noutrefresh is performed
  - ncurses_standend — Stop using 'standout' attribute
  - ncurses_standout — Start using 'standout' attribute
  - ncurses_start_color — Initializes color functionality
  - ncurses_termattrs — Returns a logical OR of all attribute flags supported by terminal
  - ncurses_termname — Returns terminals (short)-name
  - ncurses_timeout — Set timeout for special key sequences
  - ncurses_top_panel — Moves a visible panel to the top of the stack
  - ncurses_typeahead — Specify different filedescriptor for typeahead checking
  - ncurses_ungetch — Put a character back into the input stream
  - ncurses_ungetmouse — Pushes mouse event to queue
  - ncurses_update_panels — Refreshes the virtual screen to reflect the relations between panels in the stack
  - ncurses_use_default_colors — Assign terminal default colors to color id -1
  - ncurses_use_env — Control use of environment information about terminal size
  - ncurses_use_extended_names — Control use of extended names in terminfo descriptions
  - ncurses_vidattr — Display the string on the terminal in the video attribute mode
  - ncurses_vline — Draw a vertical line at current position using an attributed character and max. n characters long
  - ncurses_waddch — Adds character at current position in a window and advance cursor
  - ncurses_waddstr — Outputs text at current postion in window
  - ncurses_wattroff — Turns off attributes for a window
  - ncurses_wattron — Turns on attributes for a window
  - ncurses_wattrset — Set the attributes for a window
  - ncurses_wborder — Draws a border around the window using attributed characters
  - ncurses_wclear — Clears window
  - ncurses_wcolor_set — Sets windows color pairings
  - ncurses_werase — Erase window contents
  - ncurses_wgetch — Reads a character from keyboard (window)
  - ncurses_whline — Draws a horizontal line in a window at current position using an attributed character and max. n characters long
  - ncurses_wmouse_trafo — Transforms window/stdscr coordinates
  - ncurses_wmove — Moves windows output position
  - ncurses_wnoutrefresh — Copies window to virtual screen
  - ncurses_wrefresh — Refresh window on terminal screen
  - ncurses_wstandend — End standout mode for a window
  - ncurses_wstandout — Enter standout mode for a window
  - ncurses_wvline — Draws a vertical line in a window at current position using an attributed character and max. n characters long