aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--ChangeLog.ja6
-rw-r--r--src/prefs_account_dialog.c64
3 files changed, 75 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 5a02d503..d3efe48c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2007-05-08
+
+ * src/prefs_common_dialog.c: prefs_account_ssl_create(): automatically
+ set SSL ports in Advanced tab when the radio buttons are toggled.
+
2007-05-07
* src/folderview.c: enabled recursive download of remote folders.
diff --git a/ChangeLog.ja b/ChangeLog.ja
index 87ed4d5f..23215eb8 100644
--- a/ChangeLog.ja
+++ b/ChangeLog.ja
@@ -1,3 +1,9 @@
+2007-05-08
+
+ * src/prefs_common_dialog.c: prefs_account_ssl_create(): ラジオボタン
+ が切り替わったときに高度な設定タブの SSL ポートを自動的にセットする
+ ようにした。
+
2007-05-07
* src/folderview.c: リモートフォルダの再帰的なダウンロードができる
diff --git a/src/prefs_account_dialog.c b/src/prefs_account_dialog.c
index 3a36ea00..4c285bcd 100644
--- a/src/prefs_account_dialog.c
+++ b/src/prefs_account_dialog.c
@@ -1505,6 +1505,58 @@ static void prefs_account_privacy_create(void)
CREATE_RADIO_BUTTON(box, btn3, btn1, btn3_label, btn3_data); \
}
+static void pop_ssltunnel_toggled(GtkToggleButton *button, gpointer data)
+{
+ if (gtk_toggle_button_get_active
+ (GTK_TOGGLE_BUTTON(advanced.popport_chkbtn)))
+ return;
+
+ if (gtk_toggle_button_get_active(button)) {
+ gtk_entry_set_text(GTK_ENTRY(advanced.popport_entry), "995");
+ } else {
+ gtk_entry_set_text(GTK_ENTRY(advanced.popport_entry), "110");
+ }
+}
+
+static void imap_ssltunnel_toggled(GtkToggleButton *button, gpointer data)
+{
+ if (gtk_toggle_button_get_active
+ (GTK_TOGGLE_BUTTON(advanced.imapport_chkbtn)))
+ return;
+
+ if (gtk_toggle_button_get_active(button)) {
+ gtk_entry_set_text(GTK_ENTRY(advanced.imapport_entry), "993");
+ } else {
+ gtk_entry_set_text(GTK_ENTRY(advanced.imapport_entry), "143");
+ }
+}
+
+static void nntp_ssltunnel_toggled(GtkToggleButton *button, gpointer data)
+{
+ if (gtk_toggle_button_get_active
+ (GTK_TOGGLE_BUTTON(advanced.nntpport_chkbtn)))
+ return;
+
+ if (gtk_toggle_button_get_active(button)) {
+ gtk_entry_set_text(GTK_ENTRY(advanced.nntpport_entry), "563");
+ } else {
+ gtk_entry_set_text(GTK_ENTRY(advanced.nntpport_entry), "119");
+ }
+}
+
+static void smtp_ssltunnel_toggled(GtkToggleButton *button, gpointer data)
+{
+ if (gtk_toggle_button_get_active
+ (GTK_TOGGLE_BUTTON(advanced.smtpport_chkbtn)))
+ return;
+
+ if (gtk_toggle_button_get_active(button)) {
+ gtk_entry_set_text(GTK_ENTRY(advanced.smtpport_entry), "465");
+ } else {
+ gtk_entry_set_text(GTK_ENTRY(advanced.smtpport_entry), "25");
+ }
+}
+
static void prefs_account_ssl_create(void)
{
GtkWidget *vbox1;
@@ -1558,6 +1610,9 @@ static void prefs_account_ssl_create(void)
_("Use STARTTLS command to start SSL session"),
SSL_STARTTLS);
+ g_signal_connect(G_OBJECT(pop_ssltunnel_radiobtn), "toggled",
+ G_CALLBACK(pop_ssltunnel_toggled), NULL);
+
PACK_FRAME (vbox1, imap_frame, _("IMAP4"));
vbox3 = gtk_vbox_new (FALSE, 0);
gtk_widget_show (vbox3);
@@ -1575,6 +1630,9 @@ static void prefs_account_ssl_create(void)
_("Use STARTTLS command to start SSL session"),
SSL_STARTTLS);
+ g_signal_connect(G_OBJECT(imap_ssltunnel_radiobtn), "toggled",
+ G_CALLBACK(imap_ssltunnel_toggled), NULL);
+
PACK_FRAME (vbox1, nntp_frame, _("NNTP"));
vbox4 = gtk_vbox_new (FALSE, 0);
gtk_widget_show (vbox4);
@@ -1592,6 +1650,9 @@ static void prefs_account_ssl_create(void)
CREATE_RADIO_BUTTON(vbox4, nntp_ssltunnel_radiobtn, nntp_nossl_radiobtn,
_("Use SSL for NNTP connection"), SSL_TUNNEL);
+ g_signal_connect(G_OBJECT(nntp_ssltunnel_radiobtn), "toggled",
+ G_CALLBACK(nntp_ssltunnel_toggled), NULL);
+
PACK_FRAME (vbox1, send_frame, _("Send (SMTP)"));
vbox5 = gtk_vbox_new (FALSE, 0);
gtk_widget_show (vbox5);
@@ -1609,6 +1670,9 @@ static void prefs_account_ssl_create(void)
_("Use STARTTLS command to start SSL session"),
SSL_STARTTLS);
+ g_signal_connect(G_OBJECT(smtp_ssltunnel_radiobtn), "toggled",
+ G_CALLBACK(smtp_ssltunnel_toggled), NULL);
+
vbox6 = gtk_vbox_new (FALSE, 0);
gtk_widget_show (vbox6);
gtk_box_pack_start (GTK_BOX (vbox1), vbox6, FALSE, FALSE, 0);