'\"macro stdmacro
.if n .pH g3x.curs_slk @(#)curs_slk	40.3 of 12/15/89
.\" Copyright 1989 AT&T
.\" ident	"@(#)svid_ti:ti_lib/curs_slk	1.2"
.nr X
.if \nX=0 .ds x} curs_slk 3X "" "\&"
.if \nX=1 .ds x} curs_slk 3X ""
.if \nX=2 .ds x} curs_slk 3X "" "\&"
.if \nX=3 .ds x} curs_slk "" "" "\&"
.TH \*(x}
.SH NAME
\f4curs_slk\f2: \f4 slk_init\f1, \f4slk_set\f1, \f4slk_refresh\f1, \f4slk_noutrefresh\f1, \f4slk_label\f1, \f4slk_clear\f1, \f4slk_restore\f1, \f4slk_touch\f1, \f4slk_attron\f1, \f4slk_attrset\f1, \f4slk_attroff\f1 \- \f4curses\fP soft label  routines
.SH SYNOPSIS
.nf
.ft 4
#include <curses.h>
.sp
int slk_init(int fmt);
.sp 0.5
int slk_set(int labnum, char *label, int fmt);
.sp 0.5
int slk_refresh(void);
.sp 0.5
int slk_noutrefresh(void);
.sp 0.5
char *slk_label(int labnum);
.sp 0.5
int slk_clear(void);
.sp 0.5
int slk_restore(void);
.sp 0.5
int slk_touch(void);
.sp 0.5
int slk_attron(chtype attrs);
.sp 0.5
int slk_attrset(chtype attrs);
.sp 0.5
int slk_attroff(chtype attrs);
.ft 1
.fi
.SH DESCRIPTION
\f4curses\fP manipulates the set of soft function-key
labels that exist on many terminals.
For those terminals that do not have soft labels,
\f4curses\fP takes over the bottom line of \f4stdscr\f1,
reducing the size of \f4stdscr\f1 and the variable \f4LINES\fP.
\f4curses\fP standardizes on eight labels of up to eight characters each.
.P
To use soft labels, the \f4slk_init\f1 routine must be called
before \f4initscr\f1 or \f4newterm\fP is called.
If \f4initscr\f1 eventually uses a line from
\f4stdscr\f1 to emulate the soft labels,
then \f2fmt\f1
determines how the labels are arranged on the screen.
Setting \f2fmt\f1 to \f40\f1 indicates
a 3-2-3 arrangement of the labels;
\f41\f1 indicates a 4-4 arrangement.
.P
With the \f4slk_set\f1 routine,
\f2labnum\f1
is the label number,
from \f41\f1 to \f48\f1.
\f2label\f1
is the string to be put on the label,
up to eight characters in length.
A null string or a null pointer
sets up a blank label.
\f2fmt\f1
is either
\f40\f1,
\f41\f1,
or
\f42\f1,
indicating whether the label is to be left-justified,
centered, or right-justified, respectively, within the label.
.P
The \f4slk_refresh\f1 and \f4slk_noutrefresh\f1
routines correspond to the 
\f4wrefresh\f1
and
\f4wnoutrefresh\f1 routines.
.P
With the \f4slk_label\f1 routine,
the current label for label number
\f2labnum\f1 is returned
with leading and trailing blanks stripped.
.P
With the \f4slk_clear\f1 routine,
the soft labels are cleared from the screen.
.P
With the \f4slk_restore\f1 routine,
the soft labels are restored to the screen after a
\f4slk_clear\f1 is performed.
.P
With the \f4slk_touch\f1 routine,
all the soft labels are forced to be output the next time a
\f4slk_noutrefresh\f1
is performed.
.P
The \f4slk_attron\f1,
\f4slk_attrset\f1 and \f4slk_attroff\f1
routines correspond to
\f4attron\f1,
\f4attrset\f1,
and
\f4attroff\f1.
They have an effect only if
soft labels are simulated on the bottom line of the screen.
.SH RETURN VALUE
Routines that return an integer return \f4ERR\f1 upon
failure and an integer value other than \f4ERR\f1
upon successful completion.
.P
\f4slk_label\fP returns \f4NULL\f1 on error.
.SH NOTES
.P
The header file \f4<curses.h>\f1 automatically includes the header files
\f4<stdio.h>\f1 and \f4<unctrl.h>\f1.
.PP
Most applications would use \f4slk_noutrefresh\f1 because a
\f4wrefresh\f1 is likely to follow soon.
.SH SEE ALSO
.na
\f4curses\fP(3X),
\f4curs_attr\fP(3X),
\f4curs_initscr\fP(3X),
\f4curs_refresh\fP(3X).
.ad
