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

FreeBSD Manual Pages

  
 
  

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

NAME
       getyx,  getparyx, getbegyx, getmaxyx - get curses cursor	and window co-
       ordinates

SYNOPSIS
       #include	<curses.h>

       void getyx(WINDOW *win, int y, int x);
       void getbegyx(WINDOW *win, int y, int x);
       void getmaxyx(WINDOW *win, int y, int x);

       void getparyx(WINDOW *win, int y, int x);

DESCRIPTION
       These macros obtain the cursor position and  bounds  information	 of  a
       curses window win.  getyx stores	win's cursor position in the variables
       y  and  x.  getmaxyx stores win's maximum valid line and	column numbers
       in y and	x, respectively.  getbegyx similarly stores  the  position  of
       win's  origin relative to that of the screen (for stdscr, these coordi-
       nates are always	0).

       If win is a subwindow (see subwin(3X)), the getparyx macro  places  the
       coordinates  of	its origin relative to its parent window into y	and x,
       and -1 into both	if it is not.

RETURN VALUE
       No return values	are defined for	macros.	 Do not	use them as the	right-
       hand side of assignment statements.

NOTES
       All of these interfaces are implemented as macros.  An "&" operator  is
       not necessary before the	variables y and	x.

PORTABILITY
       These macros are	described in X/Open Curses Issue 4.

       ncurses	also  provides	functions  getbegy, getbegx, getcury, getcurx,
       getmaxy,	getmaxx, getpary, and getparx for compatibility	with  System V
       curses that were	not standardized; see curs_legacy(3X).

       Although	X/Open Curses does not address the issue, many implementations
       expose  members of the WINDOW structure containing values corresponding
       to these	macros.	 Do not	rely on	their availability;  some  implementa-
       tions  make  WINDOW opaque (that	is, they do not	allow direct access to
       its members).

       Besides the problem of opaque structures, the data stored in like-named
       members may not have values of the same meaning across different	imple-
       mentations.  For	example, the values of WINDOW._maxx  and  WINDOW._maxy
       in  ncurses  have long differed by one from some	other implementations.
       The getmaxyx macro hides	this difference.

HISTORY
       4BSD (1980) introduced getyx.

       SVr3 (1987) added getbegyx and getmaxyx.	 SVr3.1	later that  year  sup-
       plied getparyx.

SEE ALSO
       curses(3X), curs_legacy(3X), curs_opaque(3X)

ncurses	6.6			  2025-02-01			curs_getyx(3X)

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

home | help