]> git.deb.at Git - pkg/abook.git/blob - options.h
Merge branch 'dh'
[pkg/abook.git] / options.h
1 #ifndef _OPTIONS_H
2 #define _OPTIONS_H
3
4 #if 0
5 typedef int bool;
6 #else
7 #       include <abook_curses.h> /* bool */
8 #endif
9
10 /*
11  * token parsing options
12  */
13
14 #define TOKEN_ALLOC (1<<1) /* allocate memory for the token */
15 #define TOKEN_EQUAL (1<<2) /* left hand value of assignment */
16 #define TOKEN_COMMA (1<<3) /* comma is a separator */
17
18 /*
19  * bool options
20  */
21
22 enum bool_opts {
23         BOOL_AUTOSAVE,
24         BOOL_SHOW_ALL_EMAILS,
25         BOOL_MUTT_RETURN_ALL_EMAILS,
26         BOOL_USE_ASCII_ONLY,
27         BOOL_ADD_EMAIL_PREVENT_DUPLICATES,
28         BOOL_SHOW_CURSOR,
29         BOOL_MAX
30 };
31
32 /*
33  * int options
34  */
35
36 enum int_opts {
37         INT_EMAILPOS,
38         INT_EXTRAPOS,
39         INT_MAXIMUM /* INT_MAX conflicts on some systems */
40 };
41
42 /*
43  * string options
44  */
45
46 enum str_opts {
47         STR_EXTRA_COLUMN,
48         STR_EXTRA_ALTERNATIVE,
49         STR_INDEX_FORMAT,
50         STR_MUTT_COMMAND,
51         STR_PRINT_COMMAND,
52         STR_WWW_COMMAND,
53         STR_ADDRESS_STYLE,
54         STR_PRESERVE_FIELDS,
55         STR_SORT_FIELD,
56         STR_MAX
57 };
58
59
60 int             opt_get_int(enum int_opts opt);
61 bool            opt_get_bool(enum bool_opts opt);
62 char *          opt_get_str(enum str_opts opt);
63 void            init_opts();
64 void            free_opts();
65 int             load_opts(char *filename);
66
67 #endif