/****************************************************************************
- * Copyright (c) 1998-2007,2009 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2010,2011 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 *
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_vidattr.c,v 1.57 2009/05/23 20:46:28 tom Exp $")
+MODULE_ID("$Id: lib_vidattr.c,v 1.62 2011/05/28 21:22:04 tom Exp $")
#define doPut(mode) \
TPUTS_TRACE(#mode); \
/* if there is no current screen, assume we *can* do color */
#define SetColorsIf(why,old_attr) \
if (can_color && (why)) { \
- int old_pair = PAIR_NUMBER(old_attr); \
+ int old_pair = PairNumber(old_attr); \
TR(TRACE_ATTRS, ("old pair = %d -- new pair = %d", old_pair, pair)); \
if ((pair != old_pair) \
|| (fix_pair0 && (pair == 0)) \
|| (reverse ^ ((old_attr & A_REVERSE) != 0))) { \
NCURSES_SP_NAME(_nc_do_color)(NCURSES_SP_ARGx \
- old_pair, pair, reverse, outc); \
+ (short) old_pair, \
+ (short) pair, \
+ reverse, outc); \
} \
}
newmode &= A_ATTRIBUTES;
- T((T_CALLED("vidputs(%p,%s)"), SP_PARM, _traceattr(newmode)));
+ T((T_CALLED("vidputs(%p,%s)"), (void *) SP_PARM, _traceattr(newmode)));
if (!IsTermInfo(SP_PARM))
returnCode(ERR);
* A_ALTCHARSET (256) down 2 to line up. We use the NCURSES_BITS
* macro so this will work properly for the wide-character layout.
*/
- unsigned value = no_color_video;
+ unsigned value = (unsigned) no_color_video;
attr_t mask = NCURSES_BITS((value & 63)
| ((value & 192) << 1)
| ((value & 256) >> 2), 8);
if (newmode == PreviousAttr)
returnCode(OK);
- pair = PAIR_NUMBER(newmode);
+ pair = PairNumber(newmode);
if (reverse) {
newmode &= ~A_REVERSE;
NCURSES_EXPORT(int)
NCURSES_SP_NAME(vidattr) (NCURSES_SP_DCLx chtype newmode)
{
- T((T_CALLED("vidattr(%p,%s)"), SP_PARM, _traceattr(newmode)));
+ T((T_CALLED("vidattr(%p,%s)"), (void *) SP_PARM, _traceattr(newmode)));
returnCode(NCURSES_SP_NAME(vidputs) (NCURSES_SP_ARGx
newmode,
NCURSES_SP_NAME(_nc_outch)));
{
chtype attrs = A_NORMAL;
- T((T_CALLED("termattrs(%p)"), SP_PARM));
+ T((T_CALLED("termattrs(%p)"), (void *) SP_PARM));
+
+ if (HasTerminal(SP_PARM)) {
#ifdef USE_TERM_DRIVER
- if (HasTerminal(SP_PARM))
attrs = CallDriver(SP_PARM, conattr);
#else
- T((T_CALLED("termattrs()")));
- if (enter_alt_charset_mode)
- attrs |= A_ALTCHARSET;
+ if (enter_alt_charset_mode)
+ attrs |= A_ALTCHARSET;
- if (enter_blink_mode)
- attrs |= A_BLINK;
+ if (enter_blink_mode)
+ attrs |= A_BLINK;
- if (enter_bold_mode)
- attrs |= A_BOLD;
+ if (enter_bold_mode)
+ attrs |= A_BOLD;
- if (enter_dim_mode)
- attrs |= A_DIM;
+ if (enter_dim_mode)
+ attrs |= A_DIM;
- if (enter_reverse_mode)
- attrs |= A_REVERSE;
+ if (enter_reverse_mode)
+ attrs |= A_REVERSE;
- if (enter_standout_mode)
- attrs |= A_STANDOUT;
+ if (enter_standout_mode)
+ attrs |= A_STANDOUT;
- if (enter_protected_mode)
- attrs |= A_PROTECT;
+ if (enter_protected_mode)
+ attrs |= A_PROTECT;
- if (enter_secure_mode)
- attrs |= A_INVIS;
+ if (enter_secure_mode)
+ attrs |= A_INVIS;
- if (enter_underline_mode)
- attrs |= A_UNDERLINE;
+ if (enter_underline_mode)
+ attrs |= A_UNDERLINE;
- if (SP_PARM->_coloron)
- attrs |= A_COLOR;
+ if (SP_PARM->_coloron)
+ attrs |= A_COLOR;
#endif
+ }
returnChtype(attrs);
}