* New version 2.26
[alpine.git] / pith / mailindx.h
blobd73f0bad79923e84c5dbf9902ff7b44614f662b1
1 /*
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 */