Do not use implicit ncurses functions, now we can grep for 'stdscr' to find them.
[apps/madmutt.git] / lib-ui / curses.h
index c86b651..f438395 100644 (file)
 #include <lib-lib/lib-lib.h>
 #include "mutt.h"
 
-#ifdef USE_SLANG_CURSES
-
-#ifndef unix                    /* this symbol is not defined by the hp-ux compiler (sigh) */
-#define unix
-#endif /* unix */
-
-#include "slcurses.h"
-
-#define KEY_DC SL_KEY_DELETE
-#define KEY_IC SL_KEY_IC
-
-/*
- * ncurses and SLang seem to send different characters when the Enter key is
- * pressed, so define some macros to properly detect the Enter key.
- */
-#define M_ENTER_C '\r'
-#define M_ENTER_S "\r"
-
-#else
-
-#ifdef HAVE_NCURSESW_NCURSES_H
+#if defined(HAVE_NCURSESW_NCURSES_H)
 #include <ncursesw/ncurses.h>
-#else
-#ifdef HAVE_NCURSES_NCURSES_H
+#elif defined(HAVE_NCURSES_NCURSES_H)
 #include <ncurses/ncurses.h>
-#else
-#ifdef HAVE_NCURSES_H
+#elif defined(HAVE_NCURSES_H)
 #include <ncurses.h>
 #else
 #include <curses.h>
 #endif
-#endif
-#endif
-
-#define M_ENTER_C '\n'
-#define M_ENTER_S "\n"
-
-#endif /* USE_SLANG_CURSES */
 
 /* AIX defines ``lines'' in <term.h>, but it's used as a var name in
  * various places in Mutt
 #undef lines
 #endif /* lines */
 
-#define CLEARLINE_WIN(x) move(x,(option(OPTMBOXPANE)?SidebarWidth:0)), clrtoeol()
-#define CLEARLINE(x) move(x,0), clrtoeol()
-#define CENTERLINE(x,y) move(y, (COLS-strlen(x))/2), addstr(x)
-#define BEEP() do { if (ml_core.beep) beep(); } while (0)
-
-#if ! (defined(USE_SLANG_CURSES) || defined(HAVE_CURS_SET))
-#define curs_set(x)
-#endif
+#define CLEARLINE_WIN(x) wmove(stdscr, x,(option(OPTMBOXPANE)?SidebarWidth:0)), wclrtoeol(stdscr)
+#define CLEARLINE(x) wmove(stdscr, x,0), wclrtoeol(stdscr)
+#define CENTERLINE(x,y) wmove(stdscr, y, (COLS-strlen(x))/2), waddstr(stdscr, x)
+#define BEEP() do { if (mod_core.beep) beep(); } while (0)
 
-#if !defined(USE_SLANG_CURSES) && defined(HAVE_BKGDSET)
-#define BKGDSET(x) bkgdset (ColorDefs[x] | ' ')
-#else
-#define BKGDSET(x)
-#endif
+#define BKGDSET(x)  wbkgdset(stdscr, ColorDefs[x] | ' ')
 
-#if (defined(USE_SLANG_CURSES) || defined(HAVE_CURS_SET))
 void mutt_curs_set (int);
-#else
-#define mutt_curs_set(x)
-#endif
 #define PAGELEN (LINES-3)
 
 #define ctrl(c) ((c)-'@')
@@ -179,7 +138,7 @@ int mutt_get_field_unbuffered (char *, char *, ssize_t, int);
 int mutt_index_menu (void);
 int mutt_is_mail_list (address_t *);
 int mutt_is_subscribed_list (address_t *);
-int mutt_multi_choice (char *prompt, char *letters);
+int mutt_multi_choice (const char *prompt, const char *letters);
 int mutt_parse_color (BUFFER *, BUFFER *, unsigned long, BUFFER *);
 int mutt_parse_uncolor (BUFFER *, BUFFER *, unsigned long, BUFFER *);
 int mutt_parse_mono (BUFFER *, BUFFER *, unsigned long, BUFFER *);
@@ -204,8 +163,8 @@ void _mutt_make_string (char *, ssize_t, const char *, CONTEXT *,
                         HEADER *, format_flag);
 
 
-#define SETCOLOR(X) attrset(ColorDefs[X])
-#define ADDCOLOR(X) attron(ColorDefs[X])
+#define SETCOLOR(X) wattrset(stdscr, ColorDefs[X])
+#define ADDCOLOR(X) wattron(stdscr, ColorDefs[X])
 
 #define MAYBE_REDRAW(x) if (option (OPTNEEDREDRAW)) { unset_option (OPTNEEDREDRAW); x = REDRAW_FULL; }