add SSL manager
[claws.git] / src / prefs_common.h
index 30aee90e1143a4db7fe711072fb6ac40b514aa6f..c5282800aae891dbd50939ec438766d0d84d6073 100644 (file)
@@ -1,6 +1,6 @@
 /*
  * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client
- * Copyright (C) 1999-2001 Hiroyuki Yamamoto
+ * Copyright (C) 1999-2002 Hiroyuki Yamamoto
  *
  * 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
@@ -27,6 +27,7 @@
 #include <glib.h>
 
 #include "mainwindow.h"
+#include "summaryview.h"
 #include "codeconv.h"
 #include "textview.h"
 
@@ -38,11 +39,24 @@ typedef enum {
        RECV_DIALOG_NEVER
 } RecvDialogMode;
 
+typedef enum {
+       SEND_DIALOG_ALWAYS,
+       /* SEND_DIALOG_ACTIVE would be irrelevant */
+       SEND_DIALOG_NEVER
+} SendDialogMode;
+
+typedef enum
+{
+       NEXTUNREADMSGDIALOG_ALWAYS,
+       NEXTUNREADMSGDIALOG_ASSUME_YES,
+       NEXTUNREADMSGDIALOG_ASSUME_NO
+} NextUnreadMsgDialogShow;
+
 struct _PrefsCommon
 {
        /* Receive */
        gboolean use_extinc;
-       gchar *extinc_path;
+       gchar *extinc_cmd;
        gboolean inc_local;
        gboolean filter_on_inc;
        gchar *spool_path;
@@ -50,37 +64,57 @@ struct _PrefsCommon
        gboolean autochk_newmail;
        gint autochk_itv;
        gboolean chk_on_startup;
-       gboolean noerrorpanel;
+       gboolean newmail_notify_auto;
+       gboolean newmail_notify_manu;
+       gchar   *newmail_notify_cmd;
        gint max_articles;
 
        /* Send */
        gboolean use_extsend;
-       gchar *extsend_path;
+       gchar *extsend_cmd;
        gboolean savemsg;
        gboolean queue_msg;
        gchar *outgoing_charset;
 
        /* Compose */
-       gboolean reply_with_quote;
-       gchar *quotemark;
-       gchar *quotefmt;
        gboolean auto_sig;
        gchar *sig_sep;
+       gint undolevels;
        gint linewrap_len;
        gboolean linewrap_quote;
+       gboolean autowrap;
        gboolean linewrap_at_send;
+       gboolean auto_exteditor;
        gboolean reply_account_autosel;
+       gboolean default_reply_list;
        gboolean forward_account_autosel;
        gboolean reedit_account_autosel;
        gboolean show_ruler;
+       gboolean autosave;
+       gint autosave_length;
+       
+       /* Quote */
+       gboolean reply_with_quote;
+       gchar *quotemark;
+       gchar *quotefmt;
        gchar *fw_quotemark;
        gchar *fw_quotefmt;
        gboolean forward_as_attachment;
+       gboolean redirect_keep_from;
        gboolean smart_wrapping;
-       gboolean enable_ispell;
-       gchar *ispell_path;
-       gchar *dictionary_path;
-
+       gboolean block_cursor;
+       gchar *quote_chars;
+       
+#if USE_ASPELL
+       gboolean enable_aspell;
+       gchar *aspell_path;
+       gchar *dictionary;
+       gint misspelled_col;
+       gint aspell_sugmode;
+       gboolean check_while_typing;
+       gboolean use_alternate;
+#endif
+        
        /* Display */
        gchar *widgetfont;
        gchar *textfont;
@@ -88,8 +122,11 @@ struct _PrefsCommon
        gchar *boldfont;
        gchar *smallfont;
        gboolean display_folder_unread;
+       gboolean display_img;
+       gint ng_abbrev_len;
        ToolbarStyle toolbar_style;
        gboolean show_statusbar;
+       gboolean show_searchbar;
        gboolean trans_hdr;
        gboolean enable_thread;
        gboolean enable_hscrollbar;
@@ -99,21 +136,21 @@ struct _PrefsCommon
        gboolean use_addr_book;
        gchar *date_format;
 
+       gint folderview_vscrollbar_policy;
+
        /* Filtering */
        GSList *fltlist;
 
        gint kill_score;
        gint important_score;
 
-       gboolean show_mark;
-       gboolean show_unread;
-       gboolean show_mime;
-       gboolean show_number;
-       gboolean show_score;
-       gboolean show_size;
-       gboolean show_date;
-       gboolean show_from;
-       gboolean show_subject;
+       /* Actions */
+       GSList *actions_list;
+
+       /* Summary columns visibility, position and size */
+       gboolean summary_col_visible[N_SUMMARY_COLS];
+       gint summary_col_pos[N_SUMMARY_COLS];
+       gint summary_col_size[N_SUMMARY_COLS];
 
        /* Widget size */
        gint folderview_x;
@@ -127,15 +164,6 @@ struct _PrefsCommon
 
        gint summaryview_width;
        gint summaryview_height;
-       gint summary_col_mark;
-       gint summary_col_unread;
-       gint summary_col_mime;
-       gint summary_col_number;
-       gint summary_col_size;
-       gint summary_col_date;
-       gint summary_col_from;
-       gint summary_col_subject;
-       gint summary_col_score;
 
        gint mainview_x;
        gint mainview_y;
@@ -159,7 +187,7 @@ struct _PrefsCommon
        gint quote_level3_col;
        gint uri_col;
        gint tgt_folder_col;
-       gushort sig_col;
+       gint signature_col;
        gboolean recycle_quote_colors;
        gboolean conv_mb_alnum;
        gboolean display_header_pane;
@@ -178,44 +206,67 @@ struct _PrefsCommon
        /* MIME viewer */
        gchar *mime_image_viewer;
        gchar *mime_audio_player;
+       gchar *mime_open_cmd;
 
+       GList *mime_open_cmd_history;
+
+#if USE_GPGME
        /* Privacy */
-       gboolean default_encrypt;
-       gboolean default_sign;
        gboolean auto_check_signatures;
        gboolean gpg_signature_popup;
+       gboolean store_passphrase;
+       gint store_passphrase_timeout;
        gboolean passphrase_grab;
-       gchar *default_signkey;
        gboolean gpg_warning;
+#endif /* USE_GPGME */
 
        /* Interface */
        gboolean sep_folder;
        gboolean sep_msg;
        gboolean emulate_emacs;
+       gboolean show_msg_with_cursor_key;
        gboolean open_unread_on_enter;
+       gboolean mark_as_read_on_new_window;
        gboolean open_inbox_on_inc;
        gboolean immediate_exec;
        RecvDialogMode recv_dialog_mode;
+       SendDialogMode send_dialog_mode;
+       gboolean close_recv_dialog;
+       gboolean no_recv_err_panel;
+       NextUnreadMsgDialogShow next_unread_msg_dialog;
        gboolean add_address_by_click;
-
-       gboolean confirm_on_exit;
-       gboolean clean_on_exit;
-       gboolean ask_on_clean;
-       gboolean warn_queued_on_exit;
-       gboolean return_receipt;
+       gchar *pixmap_theme_path;
 
        /* Other */
        gchar *uri_cmd;
        gchar *print_cmd;
        gchar *ext_editor_cmd;
+
+        gboolean cliplog;
+        guint loglength;
+
+        gboolean confirm_on_exit;
+       gboolean clean_on_exit;
+       gboolean ask_on_clean;
+       gboolean warn_queued_on_exit;
+#ifdef USE_SSL
+       gboolean ssl_ask_unknown_valid;
+#endif
+       /* Memory cache*/
+       gint cache_max_mem_usage;
+       gint cache_min_keep_time;
+       
+       /* boolean for work offline 
+          stored here for use in inc.c */
+       gboolean work_offline;
+
 };
 
 extern PrefsCommon prefs_common;
 
+void prefs_common_init         ();
 void prefs_common_read_config  (void);
 void prefs_common_save_config  (void);
 void prefs_common_open         (void);
 
-void prefs_summary_display_item_set    (void);
-
 #endif /* __PREFS_COMMON_H__ */