+2005-07-01 [colin] 1.9.12cvs10
+
+ * src/Makefile.am
+ * src/folder.c
+ * src/folder.h
+ * src/folderview.c
+ * src/stock_pixmap.c
+ * src/stock_pixmap.h
+ * src/plugins/trayicon/trayicon.c
+ Add marked symbol on folders containing
+ marked messages
+ * src/procmsg.c
+ * src/procmsg.h
+ * src/toolbar.c
+ * src/prefs_common.c
+ * src/prefs_common.h
+ * src/prefs_send.c
+ Add an optional confirmation dialog on queue
+ sending. Patch by wwp.
+ * src/pixmaps/dir_close_mark.xpm ** ADDED **
+ * src/pixmaps/dir_open_hrm_mark.xpm ** ADDED **
+ * src/pixmaps/dir_open_mark.xpm ** ADDED **
+ * src/pixmaps/drafts_close_mark.xpm ** ADDED **
+ * src/pixmaps/drafts_open_mark.xpm ** ADDED **
+ * src/pixmaps/inbox_hrm_mark.xpm ** ADDED **
+ * src/pixmaps/inbox_mark.xpm ** ADDED **
+ * src/pixmaps/outbox_hrm_mark.xpm ** ADDED **
+ * src/pixmaps/outbox_mark.xpm ** ADDED **
+ * src/pixmaps/trash_hrm_mark.xpm ** ADDED **
+ * src/pixmaps/trash_mark.xpm ** ADDED **
+ New pixmaps
+
2005-07-01 [colin] 1.9.12cvs9
* src/summaryview.c
( cvs diff -u -r 1.382.2.137 -r 1.382.2.138 src/compose.c; cvs diff -u -r 1.16.2.19 -r 1.16.2.20 src/msgcache.c; cvs diff -u -r 1.56.2.34 -r 1.56.2.35 src/pop.c; cvs diff -u -r 1.49.2.49 -r 1.49.2.50 src/procmime.c; cvs diff -u -r 1.17.2.2 -r 1.17.2.3 src/recv.c; cvs diff -u -r 1.6.2.1 -r 1.6.2.2 src/common/log.c; cvs diff -u -r 1.2.4.8 -r 1.2.4.9 src/common/template.c; cvs diff -u -r 1.36.2.33 -r 1.36.2.34 src/common/utils.c; cvs diff -u -r 1.20.2.16 -r 1.20.2.17 src/common/utils.h; ) > 1.9.12cvs7.patchset
( cvs diff -u -r 1.382.2.138 -r 1.382.2.139 src/compose.c; cvs diff -u -r 1.16.2.20 -r 1.16.2.21 src/msgcache.c; cvs diff -u -r 1.56.2.35 -r 1.56.2.36 src/pop.c; cvs diff -u -r 1.49.2.50 -r 1.49.2.51 src/procmime.c; cvs diff -u -r 1.17.2.3 -r 1.17.2.4 src/recv.c; cvs diff -u -r 1.6.2.2 -r 1.6.2.3 src/common/log.c; cvs diff -u -r 1.2.4.9 -r 1.2.4.10 src/common/template.c; cvs diff -u -r 1.36.2.34 -r 1.36.2.35 src/common/utils.c; cvs diff -u -r 1.20.2.17 -r 1.20.2.18 src/common/utils.h; ) > 1.9.12cvs8.patchset
( cvs diff -u -r 1.395.2.89 -r 1.395.2.90 src/summaryview.c; cvs diff -u -r 1.5.10.9 -r 1.5.10.10 src/addrgather.c; cvs diff -u -r 1.274.2.44 -r 1.274.2.45 src/mainwindow.c; ) > 1.9.12cvs9.patchset
+( cvs diff -u -r 1.155.2.27 -r 1.155.2.28 src/Makefile.am; cvs diff -u -r 1.213.2.38 -r 1.213.2.39 src/folder.c; cvs diff -u -r 1.87.2.12 -r 1.87.2.13 src/folder.h; cvs diff -u -r 1.207.2.44 -r 1.207.2.45 src/folderview.c; cvs diff -u -r 1.204.2.45 -r 1.204.2.46 src/prefs_common.c; cvs diff -u -r 1.103.2.20 -r 1.103.2.21 src/prefs_common.h; cvs diff -u -r 1.1.2.3 -r 1.1.2.4 src/prefs_send.c; cvs diff -u -r 1.150.2.29 -r 1.150.2.30 src/procmsg.c; cvs diff -u -r 1.60.2.12 -r 1.60.2.13 src/procmsg.h; cvs diff -u -r 1.25.2.12 -r 1.25.2.13 src/stock_pixmap.c; cvs diff -u -r 1.18.2.8 -r 1.18.2.9 src/stock_pixmap.h; cvs diff -u -r 1.43.2.18 -r 1.43.2.19 src/toolbar.c; diff -u /dev/null src/pixmaps/dir_close_mark.xpm; diff -u /dev/null src/pixmaps/dir_open_hrm_mark.xpm; diff -u /dev/null src/pixmaps/dir_open_mark.xpm; diff -u /dev/null src/pixmaps/drafts_close_mark.xpm; diff -u /dev/null src/pixmaps/drafts_open_mark.xpm; diff -u /dev/null src/pixmaps/inbox_hrm_mark.xpm; diff -u /dev/null src/pixmaps/inbox_mark.xpm; diff -u /dev/null src/pixmaps/outbox_hrm_mark.xpm; diff -u /dev/null src/pixmaps/outbox_mark.xpm; diff -u /dev/null src/pixmaps/trash_hrm_mark.xpm; diff -u /dev/null src/pixmaps/trash_mark.xpm; cvs diff -u -r 1.14.2.17 -r 1.14.2.18 src/plugins/trayicon/trayicon.c; ) > 1.9.12cvs10.patchset
MICRO_VERSION=12
INTERFACE_AGE=0
BINARY_AGE=0
-EXTRA_VERSION=9
+EXTRA_VERSION=10
EXTRA_RELEASE=
EXTRA_GTK2_VERSION=
pixmaps/unread.xpm \
pixmaps/read.xpm \
pixmaps/up_arrow.xpm \
- pixmaps/vcard.xpm
+ pixmaps/vcard.xpm \
+ pixmaps/dir_close_mark.xpm \
+ pixmaps/dir_open_hrm_mark.xpm \
+ pixmaps/dir_open_mark.xpm \
+ pixmaps/drafts_close_mark.xpm \
+ pixmaps/drafts_open_mark.xpm \
+ pixmaps/inbox_hrm_mark.xpm \
+ pixmaps/inbox_mark.xpm \
+ pixmaps/outbox_hrm_mark.xpm \
+ pixmaps/outbox_mark.xpm \
+ pixmaps/trash_hrm_mark.xpm \
+ pixmaps/trash_mark.xpm
+
INCLUDES = \
-Icommon \
item->new_msgs = 0;
item->unread_msgs = 0;
item->unreadmarked_msgs = 0;
+ item->marked_msgs = 0;
item->total_msgs = 0;
item->last_num = -1;
item->cache = NULL;
item->unread_msgs = atoi(attr->value);
else if (!strcmp(attr->name, "unreadmarked"))
item->unreadmarked_msgs = atoi(attr->value);
+ else if (!strcmp(attr->name, "marked"))
+ item->marked_msgs = atoi(attr->value);
else if (!strcmp(attr->name, "total"))
item->total_msgs = atoi(attr->value);
else if (!strcmp(attr->name, "no_sub"))
xml_tag_add_attr(tag, xml_attr_new_int("new", item->new_msgs));
xml_tag_add_attr(tag, xml_attr_new_int("unread", item->unread_msgs));
xml_tag_add_attr(tag, xml_attr_new_int("unreadmarked", item->unreadmarked_msgs));
+ xml_tag_add_attr(tag, xml_attr_new_int("marked", item->marked_msgs));
xml_tag_add_attr(tag, xml_attr_new_int("total", item->total_msgs));
if (item->account)
guint new_msgs;
guint unread_msgs;
guint unreadmarked_msgs;
+ guint marked_msgs;
guint total_msgs;
};
count->new_msgs += item->new_msgs;
count->unread_msgs += item->unread_msgs;
count->unreadmarked_msgs += item->unreadmarked_msgs;
+ count->marked_msgs += item->marked_msgs;
count->total_msgs += item->total_msgs;
}
return ret;
}
-void folder_count_total_msgs(guint *new_msgs, guint *unread_msgs, guint *unreadmarked_msgs, guint *total_msgs)
+void folder_count_total_msgs(guint *new_msgs, guint *unread_msgs,
+ guint *unreadmarked_msgs, guint *marked_msgs,
+ guint *total_msgs)
{
struct TotalMsgCount count;
*new_msgs = count.new_msgs;
*unread_msgs = count.unread_msgs;
*unreadmarked_msgs = count.unreadmarked_msgs;
+ *marked_msgs = count.marked_msgs;
*total_msgs = count.total_msgs;
}
GSList *folder_list_cur, *cache_list_cur, *new_list = NULL;
GSList *exists_list = NULL, *elem;
GSList *newmsg_list = NULL;
- guint newcnt = 0, unreadcnt = 0, totalcnt = 0, unreadmarkedcnt = 0;
+ guint newcnt = 0, unreadcnt = 0, totalcnt = 0;
+ guint markedcnt = 0, unreadmarkedcnt = 0;
guint cache_max_num, folder_max_num, cache_cur_num, folder_cur_num;
gboolean update_flags = 0, old_uids_valid = FALSE;
unreadcnt++;
if (MSG_IS_UNREAD(msginfo->flags) && procmsg_msg_has_marked_parent(msginfo))
unreadmarkedcnt++;
+ if (MSG_IS_MARKED(msginfo->flags))
+ markedcnt++;
+
totalcnt++;
procmsg_msginfo_free(msginfo);
item->unread_msgs = unreadcnt;
item->total_msgs = totalcnt;
item->unreadmarked_msgs = unreadmarkedcnt;
+ item->marked_msgs = markedcnt;
update_flags |= F_ITEM_UPDATE_MSGCNT;
item->cache = msgcache_read_cache(item, cache_file);
if (!item->cache) {
MsgInfoList *list, *cur;
- guint newcnt = 0, unreadcnt = 0, unreadmarkedcnt = 0;
+ guint newcnt = 0, unreadcnt = 0;
+ guint markedcnt = 0, unreadmarkedcnt = 0;
MsgInfo *msginfo;
item->cache = msgcache_new();
unreadcnt++;
if (MSG_IS_UNREAD(msginfo->flags) && procmsg_msg_has_marked_parent(msginfo))
unreadmarkedcnt++;
+ if (MSG_IS_MARKED(msginfo->flags))
+ markedcnt++;
}
item->new_msgs = newcnt;
item->unread_msgs = unreadcnt;
item->unreadmarked_msgs = unreadmarkedcnt;
+ item->marked_msgs = markedcnt;
procmsg_msg_list_free(list);
} else
msgcache_read_mark(item->cache, mark_file);
item->unread_msgs++;
if (MSG_IS_UNREAD(newmsginfo->flags) && procmsg_msg_has_marked_parent(newmsginfo))
item->unreadmarked_msgs++;
+ if (MSG_IS_MARKED(newmsginfo->flags))
+ item->marked_msgs++;
item->total_msgs++;
folder_item_update_freeze();
msginfo->folder->unread_msgs--;
if (MSG_IS_UNREAD(msginfo->flags) && procmsg_msg_has_marked_parent(msginfo))
msginfo->folder->unreadmarked_msgs--;
+ if (MSG_IS_MARKED(msginfo->flags))
+ item->marked_msgs--;
+
msginfo->folder->total_msgs--;
msginfo_update.msginfo = msginfo;
item->new_msgs = 0;
item->unread_msgs = 0;
item->unreadmarked_msgs = 0;
+ item->marked_msgs = 0;
item->total_msgs = 0;
folder_item_update(item, F_ITEM_UPDATE_MSGCNT | F_ITEM_UPDATE_CONTENT);
}
gint unread_msgs;
gint total_msgs;
gint unreadmarked_msgs;
+ gint marked_msgs;
gint last_num;
void folder_update_op_count (void);
void folder_func_to_all_folders (FolderItemFunc function,
gpointer data);
-void folder_count_total_msgs (guint *new_msgs,
- guint *unread_msgs,
- guint *unreadmarked_msgs,
- guint *total_msgs);
+void folder_count_total_msgs(guint *new_msgs, guint *unread_msgs,
+ guint *unreadmarked_msgs, guint *marked_msgs,
+ guint *total_msgs);
gchar *folder_get_status (GPtrArray *folders,
gboolean full);
static GtkStyle *bold_color_style;
static GtkStyle *bold_tgtfold_style;
-static GdkBitmap *inboxxpm;
+static GdkPixmap *inboxxpm;
static GdkBitmap *inboxxpmmask;
static GdkPixmap *inboxhrmxpm;
static GdkBitmap *inboxhrmxpmmask;
static GdkBitmap *queueopenxpmmask;
static GdkPixmap *queueopenhrmxpm;
static GdkBitmap *queueopenhrmxpmmask;
+static GdkPixmap *draftsxpm;
+static GdkBitmap *draftsxpmmask;
+static GdkPixmap *draftsopenxpm;
+static GdkBitmap *draftsopenxpmmask;
+static GdkPixmap *noselectxpm;
+static GdkBitmap *noselectxpmmask;
+
+static GdkPixmap *m_inboxxpm;
+static GdkBitmap *m_inboxxpmmask;
+static GdkPixmap *m_inboxhrmxpm;
+static GdkBitmap *m_inboxhrmxpmmask;
+static GdkPixmap *m_inboxopenxpm;
+static GdkBitmap *m_inboxopenxpmmask;
+static GdkPixmap *m_inboxopenhrmxpm;
+static GdkBitmap *m_inboxopenhrmxpmmask;
+static GdkPixmap *m_outboxxpm;
+static GdkBitmap *m_outboxxpmmask;
+static GdkPixmap *m_outboxhrmxpm;
+static GdkBitmap *m_outboxhrmxpmmask;
+static GdkPixmap *m_outboxopenxpm;
+static GdkBitmap *m_outboxopenxpmmask;
+static GdkPixmap *m_outboxopenhrmxpm;
+static GdkBitmap *m_outboxopenhrmxpmmask;
+static GdkPixmap *m_folderxpm;
+static GdkBitmap *m_folderxpmmask;
+static GdkPixmap *m_folderhrmxpm;
+static GdkBitmap *m_folderhrmxpmmask;
+static GdkPixmap *m_folderopenxpm;
+static GdkBitmap *m_folderopenxpmmask;
+static GdkPixmap *m_folderopenhrmxpm;
+static GdkBitmap *m_folderopenhrmxpmmask;
+static GdkPixmap *m_trashopenxpm;
+static GdkBitmap *m_trashopenxpmmask;
+static GdkPixmap *m_trashopenhrmxpm;
+static GdkBitmap *m_trashopenhrmxpmmask;
+static GdkPixmap *m_trashxpm;
+static GdkBitmap *m_trashxpmmask;
+static GdkPixmap *m_trashhrmxpm;
+static GdkBitmap *m_trashhrmxpmmask;
+static GdkPixmap *m_queuexpm;
+static GdkBitmap *m_queuexpmmask;
+static GdkPixmap *m_queuehrmxpm;
+static GdkBitmap *m_queuehrmxpmmask;
+static GdkPixmap *m_queueopenxpm;
+static GdkBitmap *m_queueopenxpmmask;
+static GdkPixmap *m_queueopenhrmxpm;
+static GdkBitmap *m_queueopenhrmxpmmask;
+static GdkPixmap *m_draftsxpm;
+static GdkBitmap *m_draftsxpmmask;
+static GdkPixmap *m_draftsopenxpm;
+static GdkBitmap *m_draftsopenxpmmask;
+
static GdkPixmap *newxpm;
static GdkBitmap *newxpmmask;
static GdkPixmap *unreadxpm;
static GdkBitmap *unreadxpmmask;
static GdkPixmap *readxpm;
static GdkBitmap *readxpmmask;
-static GdkPixmap *draftsxpm;
-static GdkBitmap *draftsxpmmask;
-static GdkPixmap *draftsopenxpm;
-static GdkBitmap *draftsopenxpmmask;
-static GdkPixmap *noselectxpm;
-static GdkBitmap *noselectxpmmask;
static void folderview_select_node (FolderView *folderview,
GtkCTreeNode *node);
stock_pixmap_gdk(ctree, STOCK_PIXMAP_DRAFTS_OPEN, &draftsopenxpm, &draftsopenxpmmask);
stock_pixmap_gdk(ctree, STOCK_PIXMAP_DIR_NOSELECT, &noselectxpm, &noselectxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_INBOX_CLOSE_MARK, &m_inboxxpm, &m_inboxxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_INBOX_CLOSE_HRM_MARK, &m_inboxhrmxpm, &m_inboxhrmxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_INBOX_OPEN_MARK, &m_inboxopenxpm, &m_inboxopenxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_INBOX_OPEN_HRM_MARK, &m_inboxopenhrmxpm, &m_inboxopenhrmxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_OUTBOX_CLOSE_MARK, &m_outboxxpm, &m_outboxxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_OUTBOX_CLOSE_HRM_MARK, &m_outboxhrmxpm, &m_outboxhrmxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_OUTBOX_OPEN_MARK, &m_outboxopenxpm, &m_outboxopenxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_OUTBOX_OPEN_HRM_MARK, &m_outboxopenhrmxpm, &m_outboxopenhrmxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_DIR_CLOSE_MARK, &m_folderxpm, &m_folderxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_DIR_CLOSE_HRM_MARK, &m_folderhrmxpm, &m_folderhrmxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_DIR_OPEN_MARK, &m_folderopenxpm, &m_folderopenxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_DIR_OPEN_HRM_MARK, &m_folderopenhrmxpm, &m_folderopenhrmxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_TRASH_OPEN_MARK, &m_trashopenxpm, &m_trashopenxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_TRASH_OPEN_HRM_MARK, &m_trashopenhrmxpm, &m_trashopenhrmxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_TRASH_CLOSE_MARK, &m_trashxpm, &m_trashxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_TRASH_CLOSE_HRM_MARK, &m_trashhrmxpm, &m_trashhrmxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_QUEUE_CLOSE_MARK, &m_queuexpm, &m_queuexpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_QUEUE_CLOSE_HRM_MARK, &m_queuehrmxpm, &m_queuehrmxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_QUEUE_OPEN_MARK, &m_queueopenxpm, &m_queueopenxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_QUEUE_OPEN_HRM_MARK, &m_queueopenhrmxpm, &m_queueopenhrmxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_DRAFTS_CLOSE_MARK, &m_draftsxpm, &m_draftsxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_DRAFTS_OPEN_MARK, &m_draftsopenxpm, &m_draftsopenxpmmask);
+
/* CLAWS: titles for "New" and "Unread" show new & unread pixmaps
* instead text (text overflows making them unreadable and ugly) */
stock_pixmap_gdk(ctree, STOCK_PIXMAP_NEW,
GdkBitmap *mask, *openmask;
static GdkPixmap *searchicon;
static GdkBitmap *searchmask;
-
+ gboolean mark = FALSE;
gchar *name;
gchar *str;
gboolean add_unread_mark;
item = gtk_ctree_node_get_row_data(ctree, node);
g_return_if_fail(item != NULL);
+ mark = (item->marked_msgs != 0);
+
switch (item->stype) {
case F_INBOX:
if (item->hide_read_msgs) {
- xpm = inboxhrmxpm;
- mask = inboxhrmxpmmask;
- openxpm = inboxopenhrmxpm;
- openmask = inboxopenhrmxpmmask;
+ xpm = mark?m_inboxhrmxpm:inboxhrmxpm;
+ mask = mark?m_inboxhrmxpmmask:inboxhrmxpmmask;
+ openxpm = mark?m_inboxopenhrmxpm:inboxopenhrmxpm;
+ openmask = mark?m_inboxopenhrmxpmmask:inboxopenhrmxpmmask;
} else {
- xpm = inboxxpm;
- mask = inboxxpmmask;
- openxpm = inboxopenxpm;
- openmask = inboxopenxpmmask;
+ xpm = mark?m_inboxxpm:inboxxpm;
+ mask = mark?m_inboxxpmmask:inboxxpmmask;
+ openxpm = mark?m_inboxopenxpm:inboxopenxpm;
+ openmask = mark?m_inboxopenxpmmask:inboxopenxpmmask;
}
break;
case F_OUTBOX:
if (item->hide_read_msgs) {
- xpm = outboxhrmxpm;
- mask = outboxhrmxpmmask;
- openxpm = outboxopenhrmxpm;
- openmask = outboxopenhrmxpmmask;
+ xpm = mark?m_outboxhrmxpm:outboxhrmxpm;
+ mask = mark?m_outboxhrmxpmmask:outboxhrmxpmmask;
+ openxpm = mark?m_outboxopenhrmxpm:outboxopenhrmxpm;
+ openmask = mark?m_outboxopenhrmxpmmask:outboxopenhrmxpmmask;
} else {
- xpm = outboxxpm;
- mask = outboxxpmmask;
- openxpm = outboxopenxpm;
- openmask = outboxopenxpmmask;
+ xpm = mark?m_outboxxpm:outboxxpm;
+ mask = mark?m_outboxxpmmask:outboxxpmmask;
+ openxpm = mark?m_outboxopenxpm:outboxopenxpm;
+ openmask = mark?m_outboxopenxpmmask:outboxopenxpmmask;
}
break;
case F_QUEUE:
if (item->hide_read_msgs) {
- xpm = queuehrmxpm;
- mask = queuehrmxpmmask;
- openxpm = queueopenhrmxpm;
- openmask = queueopenhrmxpmmask;
+ xpm = mark?m_queuehrmxpm:queuehrmxpm;
+ mask = mark?m_queuehrmxpmmask:queuehrmxpmmask;
+ openxpm = mark?m_queueopenhrmxpm:queueopenhrmxpm;
+ openmask = mark?m_queueopenhrmxpmmask:queueopenhrmxpmmask;
} else {
- xpm = queuexpm;
- mask = queuexpmmask;
- openxpm = queueopenxpm;
- openmask = queueopenxpmmask;
+ xpm = mark?m_queuexpm:queuexpm;
+ mask = mark?m_queuexpmmask:queuexpmmask;
+ openxpm = mark?m_queueopenxpm:queueopenxpm;
+ openmask = mark?m_queueopenxpmmask:queueopenxpmmask;
}
break;
case F_TRASH:
if (item->hide_read_msgs) {
- xpm = trashhrmxpm;
- mask = trashhrmxpmmask;
- openxpm = trashopenhrmxpm;
- openmask = trashopenhrmxpmmask;
+ xpm = mark?m_trashhrmxpm:trashhrmxpm;
+ mask = mark?m_trashhrmxpmmask:trashhrmxpmmask;
+ openxpm = mark?m_trashopenhrmxpm:trashopenhrmxpm;
+ openmask = mark?m_trashopenhrmxpmmask:trashopenhrmxpmmask;
} else {
- xpm = trashxpm;
- mask = trashxpmmask;
- openxpm = trashopenxpm;
- openmask = trashopenxpmmask;
+ xpm = mark?m_trashxpm:trashxpm;
+ mask = mark?m_trashxpmmask:trashxpmmask;
+ openxpm = mark?m_trashopenxpm:trashopenxpm;
+ openmask = mark?m_trashopenxpmmask:trashopenxpmmask;
}
break;
case F_DRAFT:
- xpm = draftsxpm;
- mask = draftsxpmmask;
- openxpm = draftsopenxpm;
- openmask = draftsopenxpmmask;
+ xpm = mark?m_draftsxpm:draftsxpm;
+ mask = mark?m_draftsxpmmask:draftsxpmmask;
+ openxpm = mark?m_draftsopenxpm:draftsopenxpm;
+ openmask = mark?m_draftsopenxpmmask:draftsopenxpmmask;
break;
default:
if (item->hide_read_msgs) {
- xpm = folderhrmxpm;
- mask = folderhrmxpmmask;
- openxpm = folderopenhrmxpm;
- openmask = folderopenhrmxpmmask;
+ xpm = mark?m_folderhrmxpm:folderhrmxpm;
+ mask = mark?m_folderhrmxpmmask:folderhrmxpmmask;
+ openxpm = mark?m_folderopenhrmxpm:folderopenhrmxpm;
+ openmask = mark?m_folderopenhrmxpmmask:folderopenhrmxpmmask;
} else {
- xpm = folderxpm;
- mask = folderxpmmask;
- openxpm = folderopenxpm;
- openmask = folderopenxpmmask;
+ xpm = mark?m_folderxpm:folderxpm;
+ mask = mark?m_folderxpmmask:folderxpmmask;
+ openxpm = mark?m_folderopenxpm:folderopenxpm;
+ openmask = mark?m_folderopenxpmmask:folderopenxpmmask;
}
}
--- /dev/null
+/* XPM */
+static char * dir_close_mark_xpm[] = {
+"16 16 70 1",
+" c None",
+". c #FFFFFF",
+"+ c #000000",
+"@ c #4E8EE5",
+"# c #4885E3",
+"$ c #66A6EF",
+"% c #63A2F1",
+"& c #4D8BE9",
+"* c #DDF1FE",
+"= c #D7EDFE",
+"- c #AAD3FC",
+"; c #94C4FA",
+"> c #D0EAFE",
+", c #C0E2FD",
+"' c #90C2FA",
+") c #80B9F8",
+"! c #639EF1",
+"~ c #CDE8FD",
+"{ c #B9DEFC",
+"] c #ABD7FB",
+"^ c #83BBF9",
+"/ c #7CB4F8",
+"( c #66A0F2",
+"_ c #4680E5",
+": c #CBE7FD",
+"< c #B7DDFC",
+"[ c #A9D6FB",
+"} c #A5D2FB",
+"| c #7DB5F8",
+"1 c #71ACF6",
+"2 c #5895EE",
+"3 c #386FDE",
+"4 c #CBE8FD",
+"5 c #A8D3FB",
+"6 c #A2D1FB",
+"7 c #96C8FA",
+"8 c #74AEF7",
+"9 c #65A1F4",
+"0 c #4D88EA",
+"a c #3468D5",
+"b c #B1D8FB",
+"c c #9FCFFA",
+"d c #93C6F9",
+"e c #87BEF9",
+"f c #7FB9F8",
+"g c #7AB3F8",
+"h c #5691F0",
+"i c #427EE5",
+"j c #2F61CC",
+"k c #C0E1FD",
+"l c #9BC9F9",
+"m c #80B8F6",
+"n c #74AEF6",
+"o c #6FAAF5",
+"p c #6BA5F4",
+"q c #639FF3",
+"r c #5A94F0",
+"s c #417CE4",
+"t c #3469D8",
+"u c #2957BE",
+"v c #AAD4FB",
+"w c #70AAF3",
+"x c #538EEC",
+"y c #4F89EA",
+"z c #4F8AEC",
+"A c #4B87EA",
+"B c #4683E8",
+"C c #4076E1",
+"D c #356AD8",
+"E c #254EAB",
+" .. ",
+" .+. ",
+" ++++ .++. ",
+" +@..#+ .+++. ",
+" +$%.+.&.+++.+ ",
+" +*=.++.+++.-;+",
+" +>,.+++++.')!+",
+" +~{].+++.^/(_+",
+" +:<[}.+.^|123+",
+" +4<567.^|890a+",
+" +:bcdefg19hij+",
+" +klmnopqr0stu+",
+" +vwxyzABCDjuE+",
+" ++++++++++++ ",
+" ",
+" "};
--- /dev/null
+/* XPM */
+static char * dir_open_hrm_mark_xpm[] = {
+"16 16 32 1",
+" c None",
+". c #FFFFFF",
+"+ c #000000",
+"@ c #DE4D7D",
+"# c #CB326F",
+"$ c #CE3B76",
+"% c #A93262",
+"& c #D64385",
+"* c #BB326C",
+"= c #A63160",
+"- c #8B283D",
+"; c #752637",
+"> c #5A151D",
+", c #AB3265",
+"' c #EF7A95",
+") c #F1809B",
+"! c #EB6C8D",
+"~ c #6C212F",
+"{ c #7A293C",
+"] c #F1869D",
+"^ c #E76486",
+"/ c #D43B6A",
+"( c #E65F7C",
+"_ c #712434",
+": c #EE719A",
+"< c #972E4C",
+"[ c #D13872",
+"} c #6C1F30",
+"| c #EE7595",
+"1 c #852C3F",
+"2 c #DF5089",
+"3 c #AF2A4F",
+" .. ",
+" .+. ",
+" ++++ .++. ",
+" +@..#+ .+++. ",
+" +$%.+.%.+++.+ ",
+" +&*.++.+++.=-+",
+" ++++.+++++.;>,+",
+"+')!)!.+++.!+~{+",
+"+]^/(/(.+.(/+~_+",
+" +:(/(/(.(/(<+_+",
+" +)[(/(/(/(/(+}+",
+" +|/(/(/(/(/1++",
+" +2/3/3/3/3/3++",
+" ++++++++++++ ",
+" ",
+" "};
--- /dev/null
+/* XPM */
+static char * dir_open_mark_xpm[] = {
+"16 16 55 1",
+" c None",
+". c #FFFFFF",
+"+ c #000000",
+"@ c #5695E8",
+"# c #4C89E6",
+"$ c #4B89E7",
+"% c #5A98F0",
+"& c #4681E6",
+"* c #79AEF8",
+"= c #5F9DF4",
+"- c #4C88ED",
+"; c #5792F1",
+"> c #224AA4",
+", c #2957BE",
+"' c #346ADB",
+") c #D2EAFD",
+"! c #CFEAFD",
+"~ c #C6E6FD",
+"{ c #C4E5FD",
+"] c #80BBF1",
+"^ c #1D3E8C",
+"/ c #2650B0",
+"( c #AAD4F8",
+"_ c #AAD3F9",
+": c #ACD7FB",
+"< c #A8D5FB",
+"[ c #A7D4FA",
+"} c #9ECEF9",
+"| c #67A7EB",
+"1 c #1C3A80",
+"2 c #204396",
+"3 c #9BCCF9",
+"4 c #98CBF9",
+"5 c #92C7F8",
+"6 c #71AEEF",
+"7 c #3470CA",
+"8 c #1D3D88",
+"9 c #94C9F9",
+"0 c #93C8F8",
+"a c #80BDF5",
+"b c #6BACEB",
+"c c #1B3781",
+"d c #88BFF7",
+"e c #86BEF7",
+"f c #84BEF7",
+"g c #7FBAF6",
+"h c #5E9EEA",
+"i c #3064BF",
+"j c #76B1F4",
+"k c #75B1F5",
+"l c #70AEF4",
+"m c #6FADF4",
+"n c #67A7F1",
+"o c #64A4EF",
+"p c #498BE7",
+" .. ",
+" .+. ",
+" ++++ .++. ",
+" +@..#+ .+++. ",
+" +$%.+.&.+++.+ ",
+" +*=.++.+++.-;+",
+" ++++.+++++.>,'+",
+"+)!~{{.+++.]+^/+",
+"+(_:<[<.+.}|+12+",
+" +(33444.4567+8+",
+" +(99000005ab+c+",
+" +3deeeeefghi++",
+" +jklllmlmnop++",
+" ++++++++++++ ",
+" ",
+" "};
--- /dev/null
+/* XPM */
+static char * drafts_close_mark_xpm[] = {
+"16 16 70 1",
+" c None",
+". c #FFFFFF",
+"+ c #000000",
+"@ c #4E8EE5",
+"# c #4885E3",
+"$ c #66A6EF",
+"% c #63A2F1",
+"& c #4D8BE9",
+"* c #DDF1FE",
+"= c #D7EDFE",
+"- c #AAD3FC",
+"; c #94C4FA",
+"> c #D0EAFE",
+", c #C0E2FD",
+"' c #90C2FA",
+") c #80B9F8",
+"! c #639EF1",
+"~ c #CDE8FD",
+"{ c #B9DEFC",
+"] c #ABD7FB",
+"^ c #83BBF9",
+"/ c #7CB4F8",
+"( c #66A0F2",
+"_ c #4680E5",
+": c #CBE7FD",
+"< c #B7DDFC",
+"[ c #A9D6FB",
+"} c #A5D2FB",
+"| c #7DB5F8",
+"1 c #71ACF6",
+"2 c #5895EE",
+"3 c #386FDE",
+"4 c #CBE8FD",
+"5 c #A8D3FB",
+"6 c #A2D1FB",
+"7 c #96C8FA",
+"8 c #74AEF7",
+"9 c #65A1F4",
+"0 c #4D88EA",
+"a c #3468D5",
+"b c #B1D8FB",
+"c c #9FCFFA",
+"d c #93C6F9",
+"e c #87BEF9",
+"f c #7FB9F8",
+"g c #7AB3F8",
+"h c #5691F0",
+"i c #427EE5",
+"j c #2F61CC",
+"k c #C0E1FD",
+"l c #9BC9F9",
+"m c #80B8F6",
+"n c #74AEF6",
+"o c #6FAAF5",
+"p c #6BA5F4",
+"q c #639FF3",
+"r c #5A94F0",
+"s c #417CE4",
+"t c #3469D8",
+"u c #2957BE",
+"v c #AAD4FB",
+"w c #70AAF3",
+"x c #538EEC",
+"y c #4F89EA",
+"z c #4F8AEC",
+"A c #4B87EA",
+"B c #4683E8",
+"C c #4076E1",
+"D c #356AD8",
+"E c #254EAB",
+" .. ",
+" .+. ",
+" ++++ .++. ",
+" +@..#+ .+++. ",
+" +$%.+.&.+++.+ ",
+" +*=.++.+++.-;+",
+" +>,.+++++.')!+",
+" +~{].+++.^/(_+",
+" +:<[}.+.^|123+",
+" +4<567.^|890a+",
+" +:bcdefg19hij+",
+" +klmnopqr0stu+",
+" +vwxyzABCDjuE+",
+" ++++++++++++ ",
+" ",
+" "};
--- /dev/null
+/* XPM */
+static char * drafts_open_mark_xpm[] = {
+"16 16 55 1",
+" c None",
+". c #FFFFFF",
+"+ c #000000",
+"@ c #5695E8",
+"# c #4C89E6",
+"$ c #4B89E7",
+"% c #5A98F0",
+"& c #4681E6",
+"* c #79AEF8",
+"= c #5F9DF4",
+"- c #4C88ED",
+"; c #5792F1",
+"> c #224AA4",
+", c #2957BE",
+"' c #346ADB",
+") c #D2EAFD",
+"! c #CFEAFD",
+"~ c #C6E6FD",
+"{ c #C4E5FD",
+"] c #80BBF1",
+"^ c #1D3E8C",
+"/ c #2650B0",
+"( c #AAD4F8",
+"_ c #AAD3F9",
+": c #ACD7FB",
+"< c #A8D5FB",
+"[ c #A7D4FA",
+"} c #9ECEF9",
+"| c #67A7EB",
+"1 c #1C3A80",
+"2 c #204396",
+"3 c #9BCCF9",
+"4 c #98CBF9",
+"5 c #92C7F8",
+"6 c #71AEEF",
+"7 c #3470CA",
+"8 c #1D3D88",
+"9 c #94C9F9",
+"0 c #93C8F8",
+"a c #80BDF5",
+"b c #6BACEB",
+"c c #1B3781",
+"d c #88BFF7",
+"e c #86BEF7",
+"f c #84BEF7",
+"g c #7FBAF6",
+"h c #5E9EEA",
+"i c #3064BF",
+"j c #76B1F4",
+"k c #75B1F5",
+"l c #70AEF4",
+"m c #6FADF4",
+"n c #67A7F1",
+"o c #64A4EF",
+"p c #498BE7",
+" .. ",
+" .+. ",
+" ++++ .++. ",
+" +@..#+ .+++. ",
+" +$%.+.&.+++.+ ",
+" +*=.++.+++.-;+",
+" ++++.+++++.>,'+",
+"+)!~{{.+++.]+^/+",
+"+(_:<[<.+.}|+12+",
+" +(33444.4567+8+",
+" +(99000005ab+c+",
+" +3deeeeefghi++",
+" +jklllmlmnop++",
+" ++++++++++++ ",
+" ",
+" "};
--- /dev/null
+/* XPM */
+static char * inbox_hrm_mark_xpm[] = {
+"16 16 8 1",
+" c None",
+". c #9B0007",
+"+ c #FFFFFF",
+"@ c #050000",
+"# c #000000",
+"$ c #FD5484",
+"% c #FEC9D8",
+"& c #B41133",
+" . ++",
+" ... @ +#+",
+" ... @@$@ +##+",
+" ...++$%@+###+",
+" @@..+#+%+###+ ",
+"@@$$$.+##+###+ ",
+"@%@$..+#####+@ ",
+"@%%@$$%+###+%%@ ",
+"@%%%@$$%+#+%&%$@",
+" @%%%@$$$+%%%&%@",
+" @%%%@$$%%%%$&@",
+" @%%%@$$%$$$$@",
+" @%%$&$$$$@@ ",
+" @%%@$$@@ ",
+" @%@@@ ",
+" @@ "};
--- /dev/null
+/* XPM */
+static char * inbox_mark_xpm[] = {
+"16 16 8 1",
+" c None",
+". c #920A0C",
+"+ c #FFFFFF",
+"@ c #020204",
+"# c #000000",
+"$ c #A9A9AA",
+"% c #F3F3F1",
+"& c #636364",
+" . ++ ",
+" ... @ +#+ ",
+" ... @@$@ +##+ ",
+" ..++.$%+###+ ",
+" @@.+#+&+###+ ",
+"@@$$$+##+###+ ",
+"@%@$.+#####+%@ ",
+"@%%@$$+###+&%%@ ",
+"@%%%@$$+#+%%&%$@",
+" @%%%@$$+%%%%&%@",
+" @%%%@$$%%%%$&@",
+" @%%%@$$%$$$$@",
+" @%%$&$$$$@@ ",
+" @%%@$$@@ ",
+" @%@@@ ",
+" @@ "};
--- /dev/null
+/* XPM */
+static char * outbox_hrm_mark_xpm[] = {
+"16 16 9 1",
+" c None",
+". c #FFFFFF",
+"+ c #050000",
+"@ c #152658",
+"# c #000000",
+"$ c #FE3569",
+"% c #FEC9D8",
+"& c #B21133",
+"* c #FE6993",
+" ..",
+" + @.#.",
+" ++$+ .##.",
+" ++..$%+.###.",
+" ++$$.#.%.###.@",
+"++$$$$.##.###. ",
+"+%+$&&.#####.+ ",
+"+%%+$*%.###.%%+ ",
+"+%%%+**%.#.%&%$+",
+" +%%%+**%.%%%&%+",
+" +%%%+**%%%%*&+",
+" +%%%+*%%***$+",
+" +%%$&***$++ ",
+" +%%+*$++ ",
+" +%+++ ",
+" ++ "};
--- /dev/null
+/* XPM */
+static char * outbox_mark_xpm[] = {
+"16 16 10 1",
+" c None",
+". c #FFFFFF",
+"+ c #020204",
+"@ c #024A6C",
+"# c #000000",
+"$ c #99999B",
+"% c #FDFDFB",
+"& c #626263",
+"* c #B4B4B4",
+"= c #E5E5E3",
+" ..",
+" + @.#.",
+" ++$+ .##.",
+" ++..$%+.###.",
+" ++$$.#.%.###.@",
+"++$$$$.##.###. ",
+"+%+$&&.#####.+ ",
+"+%%+$*=.###.%%+ ",
+"+%%%+**=.#.=&%$+",
+" +%%%+**=.===&=+",
+" +%%%+**====*&+",
+" +%%%+*==***$+",
+" +%%$&***$++ ",
+" +%=+*$++ ",
+" +%+++ ",
+" ++ "};
--- /dev/null
+/* XPM */
+static char * trash_hrm_mark_xpm[] = {
+"16 16 11 1",
+" c None",
+". c #FFFFFF",
+"+ c #000000",
+"@ c #EB6C8D",
+"# c #E65F7C",
+"$ c #852C3F",
+"% c #D43B6A",
+"& c #F1809B",
+"* c #752637",
+"= c #6C1F30",
+"- c #A93262",
+" .. ",
+" ++++++ .+. ",
+" ++@@#$##++.++. ",
+"+#@@@..###.+++. ",
+"+%@&&.+.#.+++. ",
+"+*%##.++.+++. ",
+" +$%*.+++++. ",
+" +*===.+++. ",
+" +*@-#-.+.++++ ",
+" +*@-#-%.*+++++ ",
+" +*@-#-%-*+++++ ",
+" +%@-#-%-*++++ ",
+" +%%%*%*+++ ",
+" +++++++ ",
+" ",
+" "};
--- /dev/null
+/* XPM */
+static char * trash_mark_xpm[] = {
+"16 16 11 1",
+" c None",
+". c #FFFFFF",
+"+ c #000000",
+"@ c #A1B7E7",
+"# c #7B92CE",
+"$ c #3B4766",
+"% c #272A42",
+"& c #5D6CAD",
+"* c #D2DEFB",
+"= c #52617C",
+"- c #1B1C2E",
+" ..",
+" ++++++ .+.",
+" ++@@#$##++ .++.",
+"+#@@@%..##&.+++.",
+"+&@**#.+.&.+++. ",
+"+=&##&.++.+++. ",
+" +-&==.+++++. ",
+" +=----.+++. ",
+" +=@$#$&.+.+++ ",
+" +=@$#$&$.+++++ ",
+" +=@$#$&$=+++++ ",
+" +&@$#$&$=++++ ",
+" +&&&=&=+++ ",
+" +++++++ ",
+" ",
+" "};
static void update(void)
{
- gint new, unread, unreadmarked, total;
+ gint new, unread, unreadmarked, marked, total;
gchar *buf;
TrayIconType icontype = TRAYICON_NOTHING;
- folder_count_total_msgs(&new, &unread, &unreadmarked, &total);
+ folder_count_total_msgs(&new, &unread, &unreadmarked, &marked, &total);
buf = g_strdup_printf(_("New %d, Unread: %d, Total: %d"), new, unread, total);
gtk_tooltips_set_tip(tooltips, eventbox, buf, "");
/* Send */
{"save_message", "TRUE", &prefs_common.savemsg, P_BOOL,
NULL, NULL, NULL},
+ {"confirm_send_queued_messages", "FALSE", &prefs_common.confirm_send_queued_messages,
+ P_BOOL, NULL, NULL, NULL},
{"send_dialog_mode", "0", &prefs_common.send_dialog_mode, P_ENUM,
NULL, NULL, NULL},
/* Send */
gboolean savemsg;
+ gboolean confirm_send_queued_messages;
SendDialogMode send_dialog_mode;
gchar *outgoing_charset;
TransferEncodingMethod encoding_method;
GtkWidget *window;
GtkWidget *checkbtn_savemsg;
+ GtkWidget *checkbtn_confirm_send_queued_messages;
GtkWidget *optmenu_senddialog;
GtkWidget *optmenu_charset;
GtkWidget *optmenu_encoding_method;
GtkWidget *menu;
GtkWidget *optmenu_senddialog;
GtkWidget *hbox_senddialog;
+ GtkWidget *checkbtn_confirm_send_queued_messages;
vbox1 = gtk_vbox_new (FALSE, VSPACING);
gtk_widget_show (vbox1);
PACK_CHECK_BUTTON (vbox2, checkbtn_savemsg,
_("Save sent messages to Sent folder"));
+ PACK_CHECK_BUTTON
+ (vbox2, checkbtn_confirm_send_queued_messages,
+ _("Confirm before sending queued messages"));
+
hbox_senddialog = gtk_hbox_new (FALSE, 8);
gtk_widget_show(hbox_senddialog);
gtk_box_pack_start (GTK_BOX (vbox1), hbox_senddialog, FALSE, FALSE, 0);
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_savemsg),
prefs_common.savemsg);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_confirm_send_queued_messages),
+ prefs_common.confirm_send_queued_messages);
gtk_option_menu_set_history(GTK_OPTION_MENU(optmenu_senddialog),
prefs_common.send_dialog_mode);
prefs_common_charset_set_optmenu(optmenu_charset,
prefs_send->window = GTK_WIDGET(window);
prefs_send->checkbtn_savemsg = checkbtn_savemsg;
+ prefs_send->checkbtn_confirm_send_queued_messages = checkbtn_confirm_send_queued_messages;
prefs_send->optmenu_senddialog = optmenu_senddialog;
prefs_send->optmenu_charset = optmenu_charset;
prefs_send->optmenu_encoding_method = optmenu_encoding;
prefs_common.savemsg = gtk_toggle_button_get_active(
GTK_TOGGLE_BUTTON(page->checkbtn_savemsg));
+ prefs_common.confirm_send_queued_messages = gtk_toggle_button_get_active(
+ GTK_TOGGLE_BUTTON(page->checkbtn_confirm_send_queued_messages));
menu = gtk_option_menu_get_menu(GTK_OPTION_MENU(page->optmenu_senddialog));
menuitem = gtk_menu_get_active(GTK_MENU(menu));
return (err != 0 ? -err : sent);
}
+/*!
+ *\brief Determine if a queue folder is empty
+ *
+ *\param queue Queue folder to process
+ *
+ *\return TRUE if the queue folder is empty, otherwise return FALSE
+ */
+gboolean procmsg_queue_is_empty(FolderItem *queue)
+{
+ GSList *list;
+
+ if (!queue)
+ queue = folder_get_default_queue();
+ g_return_val_if_fail(queue != NULL, TRUE);
+
+ folder_item_scan(queue);
+ list = folder_item_get_msg_list(queue);
+ return (list == NULL);
+}
+
gint procmsg_remove_special_headers(const gchar *in, const gchar *out)
{
FILE *fp, *outfp;
/* MARK flag */
if (!(old_flags & MSG_MARKED) && (new_flags & MSG_MARKED)) {
procmsg_update_unread_children(msginfo, TRUE);
+ item->marked_msgs++;
}
if ((old_flags & MSG_MARKED) && !(new_flags & MSG_MARKED)) {
procmsg_update_unread_children(msginfo, FALSE);
+ item->marked_msgs--;
}
}
gint procmsg_send_queue (FolderItem *queue,
gboolean save_msgs);
+gboolean procmsg_queue_is_empty (FolderItem *queue);
gint procmsg_save_to_outbox (FolderItem *outbox,
const gchar *file,
gboolean is_queued);
#include "pixmaps/complete.xpm"
#include "pixmaps/continue.xpm"
#include "pixmaps/deleted.xpm"
-#include "pixmaps/dir_close.xpm"
-#include "pixmaps/dir_open.xpm"
-#include "pixmaps/dir_open_hrm.xpm"
#include "pixmaps/error.xpm"
#include "pixmaps/forwarded.xpm"
#include "pixmaps/group.xpm"
-#include "pixmaps/inbox.xpm"
-#include "pixmaps/inbox_hrm.xpm"
#include "pixmaps/interface.xpm"
#include "pixmaps/jpilot.xpm"
#include "pixmaps/key.xpm"
#include "pixmaps/mark.xpm"
#include "pixmaps/locked.xpm"
#include "pixmaps/new.xpm"
-#include "pixmaps/outbox.xpm"
-#include "pixmaps/outbox_hrm.xpm"
#include "pixmaps/replied.xpm"
#include "pixmaps/close.xpm"
#include "pixmaps/down_arrow.xpm"
#include "pixmaps/sylpheed_icon.xpm"
#include "pixmaps/sylpheed_logo.xpm"
#include "pixmaps/address_book.xpm"
-#include "pixmaps/trash.xpm"
-#include "pixmaps/trash_hrm.xpm"
#include "pixmaps/unread.xpm"
#include "pixmaps/read.xpm"
#include "pixmaps/vcard.xpm"
#include "pixmaps/quicksearch.xpm"
#include "pixmaps/clip_gpg_signed.xpm"
#include "pixmaps/gpg_signed.xpm"
-#include "pixmaps/drafts_close.xpm"
-#include "pixmaps/drafts_open.xpm"
#include "pixmaps/mime_text_plain.xpm"
#include "pixmaps/mime_text_html.xpm"
#include "pixmaps/mime_application.xpm"
#include "pixmaps/mime_message.xpm"
#include "pixmaps/address_search.xpm"
#include "pixmaps/check_spelling.xpm"
+
+#include "pixmaps/dir_close.xpm"
+#include "pixmaps/dir_open.xpm"
+#include "pixmaps/dir_open_hrm.xpm"
+#include "pixmaps/inbox.xpm"
+#include "pixmaps/inbox_hrm.xpm"
+#include "pixmaps/outbox.xpm"
+#include "pixmaps/outbox_hrm.xpm"
+#include "pixmaps/trash.xpm"
+#include "pixmaps/trash_hrm.xpm"
+#include "pixmaps/drafts_close.xpm"
+#include "pixmaps/drafts_open.xpm"
+#include "pixmaps/dir_close_mark.xpm"
+#include "pixmaps/dir_open_mark.xpm"
+#include "pixmaps/dir_open_hrm_mark.xpm"
+#include "pixmaps/inbox_mark.xpm"
+#include "pixmaps/inbox_hrm_mark.xpm"
+#include "pixmaps/outbox_mark.xpm"
+#include "pixmaps/outbox_hrm_mark.xpm"
+#include "pixmaps/trash_mark.xpm"
+#include "pixmaps/trash_hrm_mark.xpm"
+#include "pixmaps/drafts_close_mark.xpm"
+#include "pixmaps/drafts_open_mark.xpm"
#include "pixmaps/dir_noselect.xpm"
typedef struct _StockPixmapData StockPixmapData;
{dir_close_xpm , NULL, NULL, "dir_close_hrm", NULL},
{dir_open_xpm , NULL, NULL, "dir_open", NULL},
{dir_open_hrm_xpm , NULL, NULL, "dir_open_hrm", NULL},
+ {dir_close_mark_xpm , NULL, NULL, "dir_close_mark", NULL},
+ {dir_close_mark_xpm , NULL, NULL, "dir_close_mark_hrm", NULL},
+ {dir_open_mark_xpm , NULL, NULL, "dir_open_mark", NULL},
+ {dir_open_hrm_mark_xpm , NULL, NULL, "dir_open_mark_hrm", NULL},
{down_arrow_xpm , NULL, NULL, "down_arrow", NULL},
{up_arrow_xpm , NULL, NULL, "up_arrow", NULL},
{mail_compose_xpm , NULL, NULL, "edit_extern", NULL},
{inbox_hrm_xpm , NULL, NULL, "inbox_close_hrm", NULL},
{inbox_xpm , NULL, NULL, "inbox_open", NULL},
{inbox_hrm_xpm , NULL, NULL, "inbox_open_hrm", NULL},
+ {inbox_mark_xpm , NULL, NULL, "inbox_close_mark", NULL},
+ {inbox_hrm_mark_xpm , NULL, NULL, "inbox_close_mark_hrm", NULL},
+ {inbox_mark_xpm , NULL, NULL, "inbox_open_mark", NULL},
+ {inbox_hrm_mark_xpm , NULL, NULL, "inbox_open_mark_hrm", NULL},
{paste_xpm , NULL, NULL, "insert_file", NULL},
{interface_xpm , NULL, NULL, "interface", NULL},
{jpilot_xpm , NULL, NULL, "jpilot", NULL},
{outbox_hrm_xpm , NULL, NULL, "outbox_close_hrm", NULL},
{outbox_xpm , NULL, NULL, "outbox_open", NULL},
{outbox_hrm_xpm , NULL, NULL, "outbox_open_hrm", NULL},
+ {outbox_mark_xpm , NULL, NULL, "outbox_close_mark", NULL},
+ {outbox_hrm_mark_xpm , NULL, NULL, "outbox_close_mark_hrm", NULL},
+ {outbox_mark_xpm , NULL, NULL, "outbox_open_mark", NULL},
+ {outbox_hrm_mark_xpm , NULL, NULL, "outbox_open_mark_hrm", NULL},
{replied_xpm , NULL, NULL, "replied", NULL},
{paste_xpm , NULL, NULL, "paste", NULL},
{preferences_xpm , NULL, NULL, "preferences", NULL},
{trash_hrm_xpm , NULL, NULL, "trash_open_hrm", NULL},
{trash_xpm , NULL, NULL, "trash_close", NULL},
{trash_hrm_xpm , NULL, NULL, "trash_close_hrm", NULL},
+ {outbox_mark_xpm , NULL, NULL, "queue_close_mark", NULL},
+ {outbox_hrm_mark_xpm , NULL, NULL, "queue_close_mark_hrm", NULL},
+ {outbox_mark_xpm , NULL, NULL, "queue_open_mark", NULL},
+ {outbox_hrm_mark_xpm , NULL, NULL, "queue_open_mark_hrm", NULL},
+ {trash_mark_xpm , NULL, NULL, "trash_open_mark", NULL},
+ {trash_hrm_mark_xpm , NULL, NULL, "trash_open_mark_hrm", NULL},
+ {trash_mark_xpm , NULL, NULL, "trash_close_mark", NULL},
+ {trash_hrm_mark_xpm , NULL, NULL, "trash_close_mark_hrm", NULL},
{unread_xpm , NULL, NULL, "unread", NULL},
{vcard_xpm , NULL, NULL, "vcard", NULL},
{online_xpm , NULL, NULL, "online", NULL},
{gpg_signed_xpm , NULL, NULL, "gpg_signed", NULL},
{drafts_close_xpm , NULL, NULL, "drafts_close", NULL},
{drafts_open_xpm , NULL, NULL, "drafts_open", NULL},
+ {drafts_close_mark_xpm , NULL, NULL, "drafts_close_mark", NULL},
+ {drafts_open_mark_xpm , NULL, NULL, "drafts_open_mark", NULL},
{mime_text_plain_xpm , NULL, NULL, "mime_text_plain", NULL},
{mime_text_html_xpm , NULL, NULL, "mime_text_html", NULL},
{mime_application_xpm , NULL, NULL, "mime_application", NULL},
STOCK_PIXMAP_DIR_CLOSE_HRM,
STOCK_PIXMAP_DIR_OPEN,
STOCK_PIXMAP_DIR_OPEN_HRM,
+ STOCK_PIXMAP_DIR_CLOSE_MARK,
+ STOCK_PIXMAP_DIR_CLOSE_HRM_MARK,
+ STOCK_PIXMAP_DIR_OPEN_MARK,
+ STOCK_PIXMAP_DIR_OPEN_HRM_MARK,
STOCK_PIXMAP_DOWN_ARROW,
STOCK_PIXMAP_UP_ARROW,
STOCK_PIXMAP_EDIT_EXTERN,
STOCK_PIXMAP_INBOX_CLOSE_HRM,
STOCK_PIXMAP_INBOX_OPEN,
STOCK_PIXMAP_INBOX_OPEN_HRM,
+ STOCK_PIXMAP_INBOX_CLOSE_MARK,
+ STOCK_PIXMAP_INBOX_CLOSE_HRM_MARK,
+ STOCK_PIXMAP_INBOX_OPEN_MARK,
+ STOCK_PIXMAP_INBOX_OPEN_HRM_MARK,
STOCK_PIXMAP_INSERT_FILE,
STOCK_PIXMAP_INTERFACE,
STOCK_PIXMAP_JPILOT,
STOCK_PIXMAP_OUTBOX_CLOSE_HRM,
STOCK_PIXMAP_OUTBOX_OPEN,
STOCK_PIXMAP_OUTBOX_OPEN_HRM,
+ STOCK_PIXMAP_OUTBOX_CLOSE_MARK,
+ STOCK_PIXMAP_OUTBOX_CLOSE_HRM_MARK,
+ STOCK_PIXMAP_OUTBOX_OPEN_MARK,
+ STOCK_PIXMAP_OUTBOX_OPEN_HRM_MARK,
STOCK_PIXMAP_REPLIED,
STOCK_PIXMAP_PASTE,
STOCK_PIXMAP_PREFERENCES,
STOCK_PIXMAP_TRASH_OPEN_HRM,
STOCK_PIXMAP_TRASH_CLOSE,
STOCK_PIXMAP_TRASH_CLOSE_HRM,
+ STOCK_PIXMAP_QUEUE_CLOSE_MARK,
+ STOCK_PIXMAP_QUEUE_CLOSE_HRM_MARK,
+ STOCK_PIXMAP_QUEUE_OPEN_MARK,
+ STOCK_PIXMAP_QUEUE_OPEN_HRM_MARK,
+ STOCK_PIXMAP_TRASH_OPEN_MARK,
+ STOCK_PIXMAP_TRASH_OPEN_HRM_MARK,
+ STOCK_PIXMAP_TRASH_CLOSE_MARK,
+ STOCK_PIXMAP_TRASH_CLOSE_HRM_MARK,
STOCK_PIXMAP_UNREAD,
STOCK_PIXMAP_VCARD,
STOCK_PIXMAP_ONLINE,
STOCK_PIXMAP_GPG_SIGNED,
STOCK_PIXMAP_DRAFTS_CLOSE,
STOCK_PIXMAP_DRAFTS_OPEN,
+ STOCK_PIXMAP_DRAFTS_CLOSE_MARK,
+ STOCK_PIXMAP_DRAFTS_OPEN_MARK,
STOCK_PIXMAP_MIME_TEXT_PLAIN,
STOCK_PIXMAP_MIME_TEXT_HTML,
STOCK_PIXMAP_MIME_APPLICATION,
void send_queue_cb(gpointer data, guint action, GtkWidget *widget)
{
GList *list;
+ gboolean found;
if (prefs_common.work_offline)
if (alertpanel(_("Offline warning"),
_("Yes"), _("No"), NULL) != G_ALERTDEFAULT)
return;
+ /* ask for confirmation before sending queued messages only
+ in online mode and if there is at least one message queued
+ in any of the folder queue
+ */
+ if (prefs_common.confirm_send_queued_messages) {
+ found = FALSE;
+ /* check if there's a queued message */
+ for (list = folder_get_list(); !found && list != NULL; list = list->next) {
+ Folder *folder = list->data;
+
+ found = !procmsg_queue_is_empty(folder->queue);
+ }
+ /* if necessary, ask for confirmation before sending */
+ if (found && !prefs_common.work_offline) {
+ if (alertpanel(_("Send queued messages"),
+ _("Send all queued messages?"),
+ _("Yes"), _("No"), NULL) != G_ALERTDEFAULT)
+ return;
+ }
+ }
+
for (list = folder_get_list(); list != NULL; list = list->next) {
Folder *folder = list->data;