+'\" t
.\"***************************************************************************
-.\" Copyright 2020 Thomas E. Dickey *
+.\" Copyright 2021-2022,2023 Thomas E. Dickey *
.\" Copyright 2008-2015,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_threads.3x,v 1.27 2020/12/30 18:28:51 tom Exp $
-.TH curs_threads 3X ""
+.\" $Id: curs_threads.3x,v 1.36 2023/08/06 00:02:33 tom Exp $
+.TH curs_threads 3X 2023-08-05 "ncurses 6.4" "Library calls"
.de bP
.ie n .IP \(bu 4
.el .IP \(bu 2
.na
.hy 0
.SH NAME
-\fBcurs_threads\fR \- \fBcurses\fR thread support
+\fBcurs_threads\fP \- \fBcurses\fP thread support
.ad
.hy
.SH SYNOPSIS
-\fB#include <curses.h>\fR
+\fB#include <curses.h>\fP
.sp
-\fBtypedef int (*NCURSES_WINDOW_CB)(WINDOW *, void *);\fR
+\fBtypedef int (*NCURSES_WINDOW_CB)(WINDOW *, void *);\fP
.br
-\fBtypedef int (*NCURSES_SCREEN_CB)(SCREEN *, void *);\fR
+\fBtypedef int (*NCURSES_SCREEN_CB)(SCREEN *, void *);\fP
.sp
-\fBint get_escdelay(void);\fR
+\fBint get_escdelay(void);\fP
.br
-\fBint set_escdelay(int \fP\fIms\fP\fB);\fR
+\fBint set_escdelay(int \fIms\fB);\fR
.br
-\fBint set_tabsize(int \fP\fIcols\fP\fB);\fR
+\fBint set_tabsize(int \fIcols\fB);\fR
.sp
-\fBint use_screen(SCREEN *\fP\fIscr\fP\fB, NCURSES_SCREEN_CB \fP\fIfunc\fP\fB, void *\fP\fIdata\fP\fB);\fR
-.br
-\fBint use_window(WINDOW *\fP\fIwin\fP\fB, NCURSES_WINDOW_CB \fP\fIfunc\fP\fB, void *\fP\fIdata\fP\fB);\fR
+\fBint use_screen(SCREEN *\fIscr\fB, NCURSES_SCREEN_CB \fIfunc\fB, void *\fIdata\fB);\fR
.br
+\fBint use_window(WINDOW *\fIwin\fB, NCURSES_WINDOW_CB \fIfunc\fB, void *\fIdata\fB);\fR
.SH DESCRIPTION
This implementation can be configured to provide rudimentary support
for multi-threaded applications.
-This makes a different set of libraries, e.g., \fIlibncursest\fP since
+This makes a different set of libraries, e.g., \fBlibncursest\fP since
the binary interfaces are different.
.PP
Rather than modify the interfaces to pass a thread specifier to
.bP
global data, e.g., used in the low-level terminfo or termcap interfaces.
.bP
-terminal data, e.g., associated with a call to \fIset_curterm\fP.
+terminal data, e.g., associated with a call to \fBset_curterm\fP.
The terminal data are initialized when screens are created.
.bP
-screen data, e.g., associated with a call to \fInewterm\fP or \fIinitscr\fP.
+screen data, e.g., associated with a call to \fBnewterm\fP or \fBinitscr\fP.
.bP
-window data, e.g., associated with a call to \fInewwin\fP or \fIsubwin\fP.
+window data, e.g., associated with a call to \fBnewwin\fP or \fBsubwin\fP.
Windows are associated with screens.
Pads are not necessarily associated with a particular screen.
.IP
COLOR_PAIR/reentrant
COLOR_PAIRS/screen (readonly)
COLS/screen (readonly)
-ESCDELAY/screen (readonly, see \fIset_escdelay\fP)
+ESCDELAY/screen (readonly, see \fBset_escdelay\fP)
LINES/screen (readonly)
PAIR_NUMBER/reentrant
PC/global
It is recommended that any code depending on ncurses extensions
be conditioned using NCURSES_VERSION.
.SH SEE ALSO
-\fBcurses\fR(3X),
-\fBcurs_opaque\fR(3X),
-\fBcurs_variables\fR(3X).
+\fBcurses\fP(3X),
+\fBcurs_opaque\fP(3X),
+\fBcurs_variables\fP(3X).