2 * $Id: mailindx.h 925 2008-02-06 02:03:01Z hubert@u.washington.edu $
4 * ========================================================================
5 * Copyright 2013-2022 Eduardo Chappa
6 * Copyright 2006-2008 University of Washington
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * ========================================================================
17 #ifndef PITH_MAILINDX_INCLUDED
18 #define PITH_MAILINDX_INCLUDED
21 #include "../pith/indxtype.h"
22 #include "../pith/msgno.h"
23 #include "../pith/state.h"
24 #include "../pith/pattern.h"
25 #include "../pith/flag.h"
28 extern ICE_S
*(*format_index_line
)(INDEXDATA_S
*);
29 extern void (*setup_header_widths
)(MAILSTREAM
*);
32 /* exported prototypes */
33 int msgline_hidden(MAILSTREAM
*, MSGNO_S
*, long, int);
34 void adjust_cur_to_visible(MAILSTREAM
*, MSGNO_S
*);
35 unsigned long line_hash(char *);
36 void init_index_format(char *, INDEX_COL_S
**);
37 void free_index_format(INDEX_COL_S
**);
38 void reset_index_format(void);
39 INDEX_PARSE_T
*itoktype(char *, int);
40 void inverse_itokens(void);
41 char *prepend_keyword_subject(MAILSTREAM
*, long, char *, SubjKW
, IELEM_S
**, char *);
42 int get_index_line_color(MAILSTREAM
*, SEARCHSET
*, PAT_STATE
**, COLOR_PAIR
**);
43 void setup_for_index_index_screen(void);
44 void setup_for_thread_index_screen(void);
45 INDEX_PARSE_T
*itoken(int);
46 void load_overview(MAILSTREAM
*, unsigned long, OVERVIEW
*, imapuid_t
);
47 ICE_S
*build_header_work(struct pine
*, MAILSTREAM
*, MSGNO_S
*, long, long, int, int *);
48 char *simple_index_line(char *, size_t, ICE_S
*, long);
49 int resent_to_us(INDEXDATA_S
*);
50 int parsed_resent_to_us(char *);
51 ADDRESS
*fetch_cc(INDEXDATA_S
*);
52 void index_data_env(INDEXDATA_S
*, ENVELOPE
*);
53 void date_str(char *, IndexColType
, int, char *, size_t, int);
54 ADDRESS
*fetch_to(INDEXDATA_S
*);
55 char *get_fieldval(INDEXDATA_S
*, HEADER_TOK_S
*);
56 long scorevalfrommsg(MAILSTREAM
*, MsgNo
, HEADER_TOK_S
*, int);
57 HEADER_TOK_S
*new_hdrtok(char *);
58 void free_hdrtok(HEADER_TOK_S
**);
61 #endif /* PITH_MAILINDX_INCLUDED */