Simplify hidden prefs for too many recipients
[claws.git] / src / prefs_common.h
index 81dc1c083de92a3d2ba47424b2c45b0f97027ab2..f4b6e1d4b8129e584bbdc4df4c7de70958ac915a 100644 (file)
@@ -1,6 +1,6 @@
 /*
- * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client
- * Copyright (C) 1999-2009 Hiroyuki Yamamoto and the Claws Mail team
+ * Claws Mail -- a GTK+ based, lightweight, and fast e-mail client
+ * Copyright (C) 1999-2016 Hiroyuki Yamamoto and the Claws Mail team
  *
  * 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
  *
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
- * 
  */
 
 #ifndef __PREFS_COMMON_H__
 #define __PREFS_COMMON_H__
 
 #ifdef HAVE_CONFIG_H
-#  include "config.h"
+#include "config.h"
+#include "claws-features.h"
 #endif
 
 #include <glib.h>
@@ -35,6 +35,8 @@
 #include "prefs_msg_colors.h"
 #include "prefs_summary_open.h"
 
+#define CLAWS_CONFIG_VERSION 2
+
 typedef struct _PrefsCommon    PrefsCommon;
 
 typedef enum {
@@ -90,16 +92,30 @@ typedef enum
 
 typedef enum
 {
-       OPENMSG_REQUEST_ONLY = 0,
-       OPENMSG_ALWAYS = 1,
+       OPENMSG_NO = 0,
+       OPENMSG_YES = 1,
        OPENMSG_WHEN_VIEW_VISIBLE
 } ShowMsgPolicy;
 
+typedef enum
+{
+       SHOW_NAME,
+       SHOW_ADDR,
+       SHOW_BOTH
+} SummaryFromShow;
+
+typedef enum
+{
+       AVATARS_DISABLE = 0,
+       AVATARS_ENABLE_CAPTURE = 1,
+       AVATARS_ENABLE_RENDER = 2,
+       AVATARS_ENABLE_BOTH = 3
+} EnableAvatars;
+
 struct _PrefsCommon
 {
-#ifdef MAEMO
-       gchar *data_root;
-#endif
+       gint config_version;
+
        /* Receive */
        gboolean use_extinc;
        gchar *extinc_cmd;
@@ -111,11 +127,6 @@ struct _PrefsCommon
        gboolean newmail_notify_auto;
        gboolean newmail_notify_manu;
        gchar   *newmail_notify_cmd;
-#ifdef MAEMO
-       gboolean maemo_show_led;
-       gboolean maemo_play_sound;
-       gboolean maemo_show_banner;
-#endif
        RecvDialogMode recv_dialog_mode;
        gint receivewin_width;
        gint receivewin_height;
@@ -131,7 +142,10 @@ struct _PrefsCommon
        gchar *outgoing_charset;
        TransferEncodingMethod encoding_method;
        gboolean outgoing_fallback_to_ascii;
-
+       gboolean rewrite_first_from;
+       gboolean warn_empty_subj;
+       gint warn_sending_many_recipients_num;
+       gboolean hide_timezone;
        gboolean allow_jisx0201_kana;
 
        /* Compose */
@@ -150,6 +164,7 @@ struct _PrefsCommon
        gboolean show_ruler;
        gboolean autosave;
        gint autosave_length;
+       gboolean autosave_encrypted;
        gboolean warn_large_insert;
        gint warn_large_insert_size;
        gboolean compose_no_markup;
@@ -158,6 +173,7 @@ struct _PrefsCommon
        gchar *compose_subject_format;
        gchar *compose_body_format;
        gboolean show_compose_margin;
+       gboolean type_any_header;
 
        /* Quote */
        gboolean reply_with_quote;
@@ -167,7 +183,6 @@ struct _PrefsCommon
        gchar *fw_quotefmt;
        gboolean forward_as_attachment;
        gboolean redirect_keep_from;
-       gboolean block_cursor;
        gchar *quote_chars;
        
        gboolean enable_aspell;
@@ -178,16 +193,9 @@ struct _PrefsCommon
        gboolean recheck_when_changing_dict;
        gboolean use_alternate;
        gboolean use_both_dicts;
-        
+
        /* Display */
-       /* obsolete fonts */
-       gchar *widgetfont_gtk1;
-       gchar *textfont_gtk1;
-       gchar *normalfont_gtk1;
-       gchar *boldfont_gtk1;
-       gchar *smallfont_gtk1;
-
-       /* new fonts */
+       /* fonts */
        gchar *widgetfont;
        gchar *textfont;
        gchar *printfont;
@@ -215,17 +223,20 @@ struct _PrefsCommon
        gboolean swap_from;
        gboolean use_addr_book;
        gchar *date_format;
+       gboolean *msgview_date_format;
 
        gboolean use_stripes_everywhere;
        gboolean use_stripes_in_summaries; /* overrides if use_stripes_everywhere is set to TRUE */
        gint stripes_color_offset;
-       gboolean enable_dotted_lines;
        gboolean enable_hscrollbar;
        gboolean bold_unread;
+       gboolean next_on_delete;
        gboolean enable_thread;
        gboolean thread_by_subject;
        gint thread_by_subject_max_age; /*!< Max. age of a thread which was threaded
                                         *   by subject (days) */
+       FolderSortKey default_sort_key;
+       FolderSortType default_sort_type;
 
        gchar *last_opened_folder;
        gboolean goto_last_folder_on_startup;
@@ -281,15 +292,19 @@ struct _PrefsCommon
        gint mainwin_height;
        gint mainwin_maximised;
        gint mainwin_fullscreen;
+       gint mainwin_menubar;
 
        gint msgwin_width;
        gint msgwin_height;
 
+       gint mimeview_tree_height;
+       
        gint sourcewin_width;
        gint sourcewin_height;
 
        gint compose_width;
        gint compose_height;
+       gint compose_notebook_height;
        gint compose_x;
        gint compose_y;
 
@@ -307,6 +322,14 @@ struct _PrefsCommon
        gulong signature_col;
        gulong emphasis_col;
        gboolean recycle_quote_colors;
+       gulong default_header_bgcolor;
+       gulong default_header_color;
+       gulong tags_bgcolor;
+       gulong tags_color;
+       gulong qs_active_bgcolor;
+       gulong qs_active_color;
+       gulong qs_error_bgcolor;
+       gulong qs_error_color;
        gboolean display_header_pane;
        gboolean display_header;
        gboolean display_xface;
@@ -320,6 +343,7 @@ struct _PrefsCommon
        gboolean scroll_halfpage;
        gboolean hide_quoted;
        gboolean respect_flowed_format;
+       gboolean show_all_headers;
 
        gboolean show_other_header;
        GSList *disphdr_list;
@@ -333,6 +357,7 @@ struct _PrefsCommon
        gchar *attach_load_dir;
 
        GList *mime_open_cmd_history;
+       gboolean show_inline_attachments;
 
        /* Addressbook */
        gboolean addressbook_use_editaddress_dialog;
@@ -345,6 +370,7 @@ struct _PrefsCommon
 
        gint statusbar_update_step;
        gboolean emulate_emacs;
+       gboolean open_selected_on_folder_open;
        ShowMsgPolicy always_show_msg;
        gboolean mark_as_read_on_new_window;
        gboolean mark_as_read_delay;
@@ -355,8 +381,15 @@ struct _PrefsCommon
        EntryAction summary_select_prio[SUMMARY_OPEN_ACTIONS-1];
 
        NextUnreadMsgDialogShow next_unread_msg_dialog;
+       SummaryFromShow summary_from_show;
        gboolean add_address_by_click;
        gchar *pixmap_theme_path;
+#ifdef HAVE_SVG
+       gboolean enable_alpha_svg;
+       gboolean enable_pixmap_scaling;
+       gboolean pixmap_scaling_auto;
+       gint pixmap_scaling_ppi;
+#endif
        int hover_timeout; /* msecs mouse hover timeout */
        gboolean ask_mark_all_read;
        gboolean ask_apply_per_account_filtering_rules;
@@ -365,6 +398,8 @@ struct _PrefsCommon
        /* Other */
 #ifndef G_OS_WIN32
        gchar *uri_cmd;
+#else
+       gchar *gtk_theme;
 #endif
        gchar *ext_editor_cmd;
        gboolean cmds_use_system_default;
@@ -506,6 +541,23 @@ struct _PrefsCommon
        gboolean inherit_folder_props;
        gboolean flush_metadata;
 
+       gint nav_history_length;
+
+       gulong diff_added_color;
+       gulong diff_deleted_color;
+       gulong diff_hunk_color;
+       
+       gboolean folder_search_wildcard;
+       gboolean address_search_wildcard;
+
+       guint enable_avatars;
+
+#ifndef PASSWORD_CRYPTO_OLD
+       gboolean use_master_passphrase;
+       gchar *master_passphrase;
+       gchar *master_passphrase_salt;
+       guint master_passphrase_pbkdf2_rounds;
+#endif
 };
 
 extern PrefsCommon prefs_common;