X-Git-Url: http://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=test%2Ftest.priv.h;h=1f83dbede6cc9bfd538a41fd5af5a3413aeb4d58;hp=0eabbcc754779e68714c518d705cb5f470703e5f;hb=a7d99bb6b29485693a21c0cc70d7925f2211769c;hpb=d44d7f381ba0173521cb788ba3adb12e261e5c96 diff --git a/test/test.priv.h b/test/test.priv.h index 0eabbcc7..1f83dbed 100644 --- a/test/test.priv.h +++ b/test/test.priv.h @@ -29,7 +29,7 @@ /**************************************************************************** * Author: Thomas E. Dickey 1996-on * ****************************************************************************/ -/* $Id: test.priv.h,v 1.74 2008/02/23 23:02:41 tom Exp $ */ +/* $Id: test.priv.h,v 1.78 2008/09/06 22:01:24 tom Exp $ */ #ifndef __TEST_PRIV_H #define __TEST_PRIV_H 1 @@ -449,6 +449,7 @@ extern int optind; #endif #else #define typeMalloc(type,n) (type *) malloc((n) * sizeof(type)) +#define typeCalloc(type,elts) (type *) calloc((elts), sizeof(type)) #define typeRealloc(type,n,p) (type *) realloc(p, (n) * sizeof(type)) #endif @@ -528,23 +529,37 @@ 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 @@ -555,4 +570,6 @@ use_window(WINDOW *win, int (*func) (WINDOW *, void *), void *data) \ #define USE_TRACE 0 #endif +#define init_mb(state) memset(&state, 0, sizeof(state)) + #endif /* __TEST_PRIV_H */