X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=ncurses%2Fnew_pair.h;h=4dbeb9dc0fb949141eaf21e5ad48f975874a60b9;hp=f5153d5b947b9a76f318511fea92b37ea8348058;hb=e33150410925e7858dacebb585a9bd90db683d86;hpb=3eda6f30a84d53844d2ebceadb457e2e7e9cfbf3;ds=sidebyside diff --git a/ncurses/new_pair.h b/ncurses/new_pair.h index f5153d5b..4dbeb9dc 100644 --- a/ncurses/new_pair.h +++ b/ncurses/new_pair.h @@ -33,7 +33,7 @@ /* * Common type definitions and macros for new_pair.c, lib_color.c * - * $Id: new_pair.h,v 1.4 2017/03/31 11:32:07 tom Exp $ + * $Id: new_pair.h,v 1.8 2017/08/11 18:15:11 tom Exp $ */ #ifndef NEW_PAIR_H @@ -42,8 +42,12 @@ #define USE_NEW_PAIR NCURSES_EXT_COLORS -#define MAX_OF_TYPE(t) (int)(((unsigned t)(~0))>>1) -#define LIMIT_TYPED(n,t) (t)(((t)(n) < 0) ? MAX_OF_TYPE(t) : (n)) +#define LIMIT_TYPED(n,t) \ + (t)(((n) > MAX_OF_TYPE(t)) \ + ? MAX_OF_TYPE(t) \ + : ((n) < -MAX_OF_TYPE(t)) \ + ? -MAX_OF_TYPE(t) \ + : (n)) #define limit_COLOR(n) LIMIT_TYPED(n,NCURSES_COLOR_T) #define limit_PAIRS(n) LIMIT_TYPED(n,NCURSES_PAIRS_T) @@ -105,11 +109,14 @@ colorpair_t; ((sp != 0) && (pair >= 0) && (pair < sp->_pair_limit) && sp->_coloron) #if USE_NEW_PAIR -extern NCURSES_EXPORT(void) _nc_set_color_pair(SCREEN*, int, int); +extern NCURSES_EXPORT(void) _nc_copy_pairs(SCREEN*, colorpair_t*, colorpair_t*, int); +extern NCURSES_EXPORT(void) _nc_free_ordered_pairs(SCREEN*); extern NCURSES_EXPORT(void) _nc_reset_color_pair(SCREEN*, int, colorpair_t*); +extern NCURSES_EXPORT(void) _nc_set_color_pair(SCREEN*, int, int); #else -#define _nc_set_color_pair(sp, pair, mode) /* nothing */ +#define _nc_free_ordered_pairs(sp) /* nothing */ #define _nc_reset_color_pair(sp, pair, data) /* nothing */ +#define _nc_set_color_pair(sp, pair, mode) /* nothing */ #endif #else