+2002-08-29
+
+ * src/inc.[ch]
+ src/pop.c
+ src/progressdialog.c: show detailed information to the status
+ column.
+ Added cur_total_recv_bytes to Pop3State.
+ * src/prefs_common.[ch]: added an option to specify whether to
+ close receive dialog when finished.
+
2002-08-28
* src/folder.[ch]: folder_get_path(): new. It returns the root path
+2002-08-29 [paul] 0.8.2claws9
+
+ * sync with 0.8.2cvs5
+ see ChangeLog 2002-08-29
+
2002-08-29 [colin] 0.8.2claws8
* src/summaryview.c
+2002-08-29
+
+ * src/inc.[ch]
+ src/pop.c
+ src/progressdialog.c: ¾õÂÖ¥«¥é¥à¤Ë¾ÜºÙ¤Ê¾ðÊó¤òɽ¼¨¡£
+ Pop3State ¤Ë cur_total_recv_bytes ¤òÄɲá£
+ * src/prefs_common.[ch]: ´°Î»»þ¤Ë¼õ¿®¥À¥¤¥¢¥í¥°¤òÊĤ¸¤ë¤«¤É¤¦¤«¤ò
+ »ØÄꤹ¤ë¥ª¥×¥·¥ç¥ó¤òÄɲá£
+
2002-08-28
* src/folder.[ch]: folder_get_path(): ¿·µ¬¡£ Folder ¤Î¥ë¡¼¥È¥Ñ¥¹¤ò
MICRO_VERSION=2
INTERFACE_AGE=0
BINARY_AGE=0
-EXTRA_VERSION=claws8
+EXTRA_VERSION=claws9
VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION$EXTRA_VERSION
dnl set $target
static void inc_cancel_cb (GtkWidget *widget,
gpointer data);
+static gint inc_dialog_delete_cb (GtkWidget *widget,
+ GdkEventAny *event,
+ gpointer data);
static gint inc_spool (void);
static gint get_spool (FolderItem *dest,
gtk_signal_connect(GTK_OBJECT(progress->cancel_btn), "clicked",
GTK_SIGNAL_FUNC(inc_cancel_cb), dialog);
gtk_signal_connect(GTK_OBJECT(progress->window), "delete_event",
- GTK_SIGNAL_FUNC(gtk_true), NULL);
+ GTK_SIGNAL_FUNC(inc_dialog_delete_cb), dialog);
/* manage_window_set_transient(GTK_WINDOW(progress->window)); */
progress_dialog_set_value(progress, 0.0);
gint num = 0;
gint error_num = 0;
gint new_msgs = 0;
+ gchar *fin_msg;
while (inc_dialog->queue_list != NULL) {
session = inc_dialog->queue_list->data;
inc_state = inc_pop3_session_do(session);
if (inc_state == INC_SUCCESS) {
+ gchar *msg;
+
+ if (pop3_state->cur_total_num > 0)
+ msg = g_strdup_printf
+ (_("Done (%d message(s) (%s) received)"),
+ pop3_state->cur_total_num,
+ to_human_readable(pop3_state->cur_total_recv_bytes));
+ else
+ msg = g_strdup_printf(_("Done (no new messages)"));
gtk_clist_set_pixmap(clist, num, 0, okxpm, okxpmmask);
- gtk_clist_set_text(clist, num, 2, _("Done"));
+ gtk_clist_set_text(clist, num, 2, msg);
+ g_free(msg);
} else if (inc_state == INC_CANCEL) {
gtk_clist_set_pixmap(clist, num, 0, okxpm, okxpmmask);
gtk_clist_set_text(clist, num, 2, _("Cancelled"));
num++;
}
+ if (new_msgs > 0)
+ fin_msg = g_strdup_printf(_("Finished (%d new message(s))"),
+ new_msgs);
+ else
+ fin_msg = g_strdup_printf(_("Finished (no new messages)"));
+
+ progress_dialog_set_label(inc_dialog->dialog, fin_msg);
+
if (error_num && !prefs_common.no_recv_err_panel) {
if (inc_dialog->show_dialog)
manage_window_focus_in(inc_dialog->dialog->window,
NULL, NULL);
- alertpanel_error(_("Some errors occured while getting mail."));
+ alertpanel_error(_("Some errors occurred while getting mail."));
if (inc_dialog->show_dialog)
manage_window_focus_out(inc_dialog->dialog->window,
NULL, NULL);
g_list_remove(inc_dialog->queue_list, session);
}
- inc_progress_dialog_destroy(inc_dialog);
+ if (prefs_common.close_recv_dialog)
+ inc_progress_dialog_destroy(inc_dialog);
+ else {
+ gtk_window_set_title(GTK_WINDOW(inc_dialog->dialog->window),
+ fin_msg);
+ gtk_label_set_text(GTK_LABEL(GTK_BIN(inc_dialog->dialog->cancel_btn)->child),
+ _("Close"));
+ }
+
+ g_free(fin_msg);
return new_msgs;
}
g_return_if_fail(dialog != NULL);
+ if (dialog->queue_list == NULL) {
+ inc_progress_dialog_destroy(dialog);
+ return;
+ }
+
session = dialog->queue_list->data;
sockinfo = session->pop3_state->sockinfo;
inc_cancel((IncProgressDialog *)data);
}
+static gint inc_dialog_delete_cb(GtkWidget *widget, GdkEventAny *event,
+ gpointer data)
+{
+ IncProgressDialog *dialog = (IncProgressDialog *)data;
+
+ if (dialog->queue_list == NULL)
+ inc_progress_dialog_destroy(dialog);
+
+ return TRUE;
+}
+
static gint inc_spool(void)
{
gchar *mbox, *logname;
gint cur_msg;
gint cur_total_num;
gint cur_total_bytes;
+ gint cur_total_recv_bytes;
Pop3MsgInfo *msg;
if (pop3_ok(sock, NULL) != PS_SUCCESS) return POP3_LOGOUT_SEND;
state->cur_total_bytes = 0;
+ state->cur_total_recv_bytes = 0;
while ((len = sock_gets(sock, buf, sizeof(buf))) > 0) {
guint num, size;
return next_state;
state->cur_total_bytes += state->msg[state->cur_msg].size;
+ state->cur_total_recv_bytes += state->msg[state->cur_msg].size;
state->cur_total_num++;
state->msg[state->cur_msg].received = TRUE;
GtkWidget *checkbtn_addaddrbyclick;
GtkWidget *optmenu_recvdialog;
GtkWidget *checkbtn_no_recv_err_panel;
+ GtkWidget *checkbtn_close_recv_dialog;
GtkWidget *optmenu_nextunreadmsgdialog;
GtkWidget *entry_pixmap_theme;
GtkWidget *combo_pixmap_theme;
{"no_receive_error_panel", "FALSE", &prefs_common.no_recv_err_panel,
P_BOOL, &interface.checkbtn_no_recv_err_panel,
prefs_set_data_from_toggle, prefs_set_toggle},
+ {"close_receive_dialog", "TRUE", &prefs_common.close_recv_dialog,
+ P_BOOL, &interface.checkbtn_close_recv_dialog,
+ prefs_set_data_from_toggle, prefs_set_toggle},
{"nextunreadmsg_dialog", NULL, &prefs_common.next_unread_msg_dialog, P_ENUM,
&interface.optmenu_nextunreadmsgdialog,
prefs_nextunreadmsgdialog_set_data_from_optmenu,
GtkWidget *menu;
GtkWidget *menuitem;
GtkWidget *checkbtn_no_recv_err_panel;
+ GtkWidget *checkbtn_close_recv_dialog;
GtkWidget *frame_addr;
GtkWidget *vbox_addr;
PACK_VSPACER(vbox2, vbox3, VSPACING_NARROW);
- PACK_CHECK_BUTTON (vbox2, checkbtn_no_recv_err_panel,
- _("No popup error dialog on receive error"));
-
hbox1 = gtk_hbox_new (FALSE, 8);
gtk_widget_show (hbox1);
gtk_box_pack_start (GTK_BOX (vbox2), hbox1, FALSE, FALSE, 0);
gtk_option_menu_set_menu (GTK_OPTION_MENU (optmenu_recvdialog), menu);
+ PACK_CHECK_BUTTON (vbox2, checkbtn_no_recv_err_panel,
+ _("Don't popup error dialog on receive error"));
+
+ PACK_CHECK_BUTTON (vbox2, checkbtn_close_recv_dialog,
+ _("Close receive dialog when finished"));
+
PACK_FRAME (vbox1, frame_addr, _("Address book"));
vbox_addr = gtk_vbox_new (FALSE, 0);
interface.checkbtn_immedexec = checkbtn_immedexec;
interface.optmenu_recvdialog = optmenu_recvdialog;
interface.checkbtn_no_recv_err_panel = checkbtn_no_recv_err_panel;
+ interface.checkbtn_close_recv_dialog = checkbtn_close_recv_dialog;
interface.checkbtn_addaddrbyclick = checkbtn_addaddrbyclick;
interface.optmenu_nextunreadmsgdialog = optmenu_nextunreadmsgdialog;
interface.combo_pixmap_theme = combo_pixmap_theme;
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;
progress = g_new0(ProgressDialog, 1);
window = gtk_window_new(GTK_WINDOW_DIALOG);
- gtk_widget_set_usize(window, 450, -1);
+ gtk_widget_set_usize(window, 460, -1);
gtk_container_set_border_width(GTK_CONTAINER(window), 8);
gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);
gtk_window_set_policy(GTK_WINDOW(window), FALSE, TRUE, TRUE);
gtk_clist_set_column_justification(GTK_CLIST(clist), 0,
GTK_JUSTIFY_CENTER);
gtk_clist_set_column_width(GTK_CLIST(clist), 0, 16);
- gtk_clist_set_column_width(GTK_CLIST(clist), 1, 180);
+ gtk_clist_set_column_width(GTK_CLIST(clist), 1, 160);
progress->window = window;
progress->label = label;