Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
curs_inch(3X)			  Library calls 		   curs_inch(3X)

NAME
     inch, winch, mvinch, mvwinch - get a curses character from a window

SYNOPSIS
     #include <curses.h>

     chtype inch(void);
     chtype winch(WINDOW * win);
     chtype mvinch(int y, int x);
     chtype mvwinch(WINDOW * win, int y, int x);

DESCRIPTION
     winch returns the curses character, including its attributes and color pair
     identifier,  at  the  cursor position in the window win.  Subsection "Video
     Attributes" of attron(3X) explains how to extract these data from a chtype.
     ncurses(3X) describes the variants of this function.

RETURN VALUE
     These functions return OK on success and ERR on failure.

     In ncurses, they return ERR if win is NULL.

     Functions prefixed with "mv" first perform cursor movement and fail if  the
     position (y, x) is outside the window boundaries.

NOTES
     inch, mvinch, and mvwinch may be implemented as macros.

     These  functions do not fail if the window contains cells of curses complex
     characters; that is, if they contain characters with codes wider than eight
     bits (or greater than 255 as an unsigned decimal  integer).   They  instead
     extract only the low-order eight bits of the character code from the cell.

PORTABILITY
     X/Open  Curses  Issue 4  describes  these functions.  It specifies no error
     conditions for them.

HISTORY
     The original curses in 4BSD (1980) defined winch as a macro  accessing  the
     WINDOW  structure	member	representing character cell data, at that time a
     char, containing only a 7-bit ASCII character code  and  a  "standout"  at-
     tribute bit, the only one the library supported.

     SVr2  curses  (1984) extended this approach, widening the character code to
     eight bits and permitting several attributes to  be  combined  with  it  by
     storing  them  together in a chtype, an alias of unsigned short.  Because a
     macro was used, its value was not type-checked as a function  return  value
     could  have  been.   Goodheart documented SVr3 (1987) winch as returning an
     int.  SVr3.1's (1987) chtype became an alias of  unsigned	long,  using  16
     bits  for the character code and widening the type in practical terms to 32
     bits, as 64-bit Unix systems were not yet in wide use, and fixed-width  in-
     tegral  types  would  not be standard until ISO C99.  SVr3.2 (1988) added a
     6-bit color pair identifier alongside the attributes.

SEE ALSO
     curs_in_wch(3X) describes comparable functions of the  ncurses  library  in
     its wide-character configuration (ncursesw).

     curses(3X), curs_instr(3X)

ncurses 6.6			   2025-02-15			   curs_inch(3X)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=curs_inch&sektion=3&manpath=FreeBSD+15.1-RELEASE+and+Ports.quarterly>

home | help