X-Git-Url: http://git.madism.org/?a=blobdiff_plain;f=mutt.h;h=8131c7de3ebe9fffb0219e59cb16fbdacac09e46;hb=841a368ddea400022328f35dd8c7a3eb6f543892;hp=4896e5d026e0e350678610bafbd1836d1e632acf;hpb=df70e07e24add1869bcc9b7af2277d9d0c09a281;p=apps%2Fmadmutt.git diff --git a/mutt.h b/mutt.h index 4896e5d..8131c7d 100644 --- a/mutt.h +++ b/mutt.h @@ -1,24 +1,15 @@ /* + * Copyright notice from original mutt: * Copyright (C) 1996-2002 Michael R. Elkins * Copyright (C) 2004 g10 Code GmbH - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. + * + * This file is part of mutt-ng, see http://www.muttng.org/. + * It's licensed under the GNU General Public License, + * please see the file GPL in the top level source directory. */ -#ifndef MUTT_H -#define MUTT_H +#ifndef _MUTT_H +#define _MUTT_H #include "config.h" @@ -53,6 +44,7 @@ #include "rfc822.h" #include "hash.h" #include "charset.h" +#include "lib/rx.h" #ifndef HAVE_WC_FUNCS # ifdef MB_LEN_MAX @@ -61,11 +53,7 @@ # define MB_LEN_MAX 16 #endif -#ifdef SUBVERSION -# define MUTT_VERSION (VERSION SUBVERSION) -#else # define MUTT_VERSION (VERSION) -#endif /* nifty trick I stole from ELM 2.5alpha. */ #ifdef MAIN_C @@ -76,8 +64,6 @@ #define INITVAL(x) #endif -#include "mutt_regex.h" - /* flags for mutt_copy_header() */ #define CH_UPDATE 1 /* update the status and x-status fields? */ #define CH_WEED (1<<1) /* weed the headers? */ @@ -356,6 +342,7 @@ enum { OPTBEEP, OPTBEEPNEW, OPTBOUNCEDELIVERED, + OPTBRAILLEFRIENDLY, OPTCHECKNEW, OPTCOLLAPSEUNREAD, OPTCONFIRMAPPEND, @@ -376,6 +363,9 @@ enum { OPTFORWQUOTE, #if USE_HCACHE OPTHCACHEVERIFY, +#if HAVE_QDBM + OPTHCACHECOMPRESS, +#endif /* HAVE_QDBM */ #endif OPTHDRS, OPTHEADER, @@ -392,20 +382,16 @@ enum { OPTIMAPPASSIVE, OPTIMAPPEEK, OPTIMAPSERVERNOISE, -# if defined(USE_SSL) || defined(USE_GNUTLS) - OPTIMAPFORCESSL, -# endif #endif -#if defined(USE_SSL) || defined(USE_NSS) || defined(USE_GNUTLS) +#if defined(USE_SSL) || defined(USE_GNUTLS) # ifndef USE_GNUTLS + OPTSSLSYSTEMCERTS, OPTSSLV2, -# endif +# endif /* !USE_GNUTLS */ OPTSSLV3, OPTTLSV1, -# ifndef USE_GNUTLS - OPTSSLSYSTEMCERTS, -# endif -#endif + OPTSSLFORCETLS, +#endif /* USE_SSL || USE_GNUTLS */ OPTIMPLICITAUTOVIEW, OPTINCLUDEONLYFIRST, OPTKEEPFLAGGED, @@ -452,6 +438,7 @@ enum { OPTSORTRE, OPTSPAMSEP, OPTSTATUSONTOP, + OPTSTRICTMAILTO, OPTSTRICTMIME, OPTSTRICTTHREADS, OPTSTRIPWAS, @@ -571,52 +558,32 @@ enum { #define toggle_option(x) mutt_bit_toggle(Options,x) #define option(x) mutt_bit_isset(Options,x) -/* Exit values used in send_msg() */ -#define S_ERR 127 -#define S_BKG 126 - typedef struct list_t { char *data; struct list_t *next; } LIST; -typedef struct rx_list_t { - REGEXP *rx; - struct rx_list_t *next; -} RX_LIST; - typedef struct spam_list_t { - REGEXP *rx; + rx_t *rx; int nmatch; char *template; struct spam_list_t *next; } SPAM_LIST; -#define mutt_new_list() safe_calloc (1, sizeof (LIST)) -#define mutt_new_spam_list() safe_calloc (1, sizeof (SPAM_LIST)) -#define mutt_new_rx_list() safe_calloc (1, sizeof (RX_LIST)) +#define mutt_new_list() mem_calloc (1, sizeof (LIST)) +#define mutt_new_spam_list() mem_calloc (1, sizeof (SPAM_LIST)) void mutt_free_list (LIST **); -void mutt_free_rx_list (RX_LIST **); void mutt_free_spam_list (SPAM_LIST **); LIST *mutt_copy_list (LIST *); int mutt_matches_ignore (const char *, LIST *); /* add an element to a list */ -LIST *mutt_add_list (LIST *, const char *); +LIST *mutt_add_list (LIST*, const char*); +LIST *mutt_add_list_n (LIST*, const void*, size_t len); void mutt_init (int, LIST *); -typedef struct alias { - struct alias *self; /* XXX - ugly hack */ - char *name; - ADDRESS *addr; - struct alias *next; - short tagged; - short del; - short num; -} ALIAS; - typedef struct envelope { ADDRESS *return_path; ADDRESS *from; @@ -644,6 +611,8 @@ typedef struct envelope { LIST *references; /* message references (in reverse order) */ LIST *in_reply_to; /* in-reply-to header content */ LIST *userhdrs; /* user defined headers */ + unsigned int irt_changed:1; /* In-Reply-To changed to link/break threads */ + unsigned int refs_changed:1; /* References changed to break thread */ } ENVELOPE; typedef struct parameter { @@ -759,8 +728,6 @@ typedef struct header { unsigned int subject_changed:1; /* used for threading */ unsigned int threaded:1; /* used for threading */ unsigned int display_subject:1; /* used for threading */ - unsigned int irt_changed:1; /* In-Reply-To changed to link/break threads */ - unsigned int refs_changed:1; /* References changed to break thread */ unsigned int recip_valid:1; /* is_recipient is valid */ unsigned int active:1; /* message is not to be removed */ unsigned int trash:1; /* message is marked as trashed on disk. @@ -804,8 +771,6 @@ typedef struct header { char *tree; /* character string to print thread tree */ struct thread *thread; - ENVELOPE *new_env; /* envelope information for rethreading */ - #ifdef MIXMASTER LIST *chain; #endif @@ -902,57 +867,16 @@ typedef struct { unsigned int quiet:1; /* inhibit status messages? */ unsigned int collapsed:1; /* are all threads collapsed? */ unsigned int closing:1; /* mailbox is being closed */ + unsigned int counting:1; /* do we just want to cound? */ } CONTEXT; -typedef struct attachptr { - BODY *content; - int parent_type; - char *tree; - int level; - int num; -} ATTACHPTR; - -typedef struct { - FILE *fpin; - FILE *fpout; - char *prefix; - int flags; -} STATE; - -/* used by enter.c */ - -typedef struct { - wchar_t *wbuf; - size_t wbuflen; - size_t lastchar; - size_t curpos; - size_t begin; - int tabs; -} ENTER_STATE; - -/* flags for the STATE struct */ -#define M_DISPLAY (1<<0) /* output is displayed to the user */ -#define M_VERIFY (1<<1) /* perform signature verification */ -#define M_PENDINGPREFIX (1<<2) /* prefix to write, but character must follow */ -#define M_WEED (1<<3) /* weed headers even when not in display mode */ -#define M_CHARCONV (1<<4) /* Do character set conversions */ -#define M_PRINTING (1<<5) /* are we printing? - M_DISPLAY "light" */ -#define M_REPLYING (1<<6) /* are we replying? */ -#define M_FIRSTDONE (1<<7) /* the first attachment has been done */ - -#define state_set_prefix(s) ((s)->flags |= M_PENDINGPREFIX) -#define state_reset_prefix(s) ((s)->flags &= ~M_PENDINGPREFIX) -#define state_puts(x,y) fputs(x,(y)->fpout) -#define state_putc(x,y) fputc(x,(y)->fpout) - -void state_mark_attach (STATE *); -void state_attach_puts (const char *, STATE *); -void state_prefix_putc (char, STATE *); -int state_printf (STATE *, const char *, ...); - #include "ascii.h" +#include "alias.h" +#include "buffer.h" +#include "state.h" +#include "enter.h" #include "protos.h" #include "lib.h" #include "globals.h" -#endif /*MUTT_H */ +#endif /* !_MUTT_H */