+2006-10-07 [colin] 2.5.3cvs15
+
+ * src/folderview.c
+ * src/imap.c
+ * src/prefs_account.c
+ * src/wizard.c
+ Warn users *everywhere* if libetpan's not
+ linked in
+
2006-10-06 [mones] 2.5.3cvs14
* po/de.po
( cvs diff -u -r 1.395.2.262 -r 1.395.2.263 src/summaryview.c; cvs diff -u -r 1.1.2.46 -r 1.1.2.47 src/gtk/quicksearch.c; ) > 2.5.3cvs12.patchset
( cvs diff -u -r 1.115.2.108 -r 1.115.2.109 src/main.c; cvs diff -u -r 1.10.2.21 -r 1.10.2.22 src/prefs_gtk.c; cvs diff -u -r 1.5.2.8 -r 1.5.2.9 src/prefs_gtk.h; cvs diff -u -r 1.7.2.8 -r 1.7.2.9 src/common/sylpheed.c; ) > 2.5.3cvs13.patchset
( cvs diff -u -r 1.58.2.25 -r 1.58.2.26 po/de.po; cvs diff -u -r 1.60.2.35 -r 1.60.2.36 po/es.po; ) > 2.5.3cvs14.patchset
+( cvs diff -u -r 1.207.2.129 -r 1.207.2.130 src/folderview.c; cvs diff -u -r 1.179.2.132 -r 1.179.2.133 src/imap.c; cvs diff -u -r 1.105.2.67 -r 1.105.2.68 src/prefs_account.c; cvs diff -u -r 1.1.2.36 -r 1.1.2.37 src/wizard.c; ) > 2.5.3cvs15.patchset
MICRO_VERSION=3
INTERFACE_AGE=0
BINARY_AGE=0
-EXTRA_VERSION=14
+EXTRA_VERSION=15
EXTRA_RELEASE=
EXTRA_GTK2_VERSION=
static void folderview_set_folders(FolderView *folderview)
{
GList *list;
-#ifndef HAVE_LIBETPAN
- static gboolean missing_imap_warning = TRUE;
-#endif
list = folder_get_list();
for (; list != NULL; list = list->next) {
-#ifndef HAVE_LIBETPAN
- if ((FOLDER(list->data))
- && (FOLDER(list->data))->klass
- && (FOLDER(list->data))->klass->type == F_IMAP
- && missing_imap_warning) {
- missing_imap_warning = FALSE;
- alertpanel_error(
- _("You have one or more IMAP accounts "
- "defined. However this version of "
- "Sylpheed-Claws has been built without "
- "IMAP support; your IMAP account(s) are "
- "disabled.\n\n"
- "You probably need to "
- "install libetpan and recompile "
- "Sylpheed-Claws."));
- }
-#endif
folderview_append_folder(folderview, FOLDER(list->data));
}
}
static Folder *imap_folder_new (const gchar *name,
const gchar *path)
{
+ static gboolean missing_imap_warning = TRUE;
+ if (missing_imap_warning) {
+ missing_imap_warning = FALSE;
+ alertpanel_error(
+ _("You have one or more IMAP accounts "
+ "defined. However this version of "
+ "Sylpheed-Claws has been built without "
+ "IMAP support; your IMAP account(s) are "
+ "disabled.\n\n"
+ "You probably need to "
+ "install libetpan and recompile "
+ "Sylpheed-Claws."));
+ }
return NULL;
}
static gint imap_create_tree (Folder *folder)
GtkWidget *combobox;
GtkWidget *label;
GtkWidget *descrlabel;
+ GtkWidget *no_imap_warn_icon;
+ GtkWidget *no_imap_warn_label;
};
static struct Basic {
GtkWidget *optmenubox;
GtkWidget *optmenu;
GtkWidget *optlabel;
+ GtkWidget *no_imap_warn_icon;
+ GtkWidget *no_imap_warn_label;
GtkWidget *serv_table;
GtkWidget *recvserv_label;
GtkWidget *smtpserv_label;
gtk_label_set_justify(GTK_LABEL(optlabel), GTK_JUSTIFY_CENTER);
gtk_box_pack_start(GTK_BOX (optmenubox), optlabel, FALSE, FALSE, 0);
+ no_imap_warn_icon = gtk_image_new_from_stock
+ (GTK_STOCK_DIALOG_WARNING, GTK_ICON_SIZE_SMALL_TOOLBAR);
+ no_imap_warn_label = gtk_label_new(_("<span weight=\"bold\">Warning: this version of Sylpheed-Claws\n"
+ "has been built without IMAP support.</span>"));
+ gtk_label_set_use_markup(GTK_LABEL(no_imap_warn_label), TRUE);
+
+ gtk_box_pack_start(GTK_BOX (optmenubox), no_imap_warn_icon, FALSE, FALSE, 0);
+ gtk_box_pack_start(GTK_BOX (optmenubox), no_imap_warn_label, FALSE, FALSE, 0);
/* Set up a struct to store pointers to necessary widgets */
protocol_optmenu = g_new(struct BasicProtocol, 1);
protocol_optmenu->combobox = optmenu;
protocol_optmenu->label = optlabel;
protocol_optmenu->descrlabel = label;
+ protocol_optmenu->no_imap_warn_icon = no_imap_warn_icon;
+ protocol_optmenu->no_imap_warn_label = no_imap_warn_label;
serv_table = gtk_table_new (6, 4, FALSE);
gtk_widget_show (serv_table);
g_free(label);
gtk_widget_hide(optmenu);
gtk_widget_show(optlabel);
+#ifndef HAVE_LIBETPAN
+ if (protocol == A_IMAP4) {
+ gtk_widget_show(protocol_optmenu->no_imap_warn_icon);
+ gtk_widget_show(protocol_optmenu->no_imap_warn_label);
+ } else {
+ gtk_widget_hide(protocol_optmenu->no_imap_warn_icon);
+ gtk_widget_hide(protocol_optmenu->no_imap_warn_label);
+ }
+#endif
}
}
static void prefs_account_protocol_changed(GtkComboBox *combobox, gpointer data)
{
RecvProtocol protocol;
+ struct BasicProtocol *protocol_optmenu = (struct BasicProtocol *)basic.protocol_optmenu;
protocol = combobox_get_active_data(combobox);
+ gtk_widget_hide(protocol_optmenu->no_imap_warn_icon);
+ gtk_widget_hide(protocol_optmenu->no_imap_warn_label);
switch(protocol) {
case A_NNTP:
+ gtk_widget_hide(protocol_optmenu->no_imap_warn_icon);
+ gtk_widget_hide(protocol_optmenu->no_imap_warn_label);
gtk_widget_show(basic.nntpserv_label);
gtk_widget_show(basic.nntpserv_entry);
gtk_table_set_row_spacing (GTK_TABLE (basic.serv_table),
gtk_widget_hide(receive.imapdir_entry);
break;
case A_LOCAL:
+ gtk_widget_hide(protocol_optmenu->no_imap_warn_icon);
+ gtk_widget_hide(protocol_optmenu->no_imap_warn_label);
gtk_widget_hide(basic.nntpserv_label);
gtk_widget_hide(basic.nntpserv_entry);
gtk_table_set_row_spacing (GTK_TABLE (basic.serv_table),
gtk_widget_hide(receive.imapdir_entry);
break;
case A_IMAP4:
+#ifndef HAVE_LIBETPAN
+ gtk_widget_show(protocol_optmenu->no_imap_warn_icon);
+ gtk_widget_show(protocol_optmenu->no_imap_warn_label);
+#endif
gtk_widget_hide(basic.nntpserv_label);
gtk_widget_hide(basic.nntpserv_entry);
gtk_table_set_row_spacing (GTK_TABLE (basic.serv_table),
gtk_widget_show(receive.imapdir_entry);
break;
case A_NONE:
+ gtk_widget_hide(protocol_optmenu->no_imap_warn_icon);
+ gtk_widget_hide(protocol_optmenu->no_imap_warn_label);
gtk_widget_hide(basic.nntpserv_label);
gtk_widget_hide(basic.nntpserv_entry);
gtk_table_set_row_spacing (GTK_TABLE (basic.serv_table),
break;
case A_POP3:
default:
+ gtk_widget_hide(protocol_optmenu->no_imap_warn_icon);
+ gtk_widget_hide(protocol_optmenu->no_imap_warn_label);
gtk_widget_hide(basic.nntpserv_label);
gtk_widget_hide(basic.nntpserv_entry);
gtk_table_set_row_spacing (GTK_TABLE (basic.serv_table),
GtkWidget *recv_password_label;
GtkWidget *recv_imap_label;
GtkWidget *recv_imap_subdir;
-
+ GtkWidget *no_imap_warning;
#ifdef USE_OPENSSL
GtkWidget *smtp_use_ssl;
GtkWidget *recv_use_ssl;
gtk_widget_show(wizard->recv_password);
gtk_widget_show(wizard->recv_username_label);
gtk_widget_show(wizard->recv_password_label);
+ gtk_widget_hide(wizard->no_imap_warning);
gtk_label_set_text(GTK_LABEL(wizard->recv_label), _("<span weight=\"bold\">Server address:</span>"));
gtk_label_set_use_markup(GTK_LABEL(wizard->recv_label), TRUE);
+ gtk_dialog_set_response_sensitive (GTK_DIALOG(wizard->window), GO_FORWARD, TRUE);
g_free(text);
} else if (protocol == A_IMAP4) {
+#ifdef HAVE_LIBETPAN
text = get_default_server(wizard, "imap");
gtk_entry_set_text(GTK_ENTRY(wizard->recv_server), text);
gtk_widget_show(wizard->recv_imap_label);
gtk_widget_show(wizard->recv_password);
gtk_widget_show(wizard->recv_username_label);
gtk_widget_show(wizard->recv_password_label);
+ gtk_widget_hide(wizard->no_imap_warning);
gtk_label_set_text(GTK_LABEL(wizard->recv_label), _("<span weight=\"bold\">Server address:</span>"));
gtk_label_set_use_markup(GTK_LABEL(wizard->recv_label), TRUE);
+ gtk_dialog_set_response_sensitive (GTK_DIALOG(wizard->window), GO_FORWARD, TRUE);
g_free(text);
+#else
+ gtk_widget_hide(wizard->recv_imap_label);
+ gtk_widget_hide(wizard->recv_imap_subdir);
+ gtk_widget_hide(wizard->recv_username);
+ gtk_widget_hide(wizard->recv_password);
+ gtk_widget_hide(wizard->recv_username_label);
+ gtk_widget_hide(wizard->recv_password_label);
+ gtk_widget_show(wizard->no_imap_warning);
+ gtk_dialog_set_response_sensitive (GTK_DIALOG(wizard->window), GO_FORWARD, FALSE);
+#endif
} else if (protocol == A_LOCAL) {
gtk_entry_set_text(GTK_ENTRY(wizard->recv_server), tmpl.mboxfile?tmpl.mboxfile:"");
gtk_label_set_text(GTK_LABEL(wizard->recv_label), _("<span weight=\"bold\">Local mailbox:</span>"));
gtk_label_set_use_markup(GTK_LABEL(wizard->recv_label), TRUE);
+ gtk_widget_hide(wizard->no_imap_warning);
gtk_widget_hide(wizard->recv_imap_label);
gtk_widget_hide(wizard->recv_imap_subdir);
gtk_widget_hide(wizard->recv_username);
gtk_widget_hide(wizard->recv_password);
gtk_widget_hide(wizard->recv_username_label);
gtk_widget_hide(wizard->recv_password_label);
+ gtk_dialog_set_response_sensitive (GTK_DIALOG(wizard->window), GO_FORWARD, TRUE);
}
}
g_signal_connect(G_OBJECT(menuitem), "activate",
G_CALLBACK(wizard_protocol_changed),
wizard);
-#ifdef HAVE_LIBETPAN
+
MENUITEM_ADD (menu, menuitem, _("IMAP"), A_IMAP4);
g_signal_connect(G_OBJECT(menuitem), "activate",
G_CALLBACK(wizard_protocol_changed),
wizard);
-#endif
+
MENUITEM_ADD (menu, menuitem, _("Local mbox file"), A_LOCAL);
g_signal_connect(G_OBJECT(menuitem), "activate",
G_CALLBACK(wizard_protocol_changed),
case A_POP3:
index = 0;
break;
-#ifdef HAVE_LIBETPAN
case A_IMAP4:
index = 1;
break;
case A_LOCAL:
index = 2;
break;
-#else
- case A_LOCAL:
- index = 1;
- break;
-#endif
default:
index = 0;
}
i++;
+ wizard->no_imap_warning = gtk_label_new(_(
+ "<span weight=\"bold\">Warning: this version of Sylpheed-Claws\n"
+ "has been built without IMAP support.</span>"));
+ gtk_label_set_use_markup(GTK_LABEL(wizard->no_imap_warning), TRUE);
+ gtk_table_attach(GTK_TABLE(table), wizard->no_imap_warning,
+ 0,2,i,i+1, GTK_EXPAND|GTK_FILL, 0, 0, 0);
+
return table;
}