Revision 533 src/prefs_account.c
| prefs_account.c (revision 533) | ||
|---|---|---|
| 25 | 25 |
|
| 26 | 26 |
#include <glib.h> |
| 27 | 27 |
#include <glib/gi18n.h> |
| 28 |
#include <gtk/gtk.h> |
|
| 29 |
#include <gdk/gdkkeysyms.h> |
|
| 30 | 28 |
#include <stdio.h> |
| 31 | 29 |
#include <sys/types.h> |
| 32 | 30 |
#include <sys/stat.h> |
| ... | ... | |
| 34 | 32 |
#include <stdlib.h> |
| 35 | 33 |
#include <ctype.h> |
| 36 | 34 |
|
| 37 |
#include "main.h" |
|
| 38 | 35 |
#include "prefs.h" |
| 39 |
#include "prefs_ui.h" |
|
| 40 | 36 |
#include "prefs_account.h" |
| 41 | 37 |
#include "prefs_customheader.h" |
| 42 | 38 |
#include "prefs_common.h" |
| 43 | 39 |
#include "account.h" |
| 44 |
#include "mainwindow.h" |
|
| 45 |
#include "manage_window.h" |
|
| 46 |
#include "foldersel.h" |
|
| 47 |
#include "inc.h" |
|
| 48 |
#include "menu.h" |
|
| 49 |
#include "gtkutils.h" |
|
| 50 | 40 |
#include "utils.h" |
| 51 |
#include "alertpanel.h" |
|
| 52 | 41 |
#include "smtp.h" |
| 53 | 42 |
#include "imap.h" |
| 54 | 43 |
|
| 55 |
static gboolean cancelled; |
|
| 56 |
|
|
| 57 | 44 |
static PrefsAccount tmp_ac_prefs; |
| 58 | 45 |
|
| 59 |
static PrefsDialog dialog; |
|
| 60 |
|
|
| 61 |
static struct Basic {
|
|
| 62 |
GtkWidget *acname_entry; |
|
| 63 |
GtkWidget *default_chkbtn; |
|
| 64 |
|
|
| 65 |
GtkWidget *name_entry; |
|
| 66 |
GtkWidget *addr_entry; |
|
| 67 |
GtkWidget *org_entry; |
|
| 68 |
|
|
| 69 |
GtkWidget *serv_frame; |
|
| 70 |
GtkWidget *serv_table; |
|
| 71 |
GtkWidget *protocol_optmenu; |
|
| 72 |
GtkWidget *recvserv_label; |
|
| 73 |
GtkWidget *smtpserv_label; |
|
| 74 |
GtkWidget *nntpserv_label; |
|
| 75 |
GtkWidget *recvserv_entry; |
|
| 76 |
GtkWidget *smtpserv_entry; |
|
| 77 |
GtkWidget *nntpserv_entry; |
|
| 78 |
GtkWidget *nntpauth_chkbtn; |
|
| 79 |
GtkWidget *uid_label; |
|
| 80 |
GtkWidget *pass_label; |
|
| 81 |
GtkWidget *uid_entry; |
|
| 82 |
GtkWidget *pass_entry; |
|
| 83 |
} basic; |
|
| 84 |
|
|
| 85 |
static struct Receive {
|
|
| 86 |
GtkWidget *pop3_frame; |
|
| 87 |
GtkWidget *use_apop_chkbtn; |
|
| 88 |
GtkWidget *rmmail_chkbtn; |
|
| 89 |
GtkWidget *leave_time_entry; |
|
| 90 |
GtkWidget *getall_chkbtn; |
|
| 91 |
GtkWidget *size_limit_chkbtn; |
|
| 92 |
GtkWidget *size_limit_entry; |
|
| 93 |
GtkWidget *filter_on_recv_chkbtn; |
|
| 94 |
GtkWidget *inbox_label; |
|
| 95 |
GtkWidget *inbox_entry; |
|
| 96 |
GtkWidget *inbox_btn; |
|
| 97 |
|
|
| 98 |
GtkWidget *imap_frame; |
|
| 99 |
GtkWidget *imap_auth_type_optmenu; |
|
| 100 |
|
|
| 101 |
GtkWidget *nntp_frame; |
|
| 102 |
GtkWidget *maxarticle_spinbtn; |
|
| 103 |
GtkObject *maxarticle_spinbtn_adj; |
|
| 104 |
|
|
| 105 |
GtkWidget *recvatgetall_chkbtn; |
|
| 106 |
} receive; |
|
| 107 |
|
|
| 108 |
static struct Send {
|
|
| 109 |
GtkWidget *date_chkbtn; |
|
| 110 |
GtkWidget *msgid_chkbtn; |
|
| 111 |
|
|
| 112 |
GtkWidget *customhdr_chkbtn; |
|
| 113 |
|
|
| 114 |
GtkWidget *smtp_auth_chkbtn; |
|
| 115 |
GtkWidget *smtp_auth_type_optmenu; |
|
| 116 |
GtkWidget *smtp_uid_entry; |
|
| 117 |
GtkWidget *smtp_pass_entry; |
|
| 118 |
/* GtkWidget *pop_bfr_smtp_chkbtn; */ |
|
| 119 |
} p_send; |
|
| 120 |
|
|
| 121 |
static struct Compose {
|
|
| 122 |
GtkWidget *sigfile_radiobtn; |
|
| 123 |
GtkWidget *sigpath_entry; |
|
| 124 |
|
|
| 125 |
GtkWidget *autocc_chkbtn; |
|
| 126 |
GtkWidget *autocc_entry; |
|
| 127 |
GtkWidget *autobcc_chkbtn; |
|
| 128 |
GtkWidget *autobcc_entry; |
|
| 129 |
GtkWidget *autoreplyto_chkbtn; |
|
| 130 |
GtkWidget *autoreplyto_entry; |
|
| 131 |
} compose; |
|
| 132 |
|
|
| 133 |
#if USE_GPGME |
|
| 134 |
static struct Privacy {
|
|
| 135 |
GtkWidget *default_sign_chkbtn; |
|
| 136 |
GtkWidget *default_encrypt_chkbtn; |
|
| 137 |
GtkWidget *encrypt_reply_chkbtn; |
|
| 138 |
GtkWidget *ascii_armored_chkbtn; |
|
| 139 |
GtkWidget *clearsign_chkbtn; |
|
| 140 |
GtkWidget *defaultkey_radiobtn; |
|
| 141 |
GtkWidget *emailkey_radiobtn; |
|
| 142 |
GtkWidget *customkey_radiobtn; |
|
| 143 |
GtkWidget *customkey_entry; |
|
| 144 |
} privacy; |
|
| 145 |
#endif /* USE_GPGME */ |
|
| 146 |
|
|
| 147 |
#if USE_SSL |
|
| 148 |
static struct SSLPrefs {
|
|
| 149 |
GtkWidget *pop_frame; |
|
| 150 |
GtkWidget *pop_nossl_radiobtn; |
|
| 151 |
GtkWidget *pop_ssltunnel_radiobtn; |
|
| 152 |
GtkWidget *pop_starttls_radiobtn; |
|
| 153 |
|
|
| 154 |
GtkWidget *imap_frame; |
|
| 155 |
GtkWidget *imap_nossl_radiobtn; |
|
| 156 |
GtkWidget *imap_ssltunnel_radiobtn; |
|
| 157 |
GtkWidget *imap_starttls_radiobtn; |
|
| 158 |
|
|
| 159 |
GtkWidget *nntp_frame; |
|
| 160 |
GtkWidget *nntp_nossl_radiobtn; |
|
| 161 |
GtkWidget *nntp_ssltunnel_radiobtn; |
|
| 162 |
|
|
| 163 |
GtkWidget *send_frame; |
|
| 164 |
GtkWidget *smtp_nossl_radiobtn; |
|
| 165 |
GtkWidget *smtp_ssltunnel_radiobtn; |
|
| 166 |
GtkWidget *smtp_starttls_radiobtn; |
|
| 167 |
|
|
| 168 |
GtkWidget *use_nonblocking_ssl_chkbtn; |
|
| 169 |
} ssl; |
|
| 170 |
#endif /* USE_SSL */ |
|
| 171 |
|
|
| 172 |
static struct Advanced {
|
|
| 173 |
GtkWidget *smtpport_chkbtn; |
|
| 174 |
GtkWidget *smtpport_entry; |
|
| 175 |
GtkWidget *popport_hbox; |
|
| 176 |
GtkWidget *popport_chkbtn; |
|
| 177 |
GtkWidget *popport_entry; |
|
| 178 |
GtkWidget *imapport_hbox; |
|
| 179 |
GtkWidget *imapport_chkbtn; |
|
| 180 |
GtkWidget *imapport_entry; |
|
| 181 |
GtkWidget *nntpport_hbox; |
|
| 182 |
GtkWidget *nntpport_chkbtn; |
|
| 183 |
GtkWidget *nntpport_entry; |
|
| 184 |
GtkWidget *domain_chkbtn; |
|
| 185 |
GtkWidget *domain_entry; |
|
| 186 |
|
|
| 187 |
GtkWidget *imap_frame; |
|
| 188 |
GtkWidget *imapdir_entry; |
|
| 189 |
|
|
| 190 |
GtkWidget *sent_folder_chkbtn; |
|
| 191 |
GtkWidget *sent_folder_entry; |
|
| 192 |
GtkWidget *draft_folder_chkbtn; |
|
| 193 |
GtkWidget *draft_folder_entry; |
|
| 194 |
GtkWidget *trash_folder_chkbtn; |
|
| 195 |
GtkWidget *trash_folder_entry; |
|
| 196 |
} advanced; |
|
| 197 |
|
|
| 198 |
static void prefs_account_protocol_set_data_from_optmenu(PrefParam *pparam); |
|
| 199 |
static void prefs_account_protocol_set_optmenu (PrefParam *pparam); |
|
| 200 |
static void prefs_account_protocol_activated (GtkMenuItem *menuitem); |
|
| 201 |
|
|
| 202 |
static void prefs_account_imap_auth_type_set_data_from_optmenu |
|
| 203 |
(PrefParam *pparam); |
|
| 204 |
static void prefs_account_imap_auth_type_set_optmenu (PrefParam *pparam); |
|
| 205 |
static void prefs_account_smtp_auth_type_set_data_from_optmenu |
|
| 206 |
(PrefParam *pparam); |
|
| 207 |
static void prefs_account_smtp_auth_type_set_optmenu (PrefParam *pparam); |
|
| 208 |
|
|
| 209 |
static void prefs_account_enum_set_data_from_radiobtn (PrefParam *pparam); |
|
| 210 |
static void prefs_account_enum_set_radiobtn (PrefParam *pparam); |
|
| 211 |
|
|
| 212 |
#if USE_GPGME |
|
| 213 |
static void prefs_account_ascii_armored_warning (GtkWidget *widget); |
|
| 214 |
#endif /* USE_GPGME */ |
|
| 215 |
|
|
| 216 | 46 |
static PrefParam param[] = {
|
| 217 | 47 |
/* Basic */ |
| 218 |
{"account_name", NULL, &tmp_ac_prefs.account_name, P_STRING,
|
|
| 219 |
P_WID(&basic.acname_entry), |
|
| 220 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 48 |
{"account_name", NULL, &tmp_ac_prefs.account_name, P_STRING},
|
|
| 49 |
{"is_default", "FALSE", &tmp_ac_prefs.is_default, P_BOOL},
|
|
| 50 |
{"name", NULL, &tmp_ac_prefs.name, P_STRING},
|
|
| 51 |
{"address", NULL, &tmp_ac_prefs.address, P_STRING},
|
|
| 52 |
{"organization", NULL, &tmp_ac_prefs.organization, P_STRING},
|
|
| 53 |
{"protocol", NULL, &tmp_ac_prefs.protocol, P_ENUM},
|
|
| 54 |
{"receive_server", NULL, &tmp_ac_prefs.recv_server, P_STRING},
|
|
| 55 |
{"smtp_server", NULL, &tmp_ac_prefs.smtp_server, P_STRING},
|
|
| 56 |
{"nntp_server", NULL, &tmp_ac_prefs.nntp_server, P_STRING},
|
|
| 57 |
{"use_nntp_auth", "FALSE", &tmp_ac_prefs.use_nntp_auth, P_BOOL},
|
|
| 58 |
{"user_id", "ENV_USER", &tmp_ac_prefs.userid, P_STRING},
|
|
| 59 |
{"password", NULL, &tmp_ac_prefs.passwd, P_STRING},
|
|
| 60 |
{"inbox", "inbox", &tmp_ac_prefs.inbox, P_STRING},
|
|
| 221 | 61 |
|
| 222 |
{"is_default", "FALSE", &tmp_ac_prefs.is_default, P_BOOL,
|
|
| 223 |
P_WID(&basic.default_chkbtn), |
|
| 224 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 225 |
|
|
| 226 |
{"name", NULL, &tmp_ac_prefs.name, P_STRING,
|
|
| 227 |
P_WID(&basic.name_entry), prefs_set_data_from_entry, prefs_set_entry}, |
|
| 228 |
|
|
| 229 |
{"address", NULL, &tmp_ac_prefs.address, P_STRING,
|
|
| 230 |
P_WID(&basic.addr_entry), prefs_set_data_from_entry, prefs_set_entry}, |
|
| 231 |
|
|
| 232 |
{"organization", NULL, &tmp_ac_prefs.organization, P_STRING,
|
|
| 233 |
P_WID(&basic.org_entry), prefs_set_data_from_entry, prefs_set_entry}, |
|
| 234 |
|
|
| 235 |
{"protocol", NULL, &tmp_ac_prefs.protocol, P_ENUM,
|
|
| 236 |
P_WID(&basic.protocol_optmenu), |
|
| 237 |
prefs_account_protocol_set_data_from_optmenu, |
|
| 238 |
prefs_account_protocol_set_optmenu}, |
|
| 239 |
|
|
| 240 |
{"receive_server", NULL, &tmp_ac_prefs.recv_server, P_STRING,
|
|
| 241 |
P_WID(&basic.recvserv_entry), |
|
| 242 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 243 |
|
|
| 244 |
{"smtp_server", NULL, &tmp_ac_prefs.smtp_server, P_STRING,
|
|
| 245 |
P_WID(&basic.smtpserv_entry), |
|
| 246 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 247 |
|
|
| 248 |
{"nntp_server", NULL, &tmp_ac_prefs.nntp_server, P_STRING,
|
|
| 249 |
P_WID(&basic.nntpserv_entry), |
|
| 250 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 251 |
|
|
| 252 |
{"use_nntp_auth", "FALSE", &tmp_ac_prefs.use_nntp_auth, P_BOOL,
|
|
| 253 |
P_WID(&basic.nntpauth_chkbtn), |
|
| 254 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 255 |
|
|
| 256 |
{"user_id", "ENV_USER", &tmp_ac_prefs.userid, P_STRING,
|
|
| 257 |
P_WID(&basic.uid_entry), prefs_set_data_from_entry, prefs_set_entry}, |
|
| 258 |
|
|
| 259 |
{"password", NULL, &tmp_ac_prefs.passwd, P_STRING,
|
|
| 260 |
P_WID(&basic.pass_entry), prefs_set_data_from_entry, prefs_set_entry}, |
|
| 261 |
|
|
| 262 |
{"inbox", "inbox", &tmp_ac_prefs.inbox, P_STRING,
|
|
| 263 |
P_WID(&receive.inbox_entry), |
|
| 264 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 265 |
|
|
| 266 | 62 |
/* Receive */ |
| 267 |
{"use_apop_auth", "FALSE", &tmp_ac_prefs.use_apop_auth, P_BOOL,
|
|
| 268 |
P_WID(&receive.use_apop_chkbtn), |
|
| 269 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 63 |
{"use_apop_auth", "FALSE", &tmp_ac_prefs.use_apop_auth, P_BOOL},
|
|
| 64 |
{"remove_mail", "TRUE", &tmp_ac_prefs.rmmail, P_BOOL},
|
|
| 65 |
{"message_leave_time", "0", &tmp_ac_prefs.msg_leave_time, P_INT},
|
|
| 66 |
{"get_all_mail", "FALSE", &tmp_ac_prefs.getall, P_BOOL},
|
|
| 67 |
{"enable_size_limit", "FALSE", &tmp_ac_prefs.enable_size_limit, P_BOOL},
|
|
| 68 |
{"size_limit", "1024", &tmp_ac_prefs.size_limit, P_INT},
|
|
| 69 |
{"filter_on_receive", "TRUE", &tmp_ac_prefs.filter_on_recv, P_BOOL},
|
|
| 70 |
{"imap_auth_method", "0", &tmp_ac_prefs.imap_auth_type, P_ENUM},
|
|
| 71 |
{"max_nntp_articles", "300", &tmp_ac_prefs.max_nntp_articles, P_INT},
|
|
| 72 |
{"receive_at_get_all", "TRUE", &tmp_ac_prefs.recv_at_getall, P_BOOL},
|
|
| 270 | 73 |
|
| 271 |
{"remove_mail", "TRUE", &tmp_ac_prefs.rmmail, P_BOOL,
|
|
| 272 |
P_WID(&receive.rmmail_chkbtn), |
|
| 273 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 274 |
|
|
| 275 |
{"message_leave_time", "0", &tmp_ac_prefs.msg_leave_time, P_INT,
|
|
| 276 |
P_WID(&receive.leave_time_entry), |
|
| 277 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 278 |
|
|
| 279 |
{"get_all_mail", "FALSE", &tmp_ac_prefs.getall, P_BOOL,
|
|
| 280 |
P_WID(&receive.getall_chkbtn), |
|
| 281 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 282 |
|
|
| 283 |
{"enable_size_limit", "FALSE", &tmp_ac_prefs.enable_size_limit, P_BOOL,
|
|
| 284 |
P_WID(&receive.size_limit_chkbtn), |
|
| 285 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 286 |
{"size_limit", "1024", &tmp_ac_prefs.size_limit, P_INT,
|
|
| 287 |
P_WID(&receive.size_limit_entry), |
|
| 288 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 289 |
|
|
| 290 |
{"filter_on_receive", "TRUE", &tmp_ac_prefs.filter_on_recv, P_BOOL,
|
|
| 291 |
P_WID(&receive.filter_on_recv_chkbtn), |
|
| 292 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 293 |
|
|
| 294 |
{"imap_auth_method", "0", &tmp_ac_prefs.imap_auth_type, P_ENUM,
|
|
| 295 |
P_WID(&receive.imap_auth_type_optmenu), |
|
| 296 |
prefs_account_imap_auth_type_set_data_from_optmenu, |
|
| 297 |
prefs_account_imap_auth_type_set_optmenu}, |
|
| 298 |
|
|
| 299 |
{"max_nntp_articles", "300", &tmp_ac_prefs.max_nntp_articles, P_INT,
|
|
| 300 |
P_WID(&receive.maxarticle_spinbtn), |
|
| 301 |
prefs_set_data_from_spinbtn, prefs_set_spinbtn}, |
|
| 302 |
|
|
| 303 |
{"receive_at_get_all", "TRUE", &tmp_ac_prefs.recv_at_getall, P_BOOL,
|
|
| 304 |
P_WID(&receive.recvatgetall_chkbtn), |
|
| 305 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 306 |
|
|
| 307 | 74 |
/* Send */ |
| 308 |
{"add_date", "TRUE", &tmp_ac_prefs.add_date, P_BOOL,
|
|
| 309 |
P_WID(&p_send.date_chkbtn), |
|
| 310 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 75 |
{"add_date", "TRUE", &tmp_ac_prefs.add_date, P_BOOL},
|
|
| 76 |
{"generate_msgid", "TRUE", &tmp_ac_prefs.gen_msgid, P_BOOL},
|
|
| 77 |
{"add_custom_header", "FALSE", &tmp_ac_prefs.add_customhdr, P_BOOL},
|
|
| 78 |
{"use_smtp_auth", "FALSE", &tmp_ac_prefs.use_smtp_auth, P_BOOL},
|
|
| 79 |
{"smtp_auth_method", "0", &tmp_ac_prefs.smtp_auth_type, P_ENUM},
|
|
| 80 |
{"smtp_user_id", NULL, &tmp_ac_prefs.smtp_userid, P_STRING},
|
|
| 81 |
{"smtp_password", NULL, &tmp_ac_prefs.smtp_passwd, P_STRING},
|
|
| 82 |
{"pop_before_smtp", "FALSE", &tmp_ac_prefs.pop_before_smtp, P_BOOL},
|
|
| 311 | 83 |
|
| 312 |
{"generate_msgid", "TRUE", &tmp_ac_prefs.gen_msgid, P_BOOL,
|
|
| 313 |
P_WID(&p_send.msgid_chkbtn), |
|
| 314 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 315 |
|
|
| 316 |
{"add_custom_header", "FALSE", &tmp_ac_prefs.add_customhdr, P_BOOL,
|
|
| 317 |
P_WID(&p_send.customhdr_chkbtn), |
|
| 318 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 319 |
|
|
| 320 |
{"use_smtp_auth", "FALSE", &tmp_ac_prefs.use_smtp_auth, P_BOOL,
|
|
| 321 |
P_WID(&p_send.smtp_auth_chkbtn), |
|
| 322 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 323 |
|
|
| 324 |
{"smtp_auth_method", "0", &tmp_ac_prefs.smtp_auth_type, P_ENUM,
|
|
| 325 |
P_WID(&p_send.smtp_auth_type_optmenu), |
|
| 326 |
prefs_account_smtp_auth_type_set_data_from_optmenu, |
|
| 327 |
prefs_account_smtp_auth_type_set_optmenu}, |
|
| 328 |
|
|
| 329 |
{"smtp_user_id", NULL, &tmp_ac_prefs.smtp_userid, P_STRING,
|
|
| 330 |
P_WID(&p_send.smtp_uid_entry), |
|
| 331 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 332 |
{"smtp_password", NULL, &tmp_ac_prefs.smtp_passwd, P_STRING,
|
|
| 333 |
P_WID(&p_send.smtp_pass_entry), |
|
| 334 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 335 |
|
|
| 336 |
{"pop_before_smtp", "FALSE", &tmp_ac_prefs.pop_before_smtp, P_BOOL,
|
|
| 337 |
NULL, NULL, NULL}, |
|
| 338 |
#if 0 |
|
| 339 |
P_WID(&p_send.pop_bfr_smtp_chkbtn), |
|
| 340 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 341 |
#endif |
|
| 342 |
|
|
| 343 | 84 |
/* Compose */ |
| 344 |
{"signature_type", "0", &tmp_ac_prefs.sig_type, P_ENUM,
|
|
| 345 |
P_WID(&compose.sigfile_radiobtn), |
|
| 346 |
prefs_account_enum_set_data_from_radiobtn, |
|
| 347 |
prefs_account_enum_set_radiobtn}, |
|
| 85 |
{"signature_type", "0", &tmp_ac_prefs.sig_type, P_ENUM},
|
|
| 348 | 86 |
{"signature_path", "~" G_DIR_SEPARATOR_S DEFAULT_SIGNATURE,
|
| 349 |
&tmp_ac_prefs.sig_path, P_STRING, |
|
| 350 |
P_WID(&compose.sigpath_entry), |
|
| 351 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 87 |
&tmp_ac_prefs.sig_path, P_STRING}, |
|
| 88 |
{"set_autocc", "FALSE", &tmp_ac_prefs.set_autocc, P_BOOL},
|
|
| 89 |
{"auto_cc", NULL, &tmp_ac_prefs.auto_cc, P_STRING},
|
|
| 90 |
{"set_autobcc", "FALSE", &tmp_ac_prefs.set_autobcc, P_BOOL},
|
|
| 91 |
{"auto_bcc", NULL, &tmp_ac_prefs.auto_bcc, P_STRING},
|
|
| 92 |
{"set_autoreplyto", "FALSE", &tmp_ac_prefs.set_autoreplyto, P_BOOL},
|
|
| 93 |
{"auto_replyto", NULL, &tmp_ac_prefs.auto_replyto, P_STRING},
|
|
| 352 | 94 |
|
| 353 |
{"set_autocc", "FALSE", &tmp_ac_prefs.set_autocc, P_BOOL,
|
|
| 354 |
P_WID(&compose.autocc_chkbtn), |
|
| 355 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 356 |
|
|
| 357 |
{"auto_cc", NULL, &tmp_ac_prefs.auto_cc, P_STRING,
|
|
| 358 |
P_WID(&compose.autocc_entry), |
|
| 359 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 360 |
|
|
| 361 |
{"set_autobcc", "FALSE", &tmp_ac_prefs.set_autobcc, P_BOOL,
|
|
| 362 |
P_WID(&compose.autobcc_chkbtn), |
|
| 363 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 364 |
|
|
| 365 |
{"auto_bcc", NULL, &tmp_ac_prefs.auto_bcc, P_STRING,
|
|
| 366 |
P_WID(&compose.autobcc_entry), |
|
| 367 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 368 |
|
|
| 369 |
{"set_autoreplyto", "FALSE", &tmp_ac_prefs.set_autoreplyto, P_BOOL,
|
|
| 370 |
P_WID(&compose.autoreplyto_chkbtn), |
|
| 371 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 372 |
|
|
| 373 |
{"auto_replyto", NULL, &tmp_ac_prefs.auto_replyto, P_STRING,
|
|
| 374 |
P_WID(&compose.autoreplyto_entry), |
|
| 375 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 376 |
|
|
| 377 | 95 |
#if USE_GPGME |
| 378 | 96 |
/* Privacy */ |
| 379 |
{"default_sign", "FALSE", &tmp_ac_prefs.default_sign, P_BOOL,
|
|
| 380 |
P_WID(&privacy.default_sign_chkbtn), |
|
| 381 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 382 |
{"default_encrypt", "FALSE", &tmp_ac_prefs.default_encrypt, P_BOOL,
|
|
| 383 |
P_WID(&privacy.default_encrypt_chkbtn), |
|
| 384 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 385 |
{"encrypt_reply", "TRUE", &tmp_ac_prefs.encrypt_reply, P_BOOL,
|
|
| 386 |
P_WID(&privacy.encrypt_reply_chkbtn), |
|
| 387 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 388 |
{"ascii_armored", "FALSE", &tmp_ac_prefs.ascii_armored, P_BOOL,
|
|
| 389 |
P_WID(&privacy.ascii_armored_chkbtn), |
|
| 390 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 391 |
{"clearsign", "FALSE", &tmp_ac_prefs.clearsign, P_BOOL,
|
|
| 392 |
P_WID(&privacy.clearsign_chkbtn), |
|
| 393 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 394 |
{"sign_key", NULL, &tmp_ac_prefs.sign_key, P_ENUM,
|
|
| 395 |
P_WID(&privacy.defaultkey_radiobtn), |
|
| 396 |
prefs_account_enum_set_data_from_radiobtn, |
|
| 397 |
prefs_account_enum_set_radiobtn}, |
|
| 398 |
{"sign_key_id", NULL, &tmp_ac_prefs.sign_key_id, P_STRING,
|
|
| 399 |
P_WID(&privacy.customkey_entry), |
|
| 400 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 97 |
{"default_sign", "FALSE", &tmp_ac_prefs.default_sign, P_BOOL},
|
|
| 98 |
{"default_encrypt", "FALSE", &tmp_ac_prefs.default_encrypt, P_BOOL},
|
|
| 99 |
{"encrypt_reply", "TRUE", &tmp_ac_prefs.encrypt_reply, P_BOOL},
|
|
| 100 |
{"ascii_armored", "FALSE", &tmp_ac_prefs.ascii_armored, P_BOOL},
|
|
| 101 |
{"clearsign", "FALSE", &tmp_ac_prefs.clearsign, P_BOOL},
|
|
| 102 |
{"sign_key", NULL, &tmp_ac_prefs.sign_key, P_ENUM},
|
|
| 103 |
{"sign_key_id", NULL, &tmp_ac_prefs.sign_key_id, P_STRING},
|
|
| 401 | 104 |
#endif /* USE_GPGME */ |
| 402 | 105 |
|
| 403 | 106 |
#if USE_SSL |
| 404 | 107 |
/* SSL */ |
| 405 |
{"ssl_pop", "0", &tmp_ac_prefs.ssl_pop, P_ENUM,
|
|
| 406 |
P_WID(&ssl.pop_nossl_radiobtn), |
|
| 407 |
prefs_account_enum_set_data_from_radiobtn, |
|
| 408 |
prefs_account_enum_set_radiobtn}, |
|
| 409 |
{"ssl_imap", "0", &tmp_ac_prefs.ssl_imap, P_ENUM,
|
|
| 410 |
P_WID(&ssl.imap_nossl_radiobtn), |
|
| 411 |
prefs_account_enum_set_data_from_radiobtn, |
|
| 412 |
prefs_account_enum_set_radiobtn}, |
|
| 413 |
{"ssl_nntp", "0", &tmp_ac_prefs.ssl_nntp, P_ENUM,
|
|
| 414 |
P_WID(&ssl.nntp_nossl_radiobtn), |
|
| 415 |
prefs_account_enum_set_data_from_radiobtn, |
|
| 416 |
prefs_account_enum_set_radiobtn}, |
|
| 417 |
{"ssl_smtp", "0", &tmp_ac_prefs.ssl_smtp, P_ENUM,
|
|
| 418 |
P_WID(&ssl.smtp_nossl_radiobtn), |
|
| 419 |
prefs_account_enum_set_data_from_radiobtn, |
|
| 420 |
prefs_account_enum_set_radiobtn}, |
|
| 421 |
|
|
| 422 |
{"use_nonblocking_ssl", "1", &tmp_ac_prefs.use_nonblocking_ssl, P_BOOL,
|
|
| 423 |
P_WID(&ssl.use_nonblocking_ssl_chkbtn), |
|
| 424 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 108 |
{"ssl_pop", "0", &tmp_ac_prefs.ssl_pop, P_ENUM},
|
|
| 109 |
{"ssl_imap", "0", &tmp_ac_prefs.ssl_imap, P_ENUM},
|
|
| 110 |
{"ssl_nntp", "0", &tmp_ac_prefs.ssl_nntp, P_ENUM},
|
|
| 111 |
{"ssl_smtp", "0", &tmp_ac_prefs.ssl_smtp, P_ENUM},
|
|
| 112 |
{"use_nonblocking_ssl", "1", &tmp_ac_prefs.use_nonblocking_ssl, P_BOOL},
|
|
| 425 | 113 |
#endif /* USE_SSL */ |
| 426 | 114 |
|
| 427 | 115 |
/* Advanced */ |
| 428 |
{"set_smtpport", "FALSE", &tmp_ac_prefs.set_smtpport, P_BOOL,
|
|
| 429 |
P_WID(&advanced.smtpport_chkbtn), |
|
| 430 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 116 |
{"set_smtpport", "FALSE", &tmp_ac_prefs.set_smtpport, P_BOOL},
|
|
| 117 |
{"smtp_port", "25", &tmp_ac_prefs.smtpport, P_USHORT},
|
|
| 118 |
{"set_popport", "FALSE", &tmp_ac_prefs.set_popport, P_BOOL},
|
|
| 119 |
{"pop_port", "110", &tmp_ac_prefs.popport, P_USHORT},
|
|
| 120 |
{"set_imapport", "FALSE", &tmp_ac_prefs.set_imapport, P_BOOL},
|
|
| 121 |
{"imap_port", "143", &tmp_ac_prefs.imapport, P_USHORT},
|
|
| 122 |
{"set_nntpport", "FALSE", &tmp_ac_prefs.set_nntpport, P_BOOL},
|
|
| 123 |
{"nntp_port", "119", &tmp_ac_prefs.nntpport, P_USHORT},
|
|
| 124 |
{"set_domain", "FALSE", &tmp_ac_prefs.set_domain, P_BOOL},
|
|
| 125 |
{"domain", NULL, &tmp_ac_prefs.domain, P_STRING},
|
|
| 126 |
{"imap_directory", NULL, &tmp_ac_prefs.imap_dir, P_STRING},
|
|
| 127 |
{"set_sent_folder", "FALSE", &tmp_ac_prefs.set_sent_folder, P_BOOL},
|
|
| 128 |
{"sent_folder", NULL, &tmp_ac_prefs.sent_folder, P_STRING},
|
|
| 129 |
{"set_draft_folder", "FALSE", &tmp_ac_prefs.set_draft_folder, P_BOOL},
|
|
| 130 |
{"draft_folder", NULL, &tmp_ac_prefs.draft_folder, P_STRING},
|
|
| 131 |
{"set_trash_folder", "FALSE", &tmp_ac_prefs.set_trash_folder, P_BOOL},
|
|
| 132 |
{"trash_folder", NULL, &tmp_ac_prefs.trash_folder, P_STRING},
|
|
| 431 | 133 |
|
| 432 |
{"smtp_port", "25", &tmp_ac_prefs.smtpport, P_USHORT,
|
|
| 433 |
P_WID(&advanced.smtpport_entry), |
|
| 434 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 134 |
{NULL, NULL, NULL, P_OTHER}
|
|
| 135 |
}; |
|
| 435 | 136 |
|
| 436 |
{"set_popport", "FALSE", &tmp_ac_prefs.set_popport, P_BOOL,
|
|
| 437 |
P_WID(&advanced.popport_chkbtn), |
|
| 438 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 137 |
static gint prefs_account_get_new_id(void); |
|
| 439 | 138 |
|
| 440 |
{"pop_port", "110", &tmp_ac_prefs.popport, P_USHORT,
|
|
| 441 |
P_WID(&advanced.popport_entry), |
|
| 442 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 443 | 139 |
|
| 444 |
{"set_imapport", "FALSE", &tmp_ac_prefs.set_imapport, P_BOOL,
|
|
| 445 |
P_WID(&advanced.imapport_chkbtn), |
|
| 446 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 140 |
PrefsAccount *prefs_account_get_tmp_prefs(void) |
|
| 141 |
{
|
|
| 142 |
return &tmp_ac_prefs; |
|
| 143 |
} |
|
| 447 | 144 |
|
| 448 |
{"imap_port", "143", &tmp_ac_prefs.imapport, P_USHORT,
|
|
| 449 |
P_WID(&advanced.imapport_entry), |
|
| 450 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 145 |
void prefs_account_set_tmp_prefs(PrefsAccount *ac_prefs) |
|
| 146 |
{
|
|
| 147 |
tmp_ac_prefs = *ac_prefs; |
|
| 148 |
} |
|
| 451 | 149 |
|
| 452 |
{"set_nntpport", "FALSE", &tmp_ac_prefs.set_nntpport, P_BOOL,
|
|
| 453 |
P_WID(&advanced.nntpport_chkbtn), |
|
| 454 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 150 |
void prefs_account_apply_tmp_prefs(PrefsAccount *ac_prefs) |
|
| 151 |
{
|
|
| 152 |
*ac_prefs = tmp_ac_prefs; |
|
| 153 |
} |
|
| 455 | 154 |
|
| 456 |
{"nntp_port", "119", &tmp_ac_prefs.nntpport, P_USHORT,
|
|
| 457 |
P_WID(&advanced.nntpport_entry), |
|
| 458 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 155 |
PrefParam *prefs_account_get_params(void) |
|
| 156 |
{
|
|
| 157 |
return param; |
|
| 158 |
} |
|
| 459 | 159 |
|
| 460 |
{"set_domain", "FALSE", &tmp_ac_prefs.set_domain, P_BOOL,
|
|
| 461 |
P_WID(&advanced.domain_chkbtn), |
|
| 462 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 463 |
|
|
| 464 |
{"domain", NULL, &tmp_ac_prefs.domain, P_STRING,
|
|
| 465 |
P_WID(&advanced.domain_entry), |
|
| 466 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 467 |
|
|
| 468 |
{"imap_directory", NULL, &tmp_ac_prefs.imap_dir, P_STRING,
|
|
| 469 |
P_WID(&advanced.imapdir_entry), |
|
| 470 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 471 |
|
|
| 472 |
{"set_sent_folder", "FALSE", &tmp_ac_prefs.set_sent_folder, P_BOOL,
|
|
| 473 |
P_WID(&advanced.sent_folder_chkbtn), |
|
| 474 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 475 |
{"sent_folder", NULL, &tmp_ac_prefs.sent_folder, P_STRING,
|
|
| 476 |
P_WID(&advanced.sent_folder_entry), |
|
| 477 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 478 |
|
|
| 479 |
{"set_draft_folder", "FALSE", &tmp_ac_prefs.set_draft_folder, P_BOOL,
|
|
| 480 |
P_WID(&advanced.draft_folder_chkbtn), |
|
| 481 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 482 |
{"draft_folder", NULL, &tmp_ac_prefs.draft_folder, P_STRING,
|
|
| 483 |
P_WID(&advanced.draft_folder_entry), |
|
| 484 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 485 |
|
|
| 486 |
{"set_trash_folder", "FALSE", &tmp_ac_prefs.set_trash_folder, P_BOOL,
|
|
| 487 |
P_WID(&advanced.trash_folder_chkbtn), |
|
| 488 |
prefs_set_data_from_toggle, prefs_set_toggle}, |
|
| 489 |
{"trash_folder", NULL, &tmp_ac_prefs.trash_folder, P_STRING,
|
|
| 490 |
P_WID(&advanced.trash_folder_entry), |
|
| 491 |
prefs_set_data_from_entry, prefs_set_entry}, |
|
| 492 |
|
|
| 493 |
{NULL, NULL, NULL, P_OTHER, NULL, NULL, NULL}
|
|
| 494 |
}; |
|
| 495 |
|
|
| 496 |
static gint prefs_account_get_new_id (void); |
|
| 497 |
|
|
| 498 |
static void prefs_account_create (void); |
|
| 499 |
static void prefs_account_basic_create (void); |
|
| 500 |
static void prefs_account_receive_create (void); |
|
| 501 |
static void prefs_account_send_create (void); |
|
| 502 |
static void prefs_account_compose_create (void); |
|
| 503 |
#if USE_GPGME |
|
| 504 |
static void prefs_account_privacy_create (void); |
|
| 505 |
#endif /* USE_GPGME */ |
|
| 506 |
#if USE_SSL |
|
| 507 |
static void prefs_account_ssl_create (void); |
|
| 508 |
#endif /* USE_SSL */ |
|
| 509 |
static void prefs_account_advanced_create (void); |
|
| 510 |
|
|
| 511 |
static void prefs_account_select_folder_cb (GtkWidget *widget, |
|
| 512 |
gpointer data); |
|
| 513 |
static void prefs_account_edit_custom_header (void); |
|
| 514 |
|
|
| 515 |
static gint prefs_account_deleted (GtkWidget *widget, |
|
| 516 |
GdkEventAny *event, |
|
| 517 |
gpointer data); |
|
| 518 |
static gboolean prefs_account_key_pressed (GtkWidget *widget, |
|
| 519 |
GdkEventKey *event, |
|
| 520 |
gpointer data); |
|
| 521 |
static void prefs_account_ok (void); |
|
| 522 |
static gint prefs_account_apply (void); |
|
| 523 |
static void prefs_account_cancel (void); |
|
| 524 |
|
|
| 525 | 160 |
PrefsAccount *prefs_account_new(void) |
| 526 | 161 |
{
|
| 527 | 162 |
PrefsAccount *ac_prefs; |
| ... | ... | |
| 623 | 258 |
|
| 624 | 259 |
return last_id + 1; |
| 625 | 260 |
} |
| 626 |
|
|
| 627 |
PrefsAccount *prefs_account_open(PrefsAccount *ac_prefs) |
|
| 628 |
{
|
|
| 629 |
gboolean new_account = FALSE; |
|
| 630 |
|
|
| 631 |
debug_print(_("Opening account preferences window...\n"));
|
|
| 632 |
|
|
| 633 |
inc_lock(); |
|
| 634 |
|
|
| 635 |
cancelled = FALSE; |
|
| 636 |
|
|
| 637 |
if (!ac_prefs) {
|
|
| 638 |
ac_prefs = prefs_account_new(); |
|
| 639 |
new_account = TRUE; |
|
| 640 |
} |
|
| 641 |
|
|
| 642 |
if (!dialog.window) {
|
|
| 643 |
prefs_account_create(); |
|
| 644 |
} |
|
| 645 |
|
|
| 646 |
gtkut_box_set_reverse_order(GTK_BOX(dialog.confirm_area), |
|
| 647 |
!prefs_common.comply_gnome_hig); |
|
| 648 |
manage_window_set_transient(GTK_WINDOW(dialog.window)); |
|
| 649 |
gtk_notebook_set_current_page(GTK_NOTEBOOK(dialog.notebook), 0); |
|
| 650 |
gtk_widget_grab_focus(dialog.ok_btn); |
|
| 651 |
|
|
| 652 |
tmp_ac_prefs = *ac_prefs; |
|
| 653 |
|
|
| 654 |
if (new_account) {
|
|
| 655 |
PrefsAccount *def_ac; |
|
| 656 |
gchar *buf; |
|
| 657 |
|
|
| 658 |
prefs_set_dialog_to_default(param); |
|
| 659 |
buf = g_strdup_printf(_("Account%d"), ac_prefs->account_id);
|
|
| 660 |
gtk_entry_set_text(GTK_ENTRY(basic.acname_entry), buf); |
|
| 661 |
g_free(buf); |
|
| 662 |
def_ac = account_get_default(); |
|
| 663 |
if (def_ac) {
|
|
| 664 |
gtk_entry_set_text(GTK_ENTRY(basic.name_entry), |
|
| 665 |
def_ac->name ? def_ac->name : ""); |
|
| 666 |
gtk_entry_set_text(GTK_ENTRY(basic.addr_entry), |
|
| 667 |
def_ac->address ? def_ac->address : ""); |
|
| 668 |
gtk_entry_set_text(GTK_ENTRY(basic.org_entry), |
|
| 669 |
def_ac->organization ? def_ac->organization : ""); |
|
| 670 |
} |
|
| 671 |
menu_set_sensitive_all |
|
| 672 |
(GTK_MENU_SHELL |
|
| 673 |
(gtk_option_menu_get_menu |
|
| 674 |
(GTK_OPTION_MENU |
|
| 675 |
(basic.protocol_optmenu))), |
|
| 676 |
TRUE); |
|
| 677 |
gtk_window_set_title(GTK_WINDOW(dialog.window), |
|
| 678 |
_("Preferences for new account"));
|
|
| 679 |
gtk_widget_hide(dialog.apply_btn); |
|
| 680 |
} else {
|
|
| 681 |
prefs_set_dialog(param); |
|
| 682 |
gtk_window_set_title(GTK_WINDOW(dialog.window), |
|
| 683 |
_("Account preferences"));
|
|
| 684 |
gtk_widget_show(dialog.apply_btn); |
|
| 685 |
} |
|
| 686 |
|
|
| 687 |
gtk_widget_show(dialog.window); |
|
| 688 |
gtk_main(); |
|
| 689 |
gtk_widget_hide(dialog.window); |
|
| 690 |
|
|
| 691 |
inc_unlock(); |
|
| 692 |
|
|
| 693 |
if (cancelled && new_account) {
|
|
| 694 |
g_free(ac_prefs); |
|
| 695 |
return NULL; |
|
| 696 |
} else {
|
|
| 697 |
*ac_prefs = tmp_ac_prefs; |
|
| 698 |
return ac_prefs; |
|
| 699 |
} |
|
| 700 |
} |
|
| 701 |
|
|
| 702 |
static void prefs_account_create(void) |
|
| 703 |
{
|
|
| 704 |
gint page = 0; |
|
| 705 |
|
|
| 706 |
debug_print(_("Creating account preferences window...\n"));
|
|
| 707 |
|
|
| 708 |
/* create dialog */ |
|
| 709 |
prefs_dialog_create(&dialog); |
|
| 710 |
g_signal_connect(G_OBJECT(dialog.window), "delete_event", |
|
| 711 |
G_CALLBACK(prefs_account_deleted), NULL); |
|
| 712 |
g_signal_connect(G_OBJECT(dialog.window), "key_press_event", |
|
| 713 |
G_CALLBACK(prefs_account_key_pressed), NULL); |
|
| 714 |
MANAGE_WINDOW_SIGNALS_CONNECT(dialog.window); |
|
| 715 |
|
|
| 716 |
g_signal_connect(G_OBJECT(dialog.ok_btn), "clicked", |
|
| 717 |
G_CALLBACK(prefs_account_ok), NULL); |
|
| 718 |
g_signal_connect(G_OBJECT(dialog.apply_btn), "clicked", |
|
| 719 |
G_CALLBACK(prefs_account_apply), NULL); |
|
| 720 |
g_signal_connect(G_OBJECT(dialog.cancel_btn), "clicked", |
|
| 721 |
G_CALLBACK(prefs_account_cancel), NULL); |
|
| 722 |
|
|
| 723 |
prefs_account_basic_create(); |
|
| 724 |
SET_NOTEBOOK_LABEL(dialog.notebook, _("Basic"), page++);
|
|
| 725 |
prefs_account_receive_create(); |
|
| 726 |
SET_NOTEBOOK_LABEL(dialog.notebook, _("Receive"), page++);
|
|
| 727 |
prefs_account_send_create(); |
|
| 728 |
SET_NOTEBOOK_LABEL(dialog.notebook, _("Send"), page++);
|
|
| 729 |
prefs_account_compose_create(); |
|
| 730 |
SET_NOTEBOOK_LABEL(dialog.notebook, _("Compose"), page++);
|
|
| 731 |
#if USE_GPGME |
|
| 732 |
prefs_account_privacy_create(); |
|
| 733 |
SET_NOTEBOOK_LABEL(dialog.notebook, _("Privacy"), page++);
|
|
| 734 |
#endif /* USE_GPGME */ |
|
| 735 |
#if USE_SSL |
|
| 736 |
prefs_account_ssl_create(); |
|
| 737 |
SET_NOTEBOOK_LABEL(dialog.notebook, _("SSL"), page++);
|
|
| 738 |
#endif /* USE_SSL */ |
|
| 739 |
prefs_account_advanced_create(); |
|
| 740 |
SET_NOTEBOOK_LABEL(dialog.notebook, _("Advanced"), page++);
|
|
| 741 |
} |
|
| 742 |
|
|
| 743 |
#define SET_ACTIVATE(menuitem) \ |
|
| 744 |
{ \
|
|
| 745 |
g_signal_connect(G_OBJECT(menuitem), "activate", \ |
|
| 746 |
G_CALLBACK(prefs_account_protocol_activated), NULL); \ |
|
| 747 |
} |
|
| 748 |
|
|
| 749 |
static void prefs_account_basic_create(void) |
|
| 750 |
{
|
|
| 751 |
GtkWidget *vbox1; |
|
| 752 |
GtkWidget *hbox; |
|
| 753 |
GtkWidget *label; |
|
| 754 |
GtkWidget *acname_entry; |
|
| 755 |
GtkWidget *default_chkbtn; |
|
| 756 |
GtkWidget *frame1; |
|
| 757 |
GtkWidget *table1; |
|
| 758 |
GtkWidget *name_entry; |
|
| 759 |
GtkWidget *addr_entry; |
|
| 760 |
GtkWidget *org_entry; |
|
| 761 |
|
|
| 762 |
GtkWidget *serv_frame; |
|
| 763 |
GtkWidget *vbox2; |
|
| 764 |
GtkWidget *optmenu; |
|
| 765 |
GtkWidget *optmenu_menu; |
|
| 766 |
GtkWidget *menuitem; |
|
| 767 |
GtkWidget *serv_table; |
|
| 768 |
GtkWidget *recvserv_label; |
|
| 769 |
GtkWidget *smtpserv_label; |
|
| 770 |
GtkWidget *nntpserv_label; |
|
| 771 |
GtkWidget *recvserv_entry; |
|
| 772 |
GtkWidget *smtpserv_entry; |
|
| 773 |
GtkWidget *nntpserv_entry; |
|
| 774 |
GtkWidget *nntpauth_chkbtn; |
|
| 775 |
GtkWidget *uid_label; |
|
| 776 |
GtkWidget *pass_label; |
|
| 777 |
GtkWidget *uid_entry; |
|
| 778 |
GtkWidget *pass_entry; |
|
| 779 |
|
|
| 780 |
vbox1 = gtk_vbox_new (FALSE, VSPACING); |
|
| 781 |
gtk_widget_show (vbox1); |
|
| 782 |
gtk_container_add (GTK_CONTAINER (dialog.notebook), vbox1); |
|
| 783 |
gtk_container_set_border_width (GTK_CONTAINER (vbox1), VBOX_BORDER); |
|
| 784 |
|
|
| 785 |
hbox = gtk_hbox_new (FALSE, 8); |
|
| 786 |
gtk_widget_show (hbox); |
|
| 787 |
gtk_box_pack_start (GTK_BOX (vbox1), hbox, FALSE, FALSE, 0); |
|
| 788 |
|
|
| 789 |
label = gtk_label_new (_("Name of this account"));
|
|
| 790 |
gtk_widget_show (label); |
|
| 791 |
gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0); |
|
| 792 |
|
|
| 793 |
acname_entry = gtk_entry_new (); |
|
| 794 |
gtk_widget_show (acname_entry); |
|
| 795 |
gtk_widget_set_size_request (acname_entry, DEFAULT_ENTRY_WIDTH, -1); |
|
| 796 |
gtk_box_pack_start (GTK_BOX (hbox), acname_entry, TRUE, TRUE, 0); |
|
| 797 |
|
|
| 798 |
default_chkbtn = gtk_check_button_new_with_label (_("Set as default"));
|
|
| 799 |
gtk_widget_show (default_chkbtn); |
|
| 800 |
gtk_box_pack_end (GTK_BOX (hbox), default_chkbtn, FALSE, FALSE, 0); |
|
| 801 |
|
|
| 802 |
PACK_FRAME (vbox1, frame1, _("Personal information"));
|
|
| 803 |
|
|
| 804 |
table1 = gtk_table_new (3, 2, FALSE); |
|
| 805 |
gtk_widget_show (table1); |
|
| 806 |
gtk_container_add (GTK_CONTAINER (frame1), table1); |
|
| 807 |
gtk_container_set_border_width (GTK_CONTAINER (table1), 8); |
|
| 808 |
gtk_table_set_row_spacings (GTK_TABLE (table1), VSPACING_NARROW); |
|
| 809 |
gtk_table_set_col_spacings (GTK_TABLE (table1), 8); |
|
| 810 |
|
|
| 811 |
label = gtk_label_new (_("Full name"));
|
|
| 812 |
gtk_widget_show (label); |
|
| 813 |
gtk_table_attach (GTK_TABLE (table1), label, 0, 1, 0, 1, |
|
| 814 |
GTK_FILL, 0, 0, 0); |
|
| 815 |
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5); |
|
| 816 |
|
|
| 817 |
label = gtk_label_new (_("Mail address"));
|
|
| 818 |
gtk_widget_show (label); |
|
| 819 |
gtk_table_attach (GTK_TABLE (table1), label, 0, 1, 1, 2, |
|
| 820 |
GTK_FILL, 0, 0, 0); |
|
| 821 |
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5); |
|
| 822 |
|
|
| 823 |
label = gtk_label_new (_("Organization"));
|
|
| 824 |
gtk_widget_show (label); |
|
| 825 |
gtk_table_attach (GTK_TABLE (table1), label, 0, 1, 2, 3, |
|
| 826 |
GTK_FILL, 0, 0, 0); |
|
| 827 |
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5); |
|
| 828 |
|
|
| 829 |
name_entry = gtk_entry_new (); |
|
| 830 |
gtk_widget_show (name_entry); |
|
| 831 |
gtk_table_attach (GTK_TABLE (table1), name_entry, 1, 2, 0, 1, |
|
| 832 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, |
|
| 833 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); |
|
| 834 |
|
|
| 835 |
addr_entry = gtk_entry_new (); |
|
| 836 |
gtk_widget_show (addr_entry); |
|
| 837 |
gtk_table_attach (GTK_TABLE (table1), addr_entry, 1, 2, 1, 2, |
|
| 838 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, |
|
| 839 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); |
|
| 840 |
|
|
| 841 |
org_entry = gtk_entry_new (); |
|
| 842 |
gtk_widget_show (org_entry); |
|
| 843 |
gtk_table_attach (GTK_TABLE (table1), org_entry, 1, 2, 2, 3, |
|
| 844 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, |
|
| 845 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); |
|
| 846 |
|
|
| 847 |
PACK_FRAME (vbox1, serv_frame, _("Server information"));
|
|
| 848 |
|
|
| 849 |
vbox2 = gtk_vbox_new (FALSE, VSPACING_NARROW); |
|
| 850 |
gtk_widget_show (vbox2); |
|
| 851 |
gtk_container_add (GTK_CONTAINER (serv_frame), vbox2); |
|
| 852 |
gtk_container_set_border_width (GTK_CONTAINER (vbox2), 8); |
|
| 853 |
|
|
| 854 |
hbox = gtk_hbox_new (FALSE, 8); |
|
| 855 |
gtk_widget_show (hbox); |
|
| 856 |
gtk_box_pack_start (GTK_BOX (vbox2), hbox, FALSE, FALSE, 0); |
|
| 857 |
|
|
| 858 |
label = gtk_label_new (_("Protocol"));
|
|
| 859 |
gtk_widget_show (label); |
|
| 860 |
gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0); |
|
| 861 |
|
|
| 862 |
optmenu = gtk_option_menu_new (); |
|
| 863 |
gtk_widget_show (optmenu); |
|
| 864 |
gtk_box_pack_start (GTK_BOX (hbox), optmenu, FALSE, FALSE, 0); |
|
| 865 |
|
|
| 866 |
optmenu_menu = gtk_menu_new (); |
|
| 867 |
|
|
| 868 |
MENUITEM_ADD (optmenu_menu, menuitem, _("POP3"), A_POP3);
|
|
| 869 |
SET_ACTIVATE (menuitem); |
|
| 870 |
MENUITEM_ADD (optmenu_menu, menuitem, _("IMAP4"), A_IMAP4);
|
|
| 871 |
SET_ACTIVATE (menuitem); |
|
| 872 |
MENUITEM_ADD (optmenu_menu, menuitem, _("News (NNTP)"), A_NNTP);
|
|
| 873 |
SET_ACTIVATE (menuitem); |
|
| 874 |
MENUITEM_ADD (optmenu_menu, menuitem, _("None (local)"), A_LOCAL);
|
|
| 875 |
SET_ACTIVATE (menuitem); |
|
| 876 |
|
|
| 877 |
gtk_option_menu_set_menu (GTK_OPTION_MENU (optmenu), optmenu_menu); |
|
| 878 |
|
|
| 879 |
serv_table = gtk_table_new (6, 4, FALSE); |
|
| 880 |
gtk_widget_show (serv_table); |
|
| 881 |
gtk_box_pack_start (GTK_BOX (vbox2), serv_table, FALSE, FALSE, 0); |
|
| 882 |
gtk_table_set_row_spacings (GTK_TABLE (serv_table), VSPACING_NARROW); |
|
| 883 |
gtk_table_set_row_spacing (GTK_TABLE (serv_table), 3, 0); |
|
| 884 |
gtk_table_set_col_spacings (GTK_TABLE (serv_table), 8); |
|
| 885 |
|
|
| 886 |
nntpauth_chkbtn = gtk_check_button_new_with_label |
|
| 887 |
(_("This server requires authentication"));
|
|
| 888 |
gtk_widget_show (nntpauth_chkbtn); |
|
| 889 |
gtk_table_attach (GTK_TABLE (serv_table), nntpauth_chkbtn, 0, 4, 4, 5, |
|
| 890 |
GTK_FILL, 0, 0, 0); |
|
| 891 |
|
|
| 892 |
nntpserv_entry = gtk_entry_new (); |
|
| 893 |
gtk_widget_show (nntpserv_entry); |
|
| 894 |
gtk_table_attach (GTK_TABLE (serv_table), nntpserv_entry, 1, 4, 0, 1, |
|
| 895 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, |
|
| 896 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); |
|
| 897 |
gtk_table_set_row_spacing (GTK_TABLE (serv_table), 0, 0); |
|
| 898 |
|
|
| 899 |
recvserv_entry = gtk_entry_new (); |
|
| 900 |
gtk_widget_show (recvserv_entry); |
|
| 901 |
gtk_table_attach (GTK_TABLE (serv_table), recvserv_entry, 1, 4, 1, 2, |
|
| 902 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, |
|
| 903 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); |
|
| 904 |
|
|
| 905 |
smtpserv_entry = gtk_entry_new (); |
|
| 906 |
gtk_widget_show (smtpserv_entry); |
|
| 907 |
gtk_table_attach (GTK_TABLE (serv_table), smtpserv_entry, 1, 4, 2, 3, |
|
| 908 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, |
|
| 909 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); |
|
| 910 |
|
|
| 911 |
uid_entry = gtk_entry_new (); |
|
| 912 |
gtk_widget_show (uid_entry); |
|
| 913 |
gtk_widget_set_size_request (uid_entry, DEFAULT_ENTRY_WIDTH, -1); |
|
| 914 |
gtk_table_attach (GTK_TABLE (serv_table), uid_entry, 1, 2, 5, 6, |
|
| 915 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, |
|
| 916 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); |
|
| 917 |
|
|
| 918 |
pass_entry = gtk_entry_new (); |
|
| 919 |
gtk_widget_show (pass_entry); |
|
| 920 |
gtk_widget_set_size_request (pass_entry, DEFAULT_ENTRY_WIDTH, -1); |
|
| 921 |
gtk_table_attach (GTK_TABLE (serv_table), pass_entry, 3, 4, 5, 6, |
|
| 922 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, |
|
| 923 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); |
|
| 924 |
gtk_entry_set_visibility (GTK_ENTRY (pass_entry), FALSE); |
|
| 925 |
|
|
| 926 |
nntpserv_label = gtk_label_new (_("News server"));
|
|
| 927 |
gtk_widget_show (nntpserv_label); |
|
| 928 |
gtk_table_attach (GTK_TABLE (serv_table), nntpserv_label, 0, 1, 0, 1, |
|
| 929 |
GTK_FILL, 0, 0, 0); |
|
| 930 |
gtk_misc_set_alignment (GTK_MISC (nntpserv_label), 1, 0.5); |
|
| 931 |
|
|
| 932 |
recvserv_label = gtk_label_new (_("Server for receiving"));
|
|
| 933 |
gtk_widget_show (recvserv_label); |
|
| 934 |
gtk_table_attach (GTK_TABLE (serv_table), recvserv_label, 0, 1, 1, 2, |
|
| 935 |
GTK_FILL, 0, 0, 0); |
|
| 936 |
gtk_misc_set_alignment (GTK_MISC (recvserv_label), 1, 0.5); |
|
| 937 |
|
|
| 938 |
smtpserv_label = gtk_label_new (_("SMTP server (send)"));
|
|
| 939 |
gtk_widget_show (smtpserv_label); |
|
| 940 |
gtk_table_attach (GTK_TABLE (serv_table), smtpserv_label, 0, 1, 2, 3, |
|
| 941 |
GTK_FILL, 0, 0, 0); |
|
| 942 |
gtk_misc_set_alignment (GTK_MISC (smtpserv_label), 1, 0.5); |
|
| 943 |
gtk_table_set_row_spacing (GTK_TABLE (serv_table), 2, 0); |
|
| 944 |
|
|
| 945 |
uid_label = gtk_label_new (_("User ID"));
|
|
| 946 |
gtk_widget_show (uid_label); |
|
| 947 |
gtk_table_attach (GTK_TABLE (serv_table), uid_label, 0, 1, 5, 6, |
|
| 948 |
GTK_FILL, 0, 0, 0); |
|
| 949 |
gtk_misc_set_alignment (GTK_MISC (uid_label), 1, 0.5); |
|
| 950 |
|
|
| 951 |
pass_label = gtk_label_new (_("Password"));
|
|
| 952 |
gtk_widget_show (pass_label); |
|
| 953 |
gtk_table_attach (GTK_TABLE (serv_table), pass_label, 2, 3, 5, 6, |
|
| 954 |
0, 0, 0, 0); |
|
| 955 |
|
|
| 956 |
SET_TOGGLE_SENSITIVITY (nntpauth_chkbtn, uid_label); |
|
| 957 |
SET_TOGGLE_SENSITIVITY (nntpauth_chkbtn, pass_label); |
|
| 958 |
SET_TOGGLE_SENSITIVITY (nntpauth_chkbtn, uid_entry); |
|
| 959 |
SET_TOGGLE_SENSITIVITY (nntpauth_chkbtn, pass_entry); |
|
| 960 |
|
|
| 961 |
basic.acname_entry = acname_entry; |
|
| 962 |
basic.default_chkbtn = default_chkbtn; |
|
| 963 |
|
|
| 964 |
basic.name_entry = name_entry; |
|
| 965 |
basic.addr_entry = addr_entry; |
|
| 966 |
basic.org_entry = org_entry; |
|
| 967 |
|
|
| 968 |
basic.serv_frame = serv_frame; |
|
| 969 |
basic.serv_table = serv_table; |
|
| 970 |
basic.protocol_optmenu = optmenu; |
|
| 971 |
basic.recvserv_label = recvserv_label; |
|
| 972 |
basic.recvserv_entry = recvserv_entry; |
|
| 973 |
basic.smtpserv_label = smtpserv_label; |
|
| 974 |
basic.smtpserv_entry = smtpserv_entry; |
|
| 975 |
basic.nntpserv_label = nntpserv_label; |
|
| 976 |
basic.nntpserv_entry = nntpserv_entry; |
|
| 977 |
basic.nntpauth_chkbtn = nntpauth_chkbtn; |
|
| 978 |
basic.uid_label = uid_label; |
|
| 979 |
basic.pass_label = pass_label; |
|
| 980 |
basic.uid_entry = uid_entry; |
|
| 981 |
basic.pass_entry = pass_entry; |
|
| 982 |
} |
|
| 983 |
|
|
| 984 |
static void prefs_account_receive_create(void) |
|
| 985 |
{
|
|
| 986 |
GtkWidget *vbox1; |
|
| 987 |
GtkWidget *frame1; |
|
| 988 |
GtkWidget *vbox2; |
|
| 989 |
GtkWidget *use_apop_chkbtn; |
|
| 990 |
GtkWidget *rmmail_chkbtn; |
|
| 991 |
GtkWidget *hbox_spc; |
|
| 992 |
GtkWidget *leave_time_label; |
|
| 993 |
GtkWidget *leave_time_entry; |
|
| 994 |
GtkWidget *getall_chkbtn; |
|
| 995 |
GtkWidget *hbox1; |
|
| 996 |
GtkWidget *size_limit_chkbtn; |
|
| 997 |
GtkWidget *size_limit_entry; |
|
| 998 |
GtkWidget *label; |
|
| 999 |
GtkWidget *filter_on_recv_chkbtn; |
|
| 1000 |
GtkWidget *vbox3; |
|
| 1001 |
GtkWidget *inbox_label; |
|
| 1002 |
GtkWidget *inbox_entry; |
|
| 1003 |
GtkWidget *inbox_btn; |
|
| 1004 |
|
|
| 1005 |
GtkWidget *imap_frame; |
|
| 1006 |
GtkWidget *optmenu; |
|
| 1007 |
GtkWidget *optmenu_menu; |
|
| 1008 |
GtkWidget *menuitem; |
|
| 1009 |
|
|
| 1010 |
GtkWidget *nntp_frame; |
|
| 1011 |
GtkWidget *maxarticle_label; |
|
| 1012 |
GtkWidget *maxarticle_spinbtn; |
|
| 1013 |
GtkObject *maxarticle_spinbtn_adj; |
|
| 1014 |
GtkWidget *maxarticle_desc_label; |
|
| 1015 |
|
|
| 1016 |
GtkWidget *recvatgetall_chkbtn; |
|
| 1017 |
|
|
| 1018 |
vbox1 = gtk_vbox_new (FALSE, VSPACING); |
|
| 1019 |
gtk_widget_show (vbox1); |
|
| 1020 |
gtk_container_add (GTK_CONTAINER (dialog.notebook), vbox1); |
|
| 1021 |
gtk_container_set_border_width (GTK_CONTAINER (vbox1), VBOX_BORDER); |
|
| 1022 |
|
|
| 1023 |
PACK_FRAME (vbox1, frame1, _("POP3"));
|
|
| 1024 |
|
|
| 1025 |
vbox2 = gtk_vbox_new (FALSE, 0); |
|
| 1026 |
gtk_widget_show (vbox2); |
|
| 1027 |
gtk_container_add (GTK_CONTAINER (frame1), vbox2); |
|
| 1028 |
gtk_container_set_border_width (GTK_CONTAINER (vbox2), 8); |
|
| 1029 |
|
|
| 1030 |
PACK_CHECK_BUTTON (vbox2, use_apop_chkbtn, |
|
| 1031 |
_("Use secure authentication (APOP)"));
|
|
| 1032 |
|
|
| 1033 |
PACK_CHECK_BUTTON (vbox2, rmmail_chkbtn, |
|
| 1034 |
_("Remove messages on server when received"));
|
|
| 1035 |
|
|
| 1036 |
hbox1 = gtk_hbox_new (FALSE, 8); |
|
| 1037 |
gtk_widget_show (hbox1); |
|
| 1038 |
gtk_box_pack_start (GTK_BOX (vbox2), hbox1, FALSE, FALSE, 0); |
|
| 1039 |
|
|
| 1040 |
hbox_spc = gtk_hbox_new (FALSE, 0); |
|
| 1041 |
gtk_widget_show (hbox_spc); |
|
| 1042 |
gtk_box_pack_start (GTK_BOX (hbox1), hbox_spc, FALSE, FALSE, 0); |
|
| 1043 |
gtk_widget_set_size_request (hbox_spc, 12, -1); |
|
| 1044 |
|
|
| 1045 |
leave_time_label = gtk_label_new (_("Remove after"));
|
|
| 1046 |
gtk_widget_show (leave_time_label); |
|
| 1047 |
gtk_box_pack_start (GTK_BOX (hbox1), leave_time_label, FALSE, FALSE, 0); |
|
| 1048 |
|
|
| 1049 |
leave_time_entry = gtk_entry_new (); |
|
| 1050 |
gtk_widget_show (leave_time_entry); |
|
| 1051 |
gtk_widget_set_size_request (leave_time_entry, 64, -1); |
|
| 1052 |
gtk_box_pack_start (GTK_BOX (hbox1), leave_time_entry, FALSE, FALSE, 0); |
|
| 1053 |
|
|
| 1054 |
leave_time_label = gtk_label_new (_("days"));
|
|
| 1055 |
gtk_widget_show (leave_time_label); |
|
| 1056 |
gtk_box_pack_start (GTK_BOX (hbox1), leave_time_label, FALSE, FALSE, 0); |
|
| 1057 |
|
|
| 1058 |
SET_TOGGLE_SENSITIVITY (rmmail_chkbtn, hbox1); |
|
| 1059 |
|
|
| 1060 |
PACK_VSPACER(vbox2, vbox3, VSPACING_NARROW_2); |
|
| 1061 |
|
|
| 1062 |
hbox1 = gtk_hbox_new (FALSE, 8); |
|
| 1063 |
gtk_widget_show (hbox1); |
|
| 1064 |
gtk_box_pack_start (GTK_BOX (vbox2), hbox1, FALSE, FALSE, 0); |
|
| 1065 |
|
|
| 1066 |
hbox_spc = gtk_hbox_new (FALSE, 0); |
|
| 1067 |
gtk_widget_show (hbox_spc); |
|
| 1068 |
gtk_box_pack_start (GTK_BOX (hbox1), hbox_spc, FALSE, FALSE, 0); |
|
| 1069 |
gtk_widget_set_size_request (hbox_spc, 12, -1); |
|
| 1070 |
|
|
| 1071 |
leave_time_label = gtk_label_new (_("(0 days: remove immediately)"));
|
|
| 1072 |
gtk_widget_show (leave_time_label); |
|
| 1073 |
gtk_box_pack_start (GTK_BOX (hbox1), leave_time_label, FALSE, FALSE, 0); |
|
| 1074 |
|
|
| 1075 |
SET_TOGGLE_SENSITIVITY (rmmail_chkbtn, hbox1); |
|
| 1076 |
|
|
| 1077 |
PACK_CHECK_BUTTON (vbox2, getall_chkbtn, |
|
| 1078 |
_("Download all messages on server"));
|
|
| 1079 |
|
|
| 1080 |
hbox1 = gtk_hbox_new (FALSE, 8); |
|
| 1081 |
gtk_widget_show (hbox1); |
|
| 1082 |
gtk_box_pack_start (GTK_BOX (vbox2), hbox1, FALSE, FALSE, 0); |
|
| 1083 |
|
|
| 1084 |
PACK_CHECK_BUTTON (hbox1, size_limit_chkbtn, _("Receive size limit"));
|
|
| 1085 |
|
|
| 1086 |
size_limit_entry = gtk_entry_new (); |
|
| 1087 |
gtk_widget_show (size_limit_entry); |
|
| 1088 |
gtk_widget_set_size_request (size_limit_entry, 64, -1); |
|
| 1089 |
gtk_box_pack_start (GTK_BOX (hbox1), size_limit_entry, FALSE, FALSE, 0); |
|
| 1090 |
|
|
| 1091 |
label = gtk_label_new (_("KB"));
|
|
| 1092 |
gtk_widget_show (label); |
|
| 1093 |
gtk_box_pack_start (GTK_BOX (hbox1), label, FALSE, FALSE, 0); |
|
| 1094 |
|
|
| 1095 |
SET_TOGGLE_SENSITIVITY (size_limit_chkbtn, size_limit_entry); |
|
| 1096 |
|
|
| 1097 |
PACK_CHECK_BUTTON (vbox2, filter_on_recv_chkbtn, |
|
| 1098 |
_("Filter messages on receiving"));
|
|
| 1099 |
|
|
| 1100 |
PACK_VSPACER(vbox2, vbox3, VSPACING_NARROW_2); |
|
| 1101 |
|
|
| 1102 |
hbox1 = gtk_hbox_new (FALSE, 8); |
|
| 1103 |
gtk_widget_show (hbox1); |
|
| 1104 |
gtk_box_pack_start (GTK_BOX (vbox2), hbox1, FALSE, FALSE, 0); |
|
| 1105 |
|
|
| 1106 |
inbox_label = gtk_label_new (_("Default inbox"));
|
|
| 1107 |
gtk_widget_show (inbox_label); |
|
| 1108 |
gtk_box_pack_start (GTK_BOX (hbox1), inbox_label, FALSE, FALSE, 0); |
|
| 1109 |
|
|
| 1110 |
inbox_entry = gtk_entry_new (); |
|
| 1111 |
gtk_widget_show (inbox_entry); |
|
| 1112 |
gtk_widget_set_size_request (inbox_entry, DEFAULT_ENTRY_WIDTH, -1); |
|
| 1113 |
gtk_box_pack_start (GTK_BOX (hbox1), inbox_entry, TRUE, TRUE, 0); |
|
| 1114 |
|
|
| 1115 |
inbox_btn = gtk_button_new_with_label (_(" Select... "));
|
|
| 1116 |
gtk_widget_show (inbox_btn); |
|
| 1117 |
gtk_box_pack_start (GTK_BOX (hbox1), inbox_btn, FALSE, FALSE, 0); |
|
| 1118 |
g_signal_connect (G_OBJECT (inbox_btn), "clicked", |
|
| 1119 |
G_CALLBACK (prefs_account_select_folder_cb), |
|
| 1120 |
inbox_entry); |
|
| 1121 |
|
|
| 1122 |
PACK_VSPACER(vbox2, vbox3, VSPACING_NARROW_2); |
|
| 1123 |
|
|
| 1124 |
PACK_SMALL_LABEL |
|
| 1125 |
(vbox2, label, |
|
| 1126 |
_("Unfiltered messages will be stored in this folder."));
|
|
| 1127 |
|
|
| 1128 |
PACK_FRAME (vbox1, imap_frame, _("IMAP4"));
|
|
| 1129 |
|
|
| 1130 |
vbox2 = gtk_vbox_new (FALSE, 0); |
|
| 1131 |
gtk_widget_show (vbox2); |
|
| 1132 |
gtk_container_add (GTK_CONTAINER (imap_frame), vbox2); |
|
| 1133 |
gtk_container_set_border_width (GTK_CONTAINER (vbox2), 8); |
|
| 1134 |
|
|
| 1135 |
hbox1 = gtk_hbox_new (FALSE, 8); |
|
| 1136 |
gtk_widget_show (hbox1); |
|
| 1137 |
gtk_box_pack_start (GTK_BOX (vbox2), hbox1, FALSE, FALSE, 0); |
|
| 1138 |
|
|
| 1139 |
label = gtk_label_new (_("Authentication method"));
|
|
| 1140 |
gtk_widget_show (label); |
|
| 1141 |
gtk_box_pack_start (GTK_BOX (hbox1), label, FALSE, FALSE, 0); |
|
| 1142 |
|
|
| 1143 |
optmenu = gtk_option_menu_new (); |
|
| 1144 |
gtk_widget_show (optmenu); |
|
| 1145 |
gtk_box_pack_start (GTK_BOX (hbox1), optmenu, FALSE, FALSE, 0); |
|
| 1146 |
|
|
| 1147 |
optmenu_menu = gtk_menu_new (); |
|
| 1148 |
|
|
| 1149 |
MENUITEM_ADD (optmenu_menu, menuitem, _("Automatic"), 0);
|
|
| 1150 |
MENUITEM_ADD (optmenu_menu, menuitem, "LOGIN", IMAP_AUTH_LOGIN); |
|
| 1151 |
MENUITEM_ADD (optmenu_menu, menuitem, "CRAM-MD5", IMAP_AUTH_CRAM_MD5); |
|
| 1152 |
|
|
| 1153 |
gtk_option_menu_set_menu (GTK_OPTION_MENU (optmenu), optmenu_menu); |
|
| 1154 |
|
|
| 1155 |
PACK_FRAME (vbox1, nntp_frame, _("News"));
|
|
| 1156 |
|
|
| 1157 |
vbox2 = gtk_vbox_new (FALSE, 0); |
|
| 1158 |
gtk_widget_show (vbox2); |
|
| 1159 |
gtk_container_add (GTK_CONTAINER (nntp_frame), vbox2); |
|
| 1160 |
gtk_container_set_border_width (GTK_CONTAINER (vbox2), 8); |
|
| 1161 |
|
|
| 1162 |
hbox1 = gtk_hbox_new (FALSE, 8); |
|
| 1163 |
gtk_widget_show (hbox1); |
|
| 1164 |
gtk_box_pack_start (GTK_BOX (vbox2), hbox1, FALSE, FALSE, 0); |
|
| 1165 |
|
|
| 1166 |
maxarticle_label = gtk_label_new |
|
| 1167 |
(_("Maximum number of articles to download"));
|
|
| 1168 |
gtk_widget_show (maxarticle_label); |
|
| 1169 |
gtk_box_pack_start (GTK_BOX (hbox1), maxarticle_label, FALSE, FALSE, 0); |
|
| 1170 |
gtk_label_set_justify (GTK_LABEL (maxarticle_label), GTK_JUSTIFY_LEFT); |
|
| 1171 |
|
|
| 1172 |
maxarticle_spinbtn_adj = |
|
| 1173 |
gtk_adjustment_new (300, 0, 10000, 10, 100, 100); |
|
| 1174 |
maxarticle_spinbtn = gtk_spin_button_new |
|
| 1175 |
(GTK_ADJUSTMENT (maxarticle_spinbtn_adj), 10, 0); |
|
| 1176 |
gtk_widget_show (maxarticle_spinbtn); |
|
| 1177 |
gtk_box_pack_start (GTK_BOX (hbox1), maxarticle_spinbtn, |
|
| 1178 |
FALSE, FALSE, 0); |
|
| 1179 |
gtk_widget_set_size_request (maxarticle_spinbtn, 64, -1); |
|
| 1180 |
gtk_spin_button_set_numeric |
|
| 1181 |
(GTK_SPIN_BUTTON (maxarticle_spinbtn), TRUE); |
|
| 1182 |
|
|
| 1183 |
PACK_SMALL_LABEL (vbox2, maxarticle_desc_label, |
|
| 1184 |
_("No limit if 0 is specified."));
|
|
| 1185 |
|
|
| 1186 |
PACK_CHECK_BUTTON |
|
| 1187 |
(vbox1, recvatgetall_chkbtn, |
|
| 1188 |
_("`Get all' checks for new messages on this account"));
|
|
| 1189 |
|
|
| 1190 |
receive.pop3_frame = frame1; |
|
| 1191 |
receive.use_apop_chkbtn = use_apop_chkbtn; |
|
| 1192 |
receive.rmmail_chkbtn = rmmail_chkbtn; |
|
| 1193 |
receive.leave_time_entry = leave_time_entry; |
|
| 1194 |
receive.getall_chkbtn = getall_chkbtn; |
|
| 1195 |
receive.size_limit_chkbtn = size_limit_chkbtn; |
|
| 1196 |
receive.size_limit_entry = size_limit_entry; |
|
| 1197 |
receive.filter_on_recv_chkbtn = filter_on_recv_chkbtn; |
|
| 1198 |
receive.inbox_label = inbox_label; |
|
| 1199 |
receive.inbox_entry = inbox_entry; |
|
| 1200 |
receive.inbox_btn = inbox_btn; |
|
| 1201 |
|
|
| 1202 |
receive.imap_frame = imap_frame; |
|
| 1203 |
receive.imap_auth_type_optmenu = optmenu; |
|
| 1204 |
|
|
| 1205 |
receive.nntp_frame = nntp_frame; |
|
| 1206 |
receive.maxarticle_spinbtn = maxarticle_spinbtn; |
|
| 1207 |
receive.maxarticle_spinbtn_adj = maxarticle_spinbtn_adj; |
|
| 1208 |
|
|
| 1209 |
receive.recvatgetall_chkbtn = recvatgetall_chkbtn; |
|
| 1210 |
} |
|
| 1211 |
|
|
| 1212 |
static void prefs_account_send_create(void) |
|
| 1213 |
{
|
|
| 1214 |
GtkWidget *vbox1; |
|
| 1215 |
GtkWidget *vbox2; |
|
| 1216 |
GtkWidget *frame; |
|
| 1217 |
GtkWidget *date_chkbtn; |
|
| 1218 |
GtkWidget *msgid_chkbtn; |
|
| 1219 |
GtkWidget *hbox; |
|
| 1220 |
GtkWidget *customhdr_chkbtn; |
|
| 1221 |
GtkWidget *customhdr_edit_btn; |
|
| 1222 |
GtkWidget *vbox3; |
|
| 1223 |
GtkWidget *smtp_auth_chkbtn; |
|
| 1224 |
GtkWidget *optmenu; |
|
| 1225 |
GtkWidget *optmenu_menu; |
|
| 1226 |
GtkWidget *menuitem; |
|
| 1227 |
GtkWidget *vbox4; |
|
| 1228 |
GtkWidget *hbox_spc; |
|
| 1229 |
GtkWidget *label; |
|
| 1230 |
GtkWidget *smtp_uid_entry; |
|
| 1231 |
GtkWidget *smtp_pass_entry; |
|
| 1232 |
GtkWidget *vbox_spc; |
|
| 1233 |
/* GtkWidget *pop_bfr_smtp_chkbtn; */ |
|
| 1234 |
|
|
| 1235 |
vbox1 = gtk_vbox_new (FALSE, VSPACING); |
|
| 1236 |
gtk_widget_show (vbox1); |
|
| 1237 |
gtk_container_add (GTK_CONTAINER (dialog.notebook), vbox1); |
|
| 1238 |
gtk_container_set_border_width (GTK_CONTAINER (vbox1), VBOX_BORDER); |
|
| 1239 |
|
|
| 1240 |
PACK_FRAME (vbox1, frame, _("Header"));
|
|
| 1241 |
|
|
| 1242 |
vbox2 = gtk_vbox_new (FALSE, 0); |
|
| 1243 |
gtk_widget_show (vbox2); |
|
| 1244 |
gtk_container_add (GTK_CONTAINER (frame), vbox2); |
|
| 1245 |
gtk_container_set_border_width (GTK_CONTAINER (vbox2), 8); |
|
| 1246 |
|
|
| 1247 |
PACK_CHECK_BUTTON (vbox2, date_chkbtn, _("Add Date header field"));
|
|
| 1248 |
PACK_CHECK_BUTTON (vbox2, msgid_chkbtn, _("Generate Message-ID"));
|
|
| 1249 |
|
|
| 1250 |
hbox = gtk_hbox_new (FALSE, 12); |
|
| 1251 |
gtk_widget_show (hbox); |
|
| 1252 |
gtk_box_pack_start (GTK_BOX (vbox2), hbox, FALSE, FALSE, 0); |
|
| 1253 |
|
|
| 1254 |
PACK_CHECK_BUTTON (hbox, customhdr_chkbtn, |
|
| 1255 |
_("Add user-defined header"));
|
|
| 1256 |
|
|
| 1257 |
customhdr_edit_btn = gtk_button_new_with_label (_(" Edit... "));
|
|
| 1258 |
gtk_widget_show (customhdr_edit_btn); |
|
| 1259 |
gtk_box_pack_start (GTK_BOX (hbox), customhdr_edit_btn, |
|
| 1260 |
FALSE, FALSE, 0); |
|
| 1261 |
g_signal_connect (G_OBJECT (customhdr_edit_btn), "clicked", |
|
| 1262 |
G_CALLBACK (prefs_account_edit_custom_header), |
|
| 1263 |
NULL); |
|
| 1264 |
|
|
| 1265 |
SET_TOGGLE_SENSITIVITY (customhdr_chkbtn, customhdr_edit_btn); |
|
| 1266 |
|
|
| 1267 |
PACK_FRAME (vbox1, frame, _("Authentication"));
|
|
| 1268 |
|
|
| 1269 |
vbox3 = gtk_vbox_new (FALSE, 0); |
|
| 1270 |
gtk_widget_show (vbox3); |
|
| 1271 |
gtk_container_add (GTK_CONTAINER (frame), vbox3); |
|
| 1272 |
gtk_container_set_border_width (GTK_CONTAINER (vbox3), 8); |
|
| 1273 |
|
|
| 1274 |
PACK_CHECK_BUTTON (vbox3, smtp_auth_chkbtn, |
|
| 1275 |
_("SMTP Authentication (SMTP AUTH)"));
|
|
| 1276 |
|
|
| 1277 |
vbox4 = gtk_vbox_new (FALSE, 0); |
|
| 1278 |
gtk_widget_show (vbox4); |
|
| 1279 |
gtk_box_pack_start (GTK_BOX (vbox3), vbox4, FALSE, FALSE, 0); |
|
| 1280 |
|
|
| 1281 |
hbox = gtk_hbox_new (FALSE, 8); |
|
| 1282 |
gtk_widget_show (hbox); |
|
| 1283 |
gtk_box_pack_start (GTK_BOX (vbox4), hbox, FALSE, FALSE, 0); |
|
| 1284 |
|
|
| 1285 |
hbox_spc = gtk_hbox_new (FALSE, 0); |
|
| 1286 |
gtk_widget_show (hbox_spc); |
|
| 1287 |
gtk_box_pack_start (GTK_BOX (hbox), hbox_spc, FALSE, FALSE, 0); |
|
| 1288 |
gtk_widget_set_size_request (hbox_spc, 12, -1); |
|
| 1289 |
|
|
| 1290 |
label = gtk_label_new (_("Authentication method"));
|
|
| 1291 |
gtk_widget_show (label); |
|
| 1292 |
gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0); |
|
| 1293 |
|
|
| 1294 |
optmenu = gtk_option_menu_new (); |
|
| 1295 |
gtk_widget_show (optmenu); |
|
| 1296 |
gtk_box_pack_start (GTK_BOX (hbox), optmenu, FALSE, FALSE, 0); |
|
| 1297 |
|
|
| 1298 |
optmenu_menu = gtk_menu_new (); |
|
| 1299 |
|
|
| 1300 |
MENUITEM_ADD (optmenu_menu, menuitem, _("Automatic"), 0);
|
|
| 1301 |
MENUITEM_ADD (optmenu_menu, menuitem, "PLAIN", SMTPAUTH_PLAIN); |
|
| 1302 |
MENUITEM_ADD (optmenu_menu, menuitem, "LOGIN", SMTPAUTH_LOGIN); |
|
| 1303 |
MENUITEM_ADD (optmenu_menu, menuitem, "CRAM-MD5", SMTPAUTH_CRAM_MD5); |
|
| 1304 |
MENUITEM_ADD (optmenu_menu, menuitem, "DIGEST-MD5", SMTPAUTH_DIGEST_MD5); |
|
| 1305 |
gtk_widget_set_sensitive (menuitem, FALSE); |
|
| 1306 |
|
|
| 1307 |
gtk_option_menu_set_menu (GTK_OPTION_MENU (optmenu), optmenu_menu); |
|
| 1308 |
|
|
| 1309 |
PACK_VSPACER(vbox4, vbox_spc, VSPACING_NARROW_2); |
|
| 1310 |
|
|
| 1311 |
hbox = gtk_hbox_new (FALSE, 8); |
|
| 1312 |
gtk_widget_show (hbox); |
|
| 1313 |
gtk_box_pack_start (GTK_BOX (vbox4), hbox, FALSE, FALSE, 0); |
|
| 1314 |
|
|
| 1315 |
hbox_spc = gtk_hbox_new (FALSE, 0); |
|
| 1316 |
gtk_widget_show (hbox_spc); |
|
| 1317 |
gtk_box_pack_start (GTK_BOX (hbox), hbox_spc, FALSE, FALSE, 0); |
|
| 1318 |
gtk_widget_set_size_request (hbox_spc, 12, -1); |
|
| 1319 |
|
|
| 1320 |
label = gtk_label_new (_("User ID"));
|
|
| 1321 |
gtk_widget_show (label); |
|
| 1322 |
gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0); |
|
| 1323 |
|
|
| 1324 |
smtp_uid_entry = gtk_entry_new (); |
|
| 1325 |
gtk_widget_show (smtp_uid_entry); |
|
| 1326 |
gtk_widget_set_size_request (smtp_uid_entry, DEFAULT_ENTRY_WIDTH, -1); |
|
| 1327 |
gtk_box_pack_start (GTK_BOX (hbox), smtp_uid_entry, TRUE, TRUE, 0); |
|
| 1328 |
|
|
| 1329 |
label = gtk_label_new (_("Password"));
|
|
| 1330 |
gtk_widget_show (label); |
|
| 1331 |
gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0); |
|
| 1332 |
|
|
| 1333 |
smtp_pass_entry = gtk_entry_new (); |
|
| 1334 |
gtk_widget_show (smtp_pass_entry); |
|
| 1335 |
gtk_widget_set_size_request (smtp_pass_entry, DEFAULT_ENTRY_WIDTH, -1); |
|
| 1336 |
gtk_box_pack_start (GTK_BOX (hbox), smtp_pass_entry, TRUE, TRUE, 0); |
|
| 1337 |
gtk_entry_set_visibility (GTK_ENTRY (smtp_pass_entry), FALSE); |
|
| 1338 |
|
|
| 1339 |
PACK_VSPACER(vbox4, vbox_spc, VSPACING_NARROW_2); |
|
| 1340 |
|
|
| 1341 |
hbox = gtk_hbox_new (FALSE, 8); |
|
| 1342 |
gtk_widget_show (hbox); |
|
| 1343 |
gtk_box_pack_start (GTK_BOX (vbox4), hbox, FALSE, FALSE, 0); |
|
| 1344 |
|
|
| 1345 |
hbox_spc = gtk_hbox_new (FALSE, 0); |
|
| 1346 |
gtk_widget_show (hbox_spc); |
|
| 1347 |
gtk_box_pack_start (GTK_BOX (hbox), hbox_spc, FALSE, FALSE, 0); |
|
| 1348 |
gtk_widget_set_size_request (hbox_spc, 12, -1); |
|
| 1349 |
|
|
| 1350 |
label = gtk_label_new |
|
| 1351 |
(_("If you leave these entries empty, the same "
|
|
| 1352 |
"user ID and password as receiving will be used.")); |
|
| 1353 |
gtk_widget_show (label); |
|
| 1354 |
gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0); |
|
| 1355 |
gtk_label_set_justify (GTK_LABEL (label), GTK_JUSTIFY_LEFT); |
|
| 1356 |
gtk_label_set_line_wrap (GTK_LABEL (label), TRUE); |
|
| 1357 |
gtkut_widget_set_small_font_size (label); |
|
| 1358 |
|
|
| 1359 |
SET_TOGGLE_SENSITIVITY (smtp_auth_chkbtn, vbox4); |
|
| 1360 |
|
|
| 1361 |
#if 0 |
|
| 1362 |
PACK_CHECK_BUTTON (vbox3, pop_bfr_smtp_chkbtn, |
|
| 1363 |
_("Authenticate with POP3 before sending"));
|
|
| 1364 |
gtk_widget_set_sensitive(pop_bfr_smtp_chkbtn, FALSE); |
|
| 1365 |
#endif |
|
| 1366 |
|
|
| 1367 |
p_send.date_chkbtn = date_chkbtn; |
|
| 1368 |
p_send.msgid_chkbtn = msgid_chkbtn; |
|
| 1369 |
p_send.customhdr_chkbtn = customhdr_chkbtn; |
|
| 1370 |
|
|
| 1371 |
p_send.smtp_auth_chkbtn = smtp_auth_chkbtn; |
|
| 1372 |
p_send.smtp_auth_type_optmenu = optmenu; |
|
| 1373 |
p_send.smtp_uid_entry = smtp_uid_entry; |
|
| 1374 |
p_send.smtp_pass_entry = smtp_pass_entry; |
|
| 1375 |
/* p_send.pop_bfr_smtp_chkbtn = pop_bfr_smtp_chkbtn; */ |
|
| 1376 |
} |
|
| 1377 |
|
|
| 1378 |
static void prefs_account_compose_create(void) |
|
| 1379 |
{
|
|
| 1380 |
GtkWidget *vbox1; |
|
| 1381 |
GtkWidget *sig_vbox; |
|
| 1382 |
GtkWidget *sig_hbox; |
|
| 1383 |
GtkWidget *sigfile_radiobtn; |
|
| 1384 |
GtkWidget *sigcmd_radiobtn; |
|
| 1385 |
GtkWidget *sigpath_entry; |
|
| 1386 |
GtkWidget *frame; |
|
| 1387 |
GtkWidget *table; |
|
| 1388 |
GtkWidget *autocc_chkbtn; |
|
| 1389 |
GtkWidget *autocc_entry; |
|
| 1390 |
GtkWidget *autobcc_chkbtn; |
|
| 1391 |
GtkWidget *autobcc_entry; |
|
| 1392 |
GtkWidget *autoreplyto_chkbtn; |
|
| 1393 |
GtkWidget *autoreplyto_entry; |
|
| 1394 |
|
|
| 1395 |
vbox1 = gtk_vbox_new (FALSE, VSPACING); |
|
| 1396 |
gtk_widget_show (vbox1); |
|
| 1397 |
gtk_container_add (GTK_CONTAINER (dialog.notebook), vbox1); |
|
| 1398 |
gtk_container_set_border_width (GTK_CONTAINER (vbox1), VBOX_BORDER); |
|
| 1399 |
|
|
| 1400 |
PACK_FRAME (vbox1, frame, _("Signature"));
|
|
| 1401 |
|
|
| 1402 |
sig_vbox = gtk_vbox_new (FALSE, VSPACING_NARROW_2); |
|
| 1403 |
gtk_widget_show (sig_vbox); |
|
| 1404 |
gtk_container_add (GTK_CONTAINER (frame), sig_vbox); |
|
| 1405 |
gtk_container_set_border_width (GTK_CONTAINER (sig_vbox), 8); |
|
| 1406 |
|
|
| 1407 |
sig_hbox = gtk_hbox_new (FALSE, 8); |
|
| 1408 |
gtk_widget_show (sig_hbox); |
|
| 1409 |
gtk_box_pack_start (GTK_BOX (sig_vbox), sig_hbox, FALSE, FALSE, 0); |
|
| 1410 |
|
|
| 1411 |
sigfile_radiobtn = gtk_radio_button_new_with_label (NULL, _("File"));
|
|
| 1412 |
gtk_widget_show (sigfile_radiobtn); |
|
| 1413 |
gtk_box_pack_start (GTK_BOX (sig_hbox), sigfile_radiobtn, |
|
| 1414 |
FALSE, FALSE, 0); |
|
| 1415 |
g_object_set_data (G_OBJECT (sigfile_radiobtn), MENU_VAL_ID, |
|
| 1416 |
GINT_TO_POINTER (SIG_FILE)); |
|
| 1417 |
|
|
| 1418 |
sigcmd_radiobtn = gtk_radio_button_new_with_label_from_widget |
|
| 1419 |
(GTK_RADIO_BUTTON(sigfile_radiobtn), _("Command output"));
|
|
| 1420 |
gtk_widget_show (sigcmd_radiobtn); |
|
| 1421 |
gtk_box_pack_start (GTK_BOX (sig_hbox), sigcmd_radiobtn, |
|
| 1422 |
FALSE, FALSE, 0); |
|
| 1423 |
g_object_set_data (G_OBJECT (sigcmd_radiobtn), MENU_VAL_ID, |
|
| 1424 |
GINT_TO_POINTER (SIG_COMMAND)); |
|
| 1425 |
|
|
| 1426 |
sigpath_entry = gtk_entry_new (); |
|
| 1427 |
gtk_widget_show (sigpath_entry); |
|
| 1428 |
gtk_box_pack_start (GTK_BOX (sig_vbox), sigpath_entry, TRUE, TRUE, 0); |
|
| 1429 |
|
|
| 1430 |
PACK_FRAME (vbox1, frame, _("Automatically set the following addresses"));
|
|
| 1431 |
|
|
| 1432 |
table = gtk_table_new (3, 2, FALSE); |
|
| 1433 |
gtk_widget_show (table); |
|
| 1434 |
gtk_container_add (GTK_CONTAINER (frame), table); |
|
| 1435 |
gtk_container_set_border_width (GTK_CONTAINER (table), 8); |
|
| 1436 |
gtk_table_set_row_spacings (GTK_TABLE (table), VSPACING_NARROW_2); |
|
| 1437 |
gtk_table_set_col_spacings (GTK_TABLE (table), 8); |
|
| 1438 |
|
|
| 1439 |
autocc_chkbtn = gtk_check_button_new_with_label (_("Cc"));
|
|
| 1440 |
gtk_widget_show (autocc_chkbtn); |
|
| 1441 |
gtk_table_attach (GTK_TABLE (table), autocc_chkbtn, 0, 1, 0, 1, |
|
| 1442 |
GTK_FILL, 0, 0, 0); |
|
| 1443 |
|
|
| 1444 |
autocc_entry = gtk_entry_new (); |
|
| 1445 |
gtk_widget_show (autocc_entry); |
|
| 1446 |
gtk_table_attach (GTK_TABLE (table), autocc_entry, 1, 2, 0, 1, |
|
| 1447 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, |
|
| 1448 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); |
|
| 1449 |
|
|
| 1450 |
SET_TOGGLE_SENSITIVITY (autocc_chkbtn, autocc_entry); |
|
| 1451 |
|
|
| 1452 |
autobcc_chkbtn = gtk_check_button_new_with_label (_("Bcc"));
|
|
| 1453 |
gtk_widget_show (autobcc_chkbtn); |
|
| 1454 |
gtk_table_attach (GTK_TABLE (table), autobcc_chkbtn, 0, 1, 1, 2, |
|
| 1455 |
GTK_FILL, 0, 0, 0); |
|
| 1456 |
|
|
| 1457 |
autobcc_entry = gtk_entry_new (); |
|
| 1458 |
gtk_widget_show (autobcc_entry); |
|
| 1459 |
gtk_table_attach (GTK_TABLE (table), autobcc_entry, 1, 2, 1, 2, |
|
| 1460 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, |
|
| 1461 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); |
|
| 1462 |
|
|
| 1463 |
SET_TOGGLE_SENSITIVITY (autobcc_chkbtn, autobcc_entry); |
|
| 1464 |
|
|
| 1465 |
autoreplyto_chkbtn = gtk_check_button_new_with_label (_("Reply-To"));
|
|
| 1466 |
gtk_widget_show (autoreplyto_chkbtn); |
|
| 1467 |
gtk_table_attach (GTK_TABLE (table), autoreplyto_chkbtn, 0, 1, 2, 3, |
|
| 1468 |
GTK_FILL, 0, 0, 0); |
|
| 1469 |
|
|
| 1470 |
autoreplyto_entry = gtk_entry_new (); |
|
| 1471 |
gtk_widget_show (autoreplyto_entry); |
|
| 1472 |
gtk_table_attach (GTK_TABLE (table), autoreplyto_entry, 1, 2, 2, 3, |
|
| 1473 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, |
|
| 1474 |
GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); |
|
| 1475 |
|
|
| 1476 |
SET_TOGGLE_SENSITIVITY (autoreplyto_chkbtn, autoreplyto_entry); |
|
| 1477 |
|
|
| 1478 |
|
|
| 1479 |
compose.sigfile_radiobtn = sigfile_radiobtn; |
|
| 1480 |
compose.sigpath_entry = sigpath_entry; |
|
| 1481 |
|
|
| 1482 |
compose.autocc_chkbtn = autocc_chkbtn; |
|
| 1483 |
compose.autocc_entry = autocc_entry; |
|
| 1484 |
compose.autobcc_chkbtn = autobcc_chkbtn; |
|
| 1485 |
compose.autobcc_entry = autobcc_entry; |
|
| 1486 |
compose.autoreplyto_chkbtn = autoreplyto_chkbtn; |
|
| 1487 |
compose.autoreplyto_entry = autoreplyto_entry; |
|
| 1488 |
} |
|
| 1489 |
|
|
| 1490 |
#if USE_GPGME |
|
| 1491 |
static void prefs_account_privacy_create(void) |
|
| 1492 |
{
|
|
| 1493 |
GtkWidget *vbox1; |
|
| 1494 |
GtkWidget *frame1; |
|
| 1495 |
GtkWidget *vbox2; |
|
| 1496 |
GtkWidget *hbox1; |
|
| 1497 |
GtkWidget *label; |
|
| 1498 |
GtkWidget *default_sign_chkbtn; |
|
| 1499 |
GtkWidget *default_encrypt_chkbtn; |
|
| 1500 |
GtkWidget *encrypt_reply_chkbtn; |
|
| 1501 |
GtkWidget *ascii_armored_chkbtn; |
|
| 1502 |
GtkWidget *clearsign_chkbtn; |
|
| 1503 |
GtkWidget *defaultkey_radiobtn; |
|
| 1504 |
GtkWidget *emailkey_radiobtn; |
|
| 1505 |
GtkWidget *customkey_radiobtn; |
|
| 1506 |
GtkWidget *customkey_entry; |
|
| 1507 |
|
|
| 1508 |
vbox1 = gtk_vbox_new (FALSE, VSPACING); |
|
| 1509 |
gtk_widget_show (vbox1); |
|
| 1510 |
gtk_container_add (GTK_CONTAINER (dialog.notebook), vbox1); |
|
| 1511 |
gtk_container_set_border_width (GTK_CONTAINER (vbox1), VBOX_BORDER); |
|
| 1512 |
|
|
| 1513 |
vbox2 = gtk_vbox_new (FALSE, 0); |
|
| 1514 |
gtk_widget_show (vbox2); |
|
| 1515 |
gtk_box_pack_start (GTK_BOX (vbox1), vbox2, FALSE, FALSE, 0); |
|
| 1516 |
|
|
| 1517 |
PACK_CHECK_BUTTON (vbox2, default_sign_chkbtn, |
|
| 1518 |
_("Sign message by default"));
|
|
| 1519 |
PACK_CHECK_BUTTON (vbox2, default_encrypt_chkbtn, |
|
| 1520 |
_("Encrypt message by default"));
|
|
| 1521 |
PACK_CHECK_BUTTON (vbox2, encrypt_reply_chkbtn, |
|
| 1522 |
_("Encrypt when replying to encrypted message"));
|
|
| 1523 |
PACK_CHECK_BUTTON (vbox2, ascii_armored_chkbtn, |
|
| 1524 |
_("Use ASCII-armored format for encryption"));
|
|
| 1525 |
PACK_CHECK_BUTTON (vbox2, clearsign_chkbtn, |
|
| 1526 |
_("Use clear text signature"));
|
|
| 1527 |
g_signal_connect (G_OBJECT (ascii_armored_chkbtn), "toggled", |
|
Also available in: Unified diff