]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - test/test.priv.h
ncurses 5.6 - patch 20080329
[ncurses.git] / test / test.priv.h
index fb5f203fc0b18bdcd564c1243f133fadef4fdf5f..08434c8a6783038faa162033315242f0d76c8707 100644 (file)
@@ -29,7 +29,7 @@
 /****************************************************************************
  *  Author: Thomas E. Dickey                    1996-on                     *
  ****************************************************************************/
-/* $Id: test.priv.h,v 1.73 2008/02/10 00:12:55 tom Exp $ */
+/* $Id: test.priv.h,v 1.76 2008/03/29 20:29:10 tom Exp $ */
 
 #ifndef __TEST_PRIV_H
 #define __TEST_PRIV_H 1
@@ -528,24 +528,45 @@ extern char *tgoto(char *, int, int);     /* available, but not prototyped */
 #define CONST_MENUS /* nothing */
 #endif
 
+#ifndef HAVE_USE_WINDOW
+#if !defined(NCURSES_VERSION_PATCH) || (NCURSES_VERSION_PATCH < 20070915) || !NCURSES_EXT_FUNCS
+#define HAVE_USE_WINDOW 0
+#else
+#define HAVE_USE_WINDOW 1
+#endif
+#endif
+
 /*
  * Simplify setting up demo of threading with these macros.
  */
-#if !defined(NCURSES_VERSION_PATCH) || (NCURSES_VERSION_PATCH < 20070915) || !NCURSES_EXT_FUNCS
-typedef int (*NCURSES_CALLBACK)(WINDOW *, void *);
-#define WANT_USE_WINDOW() \
-static int \
-use_window(WINDOW *win, int (*func) (WINDOW *, void *), void *data) \
-{ \
-    return func(win, data); \
-} \
-       extern void _nc_want_use_window(void)
-#define USING_WINDOW(w,func) use_window(w, (NCURSES_CALLBACK) func, w)
+
+#if !HAVE_USE_WINDOW
+typedef int (*NCURSES_WINDOW_CB)(WINDOW *, void *);
+typedef int (*NCURSES_SCREEN_CB)(SCREEN *, void *);
+#endif
+
+#if HAVE_USE_WINDOW
+#define USING_WINDOW(w,func) use_window(w, (NCURSES_WINDOW_CB) func, w)
+#define WANT_USE_WINDOW() extern void _nc_want_use_window(void)
 #else
-#define WANT_USE_WINDOW() /* nothing */ \
-       extern void _nc_want_use_window(void)
 #define USING_WINDOW(w,func) func(w)
+#define WANT_USE_WINDOW() extern void _nc_want_use_window(void)
 #endif
 
+#if HAVE_USE_WINDOW
+#define USING_SCREEN(s,func,data) use_screen(s, (NCURSES_SCREEN_CB) func, data)
+#define WANT_USE_SCREEN() extern void _nc_want_use_screen(void)
+#else
+#define USING_SCREEN(s,func,data) func(data)
+#define WANT_USE_SCREEN() extern void _nc_want_use_screen(void)
+#endif
+
+#ifdef TRACE
+#define Trace(p) _tracef p
+#define USE_TRACE 1
+#else
+#define Trace(p)               /* nothing */
+#define USE_TRACE 0
+#endif
 
 #endif /* __TEST_PRIV_H */