-#if defined(HAVE_NCURSESW_NCURSES_H)
-#include <ncursesw/ncurses.h>
-#elif defined(HAVE_NCURSES_NCURSES_H)
-#include <ncurses/ncurses.h>
-#elif defined(HAVE_NCURSES_H)
-#include <ncurses.h>
-#else
-#include <curses.h>
-#endif
-
-#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 CLEARLINE(W, x) wmove(W, x,0), wclrtoeol(W)
-#if !defined(HAVE_CURS_SET)
-#define curs_set(x)
-#endif
-
-#if defined(HAVE_BKGDSET)
-#define BKGDSET(x) bkgdset (ColorDefs[x] | ' ')
-#else
-#define BKGDSET(x)
-#endif
+#define BKGDSET(W, x) wbkgdset(W, ColorDefs[x] | ' ')
+#define SETCOLOR(W, X) wattrset(W, ColorDefs[X])
+#define ADDCOLOR(W, X) wattron(W, ColorDefs[X])
+#define waddwch(win, w) waddnwstr(win, &(w), 1)
+
+void curses_initialize(void);
+void curses_install(void);
void mutt_format_s (char *, ssize_t, const char *, const char *);
void mutt_format_s_tree (char *, ssize_t, const char *, const char *);
void mutt_free_color (int fg, int bg);
void mutt_format_s (char *, ssize_t, const char *, const char *);
void mutt_format_s_tree (char *, ssize_t, const char *, const char *);
void mutt_free_color (int fg, int bg);
-void mutt_paddstr (int, const char *);
-#define mutt_perror(a) _mutt_perror (a, __FILE__, __LINE__)
-void _mutt_perror (const char*, const char*,int);
+void mutt_paddstr(WINDOW *, int, const char *);
+#define mutt_perror(s) \
+ mutt_error("%s: %m (errno = %d) from %s:%i", s, errno, __FILE__, __LINE__)
void mutt_query_exit (void);
void mutt_query_menu (char *, ssize_t);
void mutt_show_error (void);
ssize_t mutt_pretty_size(char *s, ssize_t len, ssize_t n);
void mutt_query_exit (void);
void mutt_query_menu (char *, ssize_t);
void mutt_show_error (void);
ssize_t mutt_pretty_size(char *s, ssize_t len, ssize_t n);
int mutt_any_key_to_continue (const char *);
int mutt_complete (char *, ssize_t);
#define mutt_enter_fname(A,B,C,D,E) _mutt_enter_fname(A,B,C,D,E,0,NULL,NULL)
int mutt_any_key_to_continue (const char *);
int mutt_complete (char *, ssize_t);
#define mutt_enter_fname(A,B,C,D,E) _mutt_enter_fname(A,B,C,D,E,0,NULL,NULL)
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_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 *);
-int mutt_parse_unmono (BUFFER *, BUFFER *, unsigned long, BUFFER *);
int mutt_query_complete (char *, ssize_t);
int mutt_user_is_recipient (HEADER *);
int mutt_yesorno (const char *, int);
int mutt_query_complete (char *, ssize_t);
int mutt_user_is_recipient (HEADER *);
int mutt_yesorno (const char *, int);
void ci_start_color (void);
#define mutt_make_string(A,B,C,D,E) _mutt_make_string(A,B,C,D,E,0)
void _mutt_make_string (char *, ssize_t, const char *, CONTEXT *,
HEADER *, format_flag);
void ci_start_color (void);
#define mutt_make_string(A,B,C,D,E) _mutt_make_string(A,B,C,D,E,0)
void _mutt_make_string (char *, ssize_t, const char *, CONTEXT *,
HEADER *, format_flag);