gpointer data);
static void toolbar_address_cb (GtkWidget *widget,
gpointer data);
-static void toolbar_actions_execute_cb (GtkWidget *widget,
- gpointer data);
static void toolbar_compose_buttons_cb (GtkWidget *widget,
- ToolbarItem *t_item);
+ ToolbarItem *item);
static void account_activated (GtkMenuItem *menuitem,
gpointer data);
compose_exec_ext_editor(compose);
}
-static void set_toolbar_style(Compose *compose);
-
#define INSERT_FW_HEADER(var, hdr) \
if (msginfo->var && *msginfo->var) { \
gtk_stext_insert(text, NULL, NULL, NULL, hdr, -1); \
msgfile = procmsg_get_message_file_path(msginfo);
if (!is_file_exist(msgfile))
- g_warning(_("%s: file not exist\n"), msgfile);
+ g_warning("%s: file not exist\n", msgfile);
else
compose_attach_append(compose, msgfile, msgfile,
"message/rfc822");
for (msginfo = msginfo_list; msginfo != NULL; msginfo = msginfo->next) {
msgfile = procmsg_get_message_file_path((MsgInfo *)msginfo->data);
if (!is_file_exist(msgfile))
- g_warning(_("%s: file not exist\n"), msgfile);
+ g_warning("%s: file not exist\n", msgfile);
else
compose_attach_append(compose, msgfile, msgfile,
"message/rfc822");
/* Select Account from queue headers */
if (!get_header_from_msginfo(msginfo, queueheader_buf,
+ sizeof(queueheader_buf), "X-Sylpheed-Account-Id:")) {
+ id = atoi(&queueheader_buf[22]);
+ account = account_find_from_id(id);
+ }
+ if (!account && !get_header_from_msginfo(msginfo, queueheader_buf,
sizeof(queueheader_buf), "NAID:")) {
id = atoi(&queueheader_buf[5]);
account = account_find_from_id(id);
gtk_stext_freeze(text);
if ((fp = procmime_get_first_text_content(msginfo)) == NULL)
- g_warning(_("Can't get text part\n"));
+ g_warning("Can't get text part\n");
else {
while (fgets(buf, sizeof(buf), fp) != NULL) {
strcrchomp(buf);
menu_set_sensitive(ifactory, "/File/Insert file", FALSE);
menu_set_sensitive(ifactory, "/File/Attach file", FALSE);
menu_set_sensitive(ifactory, "/File/Insert signature", FALSE);
- menu_set_sensitive(ifactory, "/Edit/Paste", FALSE);
- menu_set_sensitive(ifactory, "/Edit/Wrap current paragraph", FALSE);
- menu_set_sensitive(ifactory, "/Edit/Wrap all long lines", FALSE);
- menu_set_sensitive(ifactory, "/Edit/Edit with external editor", FALSE);
- menu_set_sensitive(ifactory, "/Message/Attach", FALSE);
+ menu_set_sensitive(ifactory, "/Edit", FALSE);
+ menu_set_sensitive(ifactory, "/Message/Save to draft folder", FALSE);
+ menu_set_sensitive(ifactory, "/Message/Save and keep editing", FALSE);
#if USE_GPGME
menu_set_sensitive(ifactory, "/Message/Sign", FALSE);
menu_set_sensitive(ifactory, "/Message/Encrypt", FALSE);
menu_set_sensitive(ifactory, "/Message/Mode/MIME", FALSE);
menu_set_sensitive(ifactory, "/Message/Mode/Inline", FALSE);
#endif
+ menu_set_sensitive(ifactory, "/Message/Priority", FALSE);
menu_set_sensitive(ifactory, "/Message/Request Return Receipt", FALSE);
- menu_set_sensitive(ifactory, "/Tools/Template", FALSE);
+ menu_set_sensitive(ifactory, "/Tools/Show ruler", FALSE);
+ menu_set_sensitive(ifactory, "/Tools/Actions", FALSE);
+ gtk_widget_set_sensitive(compose->toolbar->draft_btn, FALSE);
gtk_widget_set_sensitive(compose->toolbar->insert_btn, FALSE);
gtk_widget_set_sensitive(compose->toolbar->attach_btn, FALSE);
gtk_widget_set_sensitive(compose->toolbar->sig_btn, FALSE);
g_return_if_fail(msginfo != NULL);
if (compose->account->protocol != A_NNTP || followup_and_reply_to) {
- if (!compose->replyto && to_ml && compose->ml_post)
+ if (!compose->replyto && to_ml && compose->ml_post
+ && !(msginfo->folder && msginfo->folder->prefs->enable_default_reply_to))
compose_entry_append(compose,
compose->ml_post,
COMPOSE_TO);
#endif
compose_show_first_last_header(compose, TRUE);
-#if 0 /* NEW COMPOSE GUI */
- if (compose->bcc) {
- GtkItemFactory *ifactory;
- GtkWidget *menuitem;
-
- ifactory = gtk_item_factory_from_widget(compose->menubar);
- menuitem = gtk_item_factory_get_item(ifactory, "/View/Bcc");
- gtk_check_menu_item_set_active
- (GTK_CHECK_MENU_ITEM(menuitem), TRUE);
- }
- if (compose->replyto) {
- GtkItemFactory *ifactory;
- GtkWidget *menuitem;
-
- ifactory = gtk_item_factory_from_widget(compose->menubar);
- menuitem = gtk_item_factory_get_item
- (ifactory, "/View/Reply to");
- gtk_check_menu_item_set_active
- (GTK_CHECK_MENU_ITEM(menuitem), TRUE);
- }
-#endif
}
#undef SET_ENTRY
gint row;
if (!is_file_exist(file)) {
- g_warning(_("File %s doesn't exist\n"), file);
+ g_warning("File %s doesn't exist\n", file);
return;
}
if ((size = get_file_size(file)) < 0) {
- g_warning(_("Can't get file size of %s\n"), file);
+ g_warning("Can't get file size of %s\n", file);
return;
}
if (size == 0) {
}
outfile = procmime_get_tmp_file_name(child);
if (procmime_get_part(outfile, infile, child) < 0)
- g_warning(_("Can't get the part of multipart message."));
+ g_warning("Can't get the part of multipart message.");
else if (compose->mode != COMPOSE_REEDIT || strcmp(child->content_type, "application/pgp-signature"))
compose_attach_append
(compose, outfile,
/* skip delete if it is continuous URL */
if (do_delete && (line_pos - p_pos <= i_len) &&
- gtkut_stext_is_uri_string(text, line_pos, tlen))
+ gtk_stext_is_uri_string(text, line_pos, tlen))
do_delete = FALSE;
#ifdef WRAP_DEBUG
indent string, delete them */
if (i_len) {
guint ilen;
- ilen = gtkut_stext_str_compare_n
+ ilen = gtk_stext_str_compare_n
(text, cur_pos, p_pos, i_len,
tlen);
if (ilen) {
#endif
/* force wrapping if it is one long word but not URL */
if (line_pos - p_pos <= i_len)
- if (!gtkut_stext_is_uri_string
+ if (!gtk_stext_is_uri_string
(text, line_pos, tlen))
line_pos = cur_pos - 1;
#ifdef WRAP_DEBUG
/* if next character is space delete it */
if (clen == 1 && isspace(*cbuf)) {
if (p_pos + i_len != line_pos ||
- !gtkut_stext_is_uri_string
+ !gtk_stext_is_uri_string
(text, line_pos, tlen)) {
STEXT_FREEZE();
/* workaround for correct cursor
/* if it is URL at beginning of line don't wrap */
if (p_pos + i_len == line_pos &&
- gtkut_stext_is_uri_string(text, line_pos, tlen)) {
+ gtk_stext_is_uri_string(text, line_pos, tlen)) {
#ifdef WRAP_DEBUG
g_print("found URL at ");
dump_text(text, line_pos, tlen, 1);
/* should we insert quotation ? */
if (linewrap_quote && i_len) {
/* only if line is not already quoted */
- if (!gtkut_stext_str_compare
+ if (!gtk_stext_str_compare
(text, line_pos, tlen, qfmt)) {
guint ins_len;
gtk_widget_set_sensitive(menuitem, FALSE);
}
- if (account->set_autocc && account->auto_cc &&
- compose->mode != COMPOSE_REEDIT) {
- gtk_entry_set_text
- (GTK_ENTRY(compose->cc_entry), account->auto_cc);
- menuitem = gtk_item_factory_get_item(ifactory, "/View/Cc");
- gtk_check_menu_item_set_active
- (GTK_CHECK_MENU_ITEM(menuitem), TRUE);
+ if (account->set_autocc) {
+ compose_entry_show(compose, COMPOSE_ENTRY_CC);
+ if (account->auto_cc && compose->mode != COMPOSE_REEDIT)
+ compose_entry_set(compose, account->auto_cc,
+ COMPOSE_ENTRY_CC);
}
if (account->set_autobcc) {
- menuitem = gtk_item_factory_get_item(ifactory, "/View/Bcc");
- gtk_check_menu_item_set_active
- (GTK_CHECK_MENU_ITEM(menuitem), TRUE);
+ compose_entry_show(compose, COMPOSE_ENTRY_BCC);
if (account->auto_bcc && compose->mode != COMPOSE_REEDIT)
- gtk_entry_set_text(GTK_ENTRY(compose->bcc_entry),
- account->auto_bcc);
+ compose_entry_set(compose, account->auto_bcc,
+ COMPOSE_ENTRY_BCC);
}
if (account->set_autoreplyto) {
- menuitem = gtk_item_factory_get_item(ifactory,
- "/View/Reply to");
- gtk_check_menu_item_set_active
- (GTK_CHECK_MENU_ITEM(menuitem), TRUE);
+ compose_entry_show(compose, COMPOSE_ENTRY_REPLY_TO);
if (account->auto_replyto && compose->mode != COMPOSE_REEDIT)
- gtk_entry_set_text(GTK_ENTRY(compose->reply_entry),
- account->auto_replyto);
+ compose_entry_set(compose, account->auto_replyto,
+ COMPOSE_ENTRY_REPLY_TO);
}
menuitem = gtk_item_factory_get_item(ifactory, "/View/Ruler");
}
if (!compose->to_list && !compose->newsgroup_list) {
- g_warning(_("can't get recipient list."));
+ g_warning("can't get recipient list.");
unlink(tmp);
lock = FALSE;
return -1;
ac = compose->account;
ok = send_message(tmp, ac, compose->to_list);
- statusbar_pop_all();
}
if (ok == 0 && compose->newsgroup_list) {
/* chmod for security */
if (change_file_mode_rw(fdest, file) < 0) {
FILE_OP_ERROR(file, "chmod");
- g_warning(_("can't change file mode\n"));
+ g_warning("can't change file mode\n");
}
while (procheader_get_unfolded_line(buf, sizeof(buf), fp)) {
/* chmod for security */
if (change_file_mode_rw(fp, file) < 0) {
FILE_OP_ERROR(file, "chmod");
- g_warning(_("can't change file mode\n"));
+ g_warning("can't change file mode\n");
}
/* get all composed text */
/* write headers */
if (compose_write_headers
(compose, fp, out_codeset, encoding, is_draft) < 0) {
- g_warning(_("can't write headers\n"));
+ g_warning("can't write headers\n");
fclose(fp);
/* unlink(file); */
g_free(buf);
/* chmod for security */
if (change_file_mode_rw(fp, file) < 0) {
FILE_OP_ERROR(file, "chmod");
- g_warning(_("can't change file mode\n"));
+ g_warning("can't change file mode\n");
}
chars = gtk_editable_get_chars(GTK_EDITABLE(compose->text), 0, -1);
if (procmsg_msg_exist(msginfo) &&
(item->stype == F_DRAFT || item->stype == F_QUEUE)) {
if (folder_item_remove_msg(item, msginfo->msgnum) < 0) {
- g_warning(_("can't remove the old message\n"));
+ g_warning("can't remove the old message\n");
return -1;
}
}
}
if (!compose->to_list && !compose->newsgroup_list) {
- g_warning(_("can't get recipient list."));
+ g_warning("can't get recipient list.");
lock = FALSE;
return -1;
}
}
if (change_file_mode_rw(fp, tmp) < 0) {
FILE_OP_ERROR(tmp, "chmod");
- g_warning(_("can't change file mode\n"));
+ g_warning("can't change file mode\n");
}
/* queueing variables */
queue = account_get_special_folder(compose->account, F_QUEUE);
if (!queue) {
- g_warning(_("can't find queue folder\n"));
+ g_warning("can't find queue folder\n");
unlink(tmp);
g_free(tmp);
return -1;
}
folder_item_scan(queue);
if ((num = folder_item_add_msg(queue, tmp, TRUE)) < 0) {
- g_warning(_("can't queue the message\n"));
+ g_warning("can't queue the message\n");
unlink(tmp);
g_free(tmp);
return -1;
gchar inbuf[B64_LINE_SIZE], outbuf[B64_BUFFSIZE];
if ((attach_fp = fopen(ainfo->file, "rb")) == NULL) {
- g_warning(_("Can't open file %s\n"), ainfo->file);
+ g_warning("Can't open file %s\n", ainfo->file);
continue;
}
/* Save draft infos */
if (is_draft) {
+ fprintf(fp, "X-Sylpheed-Account-Id:%d\n", compose->account->account_id);
fprintf(fp, "S:%s\n", compose->account->address);
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(compose->savemsg_checkbtn))) {
gchar *savefolderid;
GtkWidget *combo;
GtkWidget *entry;
GList *combo_list = NULL;
- gchar **string, *header;
+ gchar **string, *header = NULL;
ComposeHeaderEntry *headerentry;
gboolean standard_header = FALSE;
combo = gtk_combo_new();
string = headers;
while(*string != NULL) {
- combo_list = g_list_append(combo_list, (prefs_common.trans_hdr ? gettext(*string) : *string));
- string++;
+ combo_list = g_list_append(combo_list, (prefs_common.trans_hdr ? gettext(*string) : *string));
+ string++;
}
gtk_combo_set_popdown_strings(GTK_COMBO(combo), combo_list);
g_list_free(combo_list);
break;
}
}
- gtk_entry_set_text(GTK_ENTRY(GTK_COMBO(combo)->entry), header);
+ if (header)
+ gtk_entry_set_text(GTK_ENTRY(GTK_COMBO(combo)->entry), header);
/* Entry field */
entry = gtk_entry_new();
compose->redirect_filename = NULL;
compose->undostruct = undostruct;
#if USE_ASPELL
-
menu_set_sensitive(ifactory, "/Spelling", FALSE);
- if (prefs_common.enable_aspell && prefs_common.dictionary &&
- strcmp(prefs_common.dictionary, _("None"))) {
- gtkaspell = gtkaspell_new((const gchar*)prefs_common.dictionary,
- conv_get_current_charset_str(),
- prefs_common.misspelled_col,
- prefs_common.check_while_typing,
- prefs_common.use_alternate,
- GTK_STEXT(text));
- if (!gtkaspell) {
- alertpanel_error(_("Spell checker could not be started.\n%s"), gtkaspellcheckers->error_message);
- gtkaspell_checkers_reset_error();
- } else {
+ if (mode != COMPOSE_REDIRECT) {
+ if (prefs_common.enable_aspell && prefs_common.dictionary &&
+ strcmp(prefs_common.dictionary, _("None"))) {
+ gtkaspell = gtkaspell_new((const gchar*)prefs_common.dictionary,
+ conv_get_current_charset_str(),
+ prefs_common.misspelled_col,
+ prefs_common.check_while_typing,
+ prefs_common.use_alternate,
+ GTK_STEXT(text));
+ if (!gtkaspell) {
+ alertpanel_error(_("Spell checker could not be started.\n%s"), gtkaspellcheckers->error_message);
+ gtkaspell_checkers_reset_error();
+ } else {
- GtkWidget *menuitem;
+ GtkWidget *menuitem;
- if (!gtkaspell_set_sug_mode(gtkaspell, prefs_common.aspell_sugmode)) {
- debug_print("Aspell: could not set suggestion mode %s\n",
- gtkaspellcheckers->error_message);
- gtkaspell_checkers_reset_error();
- }
+ if (!gtkaspell_set_sug_mode(gtkaspell, prefs_common.aspell_sugmode)) {
+ debug_print("Aspell: could not set suggestion mode %s\n",
+ gtkaspellcheckers->error_message);
+ gtkaspell_checkers_reset_error();
+ }
- menuitem = gtk_item_factory_get_item(ifactory, "/Spelling/Spelling Configuration");
- gtkaspell_populate_submenu(gtkaspell, menuitem);
- menu_set_sensitive(ifactory, "/Spelling", TRUE);
- }
- }
+ menuitem = gtk_item_factory_get_item(ifactory, "/Spelling/Spelling Configuration");
+ gtkaspell_populate_submenu(gtkaspell, menuitem);
+ menu_set_sensitive(ifactory, "/Spelling", TRUE);
+ }
+ }
+ }
#endif
compose_select_account(compose, account);
addressbook_set_target_compose(compose);
update_compose_actions_menu(ifactory, "/Tools/Actions", compose);
- compose_set_template_menu(compose);
+
+ if (mode != COMPOSE_REDIRECT)
+ compose_set_template_menu(compose);
+ else {
+ GtkWidget *menuitem;
+ menuitem = gtk_item_factory_get_item(ifactory, "/Tools/Template");
+ menu_set_sensitive(ifactory, "/Tools/Template", FALSE);
+ }
compose_list = g_list_append(compose_list, compose);
activate_gnupg_mode(compose, account);
#endif
- set_toolbar_style(compose);
+ common_toolbar_set_style(compose, TOOLBAR_COMPOSE);
gtk_widget_show(window);
}
static void toolbar_compose_buttons_cb(GtkWidget *widget,
- ToolbarItem *t_item)
+ ToolbarItem *item)
{
struct {
gint index;
void (*func)(GtkWidget *widget, gpointer data);
} compose_action[] = {
- { A_SEND, toolbar_send_cb },
- { A_SENDL, toolbar_send_later_cb },
- { A_DRAFT, toolbar_draft_cb },
- { A_INSERT, toolbar_insert_cb },
- { A_ATTACH, toolbar_attach_cb },
- { A_SIG, toolbar_sig_cb },
- { A_EXTEDITOR, toolbar_ext_editor_cb },
- { A_LINEWRAP, toolbar_linewrap_cb },
- { A_ADDRBOOK, toolbar_address_cb },
- { A_SYL_ACTIONS, toolbar_actions_execute_cb }};
+ { A_SEND, toolbar_send_cb },
+ { A_SENDL, toolbar_send_later_cb },
+ { A_DRAFT, toolbar_draft_cb },
+ { A_INSERT, toolbar_insert_cb },
+ { A_ATTACH, toolbar_attach_cb },
+ { A_SIG, toolbar_sig_cb },
+ { A_EXTEDITOR, toolbar_ext_editor_cb },
+ { A_LINEWRAP, toolbar_linewrap_cb },
+ { A_ADDRBOOK, toolbar_address_cb },
+ { A_SYL_ACTIONS, common_toolbar_actions_execute_cb }};
gint num_items = sizeof(compose_action)/sizeof(compose_action[0]);
gint i;
- debug_print("_buttons: index: %i \n", t_item->index);
for (i = 0; i < num_items; i++) {
- if (compose_action[i].index == t_item->index) {
- Compose *compose = (Compose*)t_item->parent;
- debug_print("_buttons: compose: %p toolbar: %p\n", compose, compose->toolbar); compose_action[i].func(widget, compose);
+ if (compose_action[i].index == item->index) {
+ if (item->index == A_SYL_ACTIONS)
+ compose_action[i].func(widget, (gpointer)item->parent);
+ else /* this won`t be necessary if everything is moved to toolbar.c */
+ compose_action[i].func(widget, (gpointer)item->parent->data);
break;
}
}
compose->toolbar->linewrap_btn = NULL;
compose->toolbar->addrbook_btn = NULL;
- TOOLBAR_DESTROY_ITEMS(compose->toolbar->t_item_list);
- TOOLBAR_DESTROY_ACTIONS(compose->toolbar->t_action_list);
+ TOOLBAR_DESTROY_ITEMS(compose->toolbar->item_list);
+ TOOLBAR_DESTROY_ACTIONS(compose->toolbar->action_list);
compose_toolbar_create(compose, compose->handlebox);
}
GtkWidget *icon_wid = NULL;
GtkWidget *item;
GtkTooltips *toolbar_tips;
- ToolbarSylpheedActions *t_action_item;
+ ToolbarSylpheedActions *action_item;
GSList *cur;
GSList *toolbar_list;
- GList *elem;
toolbar_tips = gtk_tooltips_new();
toolbar_read_config_file(TOOLBAR_COMPOSE);
toolbar_list = toolbar_get_list(TOOLBAR_COMPOSE);
- compose->toolbar = g_new0(ComposeToolbar, 1);
-
- for (elem = compose_list; elem != NULL; elem = elem->next) {
- Compose *c = (Compose*)elem->data;
- debug_print("toolbar_create: compose: %p toolbar: %p\n",
- c, c->toolbar);
- }
+ compose->toolbar = g_new0(Toolbar, 1);
toolbar = gtk_toolbar_new(GTK_ORIENTATION_HORIZONTAL,
GTK_TOOLBAR_BOTH);
toolbar_item->text = g_strdup(((ToolbarItem*)cur->data)->text);
toolbar_item->index = ((ToolbarItem*)cur->data)->index;
- toolbar_item->parent = (gpointer)compose;
+ toolbar_item->parent = g_new0(ToolbarParent, 1);
+ toolbar_item->parent->data = (gpointer)compose;
+ toolbar_item->parent->type = TOOLBAR_COMPOSE;
/* collect toolbar items in list to keep track */
- compose->toolbar->t_item_list = g_slist_append(compose->toolbar->t_item_list,
- toolbar_item);
+ compose->toolbar->item_list = g_slist_append(compose->toolbar->item_list,
+ toolbar_item);
icon_wid = stock_pixmap_widget(container, stock_pixmap_get_icon(toolbar_item->file));
item = gtk_toolbar_append_item(GTK_TOOLBAR(toolbar),
_("Address book"), NULL);
break;
case A_SYL_ACTIONS:
- t_action_item = g_new0(ToolbarSylpheedActions, 1);
- t_action_item->widget = item;
- t_action_item->name = g_strdup(toolbar_item->text);
+ action_item = g_new0(ToolbarSylpheedActions, 1);
+ action_item->widget = item;
+ action_item->name = g_strdup(toolbar_item->text);
- compose->toolbar->t_action_list =
- g_slist_append(compose->toolbar->t_action_list,
- t_action_item);
+ compose->toolbar->action_list =
+ g_slist_append(compose->toolbar->action_list,
+ action_item);
gtk_tooltips_set_tip(GTK_TOOLTIPS(toolbar_tips),
item,
- t_action_item->name, NULL);
+ action_item->name, NULL);
gtk_widget_show(item);
break;
static void compose_toolbar_set_sensitive (Compose * compose, gboolean sensitive)
{
- GSList *items = compose->toolbar->t_action_list;
+ GSList *items = compose->toolbar->action_list;
if (compose->toolbar->send_btn)
gtk_widget_set_sensitive(compose->toolbar->send_btn, sensitive);
if (compose->toolbar->sendl_btn)
for (cur = compose_list; cur != NULL; cur = cur->next) {
compose = (Compose *)cur->data;
compose_toolbar_update(compose);
- set_toolbar_style(compose);
+ common_toolbar_set_style(compose, TOOLBAR_COMPOSE);
}
}
gtk_widget_destroy(compose->paned);
- TOOLBAR_DESTROY_ITEMS(compose->toolbar->t_item_list);
- TOOLBAR_DESTROY_ACTIONS(compose->toolbar->t_action_list);
+ TOOLBAR_DESTROY_ITEMS(compose->toolbar->item_list);
+ TOOLBAR_DESTROY_ACTIONS(compose->toolbar->action_list);
g_free(compose->toolbar);
g_free(compose);
g_snprintf(buf, sizeof(buf), prefs_common.ext_editor_cmd, file);
} else {
if (prefs_common.ext_editor_cmd)
- g_warning(_("External editor command line is invalid: `%s'\n"),
+ g_warning("External editor command line is invalid: `%s'\n",
prefs_common.ext_editor_cmd);
g_snprintf(buf, sizeof(buf), def_cmd, file);
}
if (kill(pgid, SIGTERM) < 0) perror("kill");
waitpid(compose->exteditor_pid, NULL, 0);
- g_warning(_("Terminated process group id: %d"), -pgid);
- g_warning(_("Temporary file: %s"),
+ g_warning("Terminated process group id: %d", -pgid);
+ g_warning("Temporary file: %s",
compose->exteditor_file);
compose_set_ext_editor_sensitive(compose, TRUE);
if (unlink(compose->exteditor_file) < 0)
FILE_OP_ERROR(compose->exteditor_file, "unlink");
} else if (buf[0] == '1') { /* failed */
- g_warning(_("Couldn't exec external editor\n"));
+ g_warning("Couldn't exec external editor\n");
if (unlink(compose->exteditor_file) < 0)
FILE_OP_ERROR(compose->exteditor_file, "unlink");
} else if (buf[0] == '2') {
- g_warning(_("Couldn't write to file\n"));
+ g_warning("Couldn't write to file\n");
} else if (buf[0] == '3') {
- g_warning(_("Pipe read failed\n"));
+ g_warning("Pipe read failed\n");
}
close(source);
compose_address_cb(data, 0, NULL);
}
-static void toolbar_actions_execute_cb(GtkWidget *widget,
- gpointer data)
-{
- Compose *compose = (Compose*)data;
-
- toolbar_action_execute(widget, compose->toolbar->t_action_list, data, TOOLBAR_COMPOSE);
-}
-
static void account_activated(GtkMenuItem *menuitem, gpointer data)
{
Compose *compose = (Compose *)data;
compose_toolbar_set_sensitive(compose, allow);
menu_set_sensitive(ifactory, "/File", allow);
menu_set_sensitive(ifactory, "/Edit", allow);
+ menu_set_sensitive(ifactory, "/Spelling", allow);
menu_set_sensitive(ifactory, "/Message", allow);
menu_set_sensitive(ifactory, "/Tools", allow);
menu_set_sensitive(ifactory, "/Help", allow);
}
newmsginfo = folder_item_get_msginfo(draft, msgnum);
- procmsg_msginfo_unset_flags(newmsginfo, ~0, ~0);
- MSG_SET_TMP_FLAGS(newmsginfo->flags, MSG_DRAFT);
- folder_update_item(draft, TRUE);
- procmsg_msginfo_free(newmsginfo);
+ if (newmsginfo) {
+ procmsg_msginfo_unset_flags(newmsginfo, ~0, ~0);
+ procmsg_msginfo_set_flags(newmsginfo, 0, MSG_DRAFT);
+ folder_update_item(draft, TRUE);
+ procmsg_msginfo_free(newmsginfo);
+ }
lock = FALSE;
}
#endif
-static void set_toolbar_style(Compose *compose)
-{
- switch (prefs_common.toolbar_style) {
- case TOOLBAR_NONE:
- gtk_widget_hide(compose->handlebox);
- break;
- case TOOLBAR_ICON:
- gtk_toolbar_set_style(GTK_TOOLBAR(compose->toolbar->toolbar),
- GTK_TOOLBAR_ICONS);
- break;
- case TOOLBAR_TEXT:
- gtk_toolbar_set_style(GTK_TOOLBAR(compose->toolbar->toolbar),
- GTK_TOOLBAR_TEXT);
- break;
- case TOOLBAR_BOTH:
- gtk_toolbar_set_style(GTK_TOOLBAR(compose->toolbar->toolbar),
- GTK_TOOLBAR_BOTH);
- break;
- }
-
- if (prefs_common.toolbar_style != TOOLBAR_NONE) {
- gtk_widget_show(compose->handlebox);
- gtk_widget_queue_resize(compose->handlebox);
- }
-}