NAME
curses_cursor,
getcury,
getcurx,
getsyx,
getyx,
getbegy,
getbegx,
getbegyx,
getmaxy,
getmaxx,
getmaxyx,
getpary,
getparx,
getparyx,
move,
setsyx,
wmove,
mvcur,
wcursyncup
—
curses cursor and window location and positioning
routines
LIBRARY
Curses Library (libcurses, -lcurses)
SYNOPSIS
#include <curses.h>
int
getcury(
WINDOW
*win);
int
getcurx(
WINDOW
*win);
int
getsyx(
int
y,
int x);
void
getyx(
WINDOW
*win,
int y,
int x);
int
getbegy(
WINDOW
*win);
int
getbegx(
WINDOW
*win);
void
getbegyx(
WINDOW
*win,
int y,
int x);
int
getmaxy(
WINDOW
*win);
int
getmaxx(
WINDOW
*win);
void
getmaxyx(
WINDOW
*win,
int y,
int x);
int
getpary(
WINDOW
*win);
int
getparx(
WINDOW
*win);
void
getparyx(
WINDOW
*win,
int y,
int x);
int
move(
int y,
int x);
int
setsyx(
int
y,
int x);
int
wmove(
WINDOW
*win,
int y,
int x);
int
mvcur(
int
oldy,
int oldx,
int y,
int x);
void
wcursyncup(
WINDOW
*win);
DESCRIPTION
These functions and macros locate and position cursors and windows.
The
getcury() and
getcurx() functions get
the current row and column positions, respectively, of the cursor in the
window
win. The
getyx() macro sets the
values of
y and
x to the current
row and column positions of the cursor in the window
win.
The
getsyx() macro sets the values of
y
and
x of the current window if
is_leaveok() is false, otherwise -1, -1. The
setsyx() macro sets the row and column positions,
respectively, of the cursor in the current window to the values of
y and
x. If both
y and
x are both -1 then
leaveok() is set.
The origin row and columns of a window
win can be
determined by calling the
getbegy() and
getbegx() functions, respectively, and the maximum row and
column for the window can be found by calling the functions
getmaxy() and
getmaxx(), respectively. The
getbegyx() and
getmaxyx() macros set the
values of
y and
x to the origin
and maximum row and column positions, respectively, for the window
win.
The
getpary() and
getparx() functions return
the row and column position of the given subwindow relative to the window's
parent. The macro
getparyx() sets the values of
y and
x to the origin of the
subwindow relative to the window's parent.
The
move() function positions the cursor on the current window
at the position given by
y,
x. The
cursor position is not changed on the screen until the next
refresh().
The
wmove() function is the same as the
move() function, excepting that the cursor is moved in the
window specified by
win.
The function
mvcur() moves the cursor to
y,
x on the screen. The arguments
oldy,
oldx define the previous
cursor position for terminals that do not support absolute cursor motions. The
curses library may optimise the cursor motion based on these values. If the
mvcur() succeeds then the curses internal structures are
updated with the new position of the cursor. If the destination arguments for
mvcur() exceed the terminal bounds an error will be returned
and the cursor position will be unchanged.
The
wcursyncup() function sets the cursor positions of all
ancestors of
win to that of
win.
RETURN VALUES
Functions returning pointers will return
NULL
if an
error is detected. The functions that return an int will return one of the
following values:
OK
- The function completed successfully.
ERR
- An error occurred in the function.
SEE ALSO
curses_refresh(3)
STANDARDS
The
NetBSD Curses library complies with the X/Open
Curses specification, part of the Single Unix Specification. The
getbegx(),
getbegy(),
getcurx(),
getcury(),
getmaxx(),
getmaxy(),
getparx(), and
getpary() functions are
extensions.
HISTORY
The Curses package appeared in
4.0BSD. The
getsyx() and
setsyx() functions are
ncurses extensions to the Curses library and were added in
NetBSD 8.0.