X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=lib-ui%2Fcurses.h;h=9df89bedc86a505d22d24ef5b8460a315c9bc333;hp=c33a93d90160b88b5cf45eab5f6696dc67c0d76a;hb=4a2f9b3cc151e0cebc27d46857a5d803cca35d61;hpb=9946738a6a1c27a5602a14d1afe2eea2389732b2 diff --git a/lib-ui/curses.h b/lib-ui/curses.h index c33a93d..9df89be 100644 --- a/lib-ui/curses.h +++ b/lib-ui/curses.h @@ -10,48 +10,8 @@ #ifndef _MUTT_CURSES_H #define _MUTT_CURSES_H -#include #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 -#include -#else -#ifdef HAVE_NCURSES_NCURSES_H -#include -#else -#ifdef HAVE_NCURSES_H -#include -#else -#include -#endif -#endif -#endif - -#define M_ENTER_C '\n' -#define M_ENTER_S "\n" - -#endif /* USE_SLANG_CURSES */ - /* AIX defines ``lines'' in , but it's used as a var name in * various places in Mutt */ @@ -59,27 +19,14 @@ #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 CLEARLINE(W, x) wmove(W, x,0), wclrtoeol(W) #define BEEP() do { if (mod_core.beep) beep(); } while (0) -#if ! (defined(USE_SLANG_CURSES) || defined(HAVE_CURS_SET)) -#define curs_set(x) -#endif - -#if !defined(USE_SLANG_CURSES) && 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]) -#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)-'@') @@ -90,13 +37,13 @@ void mutt_curs_set (int); #endif event_t mutt_getch (void); +#define waddwch(win, w) waddnwstr(win, &(w), 1) + +void curses_initialize(void); +void curses_install(void); -void mutt_endwin (const char *); void mutt_flushinp (void); -void mutt_refresh (void); -void mutt_resize_screen (void); void mutt_ungetch (int, int); -void mutt_need_hard_redraw (void); /* ---------------------------------------------------------------------------- * Support for color @@ -157,16 +104,14 @@ void mutt_format_string (char *, ssize_t, int, int, int, char, const char *, 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); -int mutt_addwch (wchar_t); -int mutt_alloc_color (int fg, int bg); 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) @@ -182,8 +127,6 @@ int mutt_is_subscribed_list (address_t *); 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); @@ -196,19 +139,12 @@ extern COLOR_LINE *ColorHdrList; extern COLOR_LINE *ColorBodyList; extern COLOR_LINE *ColorIndexList; -void ci_init_color (void); 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); - -#define SETCOLOR(X) attrset(ColorDefs[X]) -#define ADDCOLOR(X) attron(ColorDefs[X]) - #define MAYBE_REDRAW(x) if (option (OPTNEEDREDRAW)) { unset_option (OPTNEEDREDRAW); x = REDRAW_FULL; } -#define SW (option(OPTMBOXPANE)?SidebarWidth:0) - #endif /* !_MUTT_CURSES_H */