inital gtk2 patch
[claws.git] / src / prefs_common.h
index 8149e4b59cdb5ac91c163641cf413b40cfcc3a0b..c968a48a8278c58f6bd3e2db5137f7333fab91f2 100644 (file)
@@ -1,6 +1,6 @@
 /*
  * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client
- * Copyright (C) 1999-2002 Hiroyuki Yamamoto
+ * Copyright (C) 1999-2003 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
@@ -35,10 +35,23 @@ typedef struct _PrefsCommon PrefsCommon;
 
 typedef enum {
        RECV_DIALOG_ALWAYS,
-       RECV_DIALOG_ACTIVE,
+       RECV_DIALOG_MANUAL,
        RECV_DIALOG_NEVER
 } RecvDialogMode;
 
+typedef enum {
+       CTE_AUTO,
+       CTE_BASE64,
+       CTE_QUOTED_PRINTABLE,
+       CTE_8BIT
+} TransferEncodingMethod;
+
+typedef enum {
+       SEND_DIALOG_ALWAYS,
+       /* SEND_DIALOG_ACTIVE would be irrelevant */
+       SEND_DIALOG_NEVER
+} SendDialogMode;
+
 typedef enum
 {
        NEXTUNREADMSGDIALOG_ALWAYS,
@@ -61,18 +74,20 @@ struct _PrefsCommon
        gboolean newmail_notify_auto;
        gboolean newmail_notify_manu;
        gchar   *newmail_notify_cmd;
-       gint max_articles;
+       RecvDialogMode recv_dialog_mode;
+       gboolean close_recv_dialog;
+       gboolean no_recv_err_panel;
 
        /* Send */
        gboolean use_extsend;
        gchar *extsend_cmd;
        gboolean savemsg;
        gboolean queue_msg;
+       SendDialogMode send_dialog_mode;
        gchar *outgoing_charset;
+       TransferEncodingMethod encoding_method;
 
        /* Compose */
-       gboolean auto_sig;
-       gchar *sig_sep;
        gint undolevels;
        gint linewrap_len;
        gboolean linewrap_quote;
@@ -80,6 +95,7 @@ struct _PrefsCommon
        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;
@@ -102,33 +118,48 @@ struct _PrefsCommon
        gboolean enable_aspell;
        gchar *aspell_path;
        gchar *dictionary;
-       gint misspelled_col;
+       gulong misspelled_col;
        gint aspell_sugmode;
        gboolean check_while_typing;
        gboolean use_alternate;
 #endif
         
        /* Display */
+       /* obsolete fonts */
+       gchar *widgetfont_gtk1;
+       gchar *textfont_gtk1;
+       gchar *normalfont_gtk1;
+       gchar *boldfont_gtk1;
+       gchar *smallfont_gtk1;
+
+       /* new fonts */
        gchar *widgetfont;
        gchar *textfont;
        gchar *normalfont;
        gchar *boldfont;
        gchar *smallfont;
+       gchar *titlefont;
+
+       gboolean trans_hdr;
        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;
-       gboolean expand_thread;
-       gboolean bold_unread;
        gboolean swap_from;
+       gboolean expand_thread;
        gboolean use_addr_book;
        gchar *date_format;
 
+       gboolean enable_hscrollbar;
+       gboolean bold_unread;
+       gboolean enable_thread;
+       gboolean thread_by_subject;
+       gint thread_by_subject_max_age; /*!< Max. age of a thread which was threaded
+                                        *   by subject (days) */
+
+       ToolbarStyle toolbar_style;
+       gboolean show_statusbar;
+
        gint folderview_vscrollbar_policy;
 
        /* Filtering */
@@ -145,11 +176,13 @@ struct _PrefsCommon
        gint summary_col_pos[N_SUMMARY_COLS];
        gint summary_col_size[N_SUMMARY_COLS];
 
-       /* Widget size */
-       gint folderview_x;
-       gint folderview_y;
+       /* Widget visibility, position and size */
+       gint folderwin_x;
+       gint folderwin_y;
        gint folderview_width;
        gint folderview_height;
+       gboolean folderview_visible;
+
        gint folder_col_folder;
        gint folder_col_new;
        gint folder_col_unread;
@@ -158,6 +191,12 @@ struct _PrefsCommon
        gint summaryview_width;
        gint summaryview_height;
 
+       gint main_msgwin_x;
+       gint main_msgwin_y;
+       gint msgview_width;
+       gint msgview_height;
+       gboolean msgview_visible;
+
        gint mainview_x;
        gint mainview_y;
        gint mainview_width;
@@ -170,17 +209,20 @@ struct _PrefsCommon
        gint msgwin_width;
        gint msgwin_height;
 
+       gint sourcewin_width;
+       gint sourcewin_height;
+
        gint compose_width;
        gint compose_height;
 
        /* Message */
        gboolean enable_color;
-       gint quote_level1_col;
-       gint quote_level2_col;
-       gint quote_level3_col;
-       gint uri_col;
-       gint tgt_folder_col;
-       gint signature_col;
+       gulong quote_level1_col;
+       gulong quote_level2_col;
+       gulong quote_level3_col;
+       gulong uri_col;
+       gulong tgt_folder_col;
+       gulong signature_col;
        gboolean recycle_quote_colors;
        gboolean conv_mb_alnum;
        gboolean display_header_pane;
@@ -196,6 +238,8 @@ struct _PrefsCommon
        gboolean show_other_header;
        GSList *disphdr_list;
 
+       gboolean attach_desc;
+
        /* MIME viewer */
        gchar *mime_image_viewer;
        gchar *mime_audio_player;
@@ -217,16 +261,15 @@ struct _PrefsCommon
        gboolean sep_folder;
        gboolean sep_msg;
        gboolean emulate_emacs;
-       gboolean show_msg_with_cursor_key;
+       gboolean always_show_msg;
        gboolean open_unread_on_enter;
+       gboolean mark_as_read_on_new_window;
        gboolean open_inbox_on_inc;
        gboolean immediate_exec;
-       RecvDialogMode recv_dialog_mode;
-       gboolean close_recv_dialog;
-       gboolean no_recv_err_panel;
        NextUnreadMsgDialogShow next_unread_msg_dialog;
        gboolean add_address_by_click;
        gchar *pixmap_theme_path;
+       int hover_timeout; /* msecs mouse hover timeout */
 
        /* Other */
        gchar *uri_cmd;
@@ -241,6 +284,14 @@ struct _PrefsCommon
        gboolean ask_on_clean;
        gboolean warn_queued_on_exit;
 
+       gint io_timeout_secs;
+       
+#if 0
+#ifdef USE_OPENSSL
+       gboolean ssl_ask_unknown_valid;
+#endif
+#endif
+
        /* Memory cache*/
        gint cache_max_mem_usage;
        gint cache_min_keep_time;
@@ -248,14 +299,17 @@ struct _PrefsCommon
        /* boolean for work offline 
           stored here for use in inc.c */
        gboolean work_offline;
-
+       
+       gint summary_quicksearch_type;
+       gulong color_new;
 };
 
 extern PrefsCommon prefs_common;
 
-void prefs_common_init         ();
+void prefs_common_init         (void);
 void prefs_common_read_config  (void);
 void prefs_common_save_config  (void);
 void prefs_common_open         (void);
+PrefsCommon *prefs_common_get  (void);
 
 #endif /* __PREFS_COMMON_H__ */