]> git.deb.at Git - pkg/abook.git/blobdiff - filter.h
reformat changelog entry
[pkg/abook.git] / filter.h
index 6957b0405b32d1b6957f54d0038ad6a781a3bcc7..8b5513d4f9e2744983b5e1064a7631e83113df01 100644 (file)
--- a/filter.h
+++ b/filter.h
@@ -4,6 +4,8 @@
 #include "database.h"
 
 #define                FILTNAME_LEN    8
+#define                FORMAT_STRING_LEN       512
+#define                FORMAT_STRING_MAX_FIELDS        16
 
 
 struct abook_output_filter {
@@ -12,6 +14,12 @@ struct abook_output_filter {
        int (*func) (FILE *handle, struct db_enumerator e);
 };
 
+struct abook_output_item_filter {
+       char filtname[FILTNAME_LEN];
+       char *desc;
+       void (*func) (FILE *handle, int item);
+};
+
 struct abook_input_filter {
        char filtname[FILTNAME_LEN];
        char *desc;
@@ -24,6 +32,16 @@ int             import_file(char filtname[FILTNAME_LEN], char *filename);
 
 int            export_database();
 int             export_file(char filtname[FILTNAME_LEN], char *filename);
+
+struct abook_output_item_filter
+               select_output_item_filter(char filtname[FILTNAME_LEN]);
+
+void           e_write_item(FILE *out, int item, void (*func) (FILE *in, int item));
+void           muttq_print_item(FILE *file, int item);
+
+void           parse_custom_format(char *s, char *fmt_string, enum field_types *ft);
+void           custom_print_item(FILE *out, int item);
+
 int            fexport(char filtname[FILTNAME_LEN], FILE *handle,
                int enum_mode);