# curs_overlay 3x

    curs_overlay(3x)                                       curs_overlay(3x)

## NAME

           overlay, overwrite, copywin - overlay and manipulate
           overlapped curses windows

## SYNOPSIS

           #include <curses.h>

           int overlay(const WINDOW *srcwin, WINDOW *dstwin);
           int overwrite(const WINDOW *srcwin, WINDOW *dstwin);
           int copywin(const  WINDOW  *srcwin,  WINDOW  *dstwin,  int
           sminrow,
                 int smincol, int dminrow, int dmincol, int dmaxrow,
                 int dmaxcol, int overlay);

## DESCRIPTION

           The  overlay  and overwrite routines overlay srcwin on top
           of dstwin.  scrwin and dstwin are not required to  be  the
           same  size;  only  text  where  the two windows overlap is
           copied.  The difference is that overlay is non-destructive
           (blanks are not copied) whereas overwrite is destructive.

           The  copywin  routine provides a finer granularity of con-
           trol over the overlay and overwrite routines.  Like in the
           prefresh routine, a rectangle is specified in the destina-
           tion window, (dminrow, dmincol)  and  (dmaxrow,  dmaxcol),
           and  the  upper-left-corner coordinates of the source win-
           dow, (sminrow, smincol).  If the argument overlay is true,
           then copying is non-destructive, as in overlay.

## RETURN VALUE

           Routines  that  return an integer return ERR upon failure,
           and OK (SVr4 only specifies "an integer value  other  than
           ERR") upon successful completion.

           X/Open  defines  no error conditions.  In this implementa-
           tion, copywin, overlay and overwrite return  an  error  if
           either of the window pointers are null, or if some part of
           the window would be placed off-screen.

## NOTES

           Note that overlay and overwrite may be macros.

## PORTABILITY

           The XSI Curses standard, Issue 4 describes these functions
           (adding the const qualifiers).  It further specifies their
           behavior in the presence of characters with multibyte ren-
           ditions (not yet supported in this implementation).

## SEE ALSO

           curses(3x), curs_pad(3x), curs_refresh(3x)

                                                           curs_overlay(3x)