5 void statusline_msg(char *msg);
6 char *ask_filename(char *prompt, int flags);
7 void clear_statusline();
8 void statusline_addstr(char *str);
9 char *statusline_getnstr(char *str, int n, int use_filesel);
10 void headerline(char *str);
11 void refresh_statusline();
12 void display_editor_help();
13 void *abook_malloc(size_t size);
14 void *abook_realloc(void *ptr, size_t size);
15 FILE *abook_fopen (const char *path, const char *mode);
18 int strcasecmp (const char *, const char *);
19 int strncasecmp (const char *, const char *, size_t);
22 #define MAIN_HELPLINE "q:quit ?:help a:add r:remove"
24 #define Y_STATUSLINE (LINES - 2)
29 #define DEFAULT_UMASK 066
30 #define DATAFILE ".abook.addressbook"
33 * some "abookwide" useful macros
36 #define hide_cursor() curs_set(0)
37 #define show_cursor() curs_set(1)
39 #define safe_atoi(X) (X == NULL) ? 0 : atoi(X)
40 #define my_free(X) do {free(X); X=NULL;} while(0)
41 #define safe_str(X) X == NULL ? "" : X
42 #define safe_strdup(X) (X == NULL) ? NULL : strdup(X)
45 # define min(x,y) (((x)<(y)) ? (x):(y))
49 # define max(x,y) (((x)>(y)) ? (x):(y))
52 #define ISSPACE(c) isspace((unsigned char)c)