ncurses 5.6 - patch 20070609
[ncurses.git] / ncurses / curses.priv.h
index 931b0fa51a0ee023ab0f400eba6378df35fd931a..31fabb1738ca7ead9ad0a97b208435dcd3538d5b 100644 (file)
@@ -34,7 +34,7 @@
 
 
 /*
- * $Id: curses.priv.h,v 1.332 2007/05/26 18:47:51 tom Exp $
+ * $Id: curses.priv.h,v 1.334 2007/06/09 17:21:53 tom Exp $
  *
  *     curses.priv.h
  *
@@ -214,6 +214,8 @@ typedef TRIES {
 /*
  * Common/troublesome character definitions
  */
+#define StringOf(ch) {ch, 0}
+
 #define L_BRACE '{'
 #define R_BRACE '}'
 #define S_QUOTE '\''
@@ -893,9 +895,9 @@ extern NCURSES_EXPORT_VAR(SIG_ATOMIC_T) _nc_have_sigwinch;
 #define NulChar                0,0,0,0 /* FIXME: see CCHARW_MAX */
 #define CharOf(c)      ((c).chars[0])
 #define AttrOf(c)      ((c).attr)
-#define AddAttr(c,a)   AttrOf(c) |= ((a) & A_ATTRIBUTES)
+#define AddAttr(c,a)   AttrOf(c) |=  ((a) & A_ATTRIBUTES)
 #define RemAttr(c,a)   AttrOf(c) &= ~((a) & A_ATTRIBUTES)
-#define SetAttr(c,a)   AttrOf(c) = ((a) & A_ATTRIBUTES)
+#define SetAttr(c,a)   AttrOf(c) =   ((a) & A_ATTRIBUTES) | WidecExt(c)
 #define NewChar2(c,a)  { a, { c, NulChar } NulColor }
 #define NewChar(ch)    NewChar2(ChCharOf(ch), ChAttrOf(ch))
 #define CharEq(a,b)    (!memcmp(&(a), &(b), sizeof(a)))