aboutsummaryrefslogtreecommitdiff
path: root/contrib/ncurses/ncurses/base
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/ncurses/ncurses/base')
-rw-r--r--contrib/ncurses/ncurses/base/MKkeyname.awk6
-rwxr-xr-xcontrib/ncurses/ncurses/base/MKlib_gen.sh10
-rw-r--r--contrib/ncurses/ncurses/base/MKunctrl.awk6
-rw-r--r--contrib/ncurses/ncurses/base/define_key.c43
-rw-r--r--contrib/ncurses/ncurses/base/keybound.c9
-rw-r--r--contrib/ncurses/ncurses/base/keyok.c49
-rw-r--r--contrib/ncurses/ncurses/base/lib_addch.c37
-rw-r--r--contrib/ncurses/ncurses/base/lib_addstr.c12
-rw-r--r--contrib/ncurses/ncurses/base/lib_beep.c36
-rw-r--r--contrib/ncurses/ncurses/base/lib_bkgd.c86
-rw-r--r--contrib/ncurses/ncurses/base/lib_box.c31
-rw-r--r--contrib/ncurses/ncurses/base/lib_chgat.c25
-rw-r--r--contrib/ncurses/ncurses/base/lib_clear.c19
-rw-r--r--contrib/ncurses/ncurses/base/lib_clearok.c21
-rw-r--r--contrib/ncurses/ncurses/base/lib_clrbot.c6
-rw-r--r--contrib/ncurses/ncurses/base/lib_clreol.c8
-rw-r--r--contrib/ncurses/ncurses/base/lib_color.c80
-rw-r--r--contrib/ncurses/ncurses/base/lib_colorset.c7
-rw-r--r--contrib/ncurses/ncurses/base/lib_delch.c39
-rw-r--r--contrib/ncurses/ncurses/base/lib_delwin.c48
-rw-r--r--contrib/ncurses/ncurses/base/lib_dft_fgbg.c6
-rw-r--r--contrib/ncurses/ncurses/base/lib_echo.c23
-rw-r--r--contrib/ncurses/ncurses/base/lib_endwin.c25
-rw-r--r--contrib/ncurses/ncurses/base/lib_erase.c42
-rw-r--r--contrib/ncurses/ncurses/base/lib_flash.c36
-rw-r--r--contrib/ncurses/ncurses/base/lib_freeall.c12
-rw-r--r--contrib/ncurses/ncurses/base/lib_getch.c21
-rw-r--r--contrib/ncurses/ncurses/base/lib_getstr.c245
-rw-r--r--contrib/ncurses/ncurses/base/lib_hline.c4
-rw-r--r--contrib/ncurses/ncurses/base/lib_immedok.c16
-rw-r--r--contrib/ncurses/ncurses/base/lib_inchstr.c26
-rw-r--r--contrib/ncurses/ncurses/base/lib_initscr.c55
-rw-r--r--contrib/ncurses/ncurses/base/lib_insch.c37
-rw-r--r--contrib/ncurses/ncurses/base/lib_insdel.c23
-rw-r--r--contrib/ncurses/ncurses/base/lib_insstr.c6
-rw-r--r--contrib/ncurses/ncurses/base/lib_instr.c39
-rw-r--r--contrib/ncurses/ncurses/base/lib_isendwin.c14
-rw-r--r--contrib/ncurses/ncurses/base/lib_leaveok.c21
-rw-r--r--contrib/ncurses/ncurses/base/lib_mouse.c19
-rw-r--r--contrib/ncurses/ncurses/base/lib_move.c4
-rw-r--r--contrib/ncurses/ncurses/base/lib_mvwin.c112
-rw-r--r--contrib/ncurses/ncurses/base/lib_newterm.c17
-rw-r--r--contrib/ncurses/ncurses/base/lib_newwin.c39
-rw-r--r--contrib/ncurses/ncurses/base/lib_nl.c6
-rw-r--r--contrib/ncurses/ncurses/base/lib_overlay.c170
-rw-r--r--contrib/ncurses/ncurses/base/lib_pad.c56
-rw-r--r--contrib/ncurses/ncurses/base/lib_printw.c99
-rw-r--r--contrib/ncurses/ncurses/base/lib_redrawln.c40
-rw-r--r--contrib/ncurses/ncurses/base/lib_refresh.c14
-rw-r--r--contrib/ncurses/ncurses/base/lib_restart.c7
-rw-r--r--contrib/ncurses/ncurses/base/lib_scanw.c83
-rw-r--r--contrib/ncurses/ncurses/base/lib_screen.c250
-rw-r--r--contrib/ncurses/ncurses/base/lib_scroll.c28
-rw-r--r--contrib/ncurses/ncurses/base/lib_scrollok.c21
-rw-r--r--contrib/ncurses/ncurses/base/lib_scrreg.c4
-rw-r--r--contrib/ncurses/ncurses/base/lib_set_term.c35
-rw-r--r--contrib/ncurses/ncurses/base/lib_slk.c244
-rw-r--r--contrib/ncurses/ncurses/base/lib_slkatr_set.c27
-rw-r--r--contrib/ncurses/ncurses/base/lib_slkatrof.c20
-rw-r--r--contrib/ncurses/ncurses/base/lib_slkatron.c20
-rw-r--r--contrib/ncurses/ncurses/base/lib_slkatrset.c20
-rw-r--r--contrib/ncurses/ncurses/base/lib_slkattr.c18
-rw-r--r--contrib/ncurses/ncurses/base/lib_slkclear.c35
-rw-r--r--contrib/ncurses/ncurses/base/lib_slkcolor.c24
-rw-r--r--contrib/ncurses/ncurses/base/lib_slkinit.c16
-rw-r--r--contrib/ncurses/ncurses/base/lib_slklab.c14
-rw-r--r--contrib/ncurses/ncurses/base/lib_slkrefr.c110
-rw-r--r--contrib/ncurses/ncurses/base/lib_slkset.c94
-rw-r--r--contrib/ncurses/ncurses/base/lib_slktouch.c16
-rw-r--r--contrib/ncurses/ncurses/base/lib_touch.c58
-rw-r--r--contrib/ncurses/ncurses/base/lib_ungetch.c43
-rw-r--r--contrib/ncurses/ncurses/base/lib_vline.c4
-rw-r--r--contrib/ncurses/ncurses/base/lib_wattroff.c22
-rw-r--r--contrib/ncurses/ncurses/base/lib_wattron.c22
-rw-r--r--contrib/ncurses/ncurses/base/lib_winch.c4
-rw-r--r--contrib/ncurses/ncurses/base/lib_window.c292
-rw-r--r--contrib/ncurses/ncurses/base/memmove.c48
-rw-r--r--contrib/ncurses/ncurses/base/nc_panel.c8
-rw-r--r--contrib/ncurses/ncurses/base/resizeterm.c117
-rw-r--r--contrib/ncurses/ncurses/base/safe_sprintf.c345
-rw-r--r--contrib/ncurses/ncurses/base/sigaction.c86
-rw-r--r--contrib/ncurses/ncurses/base/tries.c142
-rw-r--r--contrib/ncurses/ncurses/base/version.c10
-rw-r--r--contrib/ncurses/ncurses/base/vsscanf.c53
-rw-r--r--contrib/ncurses/ncurses/base/wresize.c16
85 files changed, 2126 insertions, 2035 deletions
diff --git a/contrib/ncurses/ncurses/base/MKkeyname.awk b/contrib/ncurses/ncurses/base/MKkeyname.awk
index aaeb4743cdfe..c06773350cc6 100644
--- a/contrib/ncurses/ncurses/base/MKkeyname.awk
+++ b/contrib/ncurses/ncurses/base/MKkeyname.awk
@@ -1,6 +1,6 @@
-# $Id: MKkeyname.awk,v 1.17 1999/02/18 11:18:06 tom Exp $
+# $Id: MKkeyname.awk,v 1.18 2000/12/10 02:25:23 tom Exp $
##############################################################################
-# Copyright (c) 1999 Free Software Foundation, Inc. #
+# Copyright (c) 1999,2000 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 "Software"), #
@@ -45,7 +45,7 @@ BEGIN {
END {
printf "\t{ 0, 0 }};\n"
print ""
- print "NCURSES_CONST char *keyname(int c)"
+ print "NCURSES_EXPORT(NCURSES_CONST char *) keyname (int c)"
print "{"
print "int i;"
print "static char name[20];"
diff --git a/contrib/ncurses/ncurses/base/MKlib_gen.sh b/contrib/ncurses/ncurses/base/MKlib_gen.sh
index 337794007035..4de2a5a466bf 100755
--- a/contrib/ncurses/ncurses/base/MKlib_gen.sh
+++ b/contrib/ncurses/ncurses/base/MKlib_gen.sh
@@ -2,7 +2,7 @@
#
# MKlib_gen.sh -- generate sources from curses.h macro definitions
#
-# ($Id: MKlib_gen.sh,v 1.12 2000/07/29 16:30:11 tom Exp $)
+# ($Id: MKlib_gen.sh,v 1.13 2000/12/10 00:30:25 tom Exp $)
#
# The XSI Curses standard requires all curses entry points to exist as
# functions, even though many definitions would normally be shadowed
@@ -226,7 +226,9 @@ BEGIN {
}
EOF1
-sed -n -f $ED1 | sed -f $ED2 \
+sed -n -f $ED1 \
+| sed -e 's/NCURSES_EXPORT(\(.*\)) \(.*\) (\(.*\))/\1 \2(\3)/' \
+| sed -f $ED2 \
| $AWK -f $AW1 ) \
| sed \
-e '/^\([a-z_][a-z_]*\) /s//\1 gen_/' >$TMP
@@ -255,5 +257,7 @@ BEGIN {
| sed -f $ED3 \
| sed \
-e 's/^.*T_CALLED.*returnCode( \([a-z].*) \));/ return \1;/' \
- -e 's/^.*T_CALLED.*returnCode( \((wmove.*) \));/ return \1;/'
+ -e 's/^.*T_CALLED.*returnCode( \((wmove.*) \));/ return \1;/' \
+| sed \
+ -e 's/^\(.*\) \(.*\) (\(.*\))$/NCURSES_EXPORT(\1) \2 (\3)/'
diff --git a/contrib/ncurses/ncurses/base/MKunctrl.awk b/contrib/ncurses/ncurses/base/MKunctrl.awk
index 3d5b25637d75..d9d5da59433f 100644
--- a/contrib/ncurses/ncurses/base/MKunctrl.awk
+++ b/contrib/ncurses/ncurses/base/MKunctrl.awk
@@ -1,6 +1,6 @@
-# $Id: MKunctrl.awk,v 1.7 2000/04/01 19:49:26 tom Exp $
+# $Id: MKunctrl.awk,v 1.8 2000/12/10 02:25:37 tom Exp $
##############################################################################
-# Copyright (c) 1998 Free Software Foundation, Inc. #
+# Copyright (c) 1998,2000 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 "Software"), #
@@ -39,7 +39,7 @@ BEGIN {
print ""
}
END {
- print "NCURSES_CONST char *unctrl(register chtype ch)"
+ print "NCURSES_EXPORT(NCURSES_CONST char *) unctrl (register chtype ch)"
print "{"
printf "static const char* const table[] = {"
for ( ch = 0; ch < 256; ch++ ) {
diff --git a/contrib/ncurses/ncurses/base/define_key.c b/contrib/ncurses/ncurses/base/define_key.c
index 52dc6927bd55..7fc885f8d9b3 100644
--- a/contrib/ncurses/ncurses/base/define_key.c
+++ b/contrib/ncurses/ncurses/base/define_key.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -32,28 +32,29 @@
#include <curses.priv.h>
-MODULE_ID("$Id: define_key.c,v 1.4 1999/02/21 13:03:55 tom Exp $")
+MODULE_ID("$Id: define_key.c,v 1.6 2000/12/10 02:43:26 tom Exp $")
-int
-define_key(char *str, int keycode)
+NCURSES_EXPORT(int)
+define_key
+(char *str, int keycode)
{
- int code = ERR;
+ int code = ERR;
- T((T_CALLED("define_key(%s,%d)"), _nc_visbuf(str), keycode));
- if (keycode > 0) {
- if (str != 0) {
- define_key(str, 0);
- } else if (has_key(keycode)) {
- while (_nc_remove_key(&(SP->_keytry), keycode))
- code = OK;
- }
- if (str != 0) {
- (void) _nc_add_to_try(&(SP->_keytry), str, keycode);
- code = OK;
- }
- } else {
- while (_nc_remove_string(&(SP->_keytry), str))
- code = OK;
+ T((T_CALLED("define_key(%s,%d)"), _nc_visbuf(str), keycode));
+ if (keycode > 0) {
+ if (str != 0) {
+ define_key(str, 0);
+ } else if (has_key(keycode)) {
+ while (_nc_remove_key(&(SP->_keytry), keycode))
+ code = OK;
}
- returnCode(code);
+ if (str != 0) {
+ (void) _nc_add_to_try(&(SP->_keytry), str, keycode);
+ code = OK;
+ }
+ } else {
+ while (_nc_remove_string(&(SP->_keytry), str))
+ code = OK;
+ }
+ returnCode(code);
}
diff --git a/contrib/ncurses/ncurses/base/keybound.c b/contrib/ncurses/ncurses/base/keybound.c
index c9aa02292118..c8ca2856bb97 100644
--- a/contrib/ncurses/ncurses/base/keybound.c
+++ b/contrib/ncurses/ncurses/base/keybound.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1999 Free Software Foundation, Inc. *
+ * Copyright (c) 1999,2000 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 *
@@ -32,14 +32,15 @@
#include <curses.priv.h>
-MODULE_ID("$Id: keybound.c,v 1.1 1999/02/19 11:55:56 tom Exp $")
+MODULE_ID("$Id: keybound.c,v 1.3 2000/12/10 02:43:26 tom Exp $")
/*
* Returns the count'th string definition which is associated with the
* given keycode. The result is malloc'd, must be freed by the caller.
*/
-char *keybound(int code, int count)
+NCURSES_EXPORT(char *)
+keybound(int code, int count)
{
- return _nc_expand_try(SP->_key_ok, code, &count, 0);
+ return _nc_expand_try(SP->_key_ok, code, &count, 0);
}
diff --git a/contrib/ncurses/ncurses/base/keyok.c b/contrib/ncurses/ncurses/base/keyok.c
index a1385769781f..e3b4be297c17 100644
--- a/contrib/ncurses/ncurses/base/keyok.c
+++ b/contrib/ncurses/ncurses/base/keyok.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -32,7 +32,7 @@
#include <curses.priv.h>
-MODULE_ID("$Id: keyok.c,v 1.3 1999/02/19 11:29:48 tom Exp $")
+MODULE_ID("$Id: keyok.c,v 1.5 2000/12/10 02:43:26 tom Exp $")
/*
* Enable (or disable) ncurses' interpretation of a keycode by adding (or
@@ -44,29 +44,30 @@ MODULE_ID("$Id: keyok.c,v 1.3 1999/02/19 11:29:48 tom Exp $")
* corresponding tree.
*/
-int keyok(int c, bool flag)
+NCURSES_EXPORT(int)
+keyok(int c, bool flag)
{
- int code = ERR;
- int count = 0;
- char *s;
+ int code = ERR;
+ int count = 0;
+ char *s;
- T((T_CALLED("keyok(%d,%d)"), c, flag));
- if (flag) {
- while ((s = _nc_expand_try(SP->_key_ok, c, &count, 0)) != 0
- && _nc_remove_key(&(SP->_key_ok), c)) {
- _nc_add_to_try(&(SP->_keytry), s, c);
- free(s);
- code = OK;
- count = 0;
- }
- } else {
- while ((s = _nc_expand_try(SP->_keytry, c, &count, 0)) != 0
- && _nc_remove_key(&(SP->_keytry), c)) {
- _nc_add_to_try(&(SP->_key_ok), s, c);
- free(s);
- code = OK;
- count = 0;
- }
+ T((T_CALLED("keyok(%d,%d)"), c, flag));
+ if (flag) {
+ while ((s = _nc_expand_try(SP->_key_ok, c, &count, 0)) != 0
+ && _nc_remove_key(&(SP->_key_ok), c)) {
+ _nc_add_to_try(&(SP->_keytry), s, c);
+ free(s);
+ code = OK;
+ count = 0;
}
- returnCode(code);
+ } else {
+ while ((s = _nc_expand_try(SP->_keytry, c, &count, 0)) != 0
+ && _nc_remove_key(&(SP->_keytry), c)) {
+ _nc_add_to_try(&(SP->_key_ok), s, c);
+ free(s);
+ code = OK;
+ count = 0;
+ }
+ }
+ returnCode(code);
}
diff --git a/contrib/ncurses/ncurses/base/lib_addch.c b/contrib/ncurses/ncurses/base/lib_addch.c
index 69c17c34709b..799fbf61523c 100644
--- a/contrib/ncurses/ncurses/base/lib_addch.c
+++ b/contrib/ncurses/ncurses/base/lib_addch.c
@@ -41,7 +41,7 @@
#include <curses.priv.h>
#include <ctype.h>
-MODULE_ID("$Id: lib_addch.c,v 1.44 2000/05/20 21:13:11 tom Exp $")
+MODULE_ID("$Id: lib_addch.c,v 1.47 2000/12/10 02:43:26 tom Exp $")
/*
* Ugly microtweaking alert. Everything from here to end of module is
@@ -73,20 +73,22 @@ render_char(WINDOW *win, chtype ch)
}
TR(TRACE_VIRTPUT, ("bkg = %lx, attrs = %lx -> ch = %lx", win->_bkgd,
- win->_attrs, ch));
+ win->_attrs, ch));
return (ch);
}
-chtype
-_nc_background(WINDOW *win)
+NCURSES_EXPORT(chtype)
+_nc_background
+(WINDOW *win)
/* make render_char() visible while still allowing us to inline it below */
{
return (win->_bkgd);
}
-chtype
-_nc_render(WINDOW *win, chtype ch)
+NCURSES_EXPORT(chtype)
+_nc_render
+(WINDOW *win, chtype ch)
/* make render_char() visible while still allowing us to inline it below */
{
return render_char(win, ch);
@@ -122,7 +124,7 @@ waddch_literal(WINDOW *win, chtype ch)
* If we're trying to add a character at the lower-right corner more
* than once, fail. (Moving the cursor will clear the flag).
*/
-#if 0 /* Solaris 2.6 allows updating the corner more than once */
+#if 0 /* Solaris 2.6 allows updating the corner more than once */
if (win->_flags & _WRAPPED) {
if (x >= win->_maxx)
return (ERR);
@@ -171,7 +173,7 @@ waddch_nosync(WINDOW *win, const chtype ch)
/* the workhorse function -- add a character to the given window */
{
int x, y;
- int t = 0;
+ chtype t = 0;
const char *s = 0;
if ((ch & A_ALTCHARSET)
@@ -246,8 +248,9 @@ waddch_nosync(WINDOW *win, const chtype ch)
return (OK);
}
-int
-_nc_waddch_nosync(WINDOW *win, const chtype c)
+NCURSES_EXPORT(int)
+_nc_waddch_nosync
+(WINDOW *win, const chtype c)
/* export copy of waddch_nosync() so the string-put functions can use it */
{
return (waddch_nosync(win, c));
@@ -261,13 +264,14 @@ _nc_waddch_nosync(WINDOW *win, const chtype c)
/* These are actual entry points */
-int
-waddch(WINDOW *win, const chtype ch)
+NCURSES_EXPORT(int)
+waddch
+(WINDOW *win, const chtype ch)
{
int code = ERR;
TR(TRACE_VIRTPUT | TRACE_CCALLS, (T_CALLED("waddch(%p, %s)"), win,
- _tracechtype(ch)));
+ _tracechtype(ch)));
if (win && (waddch_nosync(win, ch) != ERR)) {
_nc_synchook(win);
@@ -278,13 +282,14 @@ waddch(WINDOW *win, const chtype ch)
return (code);
}
-int
-wechochar(WINDOW *win, const chtype ch)
+NCURSES_EXPORT(int)
+wechochar
+(WINDOW *win, const chtype ch)
{
int code = ERR;
TR(TRACE_VIRTPUT | TRACE_CCALLS, (T_CALLED("wechochar(%p, %s)"), win,
- _tracechtype(ch)));
+ _tracechtype(ch)));
if (win && (waddch_nosync(win, ch) != ERR)) {
bool save_immed = win->_immed;
diff --git a/contrib/ncurses/ncurses/base/lib_addstr.c b/contrib/ncurses/ncurses/base/lib_addstr.c
index 59a3bae81c8c..60bf944a44ed 100644
--- a/contrib/ncurses/ncurses/base/lib_addstr.c
+++ b/contrib/ncurses/ncurses/base/lib_addstr.c
@@ -40,10 +40,11 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_addstr.c,v 1.18 2000/07/29 16:42:41 tom Exp $")
+MODULE_ID("$Id: lib_addstr.c,v 1.19 2000/12/10 01:24:50 tom Exp $")
-int
-waddnstr(WINDOW *win, const char *const astr, int n)
+NCURSES_EXPORT(int)
+waddnstr
+(WINDOW *win, const char *const astr, int n)
{
unsigned const char *str = (unsigned const char *) astr;
int code = ERR;
@@ -70,8 +71,9 @@ waddnstr(WINDOW *win, const char *const astr, int n)
returnCode(code);
}
-int
-waddchnstr(WINDOW *win, const chtype * const astr, int n)
+NCURSES_EXPORT(int)
+waddchnstr
+(WINDOW *win, const chtype * const astr, int n)
{
NCURSES_SIZE_T y = win->_cury;
NCURSES_SIZE_T x = win->_curx;
diff --git a/contrib/ncurses/ncurses/base/lib_beep.c b/contrib/ncurses/ncurses/base/lib_beep.c
index 3428aaf69e16..c23d0a1d2ff1 100644
--- a/contrib/ncurses/ncurses/base/lib_beep.c
+++ b/contrib/ncurses/ncurses/base/lib_beep.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -31,7 +31,6 @@
* and: Eric S. Raymond <esr@snark.thyrsus.com> *
****************************************************************************/
-
/*
* beep.c
*
@@ -40,9 +39,9 @@
*/
#include <curses.priv.h>
-#include <term.h> /* beep, flash */
+#include <term.h> /* beep, flash */
-MODULE_ID("$Id: lib_beep.c,v 1.7 1999/10/22 21:39:09 tom Exp $")
+MODULE_ID("$Id: lib_beep.c,v 1.9 2000/12/10 02:43:26 tom Exp $")
/*
* beep()
@@ -52,22 +51,23 @@ MODULE_ID("$Id: lib_beep.c,v 1.7 1999/10/22 21:39:09 tom Exp $")
*
*/
-int beep(void)
+NCURSES_EXPORT(int)
+beep(void)
{
- int res = ERR;
+ int res = ERR;
- T((T_CALLED("beep()")));
+ T((T_CALLED("beep()")));
- /* FIXME: should make sure that we are not in altchar mode */
- if (bell) {
- TPUTS_TRACE("bell");
- res = putp(bell);
- _nc_flush();
- } else if (flash_screen) {
- TPUTS_TRACE("flash_screen");
- res = putp(flash_screen);
- _nc_flush();
- }
+ /* FIXME: should make sure that we are not in altchar mode */
+ if (bell) {
+ TPUTS_TRACE("bell");
+ res = putp(bell);
+ _nc_flush();
+ } else if (flash_screen) {
+ TPUTS_TRACE("flash_screen");
+ res = putp(flash_screen);
+ _nc_flush();
+ }
- returnCode(res);
+ returnCode(res);
}
diff --git a/contrib/ncurses/ncurses/base/lib_bkgd.c b/contrib/ncurses/ncurses/base/lib_bkgd.c
index 410ee0580433..071924c56f1e 100644
--- a/contrib/ncurses/ncurses/base/lib_bkgd.c
+++ b/contrib/ncurses/ncurses/base/lib_bkgd.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -33,54 +33,56 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_bkgd.c,v 1.12 1998/02/11 12:13:54 tom Exp $")
+MODULE_ID("$Id: lib_bkgd.c,v 1.14 2000/12/10 02:43:26 tom Exp $")
-void wbkgdset(WINDOW *win, chtype ch)
+NCURSES_EXPORT(void)
+wbkgdset(WINDOW *win, chtype ch)
{
- T((T_CALLED("wbkgdset(%p,%s)"), win, _tracechtype(ch)));
-
- if (win) {
- chtype off = AttrOf(win->_bkgd);
- chtype on = AttrOf(ch);
-
- toggle_attr_off(win->_attrs,off);
- toggle_attr_on (win->_attrs,on);
-
- if (TextOf(ch)==0)
- ch |= BLANK;
- win->_bkgd = ch;
- }
- returnVoid;
+ T((T_CALLED("wbkgdset(%p,%s)"), win, _tracechtype(ch)));
+
+ if (win) {
+ chtype off = AttrOf(win->_bkgd);
+ chtype on = AttrOf(ch);
+
+ toggle_attr_off(win->_attrs, off);
+ toggle_attr_on(win->_attrs, on);
+
+ if (TextOf(ch) == 0)
+ ch |= BLANK;
+ win->_bkgd = ch;
+ }
+ returnVoid;
}
-int wbkgd(WINDOW *win, const chtype ch)
+NCURSES_EXPORT(int)
+wbkgd(WINDOW *win, const chtype ch)
{
- int code = ERR;
- int x, y;
- chtype new_bkgd = ch;
+ int code = ERR;
+ int x, y;
+ chtype new_bkgd = ch;
+
+ T((T_CALLED("wbkgd(%p,%s)"), win, _tracechtype(new_bkgd)));
- T((T_CALLED("wbkgd(%p,%s)"), win, _tracechtype(new_bkgd)));
+ if (win) {
+ chtype old_bkgd = getbkgd(win);
- if (win) {
- chtype old_bkgd = getbkgd(win);
+ wbkgdset(win, new_bkgd);
+ wattrset(win, AttrOf(win->_bkgd));
- wbkgdset(win, new_bkgd);
- wattrset(win, AttrOf(win->_bkgd));
-
- for (y = 0; y <= win->_maxy; y++) {
- for (x = 0; x <= win->_maxx; x++) {
- if (win->_line[y].text[x] == old_bkgd)
- win->_line[y].text[x] = win->_bkgd;
- else
- win->_line[y].text[x] =
- _nc_render(win,(A_ALTCHARSET &
- AttrOf(win->_line[y].text[x]))
- | TextOf(win->_line[y].text[x]));
- }
+ for (y = 0; y <= win->_maxy; y++) {
+ for (x = 0; x <= win->_maxx; x++) {
+ if (win->_line[y].text[x] == old_bkgd)
+ win->_line[y].text[x] = win->_bkgd;
+ else
+ win->_line[y].text[x] =
+ _nc_render(win, (A_ALTCHARSET &
+ AttrOf(win->_line[y].text[x]))
+ | TextOf(win->_line[y].text[x]));
+ }
+ }
+ touchwin(win);
+ _nc_synchook(win);
+ code = OK;
}
- touchwin(win);
- _nc_synchook(win);
- code = OK;
- }
- returnCode(code);
+ returnCode(code);
}
diff --git a/contrib/ncurses/ncurses/base/lib_box.c b/contrib/ncurses/ncurses/base/lib_box.c
index 8a682585b560..d018fd89b09a 100644
--- a/contrib/ncurses/ncurses/base/lib_box.c
+++ b/contrib/ncurses/ncurses/base/lib_box.c
@@ -40,26 +40,27 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_box.c,v 1.11 2000/04/29 21:12:37 tom Exp $")
+MODULE_ID("$Id: lib_box.c,v 1.13 2000/12/10 02:43:26 tom Exp $")
-int
-wborder(WINDOW *win,
- chtype ls, chtype rs, chtype ts, chtype bs,
- chtype tl, chtype tr, chtype bl, chtype br)
+NCURSES_EXPORT(int)
+wborder
+(WINDOW *win,
+ chtype ls, chtype rs, chtype ts, chtype bs,
+ chtype tl, chtype tr, chtype bl, chtype br)
{
NCURSES_SIZE_T i;
NCURSES_SIZE_T endx, endy;
T((T_CALLED("wborder(%p,%s,%s,%s,%s,%s,%s,%s,%s)"),
- win,
- _tracechtype2(1, ls),
- _tracechtype2(2, rs),
- _tracechtype2(3, ts),
- _tracechtype2(4, bs),
- _tracechtype2(5, tl),
- _tracechtype2(6, tr),
- _tracechtype2(7, bl),
- _tracechtype2(8, br)));
+ win,
+ _tracechtype2(1, ls),
+ _tracechtype2(2, rs),
+ _tracechtype2(3, ts),
+ _tracechtype2(4, bs),
+ _tracechtype2(5, tl),
+ _tracechtype2(6, tr),
+ _tracechtype2(7, bl),
+ _tracechtype2(8, br)));
if (!win)
returnCode(ERR);
@@ -91,7 +92,7 @@ wborder(WINDOW *win,
br = _nc_render(win, br);
T(("using %#lx, %#lx, %#lx, %#lx, %#lx, %#lx, %#lx, %#lx",
- ls, rs, ts, bs, tl, tr, bl, br));
+ ls, rs, ts, bs, tl, tr, bl, br));
endx = win->_maxx;
endy = win->_maxy;
diff --git a/contrib/ncurses/ncurses/base/lib_chgat.c b/contrib/ncurses/ncurses/base/lib_chgat.c
index 7690ae4a2af3..66c6a09b63f9 100644
--- a/contrib/ncurses/ncurses/base/lib_chgat.c
+++ b/contrib/ncurses/ncurses/base/lib_chgat.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -40,23 +40,24 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_chgat.c,v 1.2 1998/02/11 12:14:00 tom Exp $")
+MODULE_ID("$Id: lib_chgat.c,v 1.4 2000/12/10 02:43:26 tom Exp $")
-int wchgat(WINDOW *win, int n, attr_t attr, short color, const void *opts GCC_UNUSED)
+NCURSES_EXPORT(int)
+wchgat
+(WINDOW *win, int n, attr_t attr, short color, const void *opts GCC_UNUSED)
{
- int i;
+ int i;
T((T_CALLED("wchgat(%p,%d,%s,%d)"), win, n, _traceattr(attr), color));
if (win) {
- toggle_attr_on(attr,COLOR_PAIR(color));
+ toggle_attr_on(attr, COLOR_PAIR(color));
- for (i = win->_curx; i <= win->_maxx && (n == -1 || (n-- > 0)); i++)
- win->_line[win->_cury].text[i]
- = TextOf(win->_line[win->_cury].text[i]) | attr;
+ for (i = win->_curx; i <= win->_maxx && (n == -1 || (n-- > 0)); i++)
+ win->_line[win->_cury].text[i]
+ = TextOf(win->_line[win->_cury].text[i]) | attr;
- returnCode(OK);
- }
- else
- returnCode(ERR);
+ returnCode(OK);
+ } else
+ returnCode(ERR);
}
diff --git a/contrib/ncurses/ncurses/base/lib_clear.c b/contrib/ncurses/ncurses/base/lib_clear.c
index 9c07cf0890e4..e0b4edf9e224 100644
--- a/contrib/ncurses/ncurses/base/lib_clear.c
+++ b/contrib/ncurses/ncurses/base/lib_clear.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -40,16 +40,17 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_clear.c,v 1.5 1998/02/11 12:13:53 tom Exp $")
+MODULE_ID("$Id: lib_clear.c,v 1.7 2000/12/10 02:43:26 tom Exp $")
-int wclear(WINDOW *win)
+NCURSES_EXPORT(int)
+wclear(WINDOW *win)
{
-int code = ERR;
+ int code = ERR;
- T((T_CALLED("wclear(%p)"), win));
+ T((T_CALLED("wclear(%p)"), win));
- if ((code = werase(win))!=ERR)
- win->_clear = TRUE;
-
- returnCode(code);
+ if ((code = werase(win)) != ERR)
+ win->_clear = TRUE;
+
+ returnCode(code);
}
diff --git a/contrib/ncurses/ncurses/base/lib_clearok.c b/contrib/ncurses/ncurses/base/lib_clearok.c
index cc904b1d7dc7..9b56bd1ec63a 100644
--- a/contrib/ncurses/ncurses/base/lib_clearok.c
+++ b/contrib/ncurses/ncurses/base/lib_clearok.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -31,7 +31,6 @@
* and: Eric S. Raymond <esr@snark.thyrsus.com> *
****************************************************************************/
-
/*
** lib_clearok.c
**
@@ -41,16 +40,16 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_clearok.c,v 1.2 1998/02/11 12:14:00 tom Exp $")
+MODULE_ID("$Id: lib_clearok.c,v 1.4 2000/12/10 02:43:26 tom Exp $")
-int clearok(WINDOW *win, bool flag)
+NCURSES_EXPORT(int)
+clearok(WINDOW *win, bool flag)
{
- T((T_CALLED("clearok(%p,%d)"), win, flag));
+ T((T_CALLED("clearok(%p,%d)"), win, flag));
- if (win) {
- win->_clear = flag;
- returnCode(OK);
- }
- else
- returnCode(ERR);
+ if (win) {
+ win->_clear = flag;
+ returnCode(OK);
+ } else
+ returnCode(ERR);
}
diff --git a/contrib/ncurses/ncurses/base/lib_clrbot.c b/contrib/ncurses/ncurses/base/lib_clrbot.c
index d1e243f37ffd..805e7c29093d 100644
--- a/contrib/ncurses/ncurses/base/lib_clrbot.c
+++ b/contrib/ncurses/ncurses/base/lib_clrbot.c
@@ -40,9 +40,9 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_clrbot.c,v 1.15 2000/04/29 21:15:26 tom Exp $")
+MODULE_ID("$Id: lib_clrbot.c,v 1.17 2000/12/10 02:43:26 tom Exp $")
-int
+NCURSES_EXPORT(int)
wclrtobot(WINDOW *win)
{
int code = ERR;
@@ -55,7 +55,7 @@ wclrtobot(WINDOW *win)
chtype blank = _nc_background(win);
T(("clearing from y = %d to y = %d with maxx = %d",
- win->_cury, win->_maxy, win->_maxx));
+ win->_cury, win->_maxy, win->_maxx));
for (y = win->_cury; y <= win->_maxy; y++) {
struct ldat *line = &(win->_line[y]);
diff --git a/contrib/ncurses/ncurses/base/lib_clreol.c b/contrib/ncurses/ncurses/base/lib_clreol.c
index a5d067cbfd5f..fa0afe4ec502 100644
--- a/contrib/ncurses/ncurses/base/lib_clreol.c
+++ b/contrib/ncurses/ncurses/base/lib_clreol.c
@@ -40,9 +40,9 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_clreol.c,v 1.16 2000/04/29 21:14:54 tom Exp $")
+MODULE_ID("$Id: lib_clreol.c,v 1.19 2000/12/10 02:43:26 tom Exp $")
-int
+NCURSES_EXPORT(int)
wclrtoeol(WINDOW *win)
{
int code = ERR;
@@ -60,7 +60,7 @@ wclrtoeol(WINDOW *win)
* If we have just wrapped the cursor, the clear applies to the
* new line, unless we are at the lower right corner.
*/
- if (win->_flags & _WRAPPED
+ if ((win->_flags & _WRAPPED) != 0
&& y < win->_maxy) {
win->_flags &= ~_WRAPPED;
}
@@ -69,7 +69,7 @@ wclrtoeol(WINDOW *win)
* There's no point in clearing if we're not on a legal
* position, either.
*/
- if (win->_flags & _WRAPPED
+ if ((win->_flags & _WRAPPED) != 0
|| y > win->_maxy
|| x > win->_maxx)
returnCode(ERR);
diff --git a/contrib/ncurses/ncurses/base/lib_color.c b/contrib/ncurses/ncurses/base/lib_color.c
index 492194babbfb..1fa573271ab9 100644
--- a/contrib/ncurses/ncurses/base/lib_color.c
+++ b/contrib/ncurses/ncurses/base/lib_color.c
@@ -41,15 +41,17 @@
#include <term.h>
#include <tic.h>
-MODULE_ID("$Id: lib_color.c,v 1.53 2000/09/02 18:02:15 tom Exp $")
+MODULE_ID("$Id: lib_color.c,v 1.55 2000/12/10 02:43:27 tom Exp $")
/*
* These should be screen structure members. They need to be globals for
* historical reasons. So we assign them in start_color() and also in
* set_term()'s screen-switching logic.
*/
-int COLOR_PAIRS = 0;
-int COLORS = 0;
+NCURSES_EXPORT_VAR(int)
+COLOR_PAIRS = 0;
+NCURSES_EXPORT_VAR(int)
+COLORS = 0;
/*
* Given a RGB range of 0..1000, we'll normally set the individual values
@@ -90,8 +92,8 @@ static const color_t hls_palette[] =
* These are called from _nc_do_color(), which in turn is called from
* vidattr - so we have to assume that SP may be null.
*/
-static int
-default_fg(void)
+ static int
+ default_fg(void)
{
return (SP != 0) ? SP->_default_fg : COLOR_WHITE;
}
@@ -111,13 +113,13 @@ default_bg(void)
* to maintain compatibility with a pre-ANSI scheme. The same scheme is
* also used in the FreeBSD syscons.
*/
-static int
-toggled_colors(int c)
+ static int
+ toggled_colors(int c)
{
if (c < 16) {
static const int table[] =
{0, 4, 2, 6, 1, 5, 3, 7,
- 8, 12, 10, 14, 9, 13, 11, 15};
+ 8, 12, 10, 14, 9, 13, 11, 15};
c = table[c];
}
return c;
@@ -162,7 +164,7 @@ set_original_colors(void)
return FALSE;
}
-int
+NCURSES_EXPORT(int)
start_color(void)
{
int n;
@@ -256,8 +258,9 @@ rgb2hls(short r, short g, short b, short *h, short *l, short *s)
* Extension (1997/1/18) - Allow negative f/b values to set default color
* values.
*/
-int
-init_pair(short pair, short f, short b)
+NCURSES_EXPORT(int)
+init_pair
+(short pair, short f, short b)
{
unsigned result;
@@ -319,24 +322,25 @@ init_pair(short pair, short f, short b)
const color_t *tp = hue_lightness_saturation ? hls_palette : cga_palette;
T(("initializing pair: pair = %d, fg=(%d,%d,%d), bg=(%d,%d,%d)",
- pair,
- tp[f].red, tp[f].green, tp[f].blue,
- tp[b].red, tp[b].green, tp[b].blue));
+ pair,
+ tp[f].red, tp[f].green, tp[f].blue,
+ tp[b].red, tp[b].green, tp[b].blue));
if (initialize_pair) {
TPUTS_TRACE("initialize_pair");
putp(tparm(initialize_pair,
- pair,
- tp[f].red, tp[f].green, tp[f].blue,
- tp[b].red, tp[b].green, tp[b].blue));
+ pair,
+ tp[f].red, tp[f].green, tp[f].blue,
+ tp[b].red, tp[b].green, tp[b].blue));
}
}
returnCode(OK);
}
-int
-init_color(short color, short r, short g, short b)
+NCURSES_EXPORT(int)
+init_color
+(short color, short r, short g, short b)
{
T((T_CALLED("init_color(%d,%d,%d,%d)"), color, r, g, b));
@@ -350,9 +354,9 @@ init_color(short color, short r, short g, short b)
if (hue_lightness_saturation)
rgb2hls(r, g, b,
- &SP->_color_table[color].red,
- &SP->_color_table[color].green,
- &SP->_color_table[color].blue);
+ &SP->_color_table[color].red,
+ &SP->_color_table[color].green,
+ &SP->_color_table[color].blue);
else {
SP->_color_table[color].red = r;
SP->_color_table[color].green = g;
@@ -366,27 +370,28 @@ init_color(short color, short r, short g, short b)
returnCode(OK);
}
-bool
+NCURSES_EXPORT(bool)
can_change_color(void)
{
T((T_CALLED("can_change_color()")));
returnCode((can_change != 0) ? TRUE : FALSE);
}
-bool
+NCURSES_EXPORT(bool)
has_colors(void)
{
T((T_CALLED("has_colors()")));
returnCode((VALID_NUMERIC(max_colors) && VALID_NUMERIC(max_pairs)
- && (((set_foreground != NULL)
- && (set_background != NULL))
- || ((set_a_foreground != NULL)
- && (set_a_background != NULL))
- || set_color_pair)) ? TRUE : FALSE);
+ && (((set_foreground != NULL)
+ && (set_background != NULL))
+ || ((set_a_foreground != NULL)
+ && (set_a_background != NULL))
+ || set_color_pair)) ? TRUE : FALSE);
}
-int
-color_content(short color, short *r, short *g, short *b)
+NCURSES_EXPORT(int)
+color_content
+(short color, short *r, short *g, short *b)
{
T((T_CALLED("color_content(%d,%p,%p,%p)"), color, r, g, b));
if (color < 0 || color >= COLORS)
@@ -401,8 +406,9 @@ color_content(short color, short *r, short *g, short *b)
returnCode(OK);
}
-int
-pair_content(short pair, short *f, short *b)
+NCURSES_EXPORT(int)
+pair_content
+(short pair, short *f, short *b)
{
T((T_CALLED("pair_content(%d,%p,%p)"), pair, f, b));
@@ -416,8 +422,9 @@ pair_content(short pair, short *f, short *b)
returnCode(OK);
}
-void
-_nc_do_color(int old_pair, int pair, bool reverse, int (*outc) (int))
+NCURSES_EXPORT(void)
+_nc_do_color
+(int old_pair, int pair, bool reverse, int (*outc) (int))
{
NCURSES_COLOR_T fg = C_MASK, bg = C_MASK;
NCURSES_COLOR_T old_fg, old_bg;
@@ -471,7 +478,8 @@ _nc_do_color(int old_pair, int pair, bool reverse, int (*outc) (int))
bg = xx;
}
- TR(TRACE_ATTRS, ("setting colors: pair = %d, fg = %d, bg = %d", pair, fg, bg));
+ TR(TRACE_ATTRS, ("setting colors: pair = %d, fg = %d, bg = %d", pair,
+ fg, bg));
if (fg != C_MASK) {
set_foreground_color(fg, outc);
diff --git a/contrib/ncurses/ncurses/base/lib_colorset.c b/contrib/ncurses/ncurses/base/lib_colorset.c
index 3870e875f322..b496c78c9e39 100644
--- a/contrib/ncurses/ncurses/base/lib_colorset.c
+++ b/contrib/ncurses/ncurses/base/lib_colorset.c
@@ -40,10 +40,11 @@
#include <curses.priv.h>
#include <ctype.h>
-MODULE_ID("$Id: lib_colorset.c,v 1.6 2000/07/29 16:37:19 tom Exp $")
+MODULE_ID("$Id: lib_colorset.c,v 1.7 2000/12/10 01:24:50 tom Exp $")
-int
-wcolor_set(WINDOW *win, short color_pair_number, void *opts)
+NCURSES_EXPORT(int)
+wcolor_set
+(WINDOW *win, short color_pair_number, void *opts)
{
T((T_CALLED("wcolor_set(%p,%d)"), win, color_pair_number));
if (win
diff --git a/contrib/ncurses/ncurses/base/lib_delch.c b/contrib/ncurses/ncurses/base/lib_delch.c
index 0169d31ac6d5..918e22534f0d 100644
--- a/contrib/ncurses/ncurses/base/lib_delch.c
+++ b/contrib/ncurses/ncurses/base/lib_delch.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -40,29 +40,30 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_delch.c,v 1.8 1998/06/28 00:28:17 tom Exp $")
+MODULE_ID("$Id: lib_delch.c,v 1.10 2000/12/10 02:43:27 tom Exp $")
-int wdelch(WINDOW *win)
+NCURSES_EXPORT(int)
+wdelch(WINDOW *win)
{
-int code = ERR;
+ int code = ERR;
- T((T_CALLED("wdelch(%p)"), win));
+ T((T_CALLED("wdelch(%p)"), win));
- if (win) {
- chtype blank = _nc_background(win);
- struct ldat *line = &(win->_line[win->_cury]);
- chtype *end = &(line->text[win->_maxx]);
- chtype *temp2 = &(line->text[win->_curx + 1]);
- chtype *temp1 = temp2 - 1;
+ if (win) {
+ chtype blank = _nc_background(win);
+ struct ldat *line = &(win->_line[win->_cury]);
+ chtype *end = &(line->text[win->_maxx]);
+ chtype *temp2 = &(line->text[win->_curx + 1]);
+ chtype *temp1 = temp2 - 1;
- CHANGED_TO_EOL(line, win->_curx, win->_maxx);
- while (temp1 < end)
- *temp1++ = *temp2++;
+ CHANGED_TO_EOL(line, win->_curx, win->_maxx);
+ while (temp1 < end)
+ *temp1++ = *temp2++;
- *temp1 = blank;
+ *temp1 = blank;
- _nc_synchook(win);
- code = OK;
- }
- returnCode(code);
+ _nc_synchook(win);
+ code = OK;
+ }
+ returnCode(code);
}
diff --git a/contrib/ncurses/ncurses/base/lib_delwin.c b/contrib/ncurses/ncurses/base/lib_delwin.c
index 7bab0c77b02b..7c5686952319 100644
--- a/contrib/ncurses/ncurses/base/lib_delwin.c
+++ b/contrib/ncurses/ncurses/base/lib_delwin.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -40,33 +40,39 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_delwin.c,v 1.9 1998/02/11 12:13:53 tom Exp $")
+MODULE_ID("$Id: lib_delwin.c,v 1.12 2000/12/10 02:43:27 tom Exp $")
-static bool have_children(WINDOW *win)
+static bool
+cannot_delete(WINDOW *win)
{
- WINDOWLIST *p;
- for (p = _nc_windows; p != 0; p = p->next) {
- if (p->win->_flags & _SUBWIN
- && p->win->_parent == win)
- return TRUE;
+ WINDOWLIST *p;
+ bool result = TRUE;
+
+ for (p = _nc_windows; p != 0; p = p->next) {
+ if (p->win == win) {
+ result = FALSE;
+ } else if ((p->win->_flags & _SUBWIN) != 0
+ && p->win->_parent == win) {
+ result = TRUE;
+ break;
}
- return FALSE;
+ }
+ return result;
}
-int delwin(WINDOW *win)
+NCURSES_EXPORT(int)
+delwin(WINDOW *win)
{
- T((T_CALLED("delwin(%p)"), win));
-
- if (win == 0
- || have_children(win))
- returnCode(ERR);
+ T((T_CALLED("delwin(%p)"), win));
- if (win->_flags & _SUBWIN)
- touchwin(win->_parent);
- else if (curscr != 0)
- touchwin(curscr);
+ if (win == 0
+ || cannot_delete(win))
+ returnCode(ERR);
- _nc_freewin(win);
+ if (win->_flags & _SUBWIN)
+ touchwin(win->_parent);
+ else if (curscr != 0)
+ touchwin(curscr);
- returnCode(OK);
+ returnCode(_nc_freewin(win));
}
diff --git a/contrib/ncurses/ncurses/base/lib_dft_fgbg.c b/contrib/ncurses/ncurses/base/lib_dft_fgbg.c
index 7c090244f291..24705c9615e9 100644
--- a/contrib/ncurses/ncurses/base/lib_dft_fgbg.c
+++ b/contrib/ncurses/ncurses/base/lib_dft_fgbg.c
@@ -33,13 +33,13 @@
#include <curses.priv.h>
#include <term.h>
-MODULE_ID("$Id: lib_dft_fgbg.c,v 1.13 2000/07/07 16:50:27 tom Exp $")
+MODULE_ID("$Id: lib_dft_fgbg.c,v 1.15 2000/12/10 02:43:27 tom Exp $")
/*
* Modify the behavior of color-pair 0 so that the library doesn't assume that
* it is white on black. This is an extension to XSI curses.
*/
-int
+NCURSES_EXPORT(int)
use_default_colors(void)
{
T((T_CALLED("use_default_colors()")));
@@ -50,7 +50,7 @@ use_default_colors(void)
* Modify the behavior of color-pair 0 so that the library assumes that it
* is something specific, possibly not white on black.
*/
-int
+NCURSES_EXPORT(int)
assume_default_colors(int fg, int bg)
{
T((T_CALLED("assume_default_colors(%d,%d)"), fg, bg));
diff --git a/contrib/ncurses/ncurses/base/lib_echo.c b/contrib/ncurses/ncurses/base/lib_echo.c
index 4ccf97ff64c0..df44713d1a11 100644
--- a/contrib/ncurses/ncurses/base/lib_echo.c
+++ b/contrib/ncurses/ncurses/base/lib_echo.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -31,7 +31,6 @@
* and: Eric S. Raymond <esr@snark.thyrsus.com> *
****************************************************************************/
-
/*
* echo.c
*
@@ -43,18 +42,20 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_echo.c,v 1.3 1998/10/12 13:15:33 Alexander.V.Lukyanov Exp $")
+MODULE_ID("$Id: lib_echo.c,v 1.5 2000/12/10 02:43:27 tom Exp $")
-int echo(void)
+NCURSES_EXPORT(int)
+echo(void)
{
- T((T_CALLED("echo()")));
- SP->_echo = TRUE;
- returnCode(OK);
+ T((T_CALLED("echo()")));
+ SP->_echo = TRUE;
+ returnCode(OK);
}
-int noecho(void)
+NCURSES_EXPORT(int)
+noecho(void)
{
- T((T_CALLED("noecho()")));
- SP->_echo = FALSE;
- returnCode(OK);
+ T((T_CALLED("noecho()")));
+ SP->_echo = FALSE;
+ returnCode(OK);
}
diff --git a/contrib/ncurses/ncurses/base/lib_endwin.c b/contrib/ncurses/ncurses/base/lib_endwin.c
index 31b6e516cc1d..66662871962b 100644
--- a/contrib/ncurses/ncurses/base/lib_endwin.c
+++ b/contrib/ncurses/ncurses/base/lib_endwin.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -31,7 +31,6 @@
* and: Eric S. Raymond <esr@snark.thyrsus.com> *
****************************************************************************/
-
/*
** lib_endwin.c
**
@@ -42,20 +41,20 @@
#include <curses.priv.h>
#include <term.h>
-MODULE_ID("$Id: lib_endwin.c,v 1.17 1999/06/12 23:01:46 tom Exp $")
+MODULE_ID("$Id: lib_endwin.c,v 1.19 2000/12/10 02:43:27 tom Exp $")
-int
+NCURSES_EXPORT(int)
endwin(void)
{
- T((T_CALLED("endwin()")));
+ T((T_CALLED("endwin()")));
- if (SP) {
- SP->_endwin = TRUE;
- SP->_mouse_wrap(SP);
- _nc_screen_wrap();
- _nc_mvcur_wrap(); /* wrap up cursor addressing */
- returnCode(reset_shell_mode());
- }
+ if (SP) {
+ SP->_endwin = TRUE;
+ SP->_mouse_wrap(SP);
+ _nc_screen_wrap();
+ _nc_mvcur_wrap(); /* wrap up cursor addressing */
+ returnCode(reset_shell_mode());
+ }
- returnCode(ERR);
+ returnCode(ERR);
}
diff --git a/contrib/ncurses/ncurses/base/lib_erase.c b/contrib/ncurses/ncurses/base/lib_erase.c
index 1e4237bf8056..87673b7a81f4 100644
--- a/contrib/ncurses/ncurses/base/lib_erase.c
+++ b/contrib/ncurses/ncurses/base/lib_erase.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -31,7 +31,6 @@
* and: Eric S. Raymond <esr@snark.thyrsus.com> *
****************************************************************************/
-
/*
** lib_erase.c
**
@@ -41,33 +40,34 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_erase.c,v 1.11 1998/02/11 12:13:54 tom Exp $")
+MODULE_ID("$Id: lib_erase.c,v 1.13 2000/12/10 02:43:27 tom Exp $")
-int werase(WINDOW *win)
+NCURSES_EXPORT(int)
+werase(WINDOW *win)
{
-int code = ERR;
-int y;
-chtype blank;
-chtype *sp, *end, *start;
+ int code = ERR;
+ int y;
+ chtype blank;
+ chtype *sp, *end, *start;
- T((T_CALLED("werase(%p)"), win));
+ T((T_CALLED("werase(%p)"), win));
- if (win) {
- blank = _nc_background(win);
- for (y = 0; y <= win->_maxy; y++) {
+ if (win) {
+ blank = _nc_background(win);
+ for (y = 0; y <= win->_maxy; y++) {
start = win->_line[y].text;
end = &start[win->_maxx];
-
+
for (sp = start; sp <= end; sp++)
- *sp = blank;
-
+ *sp = blank;
+
win->_line[y].firstchar = 0;
win->_line[y].lastchar = win->_maxx;
- }
- win->_curx = win->_cury = 0;
- win->_flags &= ~_WRAPPED;
- _nc_synchook(win);
- code = OK;
}
- returnCode(code);
+ win->_curx = win->_cury = 0;
+ win->_flags &= ~_WRAPPED;
+ _nc_synchook(win);
+ code = OK;
+ }
+ returnCode(code);
}
diff --git a/contrib/ncurses/ncurses/base/lib_flash.c b/contrib/ncurses/ncurses/base/lib_flash.c
index d0d607f6b0f8..a6b022a8e816 100644
--- a/contrib/ncurses/ncurses/base/lib_flash.c
+++ b/contrib/ncurses/ncurses/base/lib_flash.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -31,7 +31,6 @@
* and: Eric S. Raymond <esr@snark.thyrsus.com> *
****************************************************************************/
-
/*
* flash.c
*
@@ -40,9 +39,9 @@
*/
#include <curses.priv.h>
-#include <term.h> /* beep, flash */
+#include <term.h> /* beep, flash */
-MODULE_ID("$Id: lib_flash.c,v 1.4 1999/10/22 21:39:06 tom Exp $")
+MODULE_ID("$Id: lib_flash.c,v 1.6 2000/12/10 02:43:27 tom Exp $")
/*
* flash()
@@ -52,22 +51,23 @@ MODULE_ID("$Id: lib_flash.c,v 1.4 1999/10/22 21:39:06 tom Exp $")
*
*/
-int flash(void)
+NCURSES_EXPORT(int)
+flash(void)
{
- int res = ERR;
+ int res = ERR;
- T((T_CALLED("flash()")));
+ T((T_CALLED("flash()")));
- /* FIXME: should make sure that we are not in altchar mode */
- if (flash_screen) {
- TPUTS_TRACE("flash_screen");
- res = putp(flash_screen);
- _nc_flush();
- } else if (bell) {
- TPUTS_TRACE("bell");
- res = putp(bell);
- _nc_flush();
- }
+ /* FIXME: should make sure that we are not in altchar mode */
+ if (flash_screen) {
+ TPUTS_TRACE("flash_screen");
+ res = putp(flash_screen);
+ _nc_flush();
+ } else if (bell) {
+ TPUTS_TRACE("bell");
+ res = putp(bell);
+ _nc_flush();
+ }
- returnCode(res);
+ returnCode(res);
}
diff --git a/contrib/ncurses/ncurses/base/lib_freeall.c b/contrib/ncurses/ncurses/base/lib_freeall.c
index 28f0e5f9f425..bbd8c0ed7cb2 100644
--- a/contrib/ncurses/ncurses/base/lib_freeall.c
+++ b/contrib/ncurses/ncurses/base/lib_freeall.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998,1999 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,1999,2000 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 *
@@ -39,10 +39,10 @@
extern int malloc_errfd; /* FIXME */
#endif
-MODULE_ID("$Id: lib_freeall.c,v 1.16 1999/11/28 01:34:11 tom Exp $")
+MODULE_ID("$Id: lib_freeall.c,v 1.18 2000/12/10 02:43:27 tom Exp $")
static void
-free_slk(SLK *p)
+free_slk(SLK * p)
{
if (p != 0) {
FreeIfNeeded(p->ent);
@@ -69,7 +69,7 @@ free_tries(struct tries *p)
* Free all ncurses data. This is used for testing only (there's no practical
* use for it as an extension).
*/
-void
+NCURSES_EXPORT(void)
_nc_freeall(void)
{
WINDOWLIST *p, *q;
@@ -124,7 +124,7 @@ _nc_freeall(void)
#endif
}
-void
+NCURSES_EXPORT(void)
_nc_free_and_exit(int code)
{
_nc_freeall();
@@ -132,7 +132,7 @@ _nc_free_and_exit(int code)
}
#else
-void
+NCURSES_EXPORT(void)
_nc_freeall(void)
{
}
diff --git a/contrib/ncurses/ncurses/base/lib_getch.c b/contrib/ncurses/ncurses/base/lib_getch.c
index f67bf9a35f77..9deafec57a43 100644
--- a/contrib/ncurses/ncurses/base/lib_getch.c
+++ b/contrib/ncurses/ncurses/base/lib_getch.c
@@ -40,14 +40,15 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_getch.c,v 1.50 2000/10/09 23:53:57 Ilya.Zakharevich Exp $")
+MODULE_ID("$Id: lib_getch.c,v 1.54 2000/12/10 02:43:27 tom Exp $")
#include <fifo_defs.h>
-int ESCDELAY = 1000; /* max interval betw. chars in funkeys, in millisecs */
+NCURSES_EXPORT_VAR(int)
+ESCDELAY = 1000; /* max interval betw. chars in funkeys, in millisecs */
-static inline int
-fifo_peek(void)
+ static inline int
+ fifo_peek(void)
{
int ch = SP->_fifo[peek];
TR(TRACE_IEVENT, ("peeking at %d", peek));
@@ -80,7 +81,7 @@ static inline int
fifo_push(void)
{
int n;
- unsigned int ch;
+ int ch;
if (tail == -1)
return ERR;
@@ -101,7 +102,7 @@ fifo_push(void)
{
unsigned char c2 = 0;
n = read(SP->_ifd, &c2, 1);
- ch = c2 & 0xff;
+ ch = CharOf(c2);
}
#ifdef HIDE_EINTR
@@ -153,7 +154,7 @@ static int kgetch(WINDOW *);
(is_wintouched(win) || (win->_flags & _HASMOVED)) \
&& !(win->_flags & _ISPAD))
-int
+NCURSES_EXPORT(int)
wgetch(WINDOW *win)
{
int ch;
@@ -235,8 +236,8 @@ wgetch(WINDOW *win)
}
} while
(ch == KEY_MOUSE
- && (_nc_timed_wait(3, SP->_maxclick, (int *) 0)
- || !SP->_mouse_parse(runcount)));
+ && (_nc_timed_wait(3, SP->_maxclick, (int *) 0)
+ || !SP->_mouse_parse(runcount)));
if (runcount > 0 && ch != KEY_MOUSE) {
/* mouse event sequence ended by keystroke, push it */
ungetch(ch);
@@ -357,7 +358,7 @@ kgetch(WINDOW *win GCC_UNUSED)
TR(TRACE_IEVENT, ("ptr is null"));
} else
TR(TRACE_IEVENT, ("ptr=%p, ch=%d, value=%d",
- ptr, ptr->ch, ptr->value));
+ ptr, ptr->ch, ptr->value));
#endif /* TRACE */
if (ptr == NULL)
diff --git a/contrib/ncurses/ncurses/base/lib_getstr.c b/contrib/ncurses/ncurses/base/lib_getstr.c
index 485c6e35c8ff..cd58f1821a7f 100644
--- a/contrib/ncurses/ncurses/base/lib_getstr.c
+++ b/contrib/ncurses/ncurses/base/lib_getstr.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -31,7 +31,6 @@
* and: Eric S. Raymond <esr@snark.thyrsus.com> *
****************************************************************************/
-
/*
** lib_getstr.c
**
@@ -42,151 +41,153 @@
#include <curses.priv.h>
#include <term.h>
-MODULE_ID("$Id: lib_getstr.c,v 1.20 1998/12/20 00:16:01 tom Exp $")
+MODULE_ID("$Id: lib_getstr.c,v 1.23 2000/12/10 02:43:27 tom Exp $")
/*
* This wipes out the last character, no matter whether it was a tab, control
* or other character, and handles reverse wraparound.
*/
-static char *WipeOut(WINDOW *win, int y, int x, char *first, char *last, bool echoed)
+static char *
+WipeOut(WINDOW *win, int y, int x, char *first, char *last, bool echoed)
{
- if (last > first) {
- *--last = '\0';
- if (echoed) {
- int y1 = win->_cury;
- int x1 = win->_curx;
-
- wmove(win, y, x);
- waddstr(win, first);
- getyx(win, y, x);
- while (win->_cury < y1
- || (win->_cury == y1 && win->_curx < x1))
- waddch(win, ' ');
-
- wmove(win, y, x);
- }
+ if (last > first) {
+ *--last = '\0';
+ if (echoed) {
+ int y1 = win->_cury;
+ int x1 = win->_curx;
+
+ wmove(win, y, x);
+ waddstr(win, first);
+ getyx(win, y, x);
+ while (win->_cury < y1
+ || (win->_cury == y1 && win->_curx < x1))
+ waddch(win, (chtype) ' ');
+
+ wmove(win, y, x);
}
- return last;
+ }
+ return last;
}
-int wgetnstr(WINDOW *win, char *str, int maxlen)
+NCURSES_EXPORT(int)
+wgetnstr(WINDOW *win, char *str, int maxlen)
{
-TTY buf;
-bool oldnl, oldecho, oldraw, oldcbreak;
-char erasec;
-char killc;
-char *oldstr;
-int ch;
-int y, x;
+ TTY buf;
+ bool oldnl, oldecho, oldraw, oldcbreak;
+ char erasec;
+ char killc;
+ char *oldstr;
+ int ch;
+ int y, x;
- T((T_CALLED("wgetnstr(%p,%p, %d)"), win, str, maxlen));
+ T((T_CALLED("wgetnstr(%p,%p, %d)"), win, str, maxlen));
- if (!win)
- returnCode(ERR);
+ if (!win)
+ returnCode(ERR);
- _nc_get_tty_mode(&buf);
+ _nc_get_tty_mode(&buf);
- oldnl = SP->_nl;
- oldecho = SP->_echo;
- oldraw = SP->_raw;
- oldcbreak = SP->_cbreak;
- nl();
- noecho();
- noraw();
- cbreak();
+ oldnl = SP->_nl;
+ oldecho = SP->_echo;
+ oldraw = SP->_raw;
+ oldcbreak = SP->_cbreak;
+ nl();
+ noecho();
+ noraw();
+ cbreak();
- erasec = erasechar();
- killc = killchar();
+ erasec = erasechar();
+ killc = killchar();
- oldstr = str;
- getyx(win, y, x);
+ oldstr = str;
+ getyx(win, y, x);
- if (is_wintouched(win) || (win->_flags & _HASMOVED))
- wrefresh(win);
+ if (is_wintouched(win) || (win->_flags & _HASMOVED))
+ wrefresh(win);
- while ((ch = wgetch(win)) != ERR) {
- /*
- * Some terminals (the Wyse-50 is the most common) generate
- * a \n from the down-arrow key. With this logic, it's the
- * user's choice whether to set kcud=\n for wgetch();
- * terminating *getstr() with \n should work either way.
- */
- if (ch == '\n'
- || ch == '\r'
- || ch == KEY_DOWN
- || ch == KEY_ENTER) {
- if (oldecho == TRUE
- && win->_cury == win->_maxy
- && win->_scroll)
- wechochar(win, '\n');
- break;
- }
- if (ch == erasec || ch == KEY_LEFT || ch == KEY_BACKSPACE) {
- if (str > oldstr) {
- str = WipeOut(win, y, x, oldstr, str, oldecho);
- }
- } else if (ch == killc) {
- while (str > oldstr) {
- str = WipeOut(win, y, x, oldstr, str, oldecho);
- }
- } else if (ch >= KEY_MIN
- || (maxlen >= 0 && str - oldstr >= maxlen)) {
- beep();
- } else {
- *str++ = ch;
- if (oldecho == TRUE) {
- int oldy = win->_cury;
- if (waddch(win, ch) == ERR) {
- /*
- * We can't really use the lower-right
- * corner for input, since it'll mess
- * up bookkeeping for erases.
- */
- win->_flags &= ~_WRAPPED;
- waddch(win, ' ');
- str = WipeOut(win, y, x, oldstr, str, oldecho);
- continue;
- } else if (win->_flags & _WRAPPED) {
- /*
- * If the last waddch forced a wrap &
- * scroll, adjust our reference point
- * for erasures.
- */
- if (win->_scroll
- && oldy == win->_maxy
- && win->_cury == win->_maxy) {
- if (--y <= 0) {
- y = 0;
- }
- }
- win->_flags &= ~_WRAPPED;
- }
- wrefresh(win);
+ while ((ch = wgetch(win)) != ERR) {
+ /*
+ * Some terminals (the Wyse-50 is the most common) generate
+ * a \n from the down-arrow key. With this logic, it's the
+ * user's choice whether to set kcud=\n for wgetch();
+ * terminating *getstr() with \n should work either way.
+ */
+ if (ch == '\n'
+ || ch == '\r'
+ || ch == KEY_DOWN
+ || ch == KEY_ENTER) {
+ if (oldecho == TRUE
+ && win->_cury == win->_maxy
+ && win->_scroll)
+ wechochar(win, (chtype) '\n');
+ break;
+ }
+ if (ch == erasec || ch == KEY_LEFT || ch == KEY_BACKSPACE) {
+ if (str > oldstr) {
+ str = WipeOut(win, y, x, oldstr, str, oldecho);
+ }
+ } else if (ch == killc) {
+ while (str > oldstr) {
+ str = WipeOut(win, y, x, oldstr, str, oldecho);
+ }
+ } else if (ch >= KEY_MIN
+ || (maxlen >= 0 && str - oldstr >= maxlen)) {
+ beep();
+ } else {
+ *str++ = ch;
+ if (oldecho == TRUE) {
+ int oldy = win->_cury;
+ if (waddch(win, (chtype) ch) == ERR) {
+ /*
+ * We can't really use the lower-right
+ * corner for input, since it'll mess
+ * up bookkeeping for erases.
+ */
+ win->_flags &= ~_WRAPPED;
+ waddch(win, (chtype) ' ');
+ str = WipeOut(win, y, x, oldstr, str, oldecho);
+ continue;
+ } else if (win->_flags & _WRAPPED) {
+ /*
+ * If the last waddch forced a wrap &
+ * scroll, adjust our reference point
+ * for erasures.
+ */
+ if (win->_scroll
+ && oldy == win->_maxy
+ && win->_cury == win->_maxy) {
+ if (--y <= 0) {
+ y = 0;
}
+ }
+ win->_flags &= ~_WRAPPED;
}
+ wrefresh(win);
+ }
}
+ }
- win->_curx = 0;
- win->_flags &= ~_WRAPPED;
- if (win->_cury < win->_maxy)
- win->_cury++;
- wrefresh(win);
+ win->_curx = 0;
+ win->_flags &= ~_WRAPPED;
+ if (win->_cury < win->_maxy)
+ win->_cury++;
+ wrefresh(win);
- /* Restore with a single I/O call, to fix minor asymmetry between
- * raw/noraw, etc.
- */
- SP->_nl = oldnl;
- SP->_echo = oldecho;
- SP->_raw = oldraw;
- SP->_cbreak = oldcbreak;
+ /* Restore with a single I/O call, to fix minor asymmetry between
+ * raw/noraw, etc.
+ */
+ SP->_nl = oldnl;
+ SP->_echo = oldecho;
+ SP->_raw = oldraw;
+ SP->_cbreak = oldcbreak;
- _nc_set_tty_mode(&buf);
+ _nc_set_tty_mode(&buf);
- *str = '\0';
- if (ch == ERR)
- returnCode(ERR);
+ *str = '\0';
+ if (ch == ERR)
+ returnCode(ERR);
- T(("wgetnstr returns %s", _nc_visbuf(oldstr)));
+ T(("wgetnstr returns %s", _nc_visbuf(oldstr)));
- returnCode(OK);
+ returnCode(OK);
}
diff --git a/contrib/ncurses/ncurses/base/lib_hline.c b/contrib/ncurses/ncurses/base/lib_hline.c
index fd32d35a38e7..72d1ddba90fd 100644
--- a/contrib/ncurses/ncurses/base/lib_hline.c
+++ b/contrib/ncurses/ncurses/base/lib_hline.c
@@ -40,9 +40,9 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_hline.c,v 1.6 2000/07/04 14:08:09 Philippe.Blain Exp $")
+MODULE_ID("$Id: lib_hline.c,v 1.8 2000/12/10 02:43:27 tom Exp $")
-int
+NCURSES_EXPORT(int)
whline(WINDOW *win, chtype ch, int n)
{
int code = ERR;
diff --git a/contrib/ncurses/ncurses/base/lib_immedok.c b/contrib/ncurses/ncurses/base/lib_immedok.c
index 5590ec9f5406..87988b66f1a3 100644
--- a/contrib/ncurses/ncurses/base/lib_immedok.c
+++ b/contrib/ncurses/ncurses/base/lib_immedok.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -31,7 +31,6 @@
* and: Eric S. Raymond <esr@snark.thyrsus.com> *
****************************************************************************/
-
/*
** lib_immedok.c
**
@@ -41,14 +40,15 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_immedok.c,v 1.2 1998/02/11 12:14:01 tom Exp $")
+MODULE_ID("$Id: lib_immedok.c,v 1.4 2000/12/10 02:43:27 tom Exp $")
-void immedok(WINDOW *win, bool flag)
+NCURSES_EXPORT(void)
+immedok(WINDOW *win, bool flag)
{
- T((T_CALLED("immedok(%p,%d)"), win, flag));
+ T((T_CALLED("immedok(%p,%d)"), win, flag));
- if (win)
- win->_immed = flag;
+ if (win)
+ win->_immed = flag;
- returnVoid;
+ returnVoid;
}
diff --git a/contrib/ncurses/ncurses/base/lib_inchstr.c b/contrib/ncurses/ncurses/base/lib_inchstr.c
index 4779ae09d75b..31625bbf4cdf 100644
--- a/contrib/ncurses/ncurses/base/lib_inchstr.c
+++ b/contrib/ncurses/ncurses/base/lib_inchstr.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -31,7 +31,6 @@
* and: Eric S. Raymond <esr@snark.thyrsus.com> *
****************************************************************************/
-
/*
** lib_inchstr.c
**
@@ -41,22 +40,23 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_inchstr.c,v 1.7 1998/02/11 12:13:55 tom Exp $")
+MODULE_ID("$Id: lib_inchstr.c,v 1.9 2000/12/10 02:43:27 tom Exp $")
-int winchnstr(WINDOW *win, chtype *str, int n)
+NCURSES_EXPORT(int)
+winchnstr(WINDOW *win, chtype * str, int n)
{
- int i = 0;
+ int i = 0;
- T((T_CALLED("winchnstr(%p,%p,%d)"), win, str, n));
+ T((T_CALLED("winchnstr(%p,%p,%d)"), win, str, n));
- if (!str)
- returnCode(0);
+ if (!str)
+ returnCode(0);
- if (win) {
- for (; (n < 0 || (i < n)) && (win->_curx + i <= win->_maxx); i++)
+ if (win) {
+ for (; (n < 0 || (i < n)) && (win->_curx + i <= win->_maxx); i++)
str[i] = win->_line[win->_cury].text[win->_curx + i];
- }
- str[i] = (chtype)0;
+ }
+ str[i] = (chtype) 0;
- returnCode(i);
+ returnCode(i);
}
diff --git a/contrib/ncurses/ncurses/base/lib_initscr.c b/contrib/ncurses/ncurses/base/lib_initscr.c
index 9a89a077cd44..b6e34ef91a26 100644
--- a/contrib/ncurses/ncurses/base/lib_initscr.c
+++ b/contrib/ncurses/ncurses/base/lib_initscr.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -39,40 +39,41 @@
*/
#include <curses.priv.h>
-#include <tic.h> /* for MAX_ALIAS */
+#include <tic.h> /* for MAX_ALIAS */
#if HAVE_SYS_TERMIO_H
-#include <sys/termio.h> /* needed for ISC */
+#include <sys/termio.h> /* needed for ISC */
#endif
-MODULE_ID("$Id: lib_initscr.c,v 1.26 1998/12/19 23:10:09 tom Exp $")
+MODULE_ID("$Id: lib_initscr.c,v 1.28 2000/12/10 02:43:27 tom Exp $")
-WINDOW *initscr(void)
+NCURSES_EXPORT(WINDOW *)
+initscr(void)
{
-static bool initialized = FALSE;
-NCURSES_CONST char *name;
-int value;
+ static bool initialized = FALSE;
+ NCURSES_CONST char *name;
+ int value;
- T((T_CALLED("initscr()")));
- /* Portable applications must not call initscr() more than once */
- if (!initialized) {
- initialized = TRUE;
+ T((T_CALLED("initscr()")));
+ /* Portable applications must not call initscr() more than once */
+ if (!initialized) {
+ initialized = TRUE;
- if ((name = getenv("TERM")) == 0
- || *name == '\0')
- name = "unknown";
- if (newterm(name, stdout, stdin) == 0) {
- fprintf(stderr, "Error opening terminal: %s.\n", name);
- exit(EXIT_FAILURE);
- }
-
- /* allow user to set maximum escape delay from the environment */
- if ((value = _nc_getenv_num("ESCDELAY")) >= 0) {
- ESCDELAY = value;
- }
+ if ((name = getenv("TERM")) == 0
+ || *name == '\0')
+ name = "unknown";
+ if (newterm(name, stdout, stdin) == 0) {
+ fprintf(stderr, "Error opening terminal: %s.\n", name);
+ exit(EXIT_FAILURE);
+ }
- /* def_shell_mode - done in newterm/_nc_setupscreen */
- def_prog_mode();
+ /* allow user to set maximum escape delay from the environment */
+ if ((value = _nc_getenv_num("ESCDELAY")) >= 0) {
+ ESCDELAY = value;
}
- returnWin(stdscr);
+
+ /* def_shell_mode - done in newterm/_nc_setupscreen */
+ def_prog_mode();
+ }
+ returnWin(stdscr);
}
diff --git a/contrib/ncurses/ncurses/base/lib_insch.c b/contrib/ncurses/ncurses/base/lib_insch.c
index ccc5ff5d024d..8d495f5bc4e8 100644
--- a/contrib/ncurses/ncurses/base/lib_insch.c
+++ b/contrib/ncurses/ncurses/base/lib_insch.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -31,8 +31,6 @@
* and: Eric S. Raymond <esr@snark.thyrsus.com> *
****************************************************************************/
-
-
/*
** lib_insch.c
**
@@ -42,26 +40,27 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_insch.c,v 1.10 1998/06/28 00:26:52 tom Exp $")
+MODULE_ID("$Id: lib_insch.c,v 1.12 2000/12/10 02:43:27 tom Exp $")
-int winsch(WINDOW *win, chtype c)
+NCURSES_EXPORT(int)
+winsch(WINDOW *win, chtype c)
{
-int code = ERR;
+ int code = ERR;
- T((T_CALLED("winsch(%p, %s)"), win, _tracechtype(c)));
+ T((T_CALLED("winsch(%p, %s)"), win, _tracechtype(c)));
- if (win) {
- struct ldat *line = &(win->_line[win->_cury]);
- chtype *end = &(line->text[win->_curx]);
- chtype *temp1 = &(line->text[win->_maxx]);
- chtype *temp2 = temp1 - 1;
+ if (win) {
+ struct ldat *line = &(win->_line[win->_cury]);
+ chtype *end = &(line->text[win->_curx]);
+ chtype *temp1 = &(line->text[win->_maxx]);
+ chtype *temp2 = temp1 - 1;
- CHANGED_TO_EOL(line, win->_curx, win->_maxx);
- while (temp1 > end)
- *temp1-- = *temp2--;
+ CHANGED_TO_EOL(line, win->_curx, win->_maxx);
+ while (temp1 > end)
+ *temp1-- = *temp2--;
- *temp1 = _nc_render(win, c);
- code = OK;
- }
- returnCode(code);
+ *temp1 = _nc_render(win, c);
+ code = OK;
+ }
+ returnCode(code);
}
diff --git a/contrib/ncurses/ncurses/base/lib_insdel.c b/contrib/ncurses/ncurses/base/lib_insdel.c
index 48e108de8d9b..1a23a86b1e4c 100644
--- a/contrib/ncurses/ncurses/base/lib_insdel.c
+++ b/contrib/ncurses/ncurses/base/lib_insdel.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -42,21 +42,22 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_insdel.c,v 1.8 1998/02/11 12:13:55 tom Exp $")
+MODULE_ID("$Id: lib_insdel.c,v 1.10 2000/12/10 02:43:27 tom Exp $")
-int
+NCURSES_EXPORT(int)
winsdelln(WINDOW *win, int n)
{
-int code = ERR;
+ int code = ERR;
- T((T_CALLED("winsdel(%p,%d)"), win, n));
+ T((T_CALLED("winsdel(%p,%d)"), win, n));
- if (win) {
- if (n != 0) {
- _nc_scroll_window(win, -n, win->_cury, win->_maxy, _nc_background(win));
+ if (win) {
+ if (n != 0) {
+ _nc_scroll_window(win, -n, win->_cury, win->_maxy,
+ _nc_background(win));
_nc_synchook(win);
- }
- code = OK;
}
- returnCode(code);
+ code = OK;
+ }
+ returnCode(code);
}
diff --git a/contrib/ncurses/ncurses/base/lib_insstr.c b/contrib/ncurses/ncurses/base/lib_insstr.c
index a2275f9457b6..f4c215d7103d 100644
--- a/contrib/ncurses/ncurses/base/lib_insstr.c
+++ b/contrib/ncurses/ncurses/base/lib_insstr.c
@@ -41,9 +41,9 @@
#include <curses.priv.h>
#include <ctype.h>
-MODULE_ID("$Id: lib_insstr.c,v 1.14 2000/04/29 21:16:41 tom Exp $")
+MODULE_ID("$Id: lib_insstr.c,v 1.17 2000/12/10 02:43:27 tom Exp $")
-int
+NCURSES_EXPORT(int)
winsnstr(WINDOW *win, const char *s, int n)
{
int code = ERR;
@@ -62,7 +62,7 @@ winsnstr(WINDOW *win, const char *s, int n)
_nc_waddch_nosync(win, (chtype) (*cp));
else if (is7bits(*cp) && iscntrl(*cp)) {
winsch(win, ' ' + (chtype) (*cp));
- winsch(win, '^');
+ winsch(win, (chtype) '^');
win->_curx += 2;
} else {
winsch(win, (chtype) (*cp));
diff --git a/contrib/ncurses/ncurses/base/lib_instr.c b/contrib/ncurses/ncurses/base/lib_instr.c
index b3e1d030a4b6..588f6c47d2b8 100644
--- a/contrib/ncurses/ncurses/base/lib_instr.c
+++ b/contrib/ncurses/ncurses/base/lib_instr.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -31,7 +31,6 @@
* and: Eric S. Raymond <esr@snark.thyrsus.com> *
****************************************************************************/
-
/*
** lib_instr.c
**
@@ -41,33 +40,33 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_instr.c,v 1.8 1998/02/11 12:13:54 tom Exp $")
+MODULE_ID("$Id: lib_instr.c,v 1.10 2000/12/10 02:43:27 tom Exp $")
-int winnstr(WINDOW *win, char *str, int n)
+NCURSES_EXPORT(int)
+winnstr(WINDOW *win, char *str, int n)
{
- int i=0, row, col;
+ int i = 0, row, col;
+
+ T((T_CALLED("winnstr(%p,%p,%d)"), win, str, n));
- T((T_CALLED("winnstr(%p,%p,%d)"), win, str, n));
+ if (!str)
+ returnCode(0);
- if (!str)
- returnCode(0);
-
- if (win) {
- getyx(win, row, col);
+ if (win) {
+ getyx(win, row, col);
- if (n < 0)
+ if (n < 0)
n = win->_maxx - win->_curx + 1;
- for (; i < n;) {
+ for (; i < n;) {
str[i++] = TextOf(win->_line[row].text[col]);
if (++col > win->_maxx) {
- col = 0;
- if (++row > win->_maxy)
- break;
+ col = 0;
+ if (++row > win->_maxy)
+ break;
}
- }
}
- str[i] = '\0'; /* SVr4 does not seem to count the null */
- returnCode(i);
+ }
+ str[i] = '\0'; /* SVr4 does not seem to count the null */
+ returnCode(i);
}
-
diff --git a/contrib/ncurses/ncurses/base/lib_isendwin.c b/contrib/ncurses/ncurses/base/lib_isendwin.c
index 60015fca55b9..b337d97a94c3 100644
--- a/contrib/ncurses/ncurses/base/lib_isendwin.c
+++ b/contrib/ncurses/ncurses/base/lib_isendwin.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -31,7 +31,6 @@
* and: Eric S. Raymond <esr@snark.thyrsus.com> *
****************************************************************************/
-
/*
** lib_endwin.c
**
@@ -41,11 +40,12 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_isendwin.c,v 1.4 1998/04/11 22:52:32 tom Exp $")
+MODULE_ID("$Id: lib_isendwin.c,v 1.6 2000/12/10 02:43:27 tom Exp $")
-bool isendwin(void)
+NCURSES_EXPORT(bool)
+isendwin(void)
{
- if (SP == NULL)
- return FALSE;
- return SP->_endwin;
+ if (SP == NULL)
+ return FALSE;
+ return SP->_endwin;
}
diff --git a/contrib/ncurses/ncurses/base/lib_leaveok.c b/contrib/ncurses/ncurses/base/lib_leaveok.c
index e83285d714f4..17d095d0f8c8 100644
--- a/contrib/ncurses/ncurses/base/lib_leaveok.c
+++ b/contrib/ncurses/ncurses/base/lib_leaveok.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -31,7 +31,6 @@
* and: Eric S. Raymond <esr@snark.thyrsus.com> *
****************************************************************************/
-
/*
** lib_leaveok.c
**
@@ -41,16 +40,16 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_leaveok.c,v 1.3 1998/03/21 22:54:20 jtc Exp $")
+MODULE_ID("$Id: lib_leaveok.c,v 1.5 2000/12/10 02:43:27 tom Exp $")
-int leaveok(WINDOW *win, bool flag)
+NCURSES_EXPORT(int)
+leaveok(WINDOW *win, bool flag)
{
- T((T_CALLED("leaveok(%p,%d)"), win, flag));
+ T((T_CALLED("leaveok(%p,%d)"), win, flag));
- if (win) {
- win->_leaveok = flag;
- returnCode(OK);
- }
- else
- returnCode(ERR);
+ if (win) {
+ win->_leaveok = flag;
+ returnCode(OK);
+ } else
+ returnCode(ERR);
}
diff --git a/contrib/ncurses/ncurses/base/lib_mouse.c b/contrib/ncurses/ncurses/base/lib_mouse.c
index 3b8563503979..01d3057f03ab 100644
--- a/contrib/ncurses/ncurses/base/lib_mouse.c
+++ b/contrib/ncurses/ncurses/base/lib_mouse.c
@@ -84,7 +84,7 @@
#endif
#endif
-MODULE_ID("$Id: lib_mouse.c,v 1.55 2000/10/10 00:07:28 Ilya.Zakharevich Exp $")
+MODULE_ID("$Id: lib_mouse.c,v 1.57 2000/12/10 02:43:27 tom Exp $")
#define MY_TRACE TRACE_ICALLS|TRACE_IEVENT
@@ -863,7 +863,7 @@ _nc_mouse_resume(SCREEN * sp GCC_UNUSED)
*
**************************************************************************/
-int
+NCURSES_EXPORT(int)
getmouse(MEVENT * aevent)
/* grab a copy of the current mouse event */
{
@@ -886,7 +886,7 @@ getmouse(MEVENT * aevent)
returnCode(ERR);
}
-int
+NCURSES_EXPORT(int)
ungetmouse(MEVENT * aevent)
/* enqueue a synthesized mouse event to be seen by the next wgetch() */
{
@@ -900,7 +900,7 @@ ungetmouse(MEVENT * aevent)
return ungetch(KEY_MOUSE);
}
-mmask_t
+NCURSES_EXPORT(mmask_t)
mousemask(mmask_t newmask, mmask_t * oldmask)
/* set the mouse event mask */
{
@@ -933,7 +933,7 @@ mousemask(mmask_t newmask, mmask_t * oldmask)
returnCode(result);
}
-bool
+NCURSES_EXPORT(bool)
wenclose(const WINDOW *win, int y, int x)
/* check to see if given window encloses given screen location */
{
@@ -947,7 +947,7 @@ wenclose(const WINDOW *win, int y, int x)
return FALSE;
}
-int
+NCURSES_EXPORT(int)
mouseinterval(int maxclick)
/* set the maximum mouse interval within which to recognize a click */
{
@@ -966,14 +966,15 @@ mouseinterval(int maxclick)
/* This may be used by other routines to ask for the existence of mouse
support */
-int
+NCURSES_EXPORT(int)
_nc_has_mouse(void)
{
return (mousetype == M_NONE ? 0 : 1);
}
-bool
-wmouse_trafo(const WINDOW *win, int *pY, int *pX, bool to_screen)
+NCURSES_EXPORT(bool)
+wmouse_trafo
+(const WINDOW *win, int *pY, int *pX, bool to_screen)
{
bool result = FALSE;
diff --git a/contrib/ncurses/ncurses/base/lib_move.c b/contrib/ncurses/ncurses/base/lib_move.c
index 68415d6e620d..e917eb780525 100644
--- a/contrib/ncurses/ncurses/base/lib_move.c
+++ b/contrib/ncurses/ncurses/base/lib_move.c
@@ -40,9 +40,9 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_move.c,v 1.9 2000/04/29 21:11:19 tom Exp $")
+MODULE_ID("$Id: lib_move.c,v 1.11 2000/12/10 02:43:27 tom Exp $")
-int
+NCURSES_EXPORT(int)
wmove(WINDOW *win, int y, int x)
{
T((T_CALLED("wmove(%p,%d,%d)"), win, y, x));
diff --git a/contrib/ncurses/ncurses/base/lib_mvwin.c b/contrib/ncurses/ncurses/base/lib_mvwin.c
index 9774d9f58dfe..28b78f86842c 100644
--- a/contrib/ncurses/ncurses/base/lib_mvwin.c
+++ b/contrib/ncurses/ncurses/base/lib_mvwin.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -31,8 +31,6 @@
* and: Eric S. Raymond <esr@snark.thyrsus.com> *
****************************************************************************/
-
-
/*
** lib_mvwin.c
**
@@ -42,68 +40,68 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_mvwin.c,v 1.7 1998/02/11 12:13:55 tom Exp $")
+MODULE_ID("$Id: lib_mvwin.c,v 1.9 2000/12/10 02:43:27 tom Exp $")
-int mvwin(WINDOW *win, int by, int bx)
+NCURSES_EXPORT(int)
+mvwin(WINDOW *win, int by, int bx)
{
- T((T_CALLED("mvwin(%p,%d,%d)"), win, by, bx));
+ T((T_CALLED("mvwin(%p,%d,%d)"), win, by, bx));
- if (!win || (win->_flags & _ISPAD))
- returnCode(ERR);
+ if (!win || (win->_flags & _ISPAD))
+ returnCode(ERR);
- /* Copying subwindows is allowed, but it is expensive... */
- if (win->_flags & _SUBWIN) {
- int err = ERR;
- WINDOW *parent = win->_parent;
- if (parent)
- { /* Now comes the complicated and costly part, you should really
- * try to avoid to move subwindows. Because a subwindow shares
- * the text buffers with its parent, one can't do a simple
- * memmove of the text buffers. One has to create a copy, then
- * to relocate the subwindow and then to do a copy.
- */
- if ((by - parent->_begy == win->_pary) &&
- (bx - parent->_begx == win->_parx))
- err=OK; /* we don't actually move */
- else {
- WINDOW* clone = dupwin(win);
+ /* Copying subwindows is allowed, but it is expensive... */
+ if (win->_flags & _SUBWIN) {
+ int err = ERR;
+ WINDOW *parent = win->_parent;
+ if (parent) { /* Now comes the complicated and costly part, you should really
+ * try to avoid to move subwindows. Because a subwindow shares
+ * the text buffers with its parent, one can't do a simple
+ * memmove of the text buffers. One has to create a copy, then
+ * to relocate the subwindow and then to do a copy.
+ */
+ if ((by - parent->_begy == win->_pary) &&
+ (bx - parent->_begx == win->_parx))
+ err = OK; /* we don't actually move */
+ else {
+ WINDOW *clone = dupwin(win);
if (clone) {
- /* now we have the clone, so relocate win */
-
- werase(win); /* Erase the original place */
- wbkgd(win,parent->_bkgd);/* fill with parents background */
- wsyncup(win); /* Tell the parent(s) */
-
- err = mvderwin(win,
- by - parent->_begy,
- bx - parent->_begx);
- if (err!=ERR) {
- err = copywin(clone,win,
- 0, 0, 0, 0, win->_maxy, win->_maxx, 0);
- if (ERR!=err)
- wsyncup(win);
- }
- if (ERR==delwin(clone))
- err=ERR;
+ /* now we have the clone, so relocate win */
+
+ werase(win); /* Erase the original place */
+ wbkgd(win, parent->_bkgd); /* fill with parents background */
+ wsyncup(win); /* Tell the parent(s) */
+
+ err = mvderwin(win,
+ by - parent->_begy,
+ bx - parent->_begx);
+ if (err != ERR) {
+ err = copywin(clone, win,
+ 0, 0, 0, 0, win->_maxy, win->_maxx, 0);
+ if (ERR != err)
+ wsyncup(win);
+ }
+ if (ERR == delwin(clone))
+ err = ERR;
}
- }
}
- returnCode(err);
}
+ returnCode(err);
+ }
- if (by + win->_maxy > screen_lines - 1
- || bx + win->_maxx > screen_columns - 1
- || by < 0
- || bx < 0)
- returnCode(ERR);
+ if (by + win->_maxy > screen_lines - 1
+ || bx + win->_maxx > screen_columns - 1
+ || by < 0
+ || bx < 0)
+ returnCode(ERR);
- /*
- * Whether or not the window is moved, touch the window's contents so
- * that a following call to 'wrefresh()' will paint the window at the
- * new location. This ensures that if the caller has refreshed another
- * window at the same location, that this one will be displayed.
- */
- win->_begy = by;
- win->_begx = bx;
- returnCode(touchwin(win));
+ /*
+ * Whether or not the window is moved, touch the window's contents so
+ * that a following call to 'wrefresh()' will paint the window at the
+ * new location. This ensures that if the caller has refreshed another
+ * window at the same location, that this one will be displayed.
+ */
+ win->_begy = by;
+ win->_begx = bx;
+ returnCode(touchwin(win));
}
diff --git a/contrib/ncurses/ncurses/base/lib_newterm.c b/contrib/ncurses/ncurses/base/lib_newterm.c
index 7da4069b5b85..02f6ff5b449a 100644
--- a/contrib/ncurses/ncurses/base/lib_newterm.c
+++ b/contrib/ncurses/ncurses/base/lib_newterm.c
@@ -47,7 +47,7 @@
#include <term.h> /* clear_screen, cup & friends, cur_term */
#include <tic.h>
-MODULE_ID("$Id: lib_newterm.c,v 1.48 2000/09/02 18:11:42 tom Exp $")
+MODULE_ID("$Id: lib_newterm.c,v 1.50 2000/12/10 02:43:27 tom Exp $")
#ifndef ONLCR /* Allows compilation under the QNX 4.2 OS */
#define ONLCR 0
@@ -86,14 +86,15 @@ _nc_initscr(void)
*/
static int filter_mode = FALSE;
-void
+NCURSES_EXPORT(void)
filter(void)
{
filter_mode = TRUE;
}
-SCREEN *
-newterm(NCURSES_CONST char *name, FILE * ofp, FILE * ifp)
+NCURSES_EXPORT(SCREEN *)
+newterm
+(NCURSES_CONST char *name, FILE * ofp, FILE * ifp)
{
int errret;
int slk_format = _nc_slk_format;
@@ -138,7 +139,7 @@ newterm(NCURSES_CONST char *name, FILE * ofp, FILE * ifp)
if (num_labels <= 0 || !SLK_STDFMT(slk_format))
if (slk_format) {
if (ERR == _nc_ripoffline(-SLK_LINES(slk_format),
- _nc_slk_initialize))
+ _nc_slk_initialize))
return 0;
}
/* this actually allocates the screen structure, and saves the
@@ -160,7 +161,7 @@ newterm(NCURSES_CONST char *name, FILE * ofp, FILE * ifp)
typeahead(fileno(ifp));
#ifdef TERMIOS
SP->_use_meta = ((cur_term->Ottyb.c_cflag & CSIZE) == CS8 &&
- !(cur_term->Ottyb.c_iflag & ISTRIP));
+ !(cur_term->Ottyb.c_iflag & ISTRIP));
#else
SP->_use_meta = FALSE;
#endif
@@ -171,8 +172,8 @@ newterm(NCURSES_CONST char *name, FILE * ofp, FILE * ifp)
* will be useless.
*/
SP->_scrolling = ((scroll_forward && scroll_reverse) ||
- ((parm_rindex || parm_insert_line || insert_line) &&
- (parm_index || parm_delete_line || delete_line)));
+ ((parm_rindex || parm_insert_line || insert_line) &&
+ (parm_index || parm_delete_line || delete_line)));
baudrate(); /* sets a field in the SP structure */
diff --git a/contrib/ncurses/ncurses/base/lib_newwin.c b/contrib/ncurses/ncurses/base/lib_newwin.c
index ececa58a314d..08921f256f02 100644
--- a/contrib/ncurses/ncurses/base/lib_newwin.c
+++ b/contrib/ncurses/ncurses/base/lib_newwin.c
@@ -40,13 +40,14 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_newwin.c,v 1.24 2000/04/29 18:49:51 tom Exp $")
+MODULE_ID("$Id: lib_newwin.c,v 1.27 2000/12/10 02:43:27 tom Exp $")
-void
+NCURSES_EXPORT(int)
_nc_freewin(WINDOW *win)
{
WINDOWLIST *p, *q;
int i;
+ int result = ERR;
if (win != 0) {
for (p = _nc_windows, q = 0; p != 0; q = p, p = p->next) {
@@ -71,15 +72,18 @@ _nc_freewin(WINDOW *win)
if (win == newscr)
newscr = 0;
+ result = OK;
T(("...deleted win=%p", win));
break;
}
}
}
+ return result;
}
-WINDOW *
-newwin(int num_lines, int num_columns, int begy, int begx)
+NCURSES_EXPORT(WINDOW *)
+newwin
+(int num_lines, int num_columns, int begy, int begx)
{
WINDOW *win;
chtype *ptr;
@@ -104,11 +108,11 @@ newwin(int num_lines, int num_columns, int begy, int begx)
for (i = 0; i < num_lines; i++) {
win->_line[i].text = typeCalloc(chtype, (unsigned) num_columns);
if (win->_line[i].text == 0) {
- _nc_freewin(win);
+ (void) _nc_freewin(win);
returnWin(0);
}
for (ptr = win->_line[i].text; ptr < win->_line[i].text +
- num_columns;)
+ num_columns;)
*ptr++ = ' ';
}
@@ -117,15 +121,16 @@ newwin(int num_lines, int num_columns, int begy, int begx)
returnWin(win);
}
-WINDOW *
-derwin(WINDOW *orig, int num_lines, int num_columns, int begy, int begx)
+NCURSES_EXPORT(WINDOW *)
+derwin
+(WINDOW *orig, int num_lines, int num_columns, int begy, int begx)
{
WINDOW *win;
int i;
int flags = _SUBWIN;
T((T_CALLED("derwin(%p,%d,%d,%d,%d)"), orig, num_lines, num_columns,
- begy, begx));
+ begy, begx));
/*
** make sure window fits inside the original one
@@ -146,7 +151,7 @@ derwin(WINDOW *orig, int num_lines, int num_columns, int begy, int begx)
flags |= _ISPAD;
if ((win = _nc_makenew(num_lines, num_columns, orig->_begy + begy,
- orig->_begx + begx, flags)) == 0)
+ orig->_begx + begx, flags)) == 0)
returnWin(0);
win->_pary = begy;
@@ -164,8 +169,9 @@ derwin(WINDOW *orig, int num_lines, int num_columns, int begy, int begx)
returnWin(win);
}
-WINDOW *
-subwin(WINDOW *w, int l, int c, int y, int x)
+NCURSES_EXPORT(WINDOW *)
+subwin
+(WINDOW *w, int l, int c, int y, int x)
{
T((T_CALLED("subwin(%p, %d, %d, %d, %d)"), w, l, c, y, x));
T(("parent has begy = %d, begx = %d", w->_begy, w->_begx));
@@ -180,8 +186,9 @@ dimension_limit(int value)
return (test == value && value > 0);
}
-WINDOW *
-_nc_makenew(int num_lines, int num_columns, int begy, int begx, int flags)
+NCURSES_EXPORT(WINDOW *)
+_nc_makenew
+(int num_lines, int num_columns, int begy, int begx, int flags)
{
int i;
WINDOWLIST *wp;
@@ -216,8 +223,8 @@ _nc_makenew(int num_lines, int num_columns, int begy, int begx, int flags)
win->_attrs = A_NORMAL;
win->_bkgd = BLANK;
- win->_clear = is_pad ? FALSE : (num_lines == screen_lines && num_columns
- == screen_columns);
+ win->_clear = is_pad ? FALSE : (num_lines == screen_lines
+ && num_columns == screen_columns);
win->_idlok = FALSE;
win->_idcok = TRUE;
win->_scroll = FALSE;
diff --git a/contrib/ncurses/ncurses/base/lib_nl.c b/contrib/ncurses/ncurses/base/lib_nl.c
index bfaffdefda5a..32515da0be81 100644
--- a/contrib/ncurses/ncurses/base/lib_nl.c
+++ b/contrib/ncurses/ncurses/base/lib_nl.c
@@ -42,13 +42,13 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_nl.c,v 1.6 2000/02/13 00:59:39 tom Exp $")
+MODULE_ID("$Id: lib_nl.c,v 1.8 2000/12/10 02:43:27 tom Exp $")
#ifdef __EMX__
#include <io.h>
#endif
-int
+NCURSES_EXPORT(int)
nl(void)
{
T((T_CALLED("nl()")));
@@ -63,7 +63,7 @@ nl(void)
returnCode(OK);
}
-int
+NCURSES_EXPORT(int)
nonl(void)
{
T((T_CALLED("nonl()")));
diff --git a/contrib/ncurses/ncurses/base/lib_overlay.c b/contrib/ncurses/ncurses/base/lib_overlay.c
index db2dce1b79f6..592e7add9239 100644
--- a/contrib/ncurses/ncurses/base/lib_overlay.c
+++ b/contrib/ncurses/ncurses/base/lib_overlay.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -31,7 +31,6 @@
* and: Eric S. Raymond <esr@snark.thyrsus.com> *
****************************************************************************/
-
/*
** lib_overlay.c
**
@@ -41,29 +40,30 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_overlay.c,v 1.12 1998/02/11 12:13:59 tom Exp $")
+MODULE_ID("$Id: lib_overlay.c,v 1.14 2000/12/10 02:43:27 tom Exp $")
-static int overlap(const WINDOW *const s, WINDOW *const d, int const flag)
+static int
+overlap(const WINDOW *const s, WINDOW *const d, int const flag)
{
-int sminrow, smincol, dminrow, dmincol, dmaxrow, dmaxcol;
-
- T(("overlap : sby %d, sbx %d, smy %d, smx %d, dby %d, dbx %d, dmy %d, dmx %d",
- s->_begy, s->_begx, s->_maxy, s->_maxx,
- d->_begy, d->_begx, d->_maxy, d->_maxx));
-
- if (!s || !d)
- returnCode(ERR);
-
- sminrow = max(s->_begy, d->_begy) - s->_begy;
- smincol = max(s->_begx, d->_begx) - s->_begx;
- dminrow = max(s->_begy, d->_begy) - d->_begy;
- dmincol = max(s->_begx, d->_begx) - d->_begx;
- dmaxrow = min(s->_maxy+s->_begy, d->_maxy+d->_begy) - d->_begy;
- dmaxcol = min(s->_maxx+s->_begx, d->_maxx+d->_begx) - d->_begx;
-
- return(copywin(s, d,
- sminrow, smincol, dminrow, dmincol, dmaxrow, dmaxcol,
- flag));
+ int sminrow, smincol, dminrow, dmincol, dmaxrow, dmaxcol;
+
+ T(("overlap : sby %d, sbx %d, smy %d, smx %d, dby %d, dbx %d, dmy %d, dmx %d",
+ s->_begy, s->_begx, s->_maxy, s->_maxx,
+ d->_begy, d->_begx, d->_maxy, d->_maxx));
+
+ if (!s || !d)
+ returnCode(ERR);
+
+ sminrow = max(s->_begy, d->_begy) - s->_begy;
+ smincol = max(s->_begx, d->_begx) - s->_begx;
+ dminrow = max(s->_begy, d->_begy) - d->_begy;
+ dmincol = max(s->_begx, d->_begx) - d->_begx;
+ dmaxrow = min(s->_maxy + s->_begy, d->_maxy + d->_begy) - d->_begy;
+ dmaxcol = min(s->_maxx + s->_begx, d->_maxx + d->_begx) - d->_begx;
+
+ return (copywin(s, d,
+ sminrow, smincol, dminrow, dmincol, dmaxrow, dmaxcol,
+ flag));
}
/*
@@ -76,10 +76,11 @@ int sminrow, smincol, dminrow, dmincol, dmaxrow, dmaxcol;
**
**/
-int overlay(const WINDOW *win1, WINDOW *win2)
+NCURSES_EXPORT(int)
+overlay(const WINDOW *win1, WINDOW *win2)
{
- T((T_CALLED("overlay(%p,%p)"), win1, win2));
- returnCode(overlap(win1, win2, TRUE));
+ T((T_CALLED("overlay(%p,%p)"), win1, win2));
+ returnCode(overlap(win1, win2, TRUE));
}
/*
@@ -92,70 +93,67 @@ int overlay(const WINDOW *win1, WINDOW *win2)
**
**/
-int overwrite(const WINDOW *win1, WINDOW *win2)
+NCURSES_EXPORT(int)
+overwrite(const WINDOW *win1, WINDOW *win2)
{
- T((T_CALLED("overwrite(%p,%p)"), win1, win2));
- returnCode(overlap(win1, win2, FALSE));
+ T((T_CALLED("overwrite(%p,%p)"), win1, win2));
+ returnCode(overlap(win1, win2, FALSE));
}
-int copywin(const WINDOW *src, WINDOW *dst,
- int sminrow, int smincol,
- int dminrow, int dmincol, int dmaxrow, int dmaxcol,
- int over)
+NCURSES_EXPORT(int)
+copywin
+(const WINDOW *src, WINDOW *dst,
+ int sminrow, int smincol,
+ int dminrow, int dmincol, int dmaxrow, int dmaxcol,
+ int over)
{
-int sx, sy, dx, dy;
-bool touched;
-chtype bk = AttrOf(dst->_bkgd);
-chtype mask = ~(chtype)((bk&A_COLOR) ? A_COLOR : 0);
-
- T((T_CALLED("copywin(%p, %p, %d, %d, %d, %d, %d, %d, %d)"),
- src, dst, sminrow, smincol, dminrow, dmincol, dmaxrow, dmaxcol, over));
-
- if (!src || !dst)
- returnCode(ERR);
-
- /* make sure rectangle exists in source */
- if ((sminrow + dmaxrow - dminrow) > (src->_maxy + 1) ||
- (smincol + dmaxcol - dmincol) > (src->_maxx + 1)) {
- returnCode(ERR);
- }
-
- T(("rectangle exists in source"));
-
- /* make sure rectangle fits in destination */
- if (dmaxrow > dst->_maxy || dmaxcol > dst->_maxx) {
- returnCode(ERR);
+ int sx, sy, dx, dy;
+ bool touched;
+ chtype bk = AttrOf(dst->_bkgd);
+ chtype mask = ~(chtype) ((bk & A_COLOR) ? A_COLOR : 0);
+
+ T((T_CALLED("copywin(%p, %p, %d, %d, %d, %d, %d, %d, %d)"),
+ src, dst, sminrow, smincol, dminrow, dmincol, dmaxrow, dmaxcol, over));
+
+ if (!src || !dst)
+ returnCode(ERR);
+
+ /* make sure rectangle exists in source */
+ if ((sminrow + dmaxrow - dminrow) > (src->_maxy + 1) ||
+ (smincol + dmaxcol - dmincol) > (src->_maxx + 1)) {
+ returnCode(ERR);
+ }
+
+ T(("rectangle exists in source"));
+
+ /* make sure rectangle fits in destination */
+ if (dmaxrow > dst->_maxy || dmaxcol > dst->_maxx) {
+ returnCode(ERR);
+ }
+
+ T(("rectangle fits in destination"));
+
+ for (dy = dminrow, sy = sminrow; dy <= dmaxrow; sy++, dy++) {
+ touched = FALSE;
+ for (dx = dmincol, sx = smincol; dx <= dmaxcol; sx++, dx++) {
+ if (over) {
+ if ((TextOf(src->_line[sy].text[sx]) != ' ') &&
+ (dst->_line[dy].text[dx] != src->_line[sy].text[sx])) {
+ dst->_line[dy].text[dx] =
+ (src->_line[sy].text[sx] & mask) | bk;
+ touched = TRUE;
+ }
+ } else {
+ if (dst->_line[dy].text[dx] != src->_line[sy].text[sx]) {
+ dst->_line[dy].text[dx] = src->_line[sy].text[sx];
+ touched = TRUE;
+ }
+ }
}
-
- T(("rectangle fits in destination"));
-
- for (dy = dminrow, sy = sminrow; dy <= dmaxrow; sy++, dy++) {
- touched = FALSE;
- for(dx=dmincol, sx=smincol; dx <= dmaxcol; sx++, dx++)
- {
- if (over)
- {
- if ((TextOf(src->_line[sy].text[sx]) != ' ') &&
- (dst->_line[dy].text[dx]!=src->_line[sy].text[sx]))
- {
- dst->_line[dy].text[dx] =
- (src->_line[sy].text[sx] & mask) | bk;
- touched = TRUE;
- }
- }
- else {
- if (dst->_line[dy].text[dx] != src->_line[sy].text[sx])
- {
- dst->_line[dy].text[dx] = src->_line[sy].text[sx];
- touched = TRUE;
- }
- }
- }
- if (touched)
- {
- touchline(dst,0,getmaxy(dst));
- }
+ if (touched) {
+ touchline(dst, 0, getmaxy(dst));
}
- T(("finished copywin"));
- returnCode(OK);
+ }
+ T(("finished copywin"));
+ returnCode(OK);
}
diff --git a/contrib/ncurses/ncurses/base/lib_pad.c b/contrib/ncurses/ncurses/base/lib_pad.c
index af7dd3b50194..8a9dae8ab745 100644
--- a/contrib/ncurses/ncurses/base/lib_pad.c
+++ b/contrib/ncurses/ncurses/base/lib_pad.c
@@ -40,9 +40,9 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_pad.c,v 1.29 2000/04/29 21:19:44 tom Exp $")
+MODULE_ID("$Id: lib_pad.c,v 1.32 2000/12/10 02:43:27 tom Exp $")
-WINDOW *
+NCURSES_EXPORT(WINDOW *)
newpad(int l, int c)
{
WINDOW *win;
@@ -60,7 +60,7 @@ newpad(int l, int c)
for (i = 0; i < l; i++) {
if_USE_SCROLL_HINTS(win->_line[i].oldindex = _NEWINDEX);
if ((win->_line[i].text = typeCalloc(chtype, ((size_t) c))) == 0) {
- _nc_freewin(win);
+ (void) _nc_freewin(win);
returnWin(0);
}
for (ptr = win->_line[i].text; ptr < win->_line[i].text + c;)
@@ -70,8 +70,9 @@ newpad(int l, int c)
returnWin(win);
}
-WINDOW *
-subpad(WINDOW *orig, int l, int c, int begy, int begx)
+NCURSES_EXPORT(WINDOW *)
+subpad
+(WINDOW *orig, int l, int c, int begy, int begx)
{
WINDOW *win = (WINDOW *) 0;
@@ -85,33 +86,38 @@ subpad(WINDOW *orig, int l, int c, int begy, int begx)
returnWin(win);
}
-int
-prefresh(WINDOW *win, int pminrow, int pmincol,
- int sminrow, int smincol, int smaxrow, int smaxcol)
+NCURSES_EXPORT(int)
+prefresh
+(WINDOW *win, int pminrow, int pmincol,
+ int sminrow, int smincol, int smaxrow, int smaxcol)
{
T((T_CALLED("prefresh()")));
if (pnoutrefresh(win, pminrow, pmincol, sminrow, smincol, smaxrow,
- smaxcol) != ERR
+ smaxcol) != ERR
&& doupdate() != ERR) {
returnCode(OK);
}
returnCode(ERR);
}
-int
-pnoutrefresh(WINDOW *win, int pminrow, int pmincol,
- int sminrow, int smincol, int smaxrow, int smaxcol)
+NCURSES_EXPORT(int)
+pnoutrefresh
+(WINDOW *win, int pminrow, int pmincol,
+ int sminrow, int smincol, int smaxrow, int smaxcol)
{
- const int my_len = 2; /* parameterize the threshold for hardscroll */
NCURSES_SIZE_T i, j;
NCURSES_SIZE_T m, n;
NCURSES_SIZE_T pmaxrow;
NCURSES_SIZE_T pmaxcol;
+
+#if USE_SCROLL_HINTS
+ const int my_len = 2; /* parameterize the threshold for hardscroll */
NCURSES_SIZE_T displaced;
bool wide;
+#endif
T((T_CALLED("pnoutrefresh(%p, %d, %d, %d, %d, %d, %d)"),
- win, pminrow, pmincol, sminrow, smincol, smaxrow, smaxcol));
+ win, pminrow, pmincol, sminrow, smincol, smaxrow, smaxcol));
if (win == 0)
returnCode(ERR);
@@ -155,12 +161,14 @@ pnoutrefresh(WINDOW *win, int pminrow, int pmincol,
T(("pad being refreshed"));
+#if USE_SCROLL_HINTS
if (win->_pad._pad_y >= 0) {
displaced = pminrow - win->_pad._pad_y
- (sminrow - win->_pad._pad_top);
T(("pad being shifted by %d line(s)", displaced));
} else
displaced = 0;
+#endif
/*
* For pure efficiency, we'd want to transfer scrolling information
@@ -176,11 +184,13 @@ pnoutrefresh(WINDOW *win, int pminrow, int pmincol,
* windows). Note that changing this formula will not break any code,
* merely change the costs of various update cases.
*/
+#if USE_SCROLL_HINTS
wide = (smincol < my_len && smaxcol > (newscr->_maxx - my_len));
+#endif
for (i = pminrow, m = sminrow + win->_yoffset;
- i <= pmaxrow && m <= newscr->_maxy;
- i++, m++) {
+ i <= pmaxrow && m <= newscr->_maxy;
+ i++, m++) {
register struct ldat *nline = &newscr->_line[m];
register struct ldat *oline = &win->_line[i];
@@ -227,7 +237,7 @@ pnoutrefresh(WINDOW *win, int pminrow, int pmincol,
for (i = pminrow - 1; (i >= 0) && (win->_line[i].oldindex >= 0); i--)
win->_line[i].oldindex = _NEWINDEX;
for (i = pmaxrow + 1; (i <= win->_maxy)
- && (win->_line[i].oldindex >= 0); i++)
+ && (win->_line[i].oldindex >= 0); i++)
win->_line[i].oldindex = _NEWINDEX;
#endif
@@ -269,7 +279,7 @@ pnoutrefresh(WINDOW *win, int pminrow, int pmincol,
returnCode(OK);
}
-int
+NCURSES_EXPORT(int)
pechochar(WINDOW *pad, const chtype ch)
{
T((T_CALLED("pechochar(%p, %s)"), pad, _tracechtype(ch)));
@@ -282,11 +292,11 @@ pechochar(WINDOW *pad, const chtype ch)
waddch(pad, ch);
prefresh(pad, pad->_pad._pad_y,
- pad->_pad._pad_x,
- pad->_pad._pad_top,
- pad->_pad._pad_left,
- pad->_pad._pad_bottom,
- pad->_pad._pad_right);
+ pad->_pad._pad_x,
+ pad->_pad._pad_top,
+ pad->_pad._pad_left,
+ pad->_pad._pad_bottom,
+ pad->_pad._pad_right);
returnCode(OK);
}
diff --git a/contrib/ncurses/ncurses/base/lib_printw.c b/contrib/ncurses/ncurses/base/lib_printw.c
index 8d28f288d3c1..f6b7036fe367 100644
--- a/contrib/ncurses/ncurses/base/lib_printw.c
+++ b/contrib/ncurses/ncurses/base/lib_printw.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -39,72 +39,79 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_printw.c,v 1.7 1998/04/11 22:53:44 tom Exp $")
+MODULE_ID("$Id: lib_printw.c,v 1.9 2000/12/10 02:43:27 tom Exp $")
-int printw(NCURSES_CONST char *fmt, ...)
+NCURSES_EXPORT(int)
+printw(NCURSES_CONST char *fmt,...)
{
- va_list argp;
- int code;
+ va_list argp;
+ int code;
- T(("printw(%s,...) called", _nc_visbuf(fmt)));
+ T(("printw(%s,...) called", _nc_visbuf(fmt)));
- va_start(argp, fmt);
- code = vwprintw(stdscr, fmt, argp);
- va_end(argp);
+ va_start(argp, fmt);
+ code = vwprintw(stdscr, fmt, argp);
+ va_end(argp);
- return code;
+ return code;
}
-int wprintw(WINDOW *win, NCURSES_CONST char *fmt, ...)
+NCURSES_EXPORT(int)
+wprintw(WINDOW *win, NCURSES_CONST char *fmt,...)
{
- va_list argp;
- int code;
+ va_list argp;
+ int code;
- T(("wprintw(%p,%s,...) called", win, _nc_visbuf(fmt)));
+ T(("wprintw(%p,%s,...) called", win, _nc_visbuf(fmt)));
- va_start(argp, fmt);
- code = vwprintw(win, fmt, argp);
- va_end(argp);
+ va_start(argp, fmt);
+ code = vwprintw(win, fmt, argp);
+ va_end(argp);
- return code;
+ return code;
}
-int mvprintw(int y, int x, NCURSES_CONST char *fmt, ...)
+NCURSES_EXPORT(int)
+mvprintw(int y, int x, NCURSES_CONST char *fmt,...)
{
- va_list argp;
- int code = move(y, x);
-
- if (code != ERR) {
- va_start(argp, fmt);
- code = vwprintw(stdscr, fmt, argp);
- va_end(argp);
- }
- return code;
+ va_list argp;
+ int code = move(y, x);
+
+ if (code != ERR) {
+ va_start(argp, fmt);
+ code = vwprintw(stdscr, fmt, argp);
+ va_end(argp);
+ }
+ return code;
}
-int mvwprintw(WINDOW *win, int y, int x, NCURSES_CONST char *fmt, ...)
+NCURSES_EXPORT(int)
+mvwprintw
+(WINDOW *win, int y, int x, NCURSES_CONST char *fmt,...)
{
- va_list argp;
- int code = wmove(win, y, x);
-
- if (code != ERR) {
- va_start(argp, fmt);
- code = vwprintw(win, fmt, argp);
- va_end(argp);
- }
- return code;
+ va_list argp;
+ int code = wmove(win, y, x);
+
+ if (code != ERR) {
+ va_start(argp, fmt);
+ code = vwprintw(win, fmt, argp);
+ va_end(argp);
+ }
+ return code;
}
-int vwprintw(WINDOW *win, NCURSES_CONST char *fmt, va_list argp)
+NCURSES_EXPORT(int)
+vwprintw
+(WINDOW *win, NCURSES_CONST char *fmt, va_list argp)
{
- char *buf = _nc_printf_string(fmt, argp);
- int code = ERR;
+ char *buf = _nc_printf_string(fmt, argp);
+ int code = ERR;
- if (buf != 0) {
- code = waddstr(win, buf);
+ if (buf != 0) {
+ code = waddstr(win, buf);
#if USE_SAFE_SPRINTF
- free(buf);
+ free(buf);
#endif
- }
- return code;
+ }
+ return code;
}
diff --git a/contrib/ncurses/ncurses/base/lib_redrawln.c b/contrib/ncurses/ncurses/base/lib_redrawln.c
index 10fda917984e..dd0a51e6ae5a 100644
--- a/contrib/ncurses/ncurses/base/lib_redrawln.c
+++ b/contrib/ncurses/ncurses/base/lib_redrawln.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -39,31 +39,31 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_redrawln.c,v 1.7 1998/09/19 20:09:50 Alexander.V.Lukyanov Exp $")
+MODULE_ID("$Id: lib_redrawln.c,v 1.9 2000/12/10 02:43:27 tom Exp $")
-int wredrawln(WINDOW *win, int beg, int num)
+NCURSES_EXPORT(int)
+wredrawln(WINDOW *win, int beg, int num)
{
- int i;
- int end;
- size_t len = (win->_maxx + 1) * sizeof(chtype);
+ int i;
+ int end;
+ size_t len = (win->_maxx + 1) * sizeof(chtype);
- T((T_CALLED("wredrawln(%p,%d,%d)"), win, beg, num));
+ T((T_CALLED("wredrawln(%p,%d,%d)"), win, beg, num));
- if (beg < 0)
- beg = 0;
+ if (beg < 0)
+ beg = 0;
- if (touchline (win, beg, num) == ERR)
- returnCode(ERR);
+ if (touchline(win, beg, num) == ERR)
+ returnCode(ERR);
- end = beg + num;
- if (end > win->_maxy + 1)
- end = win->_maxy + 1;
+ end = beg + num;
+ if (end > win->_maxy + 1)
+ end = win->_maxy + 1;
- for (i = beg; i < end; i++)
- {
- memset (curscr->_line[i+win->_begy].text+win->_begx, 0, len);
- _nc_make_oldhash(i+win->_begy);
- }
+ for (i = beg; i < end; i++) {
+ memset(curscr->_line[i + win->_begy].text + win->_begx, 0, len);
+ _nc_make_oldhash(i + win->_begy);
+ }
- returnCode(OK);
+ returnCode(OK);
}
diff --git a/contrib/ncurses/ncurses/base/lib_refresh.c b/contrib/ncurses/ncurses/base/lib_refresh.c
index 910664b0187a..bd03ce712f95 100644
--- a/contrib/ncurses/ncurses/base/lib_refresh.c
+++ b/contrib/ncurses/ncurses/base/lib_refresh.c
@@ -40,9 +40,9 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_refresh.c,v 1.25 2000/04/29 21:17:08 tom Exp $")
+MODULE_ID("$Id: lib_refresh.c,v 1.28 2000/12/10 02:43:27 tom Exp $")
-int
+NCURSES_EXPORT(int)
wrefresh(WINDOW *win)
{
int code;
@@ -67,7 +67,7 @@ wrefresh(WINDOW *win)
returnCode(code);
}
-int
+NCURSES_EXPORT(int)
wnoutrefresh(WINDOW *win)
{
NCURSES_SIZE_T limit_x;
@@ -75,7 +75,9 @@ wnoutrefresh(WINDOW *win)
NCURSES_SIZE_T begx;
NCURSES_SIZE_T begy;
NCURSES_SIZE_T m, n;
+#if USE_SCROLL_HINTS
bool wide;
+#endif
T((T_CALLED("wnoutrefresh(%p)"), win));
#ifdef TRACE
@@ -100,6 +102,7 @@ wnoutrefresh(WINDOW *win)
/* merge in change information from all subwindows of this window */
wsyncdown(win);
+#if USE_SCROLL_HINTS
/*
* For pure efficiency, we'd want to transfer scrolling information
* from the window to newscr whenever the window is wide enough that
@@ -115,6 +118,7 @@ wnoutrefresh(WINDOW *win)
* merely change the costs of various update cases.
*/
wide = (begx <= 1 && win->_maxx >= (newscr->_maxx - 1));
+#endif
win->_flags &= ~_HASMOVED;
@@ -132,8 +136,8 @@ wnoutrefresh(WINDOW *win)
limit_x = win->_maxx;
for (i = 0, m = begy + win->_yoffset;
- i <= win->_maxy && m <= newscr->_maxy;
- i++, m++) {
+ i <= win->_maxy && m <= newscr->_maxy;
+ i++, m++) {
register struct ldat *nline = &newscr->_line[m];
register struct ldat *oline = &win->_line[i];
diff --git a/contrib/ncurses/ncurses/base/lib_restart.c b/contrib/ncurses/ncurses/base/lib_restart.c
index 831e3255d842..0068554cecb1 100644
--- a/contrib/ncurses/ncurses/base/lib_restart.c
+++ b/contrib/ncurses/ncurses/base/lib_restart.c
@@ -47,10 +47,11 @@
#include <term.h> /* lines, columns, cur_term */
-MODULE_ID("$Id: lib_restart.c,v 1.3 2000/09/02 18:09:44 tom Exp $")
+MODULE_ID("$Id: lib_restart.c,v 1.4 2000/12/10 01:26:52 tom Exp $")
-int
-restartterm(NCURSES_CONST char *termp, int filenum, int *errret)
+NCURSES_EXPORT(int)
+restartterm
+(NCURSES_CONST char *termp, int filenum, int *errret)
{
int saveecho = SP->_echo;
int savecbreak = SP->_cbreak;
diff --git a/contrib/ncurses/ncurses/base/lib_scanw.c b/contrib/ncurses/ncurses/base/lib_scanw.c
index cc66613ff52f..3e1c9d0a36c0 100644
--- a/contrib/ncurses/ncurses/base/lib_scanw.c
+++ b/contrib/ncurses/ncurses/base/lib_scanw.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -31,8 +31,6 @@
* and: Eric S. Raymond <esr@snark.thyrsus.com> *
****************************************************************************/
-
-
/*
** lib_scanw.c
**
@@ -42,70 +40,75 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_scanw.c,v 1.8 1998/04/11 22:54:18 tom Exp $")
+MODULE_ID("$Id: lib_scanw.c,v 1.10 2000/12/10 02:43:27 tom Exp $")
#if !HAVE_VSSCANF
#if defined(__QNX__)
extern int vsscanf(const char *str, const char *format, __va_list __arg);
#else
-extern int vsscanf(const char *str, const char *format, ...);
+extern int vsscanf(const char *str, const char *format,...);
#endif
#endif
-int vwscanw(WINDOW *win, NCURSES_CONST char *fmt, va_list argp)
+NCURSES_EXPORT(int)
+vwscanw(WINDOW *win, NCURSES_CONST char *fmt, va_list argp)
{
-char buf[BUFSIZ];
+ char buf[BUFSIZ];
- if (wgetnstr(win, buf, sizeof(buf)-1) == ERR)
- return(ERR);
+ if (wgetnstr(win, buf, sizeof(buf) - 1) == ERR)
+ return (ERR);
- return(vsscanf(buf, fmt, argp));
+ return (vsscanf(buf, fmt, argp));
}
-int scanw(NCURSES_CONST char *fmt, ...)
+NCURSES_EXPORT(int)
+scanw(NCURSES_CONST char *fmt,...)
{
-int code;
-va_list ap;
+ int code;
+ va_list ap;
- T(("scanw(\"%s\",...) called", fmt));
+ T(("scanw(\"%s\",...) called", fmt));
- va_start(ap, fmt);
- code = vwscanw(stdscr, fmt, ap);
- va_end(ap);
- return (code);
+ va_start(ap, fmt);
+ code = vwscanw(stdscr, fmt, ap);
+ va_end(ap);
+ return (code);
}
-int wscanw(WINDOW *win, NCURSES_CONST char *fmt, ...)
+NCURSES_EXPORT(int)
+wscanw(WINDOW *win, NCURSES_CONST char *fmt,...)
{
-int code;
-va_list ap;
+ int code;
+ va_list ap;
- T(("wscanw(%p,\"%s\",...) called", win, fmt));
+ T(("wscanw(%p,\"%s\",...) called", win, fmt));
- va_start(ap, fmt);
- code = vwscanw(win, fmt, ap);
- va_end(ap);
- return (code);
+ va_start(ap, fmt);
+ code = vwscanw(win, fmt, ap);
+ va_end(ap);
+ return (code);
}
-int mvscanw(int y, int x, NCURSES_CONST char *fmt, ...)
+NCURSES_EXPORT(int)
+mvscanw(int y, int x, NCURSES_CONST char *fmt,...)
{
-int code;
-va_list ap;
+ int code;
+ va_list ap;
- va_start(ap, fmt);
- code = (move(y, x) == OK) ? vwscanw(stdscr, fmt, ap) : ERR;
- va_end(ap);
- return (code);
+ va_start(ap, fmt);
+ code = (move(y, x) == OK) ? vwscanw(stdscr, fmt, ap) : ERR;
+ va_end(ap);
+ return (code);
}
-int mvwscanw(WINDOW *win, int y, int x, NCURSES_CONST char *fmt, ...)
+NCURSES_EXPORT(int)
+mvwscanw(WINDOW *win, int y, int x, NCURSES_CONST char *fmt,...)
{
-int code;
-va_list ap;
+ int code;
+ va_list ap;
- va_start(ap, fmt);
- code = (wmove(win, y, x) == OK) ? vwscanw(win, fmt, ap) : ERR;
- va_end(ap);
- return (code);
+ va_start(ap, fmt);
+ code = (wmove(win, y, x) == OK) ? vwscanw(win, fmt, ap) : ERR;
+ va_end(ap);
+ return (code);
}
diff --git a/contrib/ncurses/ncurses/base/lib_screen.c b/contrib/ncurses/ncurses/base/lib_screen.c
index 3038393c2266..5e674b35cb2f 100644
--- a/contrib/ncurses/ncurses/base/lib_screen.c
+++ b/contrib/ncurses/ncurses/base/lib_screen.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -31,166 +31,164 @@
* and: Eric S. Raymond <esr@snark.thyrsus.com> *
****************************************************************************/
-
#include <curses.priv.h>
#include <sys/stat.h>
#include <time.h>
-#include <term.h> /* exit_ca_mode, non_rev_rmcup */
+#include <term.h> /* exit_ca_mode, non_rev_rmcup */
-MODULE_ID("$Id: lib_screen.c,v 1.15 1999/07/24 20:05:29 tom Exp $")
+MODULE_ID("$Id: lib_screen.c,v 1.17 2000/12/10 02:43:27 tom Exp $")
-static time_t dumptime;
+static time_t dumptime;
-WINDOW *getwin(FILE *filep)
+NCURSES_EXPORT(WINDOW *)
+getwin(FILE * filep)
{
- WINDOW tmp, *nwin;
- int n;
-
- T((T_CALLED("getwin(%p)"), filep));
-
- (void) fread(&tmp, sizeof(WINDOW), 1, filep);
- if (ferror(filep))
- returnWin(0);
-
- if ((nwin = newwin(tmp._maxy+1, tmp._maxx+1, 0, 0)) == 0)
- returnWin(0);
-
- /*
- * We deliberately do not restore the _parx, _pary, or _parent
- * fields, because the window hierarchy within which they
- * made sense is probably gone.
- */
- nwin->_curx = tmp._curx;
- nwin->_cury = tmp._cury;
- nwin->_maxy = tmp._maxy;
- nwin->_maxx = tmp._maxx;
- nwin->_begy = tmp._begy;
- nwin->_begx = tmp._begx;
- nwin->_yoffset = tmp._yoffset;
- nwin->_flags = tmp._flags & ~(_SUBWIN|_ISPAD);
-
- nwin->_attrs = tmp._attrs;
- nwin->_bkgd = tmp._bkgd;
-
- nwin->_clear = tmp._clear;
- nwin->_scroll = tmp._scroll;
- nwin->_leaveok = tmp._leaveok;
- nwin->_use_keypad = tmp._use_keypad;
- nwin->_delay = tmp._delay;
- nwin->_immed = tmp._immed;
- nwin->_sync = tmp._sync;
-
- nwin->_regtop = tmp._regtop;
- nwin->_regbottom = tmp._regbottom;
-
- for (n = 0; n < nwin->_maxy + 1; n++)
- {
- (void) fread(nwin->_line[n].text,
- sizeof(chtype), (size_t)(nwin->_maxx + 1), filep);
- if (ferror(filep))
- {
- delwin(nwin);
- returnWin(0);
- }
+ WINDOW tmp, *nwin;
+ int n;
+
+ T((T_CALLED("getwin(%p)"), filep));
+
+ (void) fread(&tmp, sizeof(WINDOW), 1, filep);
+ if (ferror(filep))
+ returnWin(0);
+
+ if ((nwin = newwin(tmp._maxy + 1, tmp._maxx + 1, 0, 0)) == 0)
+ returnWin(0);
+
+ /*
+ * We deliberately do not restore the _parx, _pary, or _parent
+ * fields, because the window hierarchy within which they
+ * made sense is probably gone.
+ */
+ nwin->_curx = tmp._curx;
+ nwin->_cury = tmp._cury;
+ nwin->_maxy = tmp._maxy;
+ nwin->_maxx = tmp._maxx;
+ nwin->_begy = tmp._begy;
+ nwin->_begx = tmp._begx;
+ nwin->_yoffset = tmp._yoffset;
+ nwin->_flags = tmp._flags & ~(_SUBWIN | _ISPAD);
+
+ nwin->_attrs = tmp._attrs;
+ nwin->_bkgd = tmp._bkgd;
+
+ nwin->_clear = tmp._clear;
+ nwin->_scroll = tmp._scroll;
+ nwin->_leaveok = tmp._leaveok;
+ nwin->_use_keypad = tmp._use_keypad;
+ nwin->_delay = tmp._delay;
+ nwin->_immed = tmp._immed;
+ nwin->_sync = tmp._sync;
+
+ nwin->_regtop = tmp._regtop;
+ nwin->_regbottom = tmp._regbottom;
+
+ for (n = 0; n < nwin->_maxy + 1; n++) {
+ (void) fread(nwin->_line[n].text,
+ sizeof(chtype), (size_t) (nwin->_maxx + 1), filep);
+ if (ferror(filep)) {
+ delwin(nwin);
+ returnWin(0);
}
- touchwin(nwin);
+ }
+ touchwin(nwin);
- returnWin(nwin);
+ returnWin(nwin);
}
-int putwin(WINDOW *win, FILE *filep)
+NCURSES_EXPORT(int)
+putwin(WINDOW *win, FILE * filep)
{
- int code = ERR;
- int n;
+ int code = ERR;
+ int n;
- T((T_CALLED("putwin(%p,%p)"), win, filep));
+ T((T_CALLED("putwin(%p,%p)"), win, filep));
- if (win) {
- (void) fwrite(win, sizeof(WINDOW), 1, filep);
- if (ferror(filep))
+ if (win) {
+ (void) fwrite(win, sizeof(WINDOW), 1, filep);
+ if (ferror(filep))
returnCode(code);
- for (n = 0; n < win->_maxy + 1; n++)
- {
- (void) fwrite(win->_line[n].text,
- sizeof(chtype), (size_t)(win->_maxx + 1), filep);
- if (ferror(filep))
+ for (n = 0; n < win->_maxy + 1; n++) {
+ (void) fwrite(win->_line[n].text,
+ sizeof(chtype), (size_t) (win->_maxx + 1), filep);
+ if (ferror(filep))
returnCode(code);
- }
- code = OK;
}
- returnCode(code);
+ code = OK;
+ }
+ returnCode(code);
}
-int scr_restore(const char *file)
+NCURSES_EXPORT(int)
+scr_restore(const char *file)
{
- FILE *fp = 0;
-
- T((T_CALLED("scr_restore(%s)"), _nc_visbuf(file)));
-
- if (_nc_access(file, R_OK) < 0
- || (fp = fopen(file, "rb")) == 0)
- returnCode(ERR);
- else
- {
- delwin(newscr);
- newscr = getwin(fp);
- (void) fclose(fp);
- returnCode(OK);
- }
+ FILE *fp = 0;
+
+ T((T_CALLED("scr_restore(%s)"), _nc_visbuf(file)));
+
+ if (_nc_access(file, R_OK) < 0
+ || (fp = fopen(file, "rb")) == 0)
+ returnCode(ERR);
+ else {
+ delwin(newscr);
+ newscr = getwin(fp);
+ (void) fclose(fp);
+ returnCode(OK);
+ }
}
-int scr_dump(const char *file)
+NCURSES_EXPORT(int)
+scr_dump(const char *file)
{
- FILE *fp = 0;
-
- T((T_CALLED("scr_dump(%s)"), _nc_visbuf(file)));
-
- if (_nc_access(file, W_OK) < 0
- || (fp = fopen(file, "wb")) == 0)
- returnCode(ERR);
- else
- {
- (void) putwin(newscr, fp);
- (void) fclose(fp);
- dumptime = time((time_t *)0);
- returnCode(OK);
- }
+ FILE *fp = 0;
+
+ T((T_CALLED("scr_dump(%s)"), _nc_visbuf(file)));
+
+ if (_nc_access(file, W_OK) < 0
+ || (fp = fopen(file, "wb")) == 0)
+ returnCode(ERR);
+ else {
+ (void) putwin(newscr, fp);
+ (void) fclose(fp);
+ dumptime = time((time_t *) 0);
+ returnCode(OK);
+ }
}
-int scr_init(const char *file)
+NCURSES_EXPORT(int)
+scr_init(const char *file)
{
- FILE *fp = 0;
- struct stat stb;
-
- T((T_CALLED("scr_init(%s)"), _nc_visbuf(file)));
-
- if (exit_ca_mode && non_rev_rmcup)
- returnCode(ERR);
-
- if (_nc_access(file, R_OK) < 0
- || (fp = fopen(file, "rb")) == 0)
- returnCode(ERR);
- else if (fstat(STDOUT_FILENO, &stb) || stb.st_mtime > dumptime)
- returnCode(ERR);
- else
- {
- delwin(curscr);
- curscr = getwin(fp);
- (void) fclose(fp);
- returnCode(OK);
- }
+ FILE *fp = 0;
+ struct stat stb;
+
+ T((T_CALLED("scr_init(%s)"), _nc_visbuf(file)));
+
+ if (exit_ca_mode && non_rev_rmcup)
+ returnCode(ERR);
+
+ if (_nc_access(file, R_OK) < 0
+ || (fp = fopen(file, "rb")) == 0)
+ returnCode(ERR);
+ else if (fstat(STDOUT_FILENO, &stb) || stb.st_mtime > dumptime)
+ returnCode(ERR);
+ else {
+ delwin(curscr);
+ curscr = getwin(fp);
+ (void) fclose(fp);
+ returnCode(OK);
+ }
}
-int scr_set(const char *file)
+NCURSES_EXPORT(int)
+scr_set(const char *file)
{
T((T_CALLED("scr_set(%s)"), _nc_visbuf(file)));
if (scr_init(file) == ERR)
returnCode(ERR);
- else
- {
+ else {
delwin(newscr);
newscr = dupwin(curscr);
returnCode(OK);
diff --git a/contrib/ncurses/ncurses/base/lib_scroll.c b/contrib/ncurses/ncurses/base/lib_scroll.c
index c2e3831da255..dcde0fc3f7e4 100644
--- a/contrib/ncurses/ncurses/base/lib_scroll.c
+++ b/contrib/ncurses/ncurses/base/lib_scroll.c
@@ -42,11 +42,12 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_scroll.c,v 1.17 2000/04/29 21:10:51 tom Exp $")
+MODULE_ID("$Id: lib_scroll.c,v 1.20 2000/12/10 02:54:03 tom Exp $")
-void
-_nc_scroll_window(WINDOW *win, int const n, NCURSES_SIZE_T const top,
- NCURSES_SIZE_T const bottom, chtype blank)
+NCURSES_EXPORT(void)
+_nc_scroll_window
+(WINDOW *win, int const n, NCURSES_SIZE_T const top,
+ NCURSES_SIZE_T const bottom, chtype blank)
{
int line, j;
size_t to_copy = (size_t) (sizeof(chtype) * (win->_maxx + 1));
@@ -68,10 +69,11 @@ _nc_scroll_window(WINDOW *win, int const n, NCURSES_SIZE_T const top,
if (n < 0) {
for (line = bottom; line >= top - n; line--) {
memcpy(win->_line[line].text,
- win->_line[line + n].text,
- to_copy);
- if_USE_SCROLL_HINTS(win->_line[line].oldindex = win->_line[line
- + n].oldindex);
+ win->_line[line + n].text,
+ to_copy);
+ if_USE_SCROLL_HINTS(
+ win->_line[line].oldindex =
+ win->_line[line + n].oldindex);
}
for (line = top; line < top - n; line++) {
for (j = 0; j <= win->_maxx; j++)
@@ -84,10 +86,10 @@ _nc_scroll_window(WINDOW *win, int const n, NCURSES_SIZE_T const top,
if (n > 0) {
for (line = top; line <= bottom - n; line++) {
memcpy(win->_line[line].text,
- win->_line[line + n].text,
- to_copy);
- if_USE_SCROLL_HINTS(win->_line[line].oldindex = win->_line[line
- + n].oldindex);
+ win->_line[line + n].text,
+ to_copy);
+ if_USE_SCROLL_HINTS(win->_line[line].oldindex =
+ win->_line[line + n].oldindex);
}
for (line = bottom; line > bottom - n; line--) {
for (j = 0; j <= win->_maxx; j++)
@@ -98,7 +100,7 @@ _nc_scroll_window(WINDOW *win, int const n, NCURSES_SIZE_T const top,
touchline(win, top, bottom - top + 1);
}
-int
+NCURSES_EXPORT(int)
wscrl(WINDOW *win, int n)
{
T((T_CALLED("wscrl(%p,%d)"), win, n));
diff --git a/contrib/ncurses/ncurses/base/lib_scrollok.c b/contrib/ncurses/ncurses/base/lib_scrollok.c
index f24eb8ebb0c6..f6b30259be73 100644
--- a/contrib/ncurses/ncurses/base/lib_scrollok.c
+++ b/contrib/ncurses/ncurses/base/lib_scrollok.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -31,7 +31,6 @@
* and: Eric S. Raymond <esr@snark.thyrsus.com> *
****************************************************************************/
-
/*
** lib_scrollok.c
**
@@ -41,16 +40,16 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_scrollok.c,v 1.2 1998/02/11 12:14:01 tom Exp $")
+MODULE_ID("$Id: lib_scrollok.c,v 1.4 2000/12/10 02:43:27 tom Exp $")
-int scrollok(WINDOW *win, bool flag)
+NCURSES_EXPORT(int)
+scrollok(WINDOW *win, bool flag)
{
- T((T_CALLED("scrollok(%p,%d)"), win, flag));
+ T((T_CALLED("scrollok(%p,%d)"), win, flag));
- if (win) {
- win->_scroll = flag;
- returnCode(OK);
- }
- else
- returnCode(ERR);
+ if (win) {
+ win->_scroll = flag;
+ returnCode(OK);
+ } else
+ returnCode(ERR);
}
diff --git a/contrib/ncurses/ncurses/base/lib_scrreg.c b/contrib/ncurses/ncurses/base/lib_scrreg.c
index b47c047f4623..c85d60f1164d 100644
--- a/contrib/ncurses/ncurses/base/lib_scrreg.c
+++ b/contrib/ncurses/ncurses/base/lib_scrreg.c
@@ -40,9 +40,9 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_scrreg.c,v 1.8 2000/04/29 21:13:04 tom Exp $")
+MODULE_ID("$Id: lib_scrreg.c,v 1.10 2000/12/10 02:43:27 tom Exp $")
-int
+NCURSES_EXPORT(int)
wsetscrreg(WINDOW *win, int top, int bottom)
{
T((T_CALLED("wsetscrreg(%p,%d,%d)"), win, top, bottom));
diff --git a/contrib/ncurses/ncurses/base/lib_set_term.c b/contrib/ncurses/ncurses/base/lib_set_term.c
index 15dd6d3f505d..e2afbecdb42d 100644
--- a/contrib/ncurses/ncurses/base/lib_set_term.c
+++ b/contrib/ncurses/ncurses/base/lib_set_term.c
@@ -43,9 +43,9 @@
#include <term.h> /* cur_term */
#include <tic.h>
-MODULE_ID("$Id: lib_set_term.c,v 1.58 2000/10/04 22:05:48 tom Exp $")
+MODULE_ID("$Id: lib_set_term.c,v 1.61 2000/12/10 02:43:27 tom Exp $")
-SCREEN *
+NCURSES_EXPORT(SCREEN *)
set_term(SCREEN * screenp)
{
SCREEN *oldSP;
@@ -80,7 +80,7 @@ _nc_free_keytry(struct tries *kt)
/*
* Free the storage associated with the given SCREEN sp.
*/
-void
+NCURSES_EXPORT(void)
delscreen(SCREEN * sp)
{
SCREEN **scan = &_nc_screen_chain;
@@ -95,9 +95,9 @@ delscreen(SCREEN * sp)
scan = &(*scan)->_next_screen;
}
- _nc_freewin(sp->_curscr);
- _nc_freewin(sp->_newscr);
- _nc_freewin(sp->_stdscr);
+ (void) _nc_freewin(sp->_curscr);
+ (void) _nc_freewin(sp->_newscr);
+ (void) _nc_freewin(sp->_stdscr);
_nc_free_keytry(sp->_keytry);
_nc_free_keytry(sp->_key_ok);
@@ -191,8 +191,9 @@ extract_fgbg(char *src, int *result)
}
#endif
-int
-_nc_setupscreen(short slines, short const scolumns, FILE * output)
+NCURSES_EXPORT(int)
+_nc_setupscreen
+(short slines, short const scolumns, FILE * output)
/* OS-independent screen initializations */
{
int bottom_stolen = 0;
@@ -224,7 +225,7 @@ _nc_setupscreen(short slines, short const scolumns, FILE * output)
#if NCURSES_NO_PADDING
SP->_no_padding = getenv("NCURSES_NO_PADDING") != 0;
TR(TRACE_CHARPUT | TRACE_MOVE, ("padding will%s be used",
- SP->_no_padding ? " not" : ""));
+ SP->_no_padding ? " not" : ""));
#endif
#if NCURSES_EXT_FUNCS
@@ -295,12 +296,12 @@ _nc_setupscreen(short slines, short const scolumns, FILE * output)
if (magic_cookie_glitch > 0) {
SP->_xmc_triggers = termattrs() & (
- A_ALTCHARSET |
- A_BLINK |
- A_BOLD |
- A_REVERSE |
- A_STANDOUT |
- A_UNDERLINE
+ A_ALTCHARSET |
+ A_BLINK |
+ A_BOLD |
+ A_REVERSE |
+ A_STANDOUT |
+ A_UNDERLINE
);
SP->_xmc_suppress = SP->_xmc_triggers & (chtype) ~ (A_BOLD);
@@ -390,7 +391,7 @@ _nc_setupscreen(short slines, short const scolumns, FILE * output)
/* The internal implementation interprets line as the number of
lines to rip off from the top or bottom.
*/
-int
+NCURSES_EXPORT(int)
_nc_ripoffline(int line, int (*init) (WINDOW *, int))
{
if (line == 0)
@@ -407,7 +408,7 @@ _nc_ripoffline(int line, int (*init) (WINDOW *, int))
return (OK);
}
-int
+NCURSES_EXPORT(int)
ripoffline(int line, int (*init) (WINDOW *, int))
{
T((T_CALLED("ripoffline(%d,%p)"), line, init));
diff --git a/contrib/ncurses/ncurses/base/lib_slk.c b/contrib/ncurses/ncurses/base/lib_slk.c
index 21eae687c67f..020449383e6c 100644
--- a/contrib/ncurses/ncurses/base/lib_slk.c
+++ b/contrib/ncurses/ncurses/base/lib_slk.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998,1999 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,1999,2000 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 *
@@ -39,43 +39,41 @@
#include <curses.priv.h>
#include <ctype.h>
-#include <term.h> /* num_labels, label_*, plab_norm */
+#include <term.h> /* num_labels, label_*, plab_norm */
-MODULE_ID("$Id: lib_slk.c,v 1.17 1999/10/30 23:00:16 tom Exp $")
+MODULE_ID("$Id: lib_slk.c,v 1.20 2000/12/10 02:43:27 tom Exp $")
/*
* We'd like to move these into the screen context structure, but cannot,
* because slk_init() is called before initscr()/newterm().
*/
-int _nc_slk_format = 0; /* one more than format specified in slk_init() */
+NCURSES_EXPORT_VAR(int)
+_nc_slk_format = 0; /* one more than format specified in slk_init() */
/*
* Paint the info line for the PC style SLK emulation.
*
*/
-static void
-slk_paint_info(WINDOW *win)
+ static void
+ slk_paint_info(WINDOW *win)
{
- if (win && SP->slk_format==4)
- {
- int i;
-
- mvwhline (win,0,0,0,getmaxx(win));
- wmove (win,0,0);
-
- for (i = 0; i < SP->_slk->maxlab; i++) {
- if (win && SP->slk_format==4)
- {
- mvwaddch(win,0,SP->_slk->ent[i].x,'F');
- if (i<9)
- waddch(win,'1'+i);
- else
- {
- waddch(win,'1');
- waddch(win,'0' + (i-9));
- }
- }
- }
+ if (win && SP->slk_format == 4) {
+ int i;
+
+ mvwhline(win, 0, 0, 0, getmaxx(win));
+ wmove(win, 0, 0);
+
+ for (i = 0; i < SP->_slk->maxlab; i++) {
+ if (win && SP->slk_format == 4) {
+ mvwaddch(win, 0, SP->_slk->ent[i].x, (chtype) 'F');
+ if (i < 9)
+ waddch(win, (chtype) '1' + i);
+ else {
+ waddch(win, (chtype) '1');
+ waddch(win, (chtype) '0' + (i - 9));
+ }
+ }
+ }
}
}
@@ -83,132 +81,122 @@ slk_paint_info(WINDOW *win)
* Initialize soft labels.
* Called from newterm()
*/
-int
+NCURSES_EXPORT(int)
_nc_slk_initialize(WINDOW *stwin, int cols)
{
-int i, x;
-int res = OK;
-char *p;
-
- T(("slk_initialize()"));
-
- if (SP->_slk)
- { /* we did this already, so simply return */
- return(OK);
- }
- else
- if ((SP->_slk = typeCalloc(SLK, 1)) == 0)
- return(ERR);
-
- SP->_slk->ent = NULL;
- SP->_slk->buffer = NULL;
- SP->_slk->attr = A_STANDOUT;
-
- SP->_slk->maxlab = (num_labels > 0) ?
- num_labels : MAX_SKEY(_nc_slk_format);
- SP->_slk->maxlen = (num_labels > 0) ?
- label_width * label_height : MAX_SKEY_LEN(_nc_slk_format);
- SP->_slk->labcnt = (SP->_slk->maxlab < MAX_SKEY(_nc_slk_format)) ?
- MAX_SKEY(_nc_slk_format) : SP->_slk->maxlab;
-
- SP->_slk->ent = typeCalloc(slk_ent, SP->_slk->labcnt);
- if (SP->_slk->ent == NULL)
- goto exception;
-
- p = SP->_slk->buffer = (char*) calloc(2*SP->_slk->labcnt,(1+SP->_slk->maxlen));
- if (SP->_slk->buffer == NULL)
- goto exception;
-
- for (i = 0; i < SP->_slk->labcnt; i++) {
- SP->_slk->ent[i].text = p;
- p += (1 + SP->_slk->maxlen);
- SP->_slk->ent[i].form_text = p;
- p += (1 + SP->_slk->maxlen);
- memset(SP->_slk->ent[i].form_text, ' ', (unsigned)(SP->_slk->maxlen));
- SP->_slk->ent[i].visible = (i < SP->_slk->maxlab);
- }
- if (_nc_slk_format >= 3) /* PC style */
- {
- int gap = (cols - 3 * (3 + 4*SP->_slk->maxlen))/2;
+ int i, x;
+ int res = OK;
+ char *p;
+
+ T(("slk_initialize()"));
+
+ if (SP->_slk) { /* we did this already, so simply return */
+ return (OK);
+ } else if ((SP->_slk = typeCalloc(SLK, 1)) == 0)
+ return (ERR);
+
+ SP->_slk->ent = NULL;
+ SP->_slk->buffer = NULL;
+ SP->_slk->attr = A_STANDOUT;
+
+ SP->_slk->maxlab = (num_labels > 0) ?
+ num_labels : MAX_SKEY(_nc_slk_format);
+ SP->_slk->maxlen = (num_labels > 0) ?
+ label_width * label_height : MAX_SKEY_LEN(_nc_slk_format);
+ SP->_slk->labcnt = (SP->_slk->maxlab < MAX_SKEY(_nc_slk_format)) ?
+ MAX_SKEY(_nc_slk_format) : SP->_slk->maxlab;
+
+ SP->_slk->ent = typeCalloc(slk_ent, SP->_slk->labcnt);
+ if (SP->_slk->ent == NULL)
+ goto exception;
+
+ p = SP->_slk->buffer = (char *) calloc(2 * SP->_slk->labcnt, (1 + SP->_slk->maxlen));
+ if (SP->_slk->buffer == NULL)
+ goto exception;
+
+ for (i = 0; i < SP->_slk->labcnt; i++) {
+ SP->_slk->ent[i].text = p;
+ p += (1 + SP->_slk->maxlen);
+ SP->_slk->ent[i].form_text = p;
+ p += (1 + SP->_slk->maxlen);
+ memset(SP->_slk->ent[i].form_text, ' ', (unsigned) (SP->_slk->maxlen));
+ SP->_slk->ent[i].visible = (i < SP->_slk->maxlab);
+ }
+ if (_nc_slk_format >= 3) { /* PC style */
+ int gap = (cols - 3 * (3 + 4 * SP->_slk->maxlen)) / 2;
- if (gap < 1)
- gap = 1;
+ if (gap < 1)
+ gap = 1;
- for (i = x = 0; i < SP->_slk->maxlab; i++) {
- SP->_slk->ent[i].x = x;
- x += SP->_slk->maxlen;
- x += (i==3 || i==7) ? gap : 1;
- }
- if (_nc_slk_format == 4)
- slk_paint_info (stwin);
- }
- else {
- if (_nc_slk_format == 2) { /* 4-4 */
+ for (i = x = 0; i < SP->_slk->maxlab; i++) {
+ SP->_slk->ent[i].x = x;
+ x += SP->_slk->maxlen;
+ x += (i == 3 || i == 7) ? gap : 1;
+ }
+ if (_nc_slk_format == 4)
+ slk_paint_info(stwin);
+ } else {
+ if (_nc_slk_format == 2) { /* 4-4 */
int gap = cols - (SP->_slk->maxlab * SP->_slk->maxlen) - 6;
if (gap < 1)
- gap = 1;
+ gap = 1;
for (i = x = 0; i < SP->_slk->maxlab; i++) {
- SP->_slk->ent[i].x = x;
- x += SP->_slk->maxlen;
- x += (i == 3) ? gap : 1;
+ SP->_slk->ent[i].x = x;
+ x += SP->_slk->maxlen;
+ x += (i == 3) ? gap : 1;
}
- }
- else
- {
- if (_nc_slk_format == 1) { /* 1 -> 3-2-3 */
- int gap = (cols - (SP->_slk->maxlab * SP->_slk->maxlen) - 5) / 2;
+ } else {
+ if (_nc_slk_format == 1) { /* 1 -> 3-2-3 */
+ int gap = (cols - (SP->_slk->maxlab * SP->_slk->maxlen) - 5)
+ / 2;
if (gap < 1)
- gap = 1;
+ gap = 1;
for (i = x = 0; i < SP->_slk->maxlab; i++) {
- SP->_slk->ent[i].x = x;
- x += SP->_slk->maxlen;
- x += (i == 2 || i == 4) ? gap : 1;
+ SP->_slk->ent[i].x = x;
+ x += SP->_slk->maxlen;
+ x += (i == 2 || i == 4) ? gap : 1;
}
- }
- else
+ } else
goto exception;
- }
}
- SP->_slk->dirty = TRUE;
- if ((SP->_slk->win = stwin) == NULL)
- {
- exception:
- if (SP->_slk)
- {
- FreeIfNeeded(SP->_slk->buffer);
- FreeIfNeeded(SP->_slk->ent);
- free(SP->_slk);
- SP->_slk = (SLK*)0;
- res = (ERR);
- }
+ }
+ SP->_slk->dirty = TRUE;
+ if ((SP->_slk->win = stwin) == NULL) {
+ exception:
+ if (SP->_slk) {
+ FreeIfNeeded(SP->_slk->buffer);
+ FreeIfNeeded(SP->_slk->ent);
+ free(SP->_slk);
+ SP->_slk = (SLK *) 0;
+ res = (ERR);
}
+ }
- /* We now reset the format so that the next newterm has again
- * per default no SLK keys and may call slk_init again to
- * define a new layout. (juergen 03-Mar-1999)
- */
- SP->slk_format = _nc_slk_format;
- _nc_slk_format = 0;
- return(res);
+ /* We now reset the format so that the next newterm has again
+ * per default no SLK keys and may call slk_init again to
+ * define a new layout. (juergen 03-Mar-1999)
+ */
+ SP->slk_format = _nc_slk_format;
+ _nc_slk_format = 0;
+ return (res);
}
-
/*
* Restore the soft labels on the screen.
*/
-int
+NCURSES_EXPORT(int)
slk_restore(void)
{
- T((T_CALLED("slk_restore()")));
+ T((T_CALLED("slk_restore()")));
- if (SP->_slk == NULL)
- return(ERR);
- SP->_slk->hidden = FALSE;
- SP->_slk->dirty = TRUE;
- /* we have to repaint info line eventually */
- slk_paint_info(SP->_slk->win);
+ if (SP->_slk == NULL)
+ return (ERR);
+ SP->_slk->hidden = FALSE;
+ SP->_slk->dirty = TRUE;
+ /* we have to repaint info line eventually */
+ slk_paint_info(SP->_slk->win);
- returnCode(slk_refresh());
+ returnCode(slk_refresh());
}
diff --git a/contrib/ncurses/ncurses/base/lib_slkatr_set.c b/contrib/ncurses/ncurses/base/lib_slkatr_set.c
index 0695d186bb5d..5df314c6dca8 100644
--- a/contrib/ncurses/ncurses/base/lib_slkatr_set.c
+++ b/contrib/ncurses/ncurses/base/lib_slkatr_set.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -37,20 +37,19 @@
*/
#include <curses.priv.h>
-MODULE_ID("$Id: lib_slkatr_set.c,v 1.3 1999/05/16 17:13:59 juergen Exp $")
+MODULE_ID("$Id: lib_slkatr_set.c,v 1.5 2000/12/10 02:43:27 tom Exp $")
-int
-slk_attr_set(const attr_t attr, short color_pair_number, void* opts)
+NCURSES_EXPORT(int)
+slk_attr_set
+(const attr_t attr, short color_pair_number, void *opts)
{
- T((T_CALLED("slk_attr_set(%s,%d)"), _traceattr(attr), color_pair_number));
+ T((T_CALLED("slk_attr_set(%s,%d)"), _traceattr(attr), color_pair_number));
- if (SP!=0 && SP->_slk!=0 && !opts &&
- color_pair_number>=0 && color_pair_number<COLOR_PAIRS)
- {
- SP->_slk->attr = attr;
- toggle_attr_on(SP->_slk->attr,COLOR_PAIR(color_pair_number));
- returnCode(OK);
- }
- else
- returnCode(ERR);
+ if (SP != 0 && SP->_slk != 0 && !opts &&
+ color_pair_number >= 0 && color_pair_number < COLOR_PAIRS) {
+ SP->_slk->attr = attr;
+ toggle_attr_on(SP->_slk->attr, COLOR_PAIR(color_pair_number));
+ returnCode(OK);
+ } else
+ returnCode(ERR);
}
diff --git a/contrib/ncurses/ncurses/base/lib_slkatrof.c b/contrib/ncurses/ncurses/base/lib_slkatrof.c
index 5e4f5f5593a3..c271c342101a 100644
--- a/contrib/ncurses/ncurses/base/lib_slkatrof.c
+++ b/contrib/ncurses/ncurses/base/lib_slkatrof.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -38,18 +38,16 @@
*/
#include <curses.priv.h>
-MODULE_ID("$Id: lib_slkatrof.c,v 1.4 1998/03/11 19:26:07 juergen Exp $")
+MODULE_ID("$Id: lib_slkatrof.c,v 1.6 2000/12/10 02:43:27 tom Exp $")
-int
+NCURSES_EXPORT(int)
slk_attroff(const chtype attr)
{
- T((T_CALLED("slk_attroff(%s)"), _traceattr(attr)));
+ T((T_CALLED("slk_attroff(%s)"), _traceattr(attr)));
- if (SP!=0 && SP->_slk!=0)
- {
- toggle_attr_off(SP->_slk->attr,attr);
- returnCode(OK);
- }
- else
- returnCode(ERR);
+ if (SP != 0 && SP->_slk != 0) {
+ toggle_attr_off(SP->_slk->attr, attr);
+ returnCode(OK);
+ } else
+ returnCode(ERR);
}
diff --git a/contrib/ncurses/ncurses/base/lib_slkatron.c b/contrib/ncurses/ncurses/base/lib_slkatron.c
index a24886522cde..d174b0394926 100644
--- a/contrib/ncurses/ncurses/base/lib_slkatron.c
+++ b/contrib/ncurses/ncurses/base/lib_slkatron.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -38,18 +38,16 @@
*/
#include <curses.priv.h>
-MODULE_ID("$Id: lib_slkatron.c,v 1.4 1998/03/11 19:26:07 juergen Exp $")
+MODULE_ID("$Id: lib_slkatron.c,v 1.6 2000/12/10 02:43:27 tom Exp $")
-int
+NCURSES_EXPORT(int)
slk_attron(const chtype attr)
{
- T((T_CALLED("slk_attron(%s)"), _traceattr(attr)));
+ T((T_CALLED("slk_attron(%s)"), _traceattr(attr)));
- if (SP!=0 && SP->_slk!=0)
- {
- toggle_attr_on(SP->_slk->attr,attr);
- returnCode(OK);
- }
- else
- returnCode(ERR);
+ if (SP != 0 && SP->_slk != 0) {
+ toggle_attr_on(SP->_slk->attr, attr);
+ returnCode(OK);
+ } else
+ returnCode(ERR);
}
diff --git a/contrib/ncurses/ncurses/base/lib_slkatrset.c b/contrib/ncurses/ncurses/base/lib_slkatrset.c
index 391c7ffe8cb7..cda74cad42d0 100644
--- a/contrib/ncurses/ncurses/base/lib_slkatrset.c
+++ b/contrib/ncurses/ncurses/base/lib_slkatrset.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -38,18 +38,16 @@
*/
#include <curses.priv.h>
-MODULE_ID("$Id: lib_slkatrset.c,v 1.4 1998/03/11 19:26:01 juergen Exp $")
+MODULE_ID("$Id: lib_slkatrset.c,v 1.6 2000/12/10 02:43:27 tom Exp $")
-int
+NCURSES_EXPORT(int)
slk_attrset(const chtype attr)
{
- T((T_CALLED("slk_attrset(%s)"), _traceattr(attr)));
+ T((T_CALLED("slk_attrset(%s)"), _traceattr(attr)));
- if (SP!=0 && SP->_slk!=0)
- {
- SP->_slk->attr = attr;
- returnCode(OK);
- }
- else
- returnCode(ERR);
+ if (SP != 0 && SP->_slk != 0) {
+ SP->_slk->attr = attr;
+ returnCode(OK);
+ } else
+ returnCode(ERR);
}
diff --git a/contrib/ncurses/ncurses/base/lib_slkattr.c b/contrib/ncurses/ncurses/base/lib_slkattr.c
index a13240324e51..5044a08d727a 100644
--- a/contrib/ncurses/ncurses/base/lib_slkattr.c
+++ b/contrib/ncurses/ncurses/base/lib_slkattr.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -38,17 +38,15 @@
*/
#include <curses.priv.h>
-MODULE_ID("$Id: lib_slkattr.c,v 1.3 1998/02/11 12:13:56 tom Exp $")
+MODULE_ID("$Id: lib_slkattr.c,v 1.5 2000/12/10 02:43:27 tom Exp $")
-attr_t
+NCURSES_EXPORT(attr_t)
slk_attr(void)
{
- T((T_CALLED("slk_attr()")));
+ T((T_CALLED("slk_attr()")));
- if (SP!=0 && SP->_slk!=0)
- {
- returnAttr(SP->_slk->attr);
- }
- else
- returnAttr(0);
+ if (SP != 0 && SP->_slk != 0) {
+ returnAttr(SP->_slk->attr);
+ } else
+ returnAttr(0);
}
diff --git a/contrib/ncurses/ncurses/base/lib_slkclear.c b/contrib/ncurses/ncurses/base/lib_slkclear.c
index ac6e414beaa2..47e52456c204 100644
--- a/contrib/ncurses/ncurses/base/lib_slkclear.c
+++ b/contrib/ncurses/ncurses/base/lib_slkclear.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -38,25 +38,24 @@
*/
#include <curses.priv.h>
-MODULE_ID("$Id: lib_slkclear.c,v 1.4 1999/03/03 23:44:22 juergen Exp $")
+MODULE_ID("$Id: lib_slkclear.c,v 1.6 2000/12/10 02:43:27 tom Exp $")
-int
+NCURSES_EXPORT(int)
slk_clear(void)
{
- T((T_CALLED("slk_clear()")));
+ T((T_CALLED("slk_clear()")));
- if (SP == NULL || SP->_slk == NULL)
- returnCode(ERR);
- SP->_slk->hidden = TRUE;
- /* For simulated SLK's it's looks much more natural to
- inherit those attributes from the standard screen */
- SP->_slk->win->_bkgd = stdscr->_bkgd;
- SP->_slk->win->_attrs = stdscr->_attrs;
- if (SP->_slk->win == stdscr) {
- returnCode(OK);
- }
- else {
- werase(SP->_slk->win);
- returnCode(wrefresh(SP->_slk->win));
- }
+ if (SP == NULL || SP->_slk == NULL)
+ returnCode(ERR);
+ SP->_slk->hidden = TRUE;
+ /* For simulated SLK's it's looks much more natural to
+ inherit those attributes from the standard screen */
+ SP->_slk->win->_bkgd = stdscr->_bkgd;
+ SP->_slk->win->_attrs = stdscr->_attrs;
+ if (SP->_slk->win == stdscr) {
+ returnCode(OK);
+ } else {
+ werase(SP->_slk->win);
+ returnCode(wrefresh(SP->_slk->win));
+ }
}
diff --git a/contrib/ncurses/ncurses/base/lib_slkcolor.c b/contrib/ncurses/ncurses/base/lib_slkcolor.c
index 3728808f9b6c..3e878e0024b2 100644
--- a/contrib/ncurses/ncurses/base/lib_slkcolor.c
+++ b/contrib/ncurses/ncurses/base/lib_slkcolor.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -35,20 +35,18 @@
*/
#include <curses.priv.h>
-MODULE_ID("$Id: lib_slkcolor.c,v 1.5 1999/05/16 17:14:13 juergen Exp $")
+MODULE_ID("$Id: lib_slkcolor.c,v 1.7 2000/12/10 02:43:27 tom Exp $")
-int
+NCURSES_EXPORT(int)
slk_color(short color_pair_number)
{
- T((T_CALLED("slk_color(%d)"), color_pair_number));
+ T((T_CALLED("slk_color(%d)"), color_pair_number));
- if (SP!=0 && SP->_slk!=0 &&
- color_pair_number>=0 && color_pair_number<COLOR_PAIRS)
- {
- T(("... current %ld", (long) PAIR_NUMBER(SP->_slk->attr)));
- toggle_attr_on(SP->_slk->attr,COLOR_PAIR(color_pair_number));
- returnCode(OK);
- }
- else
- returnCode(ERR);
+ if (SP != 0 && SP->_slk != 0 &&
+ color_pair_number >= 0 && color_pair_number < COLOR_PAIRS) {
+ T(("... current %ld", (long) PAIR_NUMBER(SP->_slk->attr)));
+ toggle_attr_on(SP->_slk->attr, COLOR_PAIR(color_pair_number));
+ returnCode(OK);
+ } else
+ returnCode(ERR);
}
diff --git a/contrib/ncurses/ncurses/base/lib_slkinit.c b/contrib/ncurses/ncurses/base/lib_slkinit.c
index 708442604d91..f003b5f033f0 100644
--- a/contrib/ncurses/ncurses/base/lib_slkinit.c
+++ b/contrib/ncurses/ncurses/base/lib_slkinit.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -38,14 +38,14 @@
*/
#include <curses.priv.h>
-MODULE_ID("$Id: lib_slkinit.c,v 1.3 1998/02/11 12:13:56 tom Exp $")
+MODULE_ID("$Id: lib_slkinit.c,v 1.5 2000/12/10 02:43:27 tom Exp $")
-int
+NCURSES_EXPORT(int)
slk_init(int format)
{
- T((T_CALLED("slk_init(%d)"), format));
- if (format < 0 || format > 3)
- returnCode(ERR);
- _nc_slk_format = 1 + format;
- returnCode(OK);
+ T((T_CALLED("slk_init(%d)"), format));
+ if (format < 0 || format > 3)
+ returnCode(ERR);
+ _nc_slk_format = 1 + format;
+ returnCode(OK);
}
diff --git a/contrib/ncurses/ncurses/base/lib_slklab.c b/contrib/ncurses/ncurses/base/lib_slklab.c
index 03039ad696ca..0224e9b0c863 100644
--- a/contrib/ncurses/ncurses/base/lib_slklab.c
+++ b/contrib/ncurses/ncurses/base/lib_slklab.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -38,14 +38,14 @@
*/
#include <curses.priv.h>
-MODULE_ID("$Id: lib_slklab.c,v 1.4 1998/02/11 12:13:54 tom Exp $")
+MODULE_ID("$Id: lib_slklab.c,v 1.6 2000/12/10 02:43:27 tom Exp $")
-char*
+NCURSES_EXPORT(char *)
slk_label(int n)
{
- T((T_CALLED("slk_label(%d)"), n));
+ T((T_CALLED("slk_label(%d)"), n));
- if (SP == NULL || SP->_slk == NULL || n < 1 || n > SP->_slk->labcnt)
- returnPtr(0);
- returnPtr(SP->_slk->ent[n-1].text);
+ if (SP == NULL || SP->_slk == NULL || n < 1 || n > SP->_slk->labcnt)
+ returnPtr(0);
+ returnPtr(SP->_slk->ent[n - 1].text);
}
diff --git a/contrib/ncurses/ncurses/base/lib_slkrefr.c b/contrib/ncurses/ncurses/base/lib_slkrefr.c
index ee3c91dbee67..18e5b0c1c2f7 100644
--- a/contrib/ncurses/ncurses/base/lib_slkrefr.c
+++ b/contrib/ncurses/ncurses/base/lib_slkrefr.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -36,91 +36,85 @@
* Write SLK window to the (virtual) screen.
*/
#include <curses.priv.h>
-#include <term.h> /* num_labels, label_*, plab_norm */
+#include <term.h> /* num_labels, label_*, plab_norm */
-MODULE_ID("$Id: lib_slkrefr.c,v 1.8 1999/03/14 00:10:27 Alexander.V.Lukyanov Exp $")
+MODULE_ID("$Id: lib_slkrefr.c,v 1.10 2000/12/10 02:43:27 tom Exp $")
/*
* Write the soft labels to the soft-key window.
*/
static void
-slk_intern_refresh(SLK *slk)
+slk_intern_refresh(SLK * slk)
{
-int i;
-int fmt = SP->slk_format;
+ int i;
+ int fmt = SP->slk_format;
- for (i = 0; i < slk->labcnt; i++) {
- if (slk->dirty || slk->ent[i].dirty) {
- if (slk->ent[i].visible) {
- if (num_labels > 0 && SLK_STDFMT(fmt))
- {
- if (i < num_labels) {
- TPUTS_TRACE("plab_norm");
- putp(tparm(plab_norm, i+1, slk->ent[i].form_text));
- }
- }
- else
- {
- wmove(slk->win,SLK_LINES(fmt)-1,slk->ent[i].x);
- if (SP && SP->_slk)
- wattrset(slk->win,SP->_slk->attr);
- waddnstr(slk->win,slk->ent[i].form_text,
- MAX_SKEY_LEN(fmt));
- /* if we simulate SLK's, it's looking much more
- natural to use the current ATTRIBUTE also
- for the label window */
- wattrset(slk->win,stdscr->_attrs);
- }
- }
- slk->ent[i].dirty = FALSE;
+ for (i = 0; i < slk->labcnt; i++) {
+ if (slk->dirty || slk->ent[i].dirty) {
+ if (slk->ent[i].visible) {
+ if (num_labels > 0 && SLK_STDFMT(fmt)) {
+ if (i < num_labels) {
+ TPUTS_TRACE("plab_norm");
+ putp(tparm(plab_norm, i + 1, slk->ent[i].form_text));
+ }
+ } else {
+ wmove(slk->win, SLK_LINES(fmt) - 1, slk->ent[i].x);
+ if (SP && SP->_slk)
+ wattrset(slk->win, SP->_slk->attr);
+ waddnstr(slk->win, slk->ent[i].form_text,
+ MAX_SKEY_LEN(fmt));
+ /* if we simulate SLK's, it's looking much more
+ natural to use the current ATTRIBUTE also
+ for the label window */
+ wattrset(slk->win, stdscr->_attrs);
}
+ }
+ slk->ent[i].dirty = FALSE;
}
- slk->dirty = FALSE;
+ }
+ slk->dirty = FALSE;
- if (num_labels > 0) {
- if (slk->hidden)
- {
- TPUTS_TRACE("label_off");
- putp(label_off);
- }
- else
- {
- TPUTS_TRACE("label_on");
- putp(label_on);
- }
+ if (num_labels > 0) {
+ if (slk->hidden) {
+ TPUTS_TRACE("label_off");
+ putp(label_off);
+ } else {
+ TPUTS_TRACE("label_on");
+ putp(label_on);
}
+ }
}
/*
* Refresh the soft labels.
*/
-int
+NCURSES_EXPORT(int)
slk_noutrefresh(void)
{
- T((T_CALLED("slk_noutrefresh()")));
+ T((T_CALLED("slk_noutrefresh()")));
- if (SP == NULL || SP->_slk == NULL)
- returnCode(ERR);
- if (SP->_slk->hidden)
- returnCode(OK);
- slk_intern_refresh(SP->_slk);
+ if (SP == NULL || SP->_slk == NULL)
+ returnCode(ERR);
+ if (SP->_slk->hidden)
+ returnCode(OK);
+ slk_intern_refresh(SP->_slk);
- returnCode(wnoutrefresh(SP->_slk->win));
+ returnCode(wnoutrefresh(SP->_slk->win));
}
/*
* Refresh the soft labels.
*/
-int
+NCURSES_EXPORT(int)
slk_refresh(void)
{
- T((T_CALLED("slk_refresh()")));
+ T((T_CALLED("slk_refresh()")));
- if (SP == NULL || SP->_slk == NULL)
- returnCode(ERR);
- if (SP->_slk->hidden)
- returnCode(OK);
- slk_intern_refresh(SP->_slk);
+ if (SP == NULL || SP->_slk == NULL)
+ returnCode(ERR);
+ if (SP->_slk->hidden)
+ returnCode(OK);
+ slk_intern_refresh(SP->_slk);
- returnCode(wrefresh(SP->_slk->win));
+ returnCode(wrefresh(SP->_slk->win));
}
diff --git a/contrib/ncurses/ncurses/base/lib_slkset.c b/contrib/ncurses/ncurses/base/lib_slkset.c
index 27471add77fa..c3fb1a12cd16 100644
--- a/contrib/ncurses/ncurses/base/lib_slkset.c
+++ b/contrib/ncurses/ncurses/base/lib_slkset.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -38,58 +38,60 @@
#include <curses.priv.h>
#include <ctype.h>
-MODULE_ID("$Id: lib_slkset.c,v 1.3 1998/02/11 12:13:56 tom Exp $")
+MODULE_ID("$Id: lib_slkset.c,v 1.6 2000/12/10 02:43:27 tom Exp $")
-int
+NCURSES_EXPORT(int)
slk_set(int i, const char *astr, int format)
{
-SLK *slk = SP->_slk;
-size_t len;
-const char *str = astr;
-const char *p;
+ SLK *slk = SP->_slk;
+ size_t len;
+ const char *str = astr;
+ const char *p;
- T((T_CALLED("slk_set(%d, \"%s\", %d)"), i, str, format));
+ T((T_CALLED("slk_set(%d, \"%s\", %d)"), i, str, format));
- if (slk == NULL || i < 1 || i > slk->labcnt || format < 0 || format > 2)
- returnCode(ERR);
- if (str == NULL)
- str = "";
+ if (slk == NULL || i < 1 || i > slk->labcnt || format < 0 || format > 2)
+ returnCode(ERR);
+ if (str == NULL)
+ str = "";
- while (isspace(*str)) str++; /* skip over leading spaces */
- p = str;
- while (isprint(*p)) p++; /* The first non-print stops */
+ while (isspace(CharOf(*str)))
+ str++; /* skip over leading spaces */
+ p = str;
+ while (isprint(CharOf(*p)))
+ p++; /* The first non-print stops */
- --i; /* Adjust numbering of labels */
+ --i; /* Adjust numbering of labels */
- len = (size_t)(p - str);
- if (len > (unsigned)slk->maxlen)
- len = slk->maxlen;
- if (len==0)
- slk->ent[i].text[0] = 0;
- else
- (void) strncpy(slk->ent[i].text, str, len);
- memset(slk->ent[i].form_text,' ', (unsigned)slk->maxlen);
- slk->ent[i].text[slk->maxlen] = 0;
- /* len = strlen(slk->ent[i].text); */
+ len = (size_t) (p - str);
+ if (len > (unsigned) slk->maxlen)
+ len = slk->maxlen;
+ if (len == 0)
+ slk->ent[i].text[0] = 0;
+ else
+ (void) strncpy(slk->ent[i].text, str, len);
+ memset(slk->ent[i].form_text, ' ', (unsigned) slk->maxlen);
+ slk->ent[i].text[slk->maxlen] = 0;
+ /* len = strlen(slk->ent[i].text); */
- switch(format) {
- case 0: /* left-justified */
- memcpy(slk->ent[i].form_text,
- slk->ent[i].text,
- len);
- break;
- case 1: /* centered */
- memcpy(slk->ent[i].form_text+(slk->maxlen - len)/2,
- slk->ent[i].text,
- len);
- break;
- case 2: /* right-justified */
- memcpy(slk->ent[i].form_text+ slk->maxlen - len,
- slk->ent[i].text,
- len);
- break;
- }
- slk->ent[i].form_text[slk->maxlen] = 0;
- slk->ent[i].dirty = TRUE;
- returnCode(OK);
+ switch (format) {
+ case 0: /* left-justified */
+ memcpy(slk->ent[i].form_text,
+ slk->ent[i].text,
+ len);
+ break;
+ case 1: /* centered */
+ memcpy(slk->ent[i].form_text + (slk->maxlen - len) / 2,
+ slk->ent[i].text,
+ len);
+ break;
+ case 2: /* right-justified */
+ memcpy(slk->ent[i].form_text + slk->maxlen - len,
+ slk->ent[i].text,
+ len);
+ break;
+ }
+ slk->ent[i].form_text[slk->maxlen] = 0;
+ slk->ent[i].dirty = TRUE;
+ returnCode(OK);
}
diff --git a/contrib/ncurses/ncurses/base/lib_slktouch.c b/contrib/ncurses/ncurses/base/lib_slktouch.c
index c2829aed0e18..5eb5df385b82 100644
--- a/contrib/ncurses/ncurses/base/lib_slktouch.c
+++ b/contrib/ncurses/ncurses/base/lib_slktouch.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -38,16 +38,16 @@
*/
#include <curses.priv.h>
-MODULE_ID("$Id: lib_slktouch.c,v 1.3 1998/02/11 12:13:56 tom Exp $")
+MODULE_ID("$Id: lib_slktouch.c,v 1.5 2000/12/10 02:43:27 tom Exp $")
-int
+NCURSES_EXPORT(int)
slk_touch(void)
{
- T((T_CALLED("slk_touch()")));
+ T((T_CALLED("slk_touch()")));
- if (SP == NULL || SP->_slk == NULL)
- returnCode(ERR);
- SP->_slk->dirty = TRUE;
+ if (SP == NULL || SP->_slk == NULL)
+ returnCode(ERR);
+ SP->_slk->dirty = TRUE;
- returnCode(OK);
+ returnCode(OK);
}
diff --git a/contrib/ncurses/ncurses/base/lib_touch.c b/contrib/ncurses/ncurses/base/lib_touch.c
index 7ce863d06f10..2ac21f2e0d1f 100644
--- a/contrib/ncurses/ncurses/base/lib_touch.c
+++ b/contrib/ncurses/ncurses/base/lib_touch.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -43,45 +43,49 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_touch.c,v 1.6 1998/04/11 22:55:02 tom Exp $")
+MODULE_ID("$Id: lib_touch.c,v 1.9 2000/12/10 02:43:27 tom Exp $")
-bool is_linetouched(WINDOW *win, int line)
+NCURSES_EXPORT(bool)
+is_linetouched(WINDOW *win, int line)
{
- T((T_CALLED("is_linetouched(%p,%d)"), win, line));
+ T((T_CALLED("is_linetouched(%p,%d)"), win, line));
- /* XSI doesn't define any error */
- if (!win || (line > win->_maxy) || (line < 0))
- returnCode(ERR);
+ /* XSI doesn't define any error */
+ if (!win || (line > win->_maxy) || (line < 0))
+ returnCode((bool) ERR);
- returnCode(win->_line[line].firstchar != _NOCHANGE ? TRUE : FALSE);
+ returnCode(win->_line[line].firstchar != _NOCHANGE ? TRUE : FALSE);
}
-bool is_wintouched(WINDOW *win)
+NCURSES_EXPORT(bool)
+is_wintouched(WINDOW *win)
{
-int i;
+ int i;
- T((T_CALLED("is_wintouched(%p)"), win));
+ T((T_CALLED("is_wintouched(%p)"), win));
- if (win)
- for (i = 0; i <= win->_maxy; i++)
- if (win->_line[i].firstchar != _NOCHANGE)
- returnCode(TRUE);
- returnCode(FALSE);
+ if (win)
+ for (i = 0; i <= win->_maxy; i++)
+ if (win->_line[i].firstchar != _NOCHANGE)
+ returnCode(TRUE);
+ returnCode(FALSE);
}
-int wtouchln(WINDOW *win, int y, int n, int changed)
+NCURSES_EXPORT(int)
+wtouchln(WINDOW *win, int y, int n, int changed)
{
-int i;
+ int i;
- T((T_CALLED("wtouchln(%p,%d,%d,%d)"), win, y, n, changed));
+ T((T_CALLED("wtouchln(%p,%d,%d,%d)"), win, y, n, changed));
- if (!win || (n<0) || (y<0) || (y>win->_maxy))
- returnCode(ERR);
+ if (!win || (n < 0) || (y < 0) || (y > win->_maxy))
+ returnCode(ERR);
- for (i = y; i < y+n; i++) {
- if (i>win->_maxy) break;
- win->_line[i].firstchar = changed ? 0 : _NOCHANGE;
- win->_line[i].lastchar = changed ? win->_maxx : _NOCHANGE;
- }
- returnCode(OK);
+ for (i = y; i < y + n; i++) {
+ if (i > win->_maxy)
+ break;
+ win->_line[i].firstchar = changed ? 0 : _NOCHANGE;
+ win->_line[i].lastchar = changed ? win->_maxx : _NOCHANGE;
+ }
+ returnCode(OK);
}
diff --git a/contrib/ncurses/ncurses/base/lib_ungetch.c b/contrib/ncurses/ncurses/base/lib_ungetch.c
index 5fdfb47d490f..d28d3de8bff8 100644
--- a/contrib/ncurses/ncurses/base/lib_ungetch.c
+++ b/contrib/ncurses/ncurses/base/lib_ungetch.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -40,35 +40,38 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_ungetch.c,v 1.2 1998/02/11 12:13:56 tom Exp $")
+MODULE_ID("$Id: lib_ungetch.c,v 1.4 2000/12/10 02:43:27 tom Exp $")
#include <fifo_defs.h>
#ifdef TRACE
-void _nc_fifo_dump(void)
+NCURSES_EXPORT(void)
+_nc_fifo_dump(void)
{
-int i;
- T(("head = %d, tail = %d, peek = %d", head, tail, peek));
- for (i = 0; i < 10; i++)
- T(("char %d = %s", i, _trace_key(SP->_fifo[i])));
+ int i;
+ T(("head = %d, tail = %d, peek = %d", head, tail, peek));
+ for (i = 0; i < 10; i++)
+ T(("char %d = %s", i, _trace_key(SP->_fifo[i])));
}
#endif /* TRACE */
-int ungetch(int ch)
+NCURSES_EXPORT(int)
+ungetch(int ch)
{
- if (tail == -1)
- return ERR;
- if (head == -1) {
- head = 0;
- t_inc()
- peek = tail; /* no raw keys */
- } else
- h_dec();
+ if (tail == -1)
+ return ERR;
+ if (head == -1) {
+ head = 0;
+ t_inc()
+ peek = tail; /* no raw keys */
+ } else
+ h_dec();
- SP->_fifo[head] = ch;
- T(("ungetch %#x ok", ch));
+ SP->_fifo[head] = ch;
+ T(("ungetch %#x ok", ch));
#ifdef TRACE
- if (_nc_tracing & TRACE_IEVENT) _nc_fifo_dump();
+ if (_nc_tracing & TRACE_IEVENT)
+ _nc_fifo_dump();
#endif
- return OK;
+ return OK;
}
diff --git a/contrib/ncurses/ncurses/base/lib_vline.c b/contrib/ncurses/ncurses/base/lib_vline.c
index e48b864f497d..0174baabbb88 100644
--- a/contrib/ncurses/ncurses/base/lib_vline.c
+++ b/contrib/ncurses/ncurses/base/lib_vline.c
@@ -40,9 +40,9 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_vline.c,v 1.5 2000/04/29 21:14:11 tom Exp $")
+MODULE_ID("$Id: lib_vline.c,v 1.7 2000/12/10 02:43:28 tom Exp $")
-int
+NCURSES_EXPORT(int)
wvline(WINDOW *win, chtype ch, int n)
{
int code = ERR;
diff --git a/contrib/ncurses/ncurses/base/lib_wattroff.c b/contrib/ncurses/ncurses/base/lib_wattroff.c
index a6c9f0f1804e..fa29b1a759a6 100644
--- a/contrib/ncurses/ncurses/base/lib_wattroff.c
+++ b/contrib/ncurses/ncurses/base/lib_wattroff.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -41,15 +41,17 @@
#include <curses.priv.h>
#include <ctype.h>
-MODULE_ID("$Id: lib_wattroff.c,v 1.4 1998/05/10 12:02:11 tom Exp $")
+MODULE_ID("$Id: lib_wattroff.c,v 1.6 2000/12/10 02:43:28 tom Exp $")
-int wattr_off(WINDOW *win, NCURSES_CONST attr_t at, void *opts GCC_UNUSED)
+NCURSES_EXPORT(int)
+wattr_off
+(WINDOW *win, NCURSES_CONST attr_t at, void *opts GCC_UNUSED)
{
- T((T_CALLED("wattr_off(%p,%s)"), win, _traceattr(at)));
- if (win) {
- T(("... current %s", _traceattr(win->_attrs)));
- toggle_attr_off(win->_attrs,at);
- returnCode(OK);
- } else
- returnCode(ERR);
+ T((T_CALLED("wattr_off(%p,%s)"), win, _traceattr(at)));
+ if (win) {
+ T(("... current %s", _traceattr(win->_attrs)));
+ toggle_attr_off(win->_attrs, at);
+ returnCode(OK);
+ } else
+ returnCode(ERR);
}
diff --git a/contrib/ncurses/ncurses/base/lib_wattron.c b/contrib/ncurses/ncurses/base/lib_wattron.c
index a951c576fa44..7bbc555e2c52 100644
--- a/contrib/ncurses/ncurses/base/lib_wattron.c
+++ b/contrib/ncurses/ncurses/base/lib_wattron.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -41,15 +41,17 @@
#include <curses.priv.h>
#include <ctype.h>
-MODULE_ID("$Id: lib_wattron.c,v 1.4 1998/05/10 12:02:28 tom Exp $")
+MODULE_ID("$Id: lib_wattron.c,v 1.6 2000/12/10 02:43:28 tom Exp $")
-int wattr_on(WINDOW *win, NCURSES_CONST attr_t at, void *opts GCC_UNUSED)
+NCURSES_EXPORT(int)
+wattr_on
+(WINDOW *win, NCURSES_CONST attr_t at, void *opts GCC_UNUSED)
{
- T((T_CALLED("wattr_on(%p,%s)"), win, _traceattr(at)));
- if (win) {
- T(("... current %s", _traceattr(win->_attrs)));
- toggle_attr_on(win->_attrs,at);
- returnCode(OK);
- } else
- returnCode(ERR);
+ T((T_CALLED("wattr_on(%p,%s)"), win, _traceattr(at)));
+ if (win) {
+ T(("... current %s", _traceattr(win->_attrs)));
+ toggle_attr_on(win->_attrs, at);
+ returnCode(OK);
+ } else
+ returnCode(ERR);
}
diff --git a/contrib/ncurses/ncurses/base/lib_winch.c b/contrib/ncurses/ncurses/base/lib_winch.c
index 765220799a50..236b11a6d7c7 100644
--- a/contrib/ncurses/ncurses/base/lib_winch.c
+++ b/contrib/ncurses/ncurses/base/lib_winch.c
@@ -39,9 +39,9 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_winch.c,v 1.2 2000/07/29 16:41:44 tom Exp $")
+MODULE_ID("$Id: lib_winch.c,v 1.4 2000/12/10 02:43:28 tom Exp $")
-chtype
+NCURSES_EXPORT(chtype)
winch(WINDOW *win)
{
T((T_CALLED("winch(%p)"), win));
diff --git a/contrib/ncurses/ncurses/base/lib_window.c b/contrib/ncurses/ncurses/base/lib_window.c
index 5eae9b1a57fb..9cef79c71650 100644
--- a/contrib/ncurses/ncurses/base/lib_window.c
+++ b/contrib/ncurses/ncurses/base/lib_window.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -39,183 +39,185 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_window.c,v 1.13 1998/06/28 00:10:59 tom Exp $")
+MODULE_ID("$Id: lib_window.c,v 1.15 2000/12/10 02:43:28 tom Exp $")
-void _nc_synchook(WINDOW *win)
+NCURSES_EXPORT(void)
+_nc_synchook(WINDOW *win)
/* hook to be called after each window change */
{
- if (win->_immed) wrefresh(win);
- if (win->_sync) wsyncup(win);
+ if (win->_immed)
+ wrefresh(win);
+ if (win->_sync)
+ wsyncup(win);
}
-int mvderwin(WINDOW *win, int y, int x)
+NCURSES_EXPORT(int)
+mvderwin(WINDOW *win, int y, int x)
/* move a derived window */
{
- WINDOW *orig;
- int i;
-
- T((T_CALLED("mvderwin(%p,%d,%d)"), win, y, x));
-
- if (win && (orig = win->_parent))
- {
- if (win->_parx==x && win->_pary==y)
- returnCode(OK);
- if (x<0 || y<0)
+ WINDOW *orig;
+ int i;
+
+ T((T_CALLED("mvderwin(%p,%d,%d)"), win, y, x));
+
+ if (win && (orig = win->_parent)) {
+ if (win->_parx == x && win->_pary == y)
+ returnCode(OK);
+ if (x < 0 || y < 0)
+ returnCode(ERR);
+ if ((x + getmaxx(win) > getmaxx(orig)) ||
+ (y + getmaxy(win) > getmaxy(orig)))
+ returnCode(ERR);
+ } else
returnCode(ERR);
- if ( (x+getmaxx(win) > getmaxx(orig)) ||
- (y+getmaxy(win) > getmaxy(orig)) )
- returnCode(ERR);
- }
- else
- returnCode(ERR);
- wsyncup(win);
- win->_parx = x;
- win->_pary = y;
- for(i=0;i<getmaxy(win);i++)
- win->_line[i].text = &(orig->_line[y++].text[x]);
- returnCode(OK);
+ wsyncup(win);
+ win->_parx = x;
+ win->_pary = y;
+ for (i = 0; i < getmaxy(win); i++)
+ win->_line[i].text = &(orig->_line[y++].text[x]);
+ returnCode(OK);
}
-int syncok(WINDOW *win, bool bf)
+NCURSES_EXPORT(int)
+syncok(WINDOW *win, bool bf)
/* enable/disable automatic wsyncup() on each change to window */
{
- T((T_CALLED("syncok(%p,%d)"), win, bf));
+ T((T_CALLED("syncok(%p,%d)"), win, bf));
- if (win) {
- win->_sync = bf;
- returnCode(OK);
- } else
- returnCode(ERR);
+ if (win) {
+ win->_sync = bf;
+ returnCode(OK);
+ } else
+ returnCode(ERR);
}
-void wsyncup(WINDOW *win)
+NCURSES_EXPORT(void)
+wsyncup(WINDOW *win)
/* mark changed every cell in win's ancestors that is changed in win */
/* Rewritten by J. Pfeifer, 1-Apr-96 (don't even think that...) */
{
- WINDOW *wp;
-
- if (win && win->_parent)
- for (wp = win; wp->_parent; wp = wp->_parent)
- {
- int y;
- WINDOW *pp = wp->_parent;
-
- assert((wp->_pary <= pp->_maxy) &&
- ((wp->_pary+wp->_maxy) <= pp->_maxy));
-
- for (y = 0; y <= wp->_maxy; y++)
- {
- int left = wp->_line[y].firstchar;
- if (left >= 0) /* line is touched */
- {
- struct ldat *line = &(pp->_line[wp->_pary + y]);
- /* left & right character in parent window coordinates */
- int right = wp->_line[y].lastchar + wp->_parx;
- left += wp->_parx;
-
- CHANGED_RANGE(line, left, right);
- }
- }
- }
+ WINDOW *wp;
+
+ if (win && win->_parent)
+ for (wp = win; wp->_parent; wp = wp->_parent) {
+ int y;
+ WINDOW *pp = wp->_parent;
+
+ assert((wp->_pary <= pp->_maxy) &&
+ ((wp->_pary + wp->_maxy) <= pp->_maxy));
+
+ for (y = 0; y <= wp->_maxy; y++) {
+ int left = wp->_line[y].firstchar;
+ if (left >= 0) { /* line is touched */
+ struct ldat *line = &(pp->_line[wp->_pary + y]);
+ /* left & right character in parent window coordinates */
+ int right = wp->_line[y].lastchar + wp->_parx;
+ left += wp->_parx;
+
+ CHANGED_RANGE(line, left, right);
+ }
+ }
+ }
}
-void wsyncdown(WINDOW *win)
+NCURSES_EXPORT(void)
+wsyncdown(WINDOW *win)
/* mark changed every cell in win that is changed in any of its ancestors */
/* Rewritten by J. Pfeifer, 1-Apr-96 (don't even think that...) */
{
- if (win && win->_parent)
- {
- WINDOW *pp = win->_parent;
- int y;
-
- /* This recursion guarantees, that the changes are propagated down-
- wards from the root to our direct parent. */
- wsyncdown(pp);
-
- /* and now we only have to propagate the changes from our direct
- parent, if there are any. */
- assert((win->_pary <= pp->_maxy) &&
- ((win->_pary + win->_maxy) <= pp->_maxy));
-
- for (y = 0; y <= win->_maxy; y++)
- {
- if (pp->_line[win->_pary + y].firstchar >= 0) /* parent changed */
- {
- struct ldat *line = &(win->_line[y]);
- /* left and right character in child coordinates */
- int left = pp->_line[win->_pary + y].firstchar - win->_parx;
- int right = pp->_line[win->_pary + y].lastchar - win->_parx;
- /* The change maybe outside the childs range */
- if (left<0)
- left = 0;
- if (right > win->_maxx)
- right = win->_maxx;
- CHANGED_RANGE(line, left, right);
+ if (win && win->_parent) {
+ WINDOW *pp = win->_parent;
+ int y;
+
+ /* This recursion guarantees, that the changes are propagated down-
+ wards from the root to our direct parent. */
+ wsyncdown(pp);
+
+ /* and now we only have to propagate the changes from our direct
+ parent, if there are any. */
+ assert((win->_pary <= pp->_maxy) &&
+ ((win->_pary + win->_maxy) <= pp->_maxy));
+
+ for (y = 0; y <= win->_maxy; y++) {
+ if (pp->_line[win->_pary + y].firstchar >= 0) { /* parent changed */
+ struct ldat *line = &(win->_line[y]);
+ /* left and right character in child coordinates */
+ int left = pp->_line[win->_pary + y].firstchar - win->_parx;
+ int right = pp->_line[win->_pary + y].lastchar - win->_parx;
+ /* The change maybe outside the childs range */
+ if (left < 0)
+ left = 0;
+ if (right > win->_maxx)
+ right = win->_maxx;
+ CHANGED_RANGE(line, left, right);
}
}
}
}
-void wcursyncup(WINDOW *win)
+NCURSES_EXPORT(void)
+wcursyncup(WINDOW *win)
/* sync the cursor in all derived windows to its value in the base window */
{
- WINDOW *wp;
- for( wp = win; wp && wp->_parent; wp = wp->_parent ) {
- wmove( wp->_parent, wp->_pary + wp->_cury, wp->_parx + wp->_curx );
- }
+ WINDOW *wp;
+ for (wp = win; wp && wp->_parent; wp = wp->_parent) {
+ wmove(wp->_parent, wp->_pary + wp->_cury, wp->_parx + wp->_curx);
+ }
}
-WINDOW *dupwin(WINDOW *win)
+NCURSES_EXPORT(WINDOW *)
+dupwin(WINDOW *win)
/* make an exact duplicate of the given window */
{
-WINDOW *nwin;
-size_t linesize;
-int i;
-
- T((T_CALLED("dupwin(%p)"), win));
-
- if ((win==NULL) ||
- ((nwin = newwin(win->_maxy + 1, win->_maxx + 1, win->_begy, win->_begx)) == NULL))
- returnWin(0);
-
- nwin->_curx = win->_curx;
- nwin->_cury = win->_cury;
- nwin->_maxy = win->_maxy;
- nwin->_maxx = win->_maxx;
- nwin->_begy = win->_begy;
- nwin->_begx = win->_begx;
- nwin->_yoffset = win->_yoffset;
-
- nwin->_flags = win->_flags & ~_SUBWIN;
- /* Due to the use of newwin(), the clone is not a subwindow.
- * The text is really copied into the clone.
- */
-
- nwin->_attrs = win->_attrs;
- nwin->_bkgd = win->_bkgd;
-
- nwin->_clear = win->_clear;
- nwin->_scroll = win->_scroll;
- nwin->_leaveok = win->_leaveok;
- nwin->_use_keypad = win->_use_keypad;
- nwin->_delay = win->_delay;
- nwin->_immed = win->_immed;
- nwin->_sync = win->_sync;
-
- nwin->_parx = 0;
- nwin->_pary = 0;
- nwin->_parent = (WINDOW*)0;
- /* See above: the clone isn't a subwindow! */
-
- nwin->_regtop = win->_regtop;
- nwin->_regbottom = win->_regbottom;
-
- linesize = (win->_maxx + 1) * sizeof(chtype);
- for (i = 0; i <= nwin->_maxy; i++) {
- memcpy(nwin->_line[i].text, win->_line[i].text, linesize);
- nwin->_line[i].firstchar = win->_line[i].firstchar;
- nwin->_line[i].lastchar = win->_line[i].lastchar;
- }
+ WINDOW *nwin;
+ size_t linesize;
+ int i;
+
+ T((T_CALLED("dupwin(%p)"), win));
+
+ if ((win == NULL) ||
+ ((nwin = newwin(win->_maxy + 1, win->_maxx + 1, win->_begy,
+ win->_begx)) == NULL))
+ returnWin(0);
+
+ nwin->_curx = win->_curx;
+ nwin->_cury = win->_cury;
+ nwin->_maxy = win->_maxy;
+ nwin->_maxx = win->_maxx;
+ nwin->_begy = win->_begy;
+ nwin->_begx = win->_begx;
+ nwin->_yoffset = win->_yoffset;
+
+ nwin->_flags = win->_flags & ~_SUBWIN;
+ /* Due to the use of newwin(), the clone is not a subwindow.
+ * The text is really copied into the clone.
+ */
+
+ nwin->_attrs = win->_attrs;
+ nwin->_bkgd = win->_bkgd;
+
+ nwin->_clear = win->_clear;
+ nwin->_scroll = win->_scroll;
+ nwin->_leaveok = win->_leaveok;
+ nwin->_use_keypad = win->_use_keypad;
+ nwin->_delay = win->_delay;
+ nwin->_immed = win->_immed;
+ nwin->_sync = win->_sync;
+
+ nwin->_parx = 0;
+ nwin->_pary = 0;
+ nwin->_parent = (WINDOW *) 0;
+ /* See above: the clone isn't a subwindow! */
+
+ nwin->_regtop = win->_regtop;
+ nwin->_regbottom = win->_regbottom;
+
+ linesize = (win->_maxx + 1) * sizeof(chtype);
+ for (i = 0; i <= nwin->_maxy; i++) {
+ memcpy(nwin->_line[i].text, win->_line[i].text, linesize);
+ nwin->_line[i].firstchar = win->_line[i].firstchar;
+ nwin->_line[i].lastchar = win->_line[i].lastchar;
+ }
- returnWin(nwin);
+ returnWin(nwin);
}
diff --git a/contrib/ncurses/ncurses/base/memmove.c b/contrib/ncurses/ncurses/base/memmove.c
index 55a410632f98..4fafc4cda9d8 100644
--- a/contrib/ncurses/ncurses/base/memmove.c
+++ b/contrib/ncurses/ncurses/base/memmove.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -28,7 +28,7 @@
#include <curses.priv.h>
-MODULE_ID("$Id: memmove.c,v 1.2 1999/02/27 19:55:57 tom Exp $")
+MODULE_ID("$Id: memmove.c,v 1.4 2000/12/10 02:43:28 tom Exp $")
/****************************************************************************
* Author: Thomas E. Dickey <dickey@clark.net> 1998 *
@@ -37,27 +37,33 @@ MODULE_ID("$Id: memmove.c,v 1.2 1999/02/27 19:55:57 tom Exp $")
#if USE_MY_MEMMOVE
#define DST ((char *)s1)
#define SRC ((const char *)s2)
-void * _nc_memmove(void * s1, const void * s2, size_t n)
+NCURSES_EXPORT(void *)
+_nc_memmove(void *s1, const void *s2, size_t n)
{
- if (n != 0) {
- if ((DST+n > SRC) && (SRC+n > DST)) {
- static char *bfr;
- static size_t length;
- register size_t j;
- if (length < n) {
- length = (n * 3) / 2;
- bfr = typeRealloc(char,length,bfr);
- }
- for (j = 0; j < n; j++)
- bfr[j] = SRC[j];
- SRC = bfr;
- }
- while (n-- != 0)
- DST[n] = SRC[n];
+ if (n != 0) {
+ if ((DST + n > SRC) && (SRC + n > DST)) {
+ static char *bfr;
+ static size_t length;
+ register size_t j;
+ if (length < n) {
+ length = (n * 3) / 2;
+ bfr = typeRealloc(char, length, bfr);
+ }
+ for (j = 0; j < n; j++)
+ bfr[j] = SRC[j];
+ SRC = bfr;
}
- return s1;
+ while (n-- != 0)
+ DST[n] = SRC[n];
+ }
+ return s1;
}
#else
-extern void _nc_memmove(void); /* quiet's gcc warning */
-void _nc_memmove(void) { } /* nonempty for strict ANSI compilers */
+extern
+NCURSES_EXPORT(void)
+_nc_memmove(void); /* quiet's gcc warning */
+NCURSES_EXPORT(void)
+_nc_memmove(void)
+{
+} /* nonempty for strict ANSI compilers */
#endif /* USE_MY_MEMMOVE */
diff --git a/contrib/ncurses/ncurses/base/nc_panel.c b/contrib/ncurses/ncurses/base/nc_panel.c
index 536aab385dfd..59bfbbe86ef6 100644
--- a/contrib/ncurses/ncurses/base/nc_panel.c
+++ b/contrib/ncurses/ncurses/base/nc_panel.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -32,10 +32,10 @@
#include <curses.priv.h>
-MODULE_ID("$Id: nc_panel.c,v 1.2 1998/02/11 12:13:56 tom Exp $")
+MODULE_ID("$Id: nc_panel.c,v 1.4 2000/12/10 02:43:28 tom Exp $")
-struct panelhook*
+NCURSES_EXPORT(struct panelhook *)
_nc_panelhook(void)
{
- return (SP ? &(SP->_panelHook) : NULL);
+ return (SP ? &(SP->_panelHook) : NULL);
}
diff --git a/contrib/ncurses/ncurses/base/resizeterm.c b/contrib/ncurses/ncurses/base/resizeterm.c
index 860355024cc3..303aa5e5be49 100644
--- a/contrib/ncurses/ncurses/base/resizeterm.c
+++ b/contrib/ncurses/ncurses/base/resizeterm.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -41,7 +41,7 @@
#include <curses.priv.h>
#include <term.h>
-MODULE_ID("$Id: resizeterm.c,v 1.7 1998/09/19 19:27:43 Alexander.V.Lukyanov Exp $")
+MODULE_ID("$Id: resizeterm.c,v 1.9 2000/12/10 02:43:28 tom Exp $")
/*
* This function reallocates NCURSES window structures. It is invoked in
@@ -51,71 +51,74 @@ MODULE_ID("$Id: resizeterm.c,v 1.7 1998/09/19 19:27:43 Alexander.V.Lukyanov Exp
* Because this performs memory allocation, it should not (in general) be
* invoked directly from the signal handler.
*/
-int
+NCURSES_EXPORT(int)
resizeterm(int ToLines, int ToCols)
{
- int stolen = screen_lines - SP->_lines_avail;
- int bottom = screen_lines + SP->_topstolen - stolen;
+ int stolen = screen_lines - SP->_lines_avail;
+ int bottom = screen_lines + SP->_topstolen - stolen;
- T((T_CALLED("resizeterm(%d,%d) old(%d,%d)"),
- ToLines, ToCols,
- screen_lines, screen_columns));
+ T((T_CALLED("resizeterm(%d,%d) old(%d,%d)"),
+ ToLines, ToCols,
+ screen_lines, screen_columns));
- SP->_sig_winch = FALSE;
+ SP->_sig_winch = FALSE;
- if (ToLines != screen_lines
- || ToCols != screen_columns) {
- WINDOWLIST *wp;
+ if (ToLines != screen_lines
+ || ToCols != screen_columns) {
+ WINDOWLIST *wp;
#if USE_SIGWINCH
- ungetch(KEY_RESIZE); /* so application can know this */
- clearok(curscr, TRUE); /* screen contents are unknown */
+ ungetch(KEY_RESIZE); /* so application can know this */
+ clearok(curscr, TRUE); /* screen contents are unknown */
#endif
- for (wp = _nc_windows; wp != 0; wp = wp->next) {
- WINDOW *win = wp->win;
- int myLines = win->_maxy + 1;
- int myCols = win->_maxx + 1;
-
- /* pads aren't treated this way */
- if (win->_flags & _ISPAD)
- continue;
-
- if (win->_begy >= bottom) {
- win->_begy += (ToLines - screen_lines);
- } else {
- if (myLines == screen_lines - stolen
- && ToLines != screen_lines)
- myLines = ToLines - stolen;
- else
- if (myLines == screen_lines
- && ToLines != screen_lines)
- myLines = ToLines;
- }
-
- if (myCols == screen_columns
- && ToCols != screen_columns)
- myCols = ToCols;
-
- if (wresize(win, myLines, myCols) != OK)
- returnCode(ERR);
- }
-
- screen_lines = lines = ToLines;
- screen_columns = columns = ToCols;
-
- SP->_lines_avail = lines - stolen;
-
- if (SP->oldhash) { FreeAndNull(SP->oldhash); }
- if (SP->newhash) { FreeAndNull(SP->newhash); }
+ for (wp = _nc_windows; wp != 0; wp = wp->next) {
+ WINDOW *win = wp->win;
+ int myLines = win->_maxy + 1;
+ int myCols = win->_maxx + 1;
+
+ /* pads aren't treated this way */
+ if (win->_flags & _ISPAD)
+ continue;
+
+ if (win->_begy >= bottom) {
+ win->_begy += (ToLines - screen_lines);
+ } else {
+ if (myLines == screen_lines - stolen
+ && ToLines != screen_lines)
+ myLines = ToLines - stolen;
+ else if (myLines == screen_lines
+ && ToLines != screen_lines)
+ myLines = ToLines;
+ }
+
+ if (myCols == screen_columns
+ && ToCols != screen_columns)
+ myCols = ToCols;
+
+ if (wresize(win, myLines, myCols) != OK)
+ returnCode(ERR);
}
- /*
- * Always update LINES, to allow for call from lib_doupdate.c which
- * needs to have the count adjusted by the stolen (ripped off) lines.
- */
- LINES = ToLines - stolen;
- COLS = ToCols;
+ screen_lines = lines = ToLines;
+ screen_columns = columns = ToCols;
- returnCode(OK);
+ SP->_lines_avail = lines - stolen;
+
+ if (SP->oldhash) {
+ FreeAndNull(SP->oldhash);
+ }
+ if (SP->newhash) {
+ FreeAndNull(SP->newhash);
+ }
+ }
+
+ /*
+ * Always update LINES, to allow for call from lib_doupdate.c which
+ * needs to have the count adjusted by the stolen (ripped off) lines.
+ */
+ LINES = ToLines - stolen;
+ COLS = ToCols;
+
+ returnCode(OK);
}
diff --git a/contrib/ncurses/ncurses/base/safe_sprintf.c b/contrib/ncurses/ncurses/base/safe_sprintf.c
index e4d525272627..e534776f4790 100644
--- a/contrib/ncurses/ncurses/base/safe_sprintf.c
+++ b/contrib/ncurses/ncurses/base/safe_sprintf.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998,1999 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,1999,2000 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 *
@@ -33,11 +33,13 @@
#include <curses.priv.h>
#include <ctype.h>
-MODULE_ID("$Id: safe_sprintf.c,v 1.11 1999/09/11 18:03:27 tom Exp $")
+MODULE_ID("$Id: safe_sprintf.c,v 1.13 2000/12/10 02:43:28 tom Exp $")
#if USE_SAFE_SPRINTF
-typedef enum { Flags, Width, Prec, Type, Format } PRINTF;
+typedef enum {
+ Flags, Width, Prec, Type, Format
+} PRINTF;
#define VA_INTGR(type) ival = va_arg(ap, type)
#define VA_FLOAT(type) fval = va_arg(ap, type)
@@ -50,190 +52,193 @@ typedef enum { Flags, Width, Prec, Type, Format } PRINTF;
static int
_nc_printf_length(const char *fmt, va_list ap)
{
- size_t length = BUFSIZ;
- char *buffer;
- char *format;
- int len = 0;
-
- if (fmt == 0 || *fmt == '\0')
- return -1;
- if ((format = typeMalloc(char, strlen(fmt)+1)) == 0)
- return -1;
- if ((buffer = typeMalloc(char, length)) == 0) {
- free(format);
- return -1;
- }
-
- while (*fmt != '\0') {
- if (*fmt == '%') {
- static char dummy[] = "";
- PRINTF state = Flags;
- char *pval = dummy; /* avoid const-cast */
- double fval = 0.0;
- int done = FALSE;
- int ival = 0;
- int prec = -1;
- int type = 0;
- int used = 0;
- int width = -1;
- size_t f = 0;
-
- format[f++] = *fmt;
- while (*++fmt != '\0' && len >= 0 && !done) {
- format[f++] = *fmt;
-
- if (isdigit(*fmt)) {
- int num = *fmt - '0';
- if (state == Flags && num != 0)
- state = Width;
- if (state == Width) {
- if (width < 0)
- width = 0;
- width = (width * 10) + num;
- } else if (state == Prec) {
- if (prec < 0)
- prec = 0;
- prec = (prec * 10) + num;
- }
- } else if (*fmt == '*') {
- VA_INTGR(int);
- if (state == Flags)
- state = Width;
- if (state == Width) {
- width = ival;
- } else if (state == Prec) {
- prec = ival;
- }
- sprintf(&format[--f], "%d", ival);
- f = strlen(format);
- } else if (isalpha(*fmt)) {
- done = TRUE;
- switch (*fmt) {
- case 'Z': /* FALLTHRU */
- case 'h': /* FALLTHRU */
- case 'l': /* FALLTHRU */
- done = FALSE;
- type = *fmt;
- break;
- case 'i': /* FALLTHRU */
- case 'd': /* FALLTHRU */
- case 'u': /* FALLTHRU */
- case 'x': /* FALLTHRU */
- case 'X': /* FALLTHRU */
- if (type == 'l')
- VA_INTGR(long);
- else if (type == 'Z')
- VA_INTGR(size_t);
- else
- VA_INTGR(int);
- used = 'i';
- break;
- case 'f': /* FALLTHRU */
- case 'e': /* FALLTHRU */
- case 'E': /* FALLTHRU */
- case 'g': /* FALLTHRU */
- case 'G': /* FALLTHRU */
- VA_FLOAT(double);
- used = 'f';
- break;
- case 'c':
- VA_INTGR(int);
- used = 'i';
- break;
- case 's':
- VA_POINT(char *);
- if (prec < 0)
- prec = strlen(pval);
- if (prec > (int)length) {
- length = length + prec;
- buffer = typeRealloc(char, length, buffer);
- if (buffer == 0) {
- free(format);
- return -1;
- }
- }
- used = 'p';
- break;
- case 'p':
- VA_POINT(void *);
- used = 'p';
- break;
- case 'n':
- VA_POINT(int *);
- used = 0;
- break;
- default:
- break;
- }
- } else if (*fmt == '.') {
- state = Prec;
- } else if (*fmt == '%') {
- done = TRUE;
- used = 'p';
- }
- }
- format[f] = '\0';
- switch (used) {
- case 'i':
- sprintf(buffer, format, ival);
- break;
- case 'f':
- sprintf(buffer, format, fval);
- break;
- default:
- sprintf(buffer, format, pval);
- break;
+ size_t length = BUFSIZ;
+ char *buffer;
+ char *format;
+ int len = 0;
+
+ if (fmt == 0 || *fmt == '\0')
+ return -1;
+ if ((format = typeMalloc(char, strlen(fmt) + 1)) == 0)
+ return -1;
+ if ((buffer = typeMalloc(char, length)) == 0) {
+ free(format);
+ return -1;
+ }
+
+ while (*fmt != '\0') {
+ if (*fmt == '%') {
+ static char dummy[] = "";
+ PRINTF state = Flags;
+ char *pval = dummy; /* avoid const-cast */
+ double fval = 0.0;
+ int done = FALSE;
+ int ival = 0;
+ int prec = -1;
+ int type = 0;
+ int used = 0;
+ int width = -1;
+ size_t f = 0;
+
+ format[f++] = *fmt;
+ while (*++fmt != '\0' && len >= 0 && !done) {
+ format[f++] = *fmt;
+
+ if (isdigit(*fmt)) {
+ int num = *fmt - '0';
+ if (state == Flags && num != 0)
+ state = Width;
+ if (state == Width) {
+ if (width < 0)
+ width = 0;
+ width = (width * 10) + num;
+ } else if (state == Prec) {
+ if (prec < 0)
+ prec = 0;
+ prec = (prec * 10) + num;
+ }
+ } else if (*fmt == '*') {
+ VA_INTGR(int);
+ if (state == Flags)
+ state = Width;
+ if (state == Width) {
+ width = ival;
+ } else if (state == Prec) {
+ prec = ival;
+ }
+ sprintf(&format[--f], "%d", ival);
+ f = strlen(format);
+ } else if (isalpha(*fmt)) {
+ done = TRUE;
+ switch (*fmt) {
+ case 'Z': /* FALLTHRU */
+ case 'h': /* FALLTHRU */
+ case 'l': /* FALLTHRU */
+ done = FALSE;
+ type = *fmt;
+ break;
+ case 'i': /* FALLTHRU */
+ case 'd': /* FALLTHRU */
+ case 'u': /* FALLTHRU */
+ case 'x': /* FALLTHRU */
+ case 'X': /* FALLTHRU */
+ if (type == 'l')
+ VA_INTGR(long);
+ else if (type == 'Z')
+ VA_INTGR(size_t);
+ else
+ VA_INTGR(int);
+ used = 'i';
+ break;
+ case 'f': /* FALLTHRU */
+ case 'e': /* FALLTHRU */
+ case 'E': /* FALLTHRU */
+ case 'g': /* FALLTHRU */
+ case 'G': /* FALLTHRU */
+ VA_FLOAT(double);
+ used = 'f';
+ break;
+ case 'c':
+ VA_INTGR(int);
+ used = 'i';
+ break;
+ case 's':
+ VA_POINT(char *);
+ if (prec < 0)
+ prec = strlen(pval);
+ if (prec > (int) length) {
+ length = length + prec;
+ buffer = typeRealloc(char, length, buffer);
+ if (buffer == 0) {
+ free(format);
+ return -1;
+ }
}
- len += (int)strlen(buffer);
- } else {
- fmt++;
- len++;
+ used = 'p';
+ break;
+ case 'p':
+ VA_POINT(void *);
+ used = 'p';
+ break;
+ case 'n':
+ VA_POINT(int *);
+ used = 0;
+ break;
+ default:
+ break;
+ }
+ } else if (*fmt == '.') {
+ state = Prec;
+ } else if (*fmt == '%') {
+ done = TRUE;
+ used = 'p';
}
+ }
+ format[f] = '\0';
+ switch (used) {
+ case 'i':
+ sprintf(buffer, format, ival);
+ break;
+ case 'f':
+ sprintf(buffer, format, fval);
+ break;
+ default:
+ sprintf(buffer, format, pval);
+ break;
+ }
+ len += (int) strlen(buffer);
+ } else {
+ fmt++;
+ len++;
}
+ }
- free(buffer);
- free(format);
- return len;
+ free(buffer);
+ free(format);
+ return len;
}
#endif
/*
* Wrapper for vsprintf that allocates a buffer big enough to hold the result.
*/
-char *
-_nc_printf_string(const char *fmt, va_list ap)
+NCURSES_EXPORT(char *)
+_nc_printf_string
+(const char *fmt, va_list ap)
{
#if USE_SAFE_SPRINTF
- char *buf = 0;
- int len = _nc_printf_length(fmt, ap);
-
- if (len > 0) {
- if ((buf = typeMalloc(char, len+1)) == 0)
- return(0);
- vsprintf(buf, fmt, ap);
- }
+ char *buf = 0;
+ int len = _nc_printf_length(fmt, ap);
+
+ if (len > 0) {
+ if ((buf = typeMalloc(char, len + 1)) == 0)
+ return (0);
+ vsprintf(buf, fmt, ap);
+ }
#else
- static int rows, cols;
- static char *buf;
- static size_t len;
-
- if (screen_lines > rows || screen_columns > cols) {
- if (screen_lines > rows) rows = screen_lines;
- if (screen_columns > cols) cols = screen_columns;
- len = (rows * (cols + 1)) + 1;
- buf = typeRealloc(char, len, buf);
- if (buf == 0) {
- return(0);
- }
+ static int rows, cols;
+ static char *buf;
+ static size_t len;
+
+ if (screen_lines > rows || screen_columns > cols) {
+ if (screen_lines > rows)
+ rows = screen_lines;
+ if (screen_columns > cols)
+ cols = screen_columns;
+ len = (rows * (cols + 1)) + 1;
+ buf = typeRealloc(char, len, buf);
+ if (buf == 0) {
+ return (0);
}
+ }
- if (buf != 0) {
+ if (buf != 0) {
# if HAVE_VSNPRINTF
- vsnprintf(buf, len, fmt, ap); /* GNU extension */
+ vsnprintf(buf, len, fmt, ap); /* GNU extension */
# else
- vsprintf(buf, fmt, ap); /* ANSI */
+ vsprintf(buf, fmt, ap); /* ANSI */
# endif
- }
+ }
#endif
- return buf;
+ return buf;
}
diff --git a/contrib/ncurses/ncurses/base/sigaction.c b/contrib/ncurses/ncurses/base/sigaction.c
index ab1e569fae6a..8819638bef88 100644
--- a/contrib/ncurses/ncurses/base/sigaction.c
+++ b/contrib/ncurses/ncurses/base/sigaction.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -41,66 +41,78 @@
#if !HAVE_SIGACTION && HAVE_SIGVEC
-MODULE_ID("$Id: sigaction.c,v 1.9 1999/06/19 23:05:16 tom Exp $")
+MODULE_ID("$Id: sigaction.c,v 1.11 2000/12/10 02:43:28 tom Exp $")
-int
-sigaction (int sig, sigaction_t * sigact, sigaction_t * osigact)
+NCURSES_EXPORT(int)
+sigaction
+(int sig, sigaction_t * sigact, sigaction_t * osigact)
{
- return sigvec(sig, sigact, osigact);
+ return sigvec(sig, sigact, osigact);
}
-int
-sigemptyset (sigset_t * mask)
+NCURSES_EXPORT(int)
+sigemptyset
+(sigset_t * mask)
{
- *mask = 0;
- return 0;
+ *mask = 0;
+ return 0;
}
-int
-sigprocmask (int mode, sigset_t * mask, sigset_t * omask)
+NCURSES_EXPORT(int)
+sigprocmask
+(int mode, sigset_t * mask, sigset_t * omask)
{
- sigset_t current = sigsetmask(0);
+ sigset_t current = sigsetmask(0);
- if (omask) *omask = current;
+ if (omask)
+ *omask = current;
- if (mode==SIG_BLOCK)
- current |= *mask;
- else if (mode==SIG_UNBLOCK)
- current &= ~*mask;
- else if (mode==SIG_SETMASK)
- current = *mask;
+ if (mode == SIG_BLOCK)
+ current |= *mask;
+ else if (mode == SIG_UNBLOCK)
+ current &= ~*mask;
+ else if (mode == SIG_SETMASK)
+ current = *mask;
- sigsetmask(current);
- return 0;
+ sigsetmask(current);
+ return 0;
}
-int
-sigsuspend (sigset_t * mask)
+NCURSES_EXPORT(int)
+sigsuspend(sigset_t * mask)
{
- return sigpause (*mask);
+ return sigpause(*mask);
}
-int
-sigdelset (sigset_t * mask, int sig)
+NCURSES_EXPORT(int)
+sigdelset
+(sigset_t * mask, int sig)
{
- *mask &= ~sigmask (sig);
- return 0;
+ *mask &= ~sigmask(sig);
+ return 0;
}
-int
-sigaddset (sigset_t * mask, int sig)
+NCURSES_EXPORT(int)
+sigaddset
+(sigset_t * mask, int sig)
{
- *mask |= sigmask (sig);
- return 0;
+ *mask |= sigmask(sig);
+ return 0;
}
-int
-sigismember (sigset_t * mask, int sig)
+NCURSES_EXPORT(int)
+sigismember
+(sigset_t * mask, int sig)
{
- return (*mask & sigmask (sig)) != 0;
+ return (*mask & sigmask(sig)) != 0;
}
#else
-extern void _nc_sigaction(void); /* quiet's gcc warning */
-void _nc_sigaction(void) { } /* nonempty for strict ANSI compilers */
+extern
+NCURSES_EXPORT(void)
+_nc_sigaction(void); /* quiet's gcc warning */
+NCURSES_EXPORT(void)
+_nc_sigaction(void)
+{
+} /* nonempty for strict ANSI compilers */
#endif
diff --git a/contrib/ncurses/ncurses/base/tries.c b/contrib/ncurses/ncurses/base/tries.c
index 3c396529d654..04f8b919f5a6 100644
--- a/contrib/ncurses/ncurses/base/tries.c
+++ b/contrib/ncurses/ncurses/base/tries.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2000 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 *
@@ -39,100 +39,106 @@
#include <curses.priv.h>
-MODULE_ID("$Id: tries.c,v 1.12 1999/03/01 23:23:59 tom Exp $")
+MODULE_ID("$Id: tries.c,v 1.14 2000/12/10 02:43:28 tom Exp $")
/*
* Expand a keycode into the string that it corresponds to, returning null if
* no match was found, otherwise allocating a string of the result.
*/
-char *_nc_expand_try(struct tries *tree, unsigned short code, int *count, size_t len)
+NCURSES_EXPORT(char *)
+_nc_expand_try
+(struct tries *tree, unsigned short code, int *count, size_t len)
{
- struct tries *ptr = tree;
- char *result = 0;
+ struct tries *ptr = tree;
+ char *result = 0;
- if (code != 0) {
- while (ptr != 0) {
- if ((result = _nc_expand_try(ptr->child, code, count, len + 1)) != 0) {
- break;
- }
- if (ptr->value == code) {
- *count -= 1;
- if (*count == -1) {
- result = typeCalloc(char, len+2);
- break;
- }
- }
- ptr = ptr->sibling;
+ if (code != 0) {
+ while (ptr != 0) {
+ if ((result = _nc_expand_try(ptr->child, code, count, len + 1))
+ != 0) {
+ break;
+ }
+ if (ptr->value == code) {
+ *count -= 1;
+ if (*count == -1) {
+ result = typeCalloc(char, len + 2);
+ break;
}
+ }
+ ptr = ptr->sibling;
}
- if (result != 0) {
- if ((result[len] = ptr->ch) == 0)
- *((unsigned char *)(result+len)) = 128;
+ }
+ if (result != 0) {
+ if ((result[len] = ptr->ch) == 0)
+ *((unsigned char *) (result + len)) = 128;
#ifdef TRACE
- if (len == 0)
- _tracef("expand_key %s %s", _trace_key(code), _nc_visbuf(result));
+ if (len == 0)
+ _tracef("expand_key %s %s", _trace_key(code), _nc_visbuf(result));
#endif
- }
- return result;
+ }
+ return result;
}
/*
* Remove a code from the specified tree, freeing the unused nodes. Returns
* true if the code was found/removed.
*/
-int _nc_remove_key(struct tries **tree, unsigned short code)
+NCURSES_EXPORT(int)
+_nc_remove_key
+(struct tries **tree, unsigned short code)
{
- T((T_CALLED("_nc_remove_key(%p,%d)"), tree, code));
+ T((T_CALLED("_nc_remove_key(%p,%d)"), tree, code));
- if (code == 0)
- returnCode(FALSE);
-
- while (*tree != 0) {
- if (_nc_remove_key(&(*tree)->child, code)) {
- returnCode(TRUE);
- }
- if ((*tree)->value == code) {
- if((*tree)->child) {
- /* don't cut the whole sub-tree */
- (*tree)->value = 0;
- } else {
- struct tries *to_free = *tree;
- *tree = (*tree)->sibling;
- free(to_free);
- }
- returnCode(TRUE);
- }
- tree = &(*tree)->sibling;
- }
+ if (code == 0)
returnCode(FALSE);
+
+ while (*tree != 0) {
+ if (_nc_remove_key(&(*tree)->child, code)) {
+ returnCode(TRUE);
+ }
+ if ((*tree)->value == code) {
+ if ((*tree)->child) {
+ /* don't cut the whole sub-tree */
+ (*tree)->value = 0;
+ } else {
+ struct tries *to_free = *tree;
+ *tree = (*tree)->sibling;
+ free(to_free);
+ }
+ returnCode(TRUE);
+ }
+ tree = &(*tree)->sibling;
+ }
+ returnCode(FALSE);
}
/*
* Remove a string from the specified tree, freeing the unused nodes. Returns
* true if the string was found/removed.
*/
-int _nc_remove_string(struct tries **tree, char *string)
+NCURSES_EXPORT(int)
+_nc_remove_string(struct tries **tree, char *string)
{
- T((T_CALLED("_nc_remove_string(%p,%s)"), tree, _nc_visbuf(string)));
+ T((T_CALLED("_nc_remove_string(%p,%s)"), tree, _nc_visbuf(string)));
- if (string == 0 || *string == 0)
- returnCode(FALSE);
-
- while (*tree != 0) {
- if ((unsigned char)(*tree)->ch == (unsigned char)*string) {
- if (string[1] != 0)
- returnCode(_nc_remove_string(&(*tree)->child, string+1));
- if((*tree)->child) {
- /* don't cut the whole sub-tree */
- (*tree)->value = 0;
- } else {
- struct tries *to_free = *tree;
- *tree = (*tree)->sibling;
- free(to_free);
- }
- returnCode(TRUE);
- }
- tree = &(*tree)->sibling;
- }
+ if (string == 0 || *string == 0)
returnCode(FALSE);
+
+ while (*tree != 0) {
+ if ((unsigned char) (*tree)->ch == (unsigned char) *string) {
+ if (string[1] != 0)
+ returnCode(_nc_remove_string(&(*tree)->child, string + 1));
+ if ((*tree)->child) {
+ /* don't cut the whole sub-tree */
+ (*tree)->value = 0;
+ } else {
+ struct tries *to_free = *tree;
+ *tree = (*tree)->sibling;
+ free(to_free);
+ }
+ returnCode(TRUE);
+ }
+ tree = &(*tree)->sibling;
+ }
+ returnCode(FALSE);
}
diff --git a/contrib/ncurses/ncurses/base/version.c b/contrib/ncurses/ncurses/base/version.c
index a2fe4d86d650..b78c99d00e05 100644
--- a/contrib/ncurses/ncurses/base/version.c
+++ b/contrib/ncurses/ncurses/base/version.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1999 Free Software Foundation, Inc. *
+ * Copyright (c) 1999,2000 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 *
@@ -32,16 +32,16 @@
#include <curses.priv.h>
-MODULE_ID("$Id: version.c,v 1.2 1999/12/04 21:27:23 tom Exp $")
+MODULE_ID("$Id: version.c,v 1.4 2000/12/10 02:43:28 tom Exp $")
-const char *
+NCURSES_EXPORT(const char *)
curses_version(void)
{
static char my_version[80];
T((T_CALLED("curses_version()")));
sprintf(my_version, "ncurses %s.%d",
- NCURSES_VERSION,
- NCURSES_VERSION_PATCH);
+ NCURSES_VERSION,
+ NCURSES_VERSION_PATCH);
returnPtr(my_version);
}
diff --git a/contrib/ncurses/ncurses/base/vsscanf.c b/contrib/ncurses/ncurses/base/vsscanf.c
index ac2bf9f2e783..70d0517a6f0e 100644
--- a/contrib/ncurses/ncurses/base/vsscanf.c
+++ b/contrib/ncurses/ncurses/base/vsscanf.c
@@ -6,42 +6,51 @@
#if !HAVE_VSSCANF
-MODULE_ID("$Id: vsscanf.c,v 1.10 1996/12/21 14:24:06 tom Exp $")
+MODULE_ID("$Id: vsscanf.c,v 1.12 2000/12/10 02:43:28 tom Exp $")
#if defined(_IOREAD) && defined(_NFILE)
/*VARARGS2*/
-int vsscanf(const char *str, const char *format, va_list ap)
+NCURSES_EXPORT(int)
+vsscanf
+(const char *str, const char *format, va_list ap)
{
- /*
- * This code should work on anything descended from AT&T SVr1.
- */
- FILE strbuf;
+ /*
+ * This code should work on anything descended from AT&T SVr1.
+ */
+ FILE strbuf;
- strbuf._flag = _IOREAD;
- strbuf._ptr = strbuf._base = (unsigned char*)str;
- strbuf._cnt = strlen(str);
- strbuf._file = _NFILE;
+ strbuf._flag = _IOREAD;
+ strbuf._ptr = strbuf._base = (unsigned char *) str;
+ strbuf._cnt = strlen(str);
+ strbuf._file = _NFILE;
#if HAVE_VFSCANF
- return(vfscanf(&strbuf, format, ap));
+ return (vfscanf(&strbuf, format, ap));
#else
- return(_doscan(&strbuf, format, ap));
+ return (_doscan(&strbuf, format, ap));
#endif
}
#else
/*VARARGS2*/
-int vsscanf(const char *str, const char *format, va_list ap)
+NCURSES_EXPORT(int)
+vsscanf
+(const char *str, const char *format, va_list ap)
{
- /*
- * You don't have a native vsscanf(3), and you don't have System-V
- * compatible stdio internals. You're probably using a BSD
- * older than 4.4 or a really old Linux. You lose. Upgrade
- * to a current C library to win.
- */
- return -1; /* not implemented */
+ /*
+ * You don't have a native vsscanf(3), and you don't have System-V
+ * compatible stdio internals. You're probably using a BSD
+ * older than 4.4 or a really old Linux. You lose. Upgrade
+ * to a current C library to win.
+ */
+ return -1; /* not implemented */
}
#endif
#else
-extern void _nc_vsscanf(void); /* quiet's gcc warning */
-void _nc_vsscanf(void) { } /* nonempty for strict ANSI compilers */
+extern
+NCURSES_EXPORT(void)
+_nc_vsscanf(void); /* quiet's gcc warning */
+NCURSES_EXPORT(void)
+_nc_vsscanf(void)
+{
+} /* nonempty for strict ANSI compilers */
#endif /* !HAVE_VSSCANF */
diff --git a/contrib/ncurses/ncurses/base/wresize.c b/contrib/ncurses/ncurses/base/wresize.c
index 8121ff154dd5..4889ee098f02 100644
--- a/contrib/ncurses/ncurses/base/wresize.c
+++ b/contrib/ncurses/ncurses/base/wresize.c
@@ -32,7 +32,7 @@
#include <curses.priv.h>
-MODULE_ID("$Id: wresize.c,v 1.16 2000/03/05 00:14:35 tom Exp $")
+MODULE_ID("$Id: wresize.c,v 1.18 2000/12/10 02:43:28 tom Exp $")
/*
* Reallocate a curses WINDOW struct to either shrink or grow to the specified
@@ -44,7 +44,7 @@ MODULE_ID("$Id: wresize.c,v 1.16 2000/03/05 00:14:35 tom Exp $")
#define ld_ALLOC(p,n) DOALLOC(p,struct ldat,n)
#define c_ALLOC(p,n) DOALLOC(p,chtype,n)
-int
+NCURSES_EXPORT(int)
wresize(WINDOW *win, int ToLines, int ToCols)
{
register int row;
@@ -56,9 +56,9 @@ wresize(WINDOW *win, int ToLines, int ToCols)
T((T_CALLED("wresize(%p,%d,%d)"), win, ToLines, ToCols));
if (win) {
TR(TRACE_UPDATE, ("...beg (%d, %d), max(%d,%d), reg(%d,%d)",
- win->_begy, win->_begx,
- win->_maxy, win->_maxx,
- win->_regtop, win->_regbottom));
+ win->_begy, win->_begx,
+ win->_maxy, win->_maxx,
+ win->_regtop, win->_regbottom));
if (_nc_tracing & TRACE_UPDATE)
_tracedump("...before", win);
}
@@ -169,9 +169,9 @@ wresize(WINDOW *win, int ToLines, int ToCols)
#ifdef TRACE
TR(TRACE_UPDATE, ("...beg (%d, %d), max(%d,%d), reg(%d,%d)",
- win->_begy, win->_begx,
- win->_maxy, win->_maxx,
- win->_regtop, win->_regbottom));
+ win->_begy, win->_begx,
+ win->_maxy, win->_maxx,
+ win->_regtop, win->_regbottom));
if (_nc_tracing & TRACE_UPDATE)
_tracedump("...after:", win);
#endif