pdcurses/move.c

Fri, 22 Jul 2016 17:50:00 +0300

author
Teemu Piippo <teemu@compsta2.com>
date
Fri, 22 Jul 2016 17:50:00 +0300
changeset 157
42bb29924218
parent 97
2d43f05b284c
permissions
-rw-r--r--

Bytestream now behaves more like a cursor. It does not store the data anymore, rather it leaves the user to specify a vector to use for storage.

/* Public Domain Curses */

#include <curspriv.h>

RCSID("$Id: move.c,v 1.28 2008/07/13 16:08:18 wmcbrine Exp $")

/*man-start**************************************************************

  Name:                                                         move

  Synopsis:
        int move(int y, int x);
        int wmove(WINDOW *win, int y, int x);

  Description:
        The cursor associated with the window is moved to the given
        location.  This does not move the physical cursor of the
        terminal until refresh() is called.  The position specified is
        relative to the upper left corner of the window, which is (0,0).

  Return Value:
        All functions return OK on success and ERR on error.

  Portability                                X/Open    BSD    SYS V
        move                                    Y       Y       Y
        wmove                                   Y       Y       Y

**man-end****************************************************************/

int move(int y, int x)
{
    PDC_LOG(("move() - called: y=%d x=%d\n", y, x));

    if (!stdscr || x < 0 || y < 0 || x >= stdscr->_maxx || y >= stdscr->_maxy)
        return ERR;

    stdscr->_curx = x;
    stdscr->_cury = y;

    return OK;
}

int wmove(WINDOW *win, int y, int x)
{
    PDC_LOG(("wmove() - called: y=%d x=%d\n", y, x));

    if (!win || x < 0 || y < 0 || x >= win->_maxx || y >= win->_maxy)
        return ERR;

    win->_curx = x;
    win->_cury = y;

    return OK;
}

mercurial