curs_getyx(3x) Library calls curs_getyx(3x)
getyx, getparyx, getbegyx, getmaxyx - get curses cursor and window
coordinates
#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);
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
coordinates 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.
No return values are defined for macros. Do not use them as the right-
hand side of assignment statements.
All of these interfaces are implemented as macros. An "&" operator is
not necessary before the variables y and x.
These macros are described in X/Open Curses, Issue 4.
ncurses also provides functions getbegx, getbegy, getcurx, getcury,
getmaxx, getmaxy, getparx, and getpary for compatibility with older
versions of curses; 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
implementations 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 different
implementations. 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.
curses(3x), curs_legacy(3x), curs_opaque(3x)
ncurses 6.5 2024-06-08 curs_getyx(3x)