ncurses 6.0 - patch 20171118
[ncurses.git] / man / curs_legacy.3x
index 6ffac25d342718a37ff272f1650332e427f3306d..fa0930fe3ac27605667cb3db35d943965804c952 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
 .\"***************************************************************************
-.\" Copyright (c) 2007-2010,2015 Free Software Foundation, Inc.              *
+.\" Copyright (c) 2007-2015,2017 Free Software Foundation, Inc.              *
 .\"                                                                          *
 .\" Permission is hereby granted, free of charge, to any person obtaining a  *
 .\" copy of this software and associated documentation files (the            *
 .\"                                                                          *
 .\" Permission is hereby granted, free of charge, to any person obtaining a  *
 .\" copy of this software and associated documentation files (the            *
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_legacy.3x,v 1.6 2015/12/05 20:33:14 tom Exp $
+.\" $Id: curs_legacy.3x,v 1.7 2017/11/19 00:23:58 tom Exp $
+.de bP
+.ie n  .IP \(bu 4
+.el    .IP \(bu 2
+..
 .TH curs_legacy 3X ""
 .SH NAME
 .TH curs_legacy 3X ""
 .SH NAME
-curs_legacy \- get \fBcurses\fR cursor and window coordinates, attributes
+curs_legacy \- get \fBcurses\fP cursor and window coordinates, attributes
 .SH SYNOPSIS
 .SH SYNOPSIS
-\fB#include <curses.h>\fR
+\fB#include <curses.h>\fP
 .sp
 .sp
-\fBint getattrs(WINDOW *win);\fR
+\fBint getattrs(WINDOW *win);\fP
 .br
 .br
-\fBint getbegx(WINDOW *win);\fR
+\fBint getbegx(WINDOW *win);\fP
 .br
 .br
-\fBint getbegy(WINDOW *win);\fR
+\fBint getbegy(WINDOW *win);\fP
 .br
 .br
-\fBint getcurx(WINDOW *win);\fR
+\fBint getcurx(WINDOW *win);\fP
 .br
 .br
-\fBint getcury(WINDOW *win);\fR
+\fBint getcury(WINDOW *win);\fP
 .br
 .br
-\fBint getmaxx(WINDOW *win);\fR
+\fBint getmaxx(WINDOW *win);\fP
 .br
 .br
-\fBint getmaxy(WINDOW *win);\fR
+\fBint getmaxy(WINDOW *win);\fP
 .br
 .br
-\fBint getparx(WINDOW *win);\fR
+\fBint getparx(WINDOW *win);\fP
 .br
 .br
-\fBint getpary(WINDOW *win);\fR
+\fBint getpary(WINDOW *win);\fP
 .br
 .SH DESCRIPTION
 .br
 .SH DESCRIPTION
-The \fBgetbegy\fR and \fBgetbegx\fR functions return the same
-data as \fBgetbegyx\fR.
-.PP
-The \fBgetcury\fR and \fBgetcurx\fR functions return the same
-data as \fBgetyx\fR.
-.PP
-The \fBgetmaxy\fR and \fBgetmaxx\fR functions return the same
-data as \fBgetmaxyx\fR.
-.PP
-The \fBgetpary\fR and \fBgetparx\fR functions return the same
-data as \fBgetparyx\fR.
+These legacy functions are simpler to use than the X/Open Curses functions:
+.bP
+The \fBgetattrs\fP function returns the same attribute data as \fBwattr_get\fP.
+.IP
+However, \fBgetattrs\fP returns an integer (actually a \fBchtype\fP),
+while \fBwattr_get\fP returns the current color pair in a separate parameter.
+In the wide-character library configuration,
+color pairs may not fit into a \fBchtype\fP,
+so \fBwattr_get\fP is the only way to obtain the color information.
+.IP
+Because \fBgetattrs\fP returns the attributes in a single parameter,
+it would not be possible for an application to distinguish that from
+\fBERR\fP (a \fI-1\fP).
+If the window parameter is null, \fBgetattrs\fP returns \fBA_NORMAL\fP (zero).
+.bP
+The \fBgetbegy\fP and \fBgetbegx\fP functions return the same
+data as \fBgetbegyx\fP.
+.bP
+The \fBgetcury\fP and \fBgetcurx\fP functions return the same
+data as \fBgetyx\fP.
+.bP
+The \fBgetmaxy\fP and \fBgetmaxx\fP functions return the same
+data as \fBgetmaxyx\fP.
+.bP
+The \fBgetpary\fP and \fBgetparx\fP functions return the same
+data as \fBgetparyx\fP.
 .SH RETURN VALUE
 .SH RETURN VALUE
-These functions return an integer,
+Except as noted,
+these functions return an integer,
 or ERR if the window parameter is null.
 .SH NOTES
 All of these interfaces are provided as macros and functions.
 The macros are suppressed (and only the functions provided)
 or ERR if the window parameter is null.
 .SH NOTES
 All of these interfaces are provided as macros and functions.
 The macros are suppressed (and only the functions provided)
-when \fBNCURSES_OPAQUE\fR is defined.
+when \fBNCURSES_OPAQUE\fP is defined.
 The standard forms such as \fBgetyx\fP must be implemented as macros,
 and (in this implementation) are defined in terms of the functions
 described here,
 to avoid reliance on internal details of the WINDOW structure.
 .SH PORTABILITY
 These functions were supported on Version 7, BSD or System V implementations.
 The standard forms such as \fBgetyx\fP must be implemented as macros,
 and (in this implementation) are defined in terms of the functions
 described here,
 to avoid reliance on internal details of the WINDOW structure.
 .SH PORTABILITY
 These functions were supported on Version 7, BSD or System V implementations.
+None of those implementations checked the window parameter.
+.PP
+The \fBgetattrs\fP function and macro are defined to return a (signed) integer
+for compatibility with those implementations
+although an unsigned type would have been more appropriate.
 .SH SEE ALSO
 .SH SEE ALSO
-\fBcurses\fR(3X),
-\fBcurs_getyx\fR(3X),
-\fBcurs_opaque\fR(3X)
+\fBcurses\fP(3X),
+\fBcurs_getyx\fP(3X),
+\fBcurs_opaque\fP(3X)