]> git.deb.at Git - pkg/abook.git/blob - options.h
new configuration system
[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  * bool options
12  */
13
14
15 enum bool_opts {
16         BOOL_AUTOSAVE,
17         BOOL_SHOW_ALL_EMAILS,
18         BOOL_MUTT_RETURN_ALL_EMAILS,
19         BOOL_USE_ASCII_ONLY,
20         BOOL_MAX
21 };
22
23 /*
24  * int options
25  */
26
27 enum int_opts {
28         INT_EMAILPOS,
29         INT_EXTRAPOS,
30         INT_MAX
31 };
32
33 /*
34  * string options
35  */
36
37 enum str_opts {
38         STR_EXTRA_COLUMN,
39         STR_EXTRA_ALTERNATIVE,
40         STR_MUTT_COMMAND,
41         STR_PRINT_COMMAND,
42         STR_WWW_COMMAND,
43         STR_ADDRESS_STYLE,
44         STR_MAX
45 };
46
47
48 int             opt_get_int(enum int_opts opt);
49 bool            opt_get_bool(enum bool_opts opt);
50 char *          opt_get_str(enum str_opts opt);
51 void            init_opts();
52 void            free_opts();
53 int             load_opts(char *filename);
54
55 #endif