ncurses 5.7 - patch 20090829
[ncurses.git] / include / curses.wide
index a37f3f845d40a396abaab4443106f1da7081f19a..e21e4b409cfeec4dbafba726cefe4e489c3e8450 100644 (file)
@@ -1,8 +1,13 @@
+/* $Id: curses.wide,v 1.39 2009/05/09 15:43:00 tom Exp $ */
+/*
+ * vile:cmode:
+ * This file is part of ncurses, designed to be appended after curses.h.in
+ * (see that file for the relevant copyright).
+ */
+#define _XOPEN_CURSES 1
 
 #ifdef _XOPEN_SOURCE_EXTENDED
 
-/* $Id: curses.wide,v 1.28 2004/01/03 20:35:14 tom Exp $ */
-
 extern NCURSES_EXPORT_VAR(cchar_t *) _nc_wacs;
 
 #define NCURSES_WACS(c)        (&_nc_wacs[(unsigned char)c])
@@ -135,7 +140,7 @@ extern NCURSES_EXPORT(int) slk_wset (int, const wchar_t *, int);    /* implemented
 extern NCURSES_EXPORT(attr_t) term_attrs (void);                       /* implemented */
 extern NCURSES_EXPORT(int) unget_wch (const wchar_t);                  /* implemented */
 extern NCURSES_EXPORT(int) vid_attr (attr_t, short, void *);           /* implemented */
-extern NCURSES_EXPORT(int) vid_puts (attr_t, short, void *, int (*)(int)); /* implemented */
+extern NCURSES_EXPORT(int) vid_puts (attr_t, short, void *, NCURSES_OUTC); /* implemented */
 extern NCURSES_EXPORT(int) vline_set (const cchar_t *, int);           /* generated:WIDEC */
 extern NCURSES_EXPORT(int) wadd_wch (WINDOW *,const cchar_t *);                /* implemented */
 extern NCURSES_EXPORT(int) wadd_wchnstr (WINDOW *,const cchar_t *,int);        /* implemented */
@@ -148,7 +153,7 @@ extern NCURSES_EXPORT(int) wborder_set (WINDOW *,const cchar_t*,const cchar_t*,c
 extern NCURSES_EXPORT(int) wecho_wchar (WINDOW *, const cchar_t *);    /* implemented */
 extern NCURSES_EXPORT(int) wget_wch (WINDOW *, wint_t *);              /* implemented */
 extern NCURSES_EXPORT(int) wget_wstr (WINDOW *, wint_t *);             /* generated:WIDEC */
-extern NCURSES_EXPORT(int) wgetbkgrnd (WINDOW *, cchar_t *);           /* implemented */
+extern NCURSES_EXPORT(int) wgetbkgrnd (WINDOW *, cchar_t *);           /* generated:WIDEC */
 extern NCURSES_EXPORT(int) wgetn_wstr (WINDOW *,wint_t *, int);                /* implemented */
 extern NCURSES_EXPORT(int) whline_set (WINDOW *, const cchar_t *, int);        /* implemented */
 extern NCURSES_EXPORT(int) win_wch (WINDOW *, cchar_t *);              /* implemented */
@@ -162,6 +167,16 @@ extern NCURSES_EXPORT(int) winwstr (WINDOW *, wchar_t *);          /* implemented */
 extern NCURSES_EXPORT(wchar_t*) wunctrl (cchar_t *);                   /* implemented */
 extern NCURSES_EXPORT(int) wvline_set (WINDOW *, const cchar_t *, int);        /* implemented */
 
+#if NCURSES_SP_FUNCS
+extern NCURSES_EXPORT(attr_t) NCURSES_SP_NAME(term_attrs) (SCREEN*);           /* implemented */
+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(unget_wch) (SCREEN*, const wchar_t);        /* implemented */
+extern NCURSES_EXPORT(wchar_t*) NCURSES_SP_NAME(wunctrl) (SCREEN*, cchar_t *); /* implemented */
+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(vid_attr) (SCREEN*, attr_t, short, void *);
+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(vid_puts) (SCREEN*, attr_t, short, void *, NCURSES_SP_OUTC);
+#endif
+
+#ifndef NCURSES_NOMACROS
+
 /*
  * XSI curses macros for XPG4 conformance.
  */
@@ -188,16 +203,17 @@ extern NCURSES_EXPORT(int) wvline_set (WINDOW *, const cchar_t *, int);   /* imple
 #define ins_wch(c)                     wins_wch(stdscr,c)
 #define ins_wstr(t)                    wins_wstr(stdscr,t)
 #define inwstr(c)                      winwstr(stdscr,c)
-#define vid_attr(a,pair,opts)          vidattr(a)
 #define vline_set(c,n)                 wvline_set(stdscr,c,n)
 #define wadd_wchstr(win,str)           wadd_wchnstr(win,str,-1)
 #define waddwstr(win,wstr)             waddnwstr(win,wstr,-1)
-#define wattr_set(win,a,p,opts) ((win)->_attrs = (((a) & ~A_COLOR) | COLOR_PAIR(p)), OK)
 #define wget_wstr(w,t)                 wgetn_wstr(w,t,-1)
-#define wgetbkgrnd(win,wch)            (*wch = win->_bkgrnd, OK)
 #define win_wchstr(w,c)                        win_wchnstr(w,c,-1)
 #define wins_wstr(w,t)                 wins_nwstr(w,t,-1)
 
+#if !NCURSES_OPAQUE
+#define wgetbkgrnd(win,wch)            (*wch = win->_bkgrnd, OK)
+#endif
+
 #define mvadd_wch(y,x,c)               mvwadd_wch(stdscr,y,x,c)
 #define mvadd_wchnstr(y,x,s,n)         mvwadd_wchnstr(stdscr,y,x,s,n)
 #define mvadd_wchstr(y,x,s)            mvwadd_wchstr(stdscr,y,x,s)
@@ -236,4 +252,11 @@ extern NCURSES_EXPORT(int) wvline_set (WINDOW *, const cchar_t *, int);    /* imple
 #define mvwinwstr(win,y,x,c)           (wmove(win,y,x) == ERR ? ERR : winwstr(win,c))
 #define mvwvline_set(win,y,x,c,n)      (wmove(win,y,x) == ERR ? ERR : wvline_set(win,c,n))
 
+#endif /* NCURSES_NOMACROS */
+
+#if defined(TRACE) || defined(NCURSES_TEST)
+extern NCURSES_EXPORT(const char *) _nc_viswbuf(const wchar_t *);
+extern NCURSES_EXPORT(const char *) _nc_viswibuf(const wint_t *);
+#endif
+
 #endif /* _XOPEN_SOURCE_EXTENDED */