aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mail/ChangeLog15
-rw-r--r--mail/folder-browser-ui.c2
-rw-r--r--mail/mail-callbacks.c10
-rw-r--r--mail/message-list.c3
-rw-r--r--mail/message-list.etspec2
-rw-r--r--mail/message-tag-followup.c23
-rw-r--r--mail/message-tag-followup.h6
-rw-r--r--mail/message-tags.glade87
8 files changed, 124 insertions, 24 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index 24d3881708..ba0ff29ad0 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,3 +1,18 @@
+2002-02-13 Jeffrey Stedfast <fejj@ximian.com>
+
+ * folder-browser-ui.c: Set the followup icon to use the new flag
+ icon rather than the exclamation mark icon.
+
+ * mail-callbacks.c (flag_for_followup): Append the selected
+ messages to the clist in the followp editor.
+
+ * message-list.c: Include the new flag-for-followup icon.
+
+ * message-tag-followup.c (message_tag_followup_append_message):
+ New method to add a message to the message-list.
+ (construct): Get the message_list widget and load the flag icon
+ pixmap.
+
2002-02-12 Jeffrey Stedfast <fejj@ximian.com>
* message-tag-followup.c (set_widget_values): Fixed a bug.
diff --git a/mail/folder-browser-ui.c b/mail/folder-browser-ui.c
index 538675e144..cd79be08ea 100644
--- a/mail/folder-browser-ui.c
+++ b/mail/folder-browser-ui.c
@@ -135,7 +135,7 @@ static EPixmap message_pixcache [] = {
E_PIXMAP ("/commands/MessageMarkAsRead", "mail-read.xpm"),
E_PIXMAP ("/commands/MessageMarkAsUnRead", "mail-new.xpm"),
E_PIXMAP ("/commands/MessageMarkAsImportant", "priority-high.xpm"),
- E_PIXMAP ("/commands/MessageFollowUpFlag", "priority-high.xpm"),
+ E_PIXMAP ("/commands/MessageFollowUpFlag", "flag-for-followup-16.png"),
E_PIXMAP ("/Toolbar/MailMessageToolbar/MessageReplySender", "buttons/reply.png"),
E_PIXMAP ("/Toolbar/MailMessageToolbar/MessageReplyAll", "buttons/reply-to-all.png"),
diff --git a/mail/mail-callbacks.c b/mail/mail-callbacks.c
index dc57cf8d68..0c10521ad9 100644
--- a/mail/mail-callbacks.c
+++ b/mail/mail-callbacks.c
@@ -1873,6 +1873,7 @@ flag_for_followup (BonoboUIComponent *uih, void *user_data, const char *path)
struct _tag_editor_data *data;
GtkWidget *editor;
GPtrArray *uids;
+ int i;
if (FOLDER_BROWSER_IS_DESTROYED (fb))
return;
@@ -1888,6 +1889,15 @@ flag_for_followup (BonoboUIComponent *uih, void *user_data, const char *path)
data->fb = fb;
data->uids = uids;
+ for (i = 0; i < uids->len; i++) {
+ CamelMessageInfo *info;
+
+ info = camel_folder_get_message_info (fb->folder, uids->pdata[i]);
+ message_tag_followup_append_message (MESSAGE_TAG_FOLLOWUP (editor),
+ camel_message_info_from (info),
+ camel_message_info_subject (info));
+ }
+
gnome_dialog_button_connect (GNOME_DIALOG (editor), 0, tag_editor_ok, data);
gnome_dialog_button_connect (GNOME_DIALOG (editor), 1, tag_editor_cancel, data);
gnome_dialog_set_close (GNOME_DIALOG (editor), TRUE);
diff --git a/mail/message-list.c b/mail/message-list.c
index e3c6f3f726..f2dfcf1918 100644
--- a/mail/message-list.c
+++ b/mail/message-list.c
@@ -59,6 +59,7 @@
#include "art/score-high.xpm"
#include "art/score-higher.xpm"
#include "art/score-highest.xpm"
+#include "art/flag-for-followup.xpm"
/*#define TIMEIT */
@@ -152,7 +153,7 @@ static struct {
{ score_high_xpm, NULL },
{ score_higher_xpm, NULL },
{ score_highest_xpm, NULL },
- { priority_high_xpm, NULL }, /* FIXME: replace with a flag icon */
+ { flag_for_followup_xpm,NULL },
{ NULL, NULL }
};
diff --git a/mail/message-list.etspec b/mail/message-list.etspec
index 4f91cbb98d..c4c86b13b2 100644
--- a/mail/message-list.etspec
+++ b/mail/message-list.etspec
@@ -19,7 +19,7 @@
<ETableColumn model_col= "9" _title="Size" expansion="0.2" minimum_width="32" resizable="true" cell="render_size" compare="integer"/>
- <ETableColumn model_col= "10" _title="Flag Status" pixbuf="flagged" expansion="0.0" minimum_width="18" resizable="false" cell="render_flag_status" compare="integer"/>
+ <ETableColumn model_col= "10" _title="Flag Status" pixbuf="followup" expansion="0.0" minimum_width="18" resizable="false" cell="render_flag_status" compare="integer"/>
<ETableColumn model_col= "11" _title="Follow Up Flag" expansion="0.2" minimum_width="32" resizable="true" cell="render_text" compare="string"/>
diff --git a/mail/message-tag-followup.c b/mail/message-tag-followup.c
index 8306fead8b..82a502e791 100644
--- a/mail/message-tag-followup.c
+++ b/mail/message-tag-followup.c
@@ -31,6 +31,8 @@
#include <glade/glade.h>
+#include <libgnomeui/gnome-pixmap.h>
+
#include "message-tag-followup.h"
static void message_tag_followup_class_init (MessageTagFollowUpClass *class);
@@ -311,6 +313,11 @@ construct (MessageTagEditor *editor)
/* reparent */
gtk_widget_reparent (widget, GNOME_DIALOG (editor)->vbox);
+ widget = glade_xml_get_widget (gui, "pixmap");
+ gnome_pixmap_load_file (GNOME_PIXMAP (widget), EVOLUTION_GLADEDIR "/flag-for-followup-48.png");
+
+ followup->message_list = GTK_CLIST (glade_xml_get_widget (gui, "message_list"));
+
followup->type = GTK_OPTION_MENU (glade_xml_get_widget (gui, "followup_type"));
gtk_option_menu_remove_menu (followup->type);
menu = gtk_menu_new ();
@@ -354,3 +361,19 @@ message_tag_followup_new (void)
return editor;
}
+
+void
+message_tag_followup_append_message (MessageTagFollowUp *editor,
+ const char *from,
+ const char *subject)
+{
+ char *text[3];
+
+ g_return_if_fail (IS_MESSAGE_TAG_FOLLOWUP (editor));
+
+ text[0] = (char *) from;
+ text[1] = (char *) subject;
+ text[2] = NULL;
+
+ gtk_clist_append (editor->message_list, text);
+}
diff --git a/mail/message-tag-followup.h b/mail/message-tag-followup.h
index 75161a4e76..0245809754 100644
--- a/mail/message-tag-followup.h
+++ b/mail/message-tag-followup.h
@@ -69,6 +69,8 @@ struct _MessageTagFollowUp {
struct _FollowUpTag *tag;
char *value;
+ GtkCList *message_list;
+
GtkOptionMenu *type;
GtkWidget *none;
@@ -94,6 +96,10 @@ const char *message_tag_followup_i18n_name (int type);
MessageTagEditor *message_tag_followup_new (void);
+void message_tag_followup_append_message (MessageTagFollowUp *editor,
+ const char *from,
+ const char *subject);
+
#ifdef __cplusplus
}
#endif /* __cplusplus */
diff --git a/mail/message-tags.glade b/mail/message-tags.glade
index 469d74ce31..9883005f52 100644
--- a/mail/message-tags.glade
+++ b/mail/message-tags.glade
@@ -20,9 +20,9 @@
<type>GTK_WINDOW_TOPLEVEL</type>
<position>GTK_WIN_POS_NONE</position>
<modal>False</modal>
- <allow_shrink>False</allow_shrink>
- <allow_grow>False</allow_grow>
- <auto_shrink>False</auto_shrink>
+ <allow_shrink>True</allow_shrink>
+ <allow_grow>True</allow_grow>
+ <auto_shrink>True</auto_shrink>
<auto_close>False</auto_close>
<hide_on_close>False</hide_on_close>
@@ -86,10 +86,9 @@
<widget>
<class>GtkHBox</class>
- <name>hbox1</name>
- <border_width>3</border_width>
+ <name>hbox2</name>
<homogeneous>False</homogeneous>
- <spacing>3</spacing>
+ <spacing>4</spacing>
<child>
<padding>0</padding>
<expand>False</expand>
@@ -97,15 +96,9 @@
</child>
<widget>
- <class>GtkLabel</class>
- <name>label6</name>
- <label>Message:</label>
- <justify>GTK_JUSTIFY_LEFT</justify>
- <wrap>False</wrap>
- <xalign>7.45058e-09</xalign>
- <yalign>0</yalign>
- <xpad>0</xpad>
- <ypad>0</ypad>
+ <class>GnomePixmap</class>
+ <name>pixmap</name>
+ <filename>flag-for-followup-48.png</filename>
<child>
<padding>0</padding>
<expand>False</expand>
@@ -115,23 +108,75 @@
<widget>
<class>GtkLabel</class>
- <name>lblSubject</name>
- <label>Bug 13256] Changed - Edits to a signature file are not saved unless 'File:Save' selected explicitly</label>
+ <name>lblDirections</name>
+ <label>The messages you have selected for follow up are listed below.
+Please select a follow up action from the &quot;Flag&quot; menu.</label>
<justify>GTK_JUSTIFY_LEFT</justify>
- <wrap>True</wrap>
- <xalign>7.45058e-09</xalign>
+ <wrap>False</wrap>
+ <xalign>0.5</xalign>
<yalign>0.5</yalign>
<xpad>0</xpad>
<ypad>0</ypad>
<child>
<padding>0</padding>
- <expand>True</expand>
- <fill>True</fill>
+ <expand>False</expand>
+ <fill>False</fill>
</child>
</widget>
</widget>
<widget>
+ <class>GtkScrolledWindow</class>
+ <name>scrolledwindow1</name>
+ <hscrollbar_policy>GTK_POLICY_AUTOMATIC</hscrollbar_policy>
+ <vscrollbar_policy>GTK_POLICY_AUTOMATIC</vscrollbar_policy>
+ <hupdate_policy>GTK_UPDATE_CONTINUOUS</hupdate_policy>
+ <vupdate_policy>GTK_UPDATE_CONTINUOUS</vupdate_policy>
+ <child>
+ <padding>0</padding>
+ <expand>True</expand>
+ <fill>True</fill>
+ </child>
+
+ <widget>
+ <class>GtkCList</class>
+ <name>message_list</name>
+ <can_focus>True</can_focus>
+ <columns>2</columns>
+ <column_widths>106,80</column_widths>
+ <selection_mode>GTK_SELECTION_SINGLE</selection_mode>
+ <show_titles>True</show_titles>
+ <shadow_type>GTK_SHADOW_IN</shadow_type>
+
+ <widget>
+ <class>GtkLabel</class>
+ <child_name>CList:title</child_name>
+ <name>lblFrom</name>
+ <label>From</label>
+ <justify>GTK_JUSTIFY_CENTER</justify>
+ <wrap>False</wrap>
+ <xalign>0.5</xalign>
+ <yalign>0.5</yalign>
+ <xpad>0</xpad>
+ <ypad>0</ypad>
+ </widget>
+
+ <widget>
+ <class>GtkLabel</class>
+ <child_name>CList:title</child_name>
+ <name>lblSubject</name>
+ <label>Subject</label>
+ <justify>GTK_JUSTIFY_CENTER</justify>
+ <wrap>False</wrap>
+ <xalign>0.5</xalign>
+ <yalign>0.5</yalign>
+ <xpad>0</xpad>
+ <ypad>0</ypad>
+ </widget>
+ </widget>
+ </widget>
+
+ <widget>
<class>GtkTable</class>
<name>table2</name>
<border_width>3</border_width>