split ml_core into MCore and MTransport modules.
[apps/madmutt.git] / lib-ui / curses.h
index 6a33540..e0612fe 100644 (file)
@@ -10,6 +10,7 @@
 #ifndef _MUTT_CURSES_H
 #define _MUTT_CURSES_H
 
+#include <lib-lib/lib-lib.h>
 #include "mutt.h"
 
 #ifdef USE_SLANG_CURSES
@@ -61,7 +62,7 @@
 #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 (option (OPTBEEP)) beep(); } while (0)
+#define BEEP() do { if (MCore.beep) beep(); } while (0)
 
 #if ! (defined(USE_SLANG_CURSES) || defined(HAVE_CURS_SET))
 #define curs_set(x)
@@ -141,10 +142,52 @@ typedef struct {
   const char* msg;
   long pos;
   long size;
-  char sizestr[SHORT_STRING];
+  char sizestr[STRING];
 } progress_t;
 
 void mutt_progress_bar (progress_t* progress, long pos);
+void mutt_clear_error (void);
+void mutt_edit_file (const char *);
+void mutt_curses_error (const char *, ...)
+    __attribute__((format(printf, 1, 2)));
+void mutt_curses_message (const char *, ...)
+    __attribute__((format(printf, 1, 2)));
+void mutt_format_string (char *, ssize_t, int, int, int, char, const char *,
+                         ssize_t, int);
+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_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)
+int _mutt_enter_fname (const char *, char *, ssize_t, int *, int, int,
+                       char ***, int *);
+
+#define mutt_get_field(A,B,C,D) _mutt_get_field(A,B,C,D,0,NULL,NULL)
+int _mutt_get_field (const char *, char *, ssize_t, int, int, char ***, int *);
+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_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);
+void mutt_set_header_color (CONTEXT *, HEADER *);
 
 extern int *ColorQuote;
 extern int ColorQuoteUsed;
@@ -156,9 +199,16 @@ 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 */