A_TRASH , A_DELETE_REAL, A_EXECUTE, A_GOTO_PREV,
A_GOTO_NEXT, A_IGNORE_THREAD, A_WATCH_THREAD, A_PRINT,
A_ADDRBOOK, A_LEARN_SPAM, A_GO_FOLDERS,
- A_SYL_ACTIONS, A_CANCEL_INC };
+ A_CANCEL_INC };
for (i = 0; i < sizeof main_items / sizeof main_items[0]; i++) {
items = g_list_append(items, gettext(toolbar_text[main_items[i]].descr));
#ifdef USE_ASPELL
A_CHECK_SPELLING,
#endif
- A_SYL_ACTIONS, A_CLOSE };
+ A_CLOSE };
for (i = 0; i < sizeof comp_items / sizeof comp_items[0]; i++)
items = g_list_append(items, gettext(toolbar_text[comp_items[i]].descr));
gint msgv_items[] = { A_COMPOSE_EMAIL, A_REPLY_MESSAGE, A_REPLY_SENDER,
A_REPLY_ALL, A_REPLY_ML, A_FORWARD,
A_TRASH, A_DELETE_REAL, A_GOTO_PREV, A_GOTO_NEXT,
- A_ADDRBOOK, A_LEARN_SPAM, A_SYL_ACTIONS, A_CLOSE };
+ A_ADDRBOOK, A_LEARN_SPAM, A_CLOSE };
for (i = 0; i < sizeof msgv_items / sizeof msgv_items[0]; i++)
items = g_list_append(items, gettext(toolbar_text[msgv_items[i]].descr));
}
}
+const gchar *toolbar_get_short_text(int action) {
+ switch(action) {
+ case A_GO_FOLDERS: return _("Folders");
+ case A_OPEN_MAIL: return _("Open");
+ case A_RECEIVE_ALL: return _("Get Mail");
+ case A_RECEIVE_CUR: return _("Get");
+ case A_SEND_QUEUED: return _("Send");
+ case A_COMPOSE_EMAIL: return Q_("Toolbar|Compose");
+ case A_COMPOSE_NEWS: return Q_("Toolbar|Compose");
+ case A_REPLY_MESSAGE: return _("Reply");
+ case A_REPLY_ALL: return _("All");
+ case A_REPLY_SENDER: return _("Sender");
+ case A_REPLY_ML: return _("List");
+ case A_FORWARD: return _("Forward");
+ case A_TRASH: return _("Trash");
+ case A_DELETE_REAL: return _("Delete");
+ case A_LEARN_SPAM: return _("Spam");
+ case A_GOTO_PREV: return _("Prev");
+ case A_GOTO_NEXT: return _("Next");
+ case A_IGNORE_THREAD: return _("Ignore thread");
+ case A_WATCH_THREAD: return _("Watch thread");
+ case A_PRINT: return _("Print");
+ case A_CLOSE: return _("Close");
+ case A_SEND: return _("Send");
+ case A_SENDL: return _("Send later");
+ case A_DRAFT: return _("Draft");
+ case A_INSERT: return _("Insert");
+ case A_ATTACH: return _("Attach");
+ case A_SIG: return _("Insert sig.");
+ case A_EXTEDITOR: return _("Edit");
+ case A_LINEWRAP_CURRENT:return _("Wrap para.");
+ case A_LINEWRAP_ALL: return _("Wrap all");
+ case A_ADDRBOOK: return _("Address");
+ case A_CANCEL_INC: return _("Stop");
+ case A_EXECUTE: return _("Execute");
+ #ifdef USE_ASPELL
+ case A_CHECK_SPELLING: return _("Check spelling");
+ #endif
+ default: return "";
+ }
+}
+
+gint toolbar_get_icon(int action) {
+ switch(action) {
+ case A_GO_FOLDERS: return STOCK_PIXMAP_GO_FOLDERS;
+ case A_OPEN_MAIL: return STOCK_PIXMAP_OPEN_MAIL;
+ case A_RECEIVE_ALL: return STOCK_PIXMAP_MAIL_RECEIVE_ALL;
+ case A_RECEIVE_CUR: return STOCK_PIXMAP_MAIL_RECEIVE;
+ case A_SEND_QUEUED: return STOCK_PIXMAP_MAIL_SEND_QUEUE;
+ case A_COMPOSE_EMAIL: return STOCK_PIXMAP_MAIL_COMPOSE;
+ case A_COMPOSE_NEWS: return STOCK_PIXMAP_NEWS_COMPOSE;
+ case A_REPLY_MESSAGE: return STOCK_PIXMAP_MAIL_REPLY;
+ case A_REPLY_ALL: return STOCK_PIXMAP_MAIL_REPLY_TO_ALL;
+ case A_REPLY_SENDER: return STOCK_PIXMAP_MAIL_REPLY_TO_AUTHOR;
+ case A_REPLY_ML: return STOCK_PIXMAP_MAIL_REPLY;
+ case A_FORWARD: return STOCK_PIXMAP_MAIL_FORWARD;
+ case A_TRASH: return STOCK_PIXMAP_TRASH;
+ case A_DELETE_REAL: return STOCK_PIXMAP_DELETED;
+ case A_LEARN_SPAM: return STOCK_PIXMAP_SPAM_BTN;
+ case A_GOTO_PREV: return STOCK_PIXMAP_UP_ARROW;
+ case A_GOTO_NEXT: return STOCK_PIXMAP_DOWN_ARROW;
+ case A_IGNORE_THREAD: return STOCK_PIXMAP_IGNORETHREAD;
+ case A_WATCH_THREAD: return STOCK_PIXMAP_WATCHTHREAD;
+ case A_PRINT: return STOCK_PIXMAP_PRINTER;
+ case A_CLOSE: return STOCK_PIXMAP_CLOSE;
+ case A_SEND: return STOCK_PIXMAP_MAIL_SEND;
+ case A_SENDL: return STOCK_PIXMAP_MAIL_SEND_QUEUE;
+ case A_DRAFT: return STOCK_PIXMAP_MAIL;
+ case A_INSERT: return STOCK_PIXMAP_INSERT_FILE;
+ case A_ATTACH: return STOCK_PIXMAP_MAIL_ATTACH;
+ case A_SIG: return STOCK_PIXMAP_MAIL_SIGN;
+ case A_EXTEDITOR: return STOCK_PIXMAP_EDIT_EXTERN;
+ case A_LINEWRAP_CURRENT:return STOCK_PIXMAP_LINEWRAP_CURRENT;
+ case A_LINEWRAP_ALL: return STOCK_PIXMAP_LINEWRAP_ALL;
+ case A_ADDRBOOK: return STOCK_PIXMAP_ADDRESS_BOOK;
+ case A_CANCEL_INC: return STOCK_PIXMAP_NOTICE_ERROR;
+ case A_EXECUTE: return STOCK_PIXMAP_EXEC;
+ #ifdef USE_ASPELL
+ case A_CHECK_SPELLING: return STOCK_PIXMAP_CHECK_SPELLING;
+ #endif
+ default: return -1;
+ }
+}
+
static void toolbar_set_default_main(void)
{
struct {
gint action;
- gint icon;
- gchar *text;
} default_toolbar[] = {
#ifdef MAEMO
- { A_GO_FOLDERS, STOCK_PIXMAP_GO_FOLDERS, _("Folders") },
- { A_OPEN_MAIL, STOCK_PIXMAP_OPEN_MAIL, _("Open") },
- { A_SEPARATOR, 0, ("") },
+ { A_GO_FOLDERS},
+ { A_OPEN_MAIL},
+ { A_SEPARATOR},
#endif
- { A_RECEIVE_ALL, STOCK_PIXMAP_MAIL_RECEIVE_ALL, _("Get Mail")},
- { A_SEPARATOR, 0, ("") },
- { A_SEND_QUEUED, STOCK_PIXMAP_MAIL_SEND_QUEUE, _("Send") },
- { A_COMPOSE_EMAIL, STOCK_PIXMAP_MAIL_COMPOSE,
- (gchar*)Q_("Toolbar|Compose") },
- { A_SEPARATOR, 0, ("") },
- { A_REPLY_MESSAGE, STOCK_PIXMAP_MAIL_REPLY, _("Reply") },
+ { A_RECEIVE_ALL},
+ { A_SEPARATOR},
+ { A_SEND_QUEUED},
+ { A_COMPOSE_EMAIL},
+ { A_SEPARATOR},
+ { A_REPLY_MESSAGE},
#ifndef MAEMO
- { A_REPLY_ALL, STOCK_PIXMAP_MAIL_REPLY_TO_ALL, _("All") },
- { A_REPLY_SENDER, STOCK_PIXMAP_MAIL_REPLY_TO_AUTHOR, _("Sender") },
+ { A_REPLY_ALL},
+ { A_REPLY_SENDER},
#endif
- { A_FORWARD, STOCK_PIXMAP_MAIL_FORWARD, _("Forward") },
- { A_SEPARATOR, 0, ("") },
- { A_TRASH, STOCK_PIXMAP_TRASH, _("Trash") },
+ { A_FORWARD},
+ { A_SEPARATOR},
+ { A_TRASH},
#ifndef MAEMO
#if (defined(USE_SPAMASSASSIN_PLUGIN) || defined(USE_BOGOFILTER_PLUGIN))
- { A_LEARN_SPAM, STOCK_PIXMAP_SPAM_BTN, _("Spam") },
+ { A_LEARN_SPAM},
#endif
#endif
- { A_SEPARATOR, 0, ("") },
- { A_GOTO_NEXT, STOCK_PIXMAP_DOWN_ARROW, _("Next") }
+ { A_SEPARATOR},
+ { A_GOTO_NEXT}
};
gint i;
if (default_toolbar[i].action != A_SEPARATOR) {
- gchar *file = stock_pixmap_get_name((StockPixmap)default_toolbar[i].icon);
+ gchar *file = stock_pixmap_get_name((StockPixmap)toolbar_get_icon(default_toolbar[i].action));
toolbar_item->file = g_strdup(file);
toolbar_item->index = default_toolbar[i].action;
- toolbar_item->text = g_strdup(default_toolbar[i].text);
+ toolbar_item->text = g_strdup(toolbar_get_short_text(default_toolbar[i].action));
} else {
toolbar_item->file = g_strdup(TOOLBAR_TAG_SEPARATOR);
{
struct {
gint action;
- gint icon;
- gchar *text;
} default_toolbar[] = {
#ifdef MAEMO
- { A_CLOSE, STOCK_PIXMAP_CLOSE, _("Close") },
- { A_SEPARATOR, 0, ("") },
+ { A_CLOSE},
+ { A_SEPARATOR},
#endif
- { A_SEND, STOCK_PIXMAP_MAIL_SEND, _("Send") },
- { A_SENDL, STOCK_PIXMAP_MAIL_SEND_QUEUE, _("Send later") },
- { A_DRAFT, STOCK_PIXMAP_MAIL, _("Draft") },
- { A_SEPARATOR, 0, ("") },
+ { A_SEND},
+ { A_SENDL},
+ { A_DRAFT},
+ { A_SEPARATOR},
#ifndef MAEMO
- { A_INSERT, STOCK_PIXMAP_INSERT_FILE, _("Insert") },
+ { A_INSERT},
#endif
- { A_ATTACH, STOCK_PIXMAP_MAIL_ATTACH, _("Attach") },
- { A_SEPARATOR, 0, ("") },
- { A_ADDRBOOK, STOCK_PIXMAP_ADDRESS_BOOK, _("Address") }
+ { A_ATTACH},
+ { A_SEPARATOR},
+ { A_ADDRBOOK}
};
gint i;
if (default_toolbar[i].action != A_SEPARATOR) {
- gchar *file = stock_pixmap_get_name((StockPixmap)default_toolbar[i].icon);
+ gchar *file = stock_pixmap_get_name((StockPixmap)toolbar_get_icon(default_toolbar[i].action));
toolbar_item->file = g_strdup(file);
toolbar_item->index = default_toolbar[i].action;
- toolbar_item->text = g_strdup(default_toolbar[i].text);
+ toolbar_item->text = g_strdup(toolbar_get_short_text(default_toolbar[i].action));
} else {
toolbar_item->file = g_strdup(TOOLBAR_TAG_SEPARATOR);
{
struct {
gint action;
- gint icon;
- gchar *text;
} default_toolbar[] = {
#ifdef MAEMO
- { A_CLOSE, STOCK_PIXMAP_CLOSE, _("Close") },
- { A_SEPARATOR, 0, ("") },
+ { A_CLOSE},
+ { A_SEPARATOR},
#endif
- { A_REPLY_MESSAGE, STOCK_PIXMAP_MAIL_REPLY, _("Reply") },
- { A_REPLY_ALL, STOCK_PIXMAP_MAIL_REPLY_TO_ALL, _("All") },
- { A_REPLY_SENDER, STOCK_PIXMAP_MAIL_REPLY_TO_AUTHOR, _("Sender") },
- { A_FORWARD, STOCK_PIXMAP_MAIL_FORWARD, _("Forward") },
- { A_SEPARATOR, 0, ("") },
- { A_TRASH, STOCK_PIXMAP_TRASH, _("Trash") },
+ { A_REPLY_MESSAGE},
+ { A_REPLY_ALL},
+ { A_REPLY_SENDER},
+ { A_FORWARD},
+ { A_SEPARATOR},
+ { A_TRASH},
#ifndef MAEMO
#if (defined(USE_SPAMASSASSIN_PLUGIN) || defined(USE_BOGOFILTER_PLUGIN))
- { A_LEARN_SPAM, STOCK_PIXMAP_SPAM_BTN, _("Spam") },
+ { A_LEARN_SPAM},
#endif
#endif
- { A_GOTO_NEXT, STOCK_PIXMAP_DOWN_ARROW, _("Next") }
+ { A_GOTO_NEXT}
};
gint i;
if (default_toolbar[i].action != A_SEPARATOR) {
- gchar *file = stock_pixmap_get_name((StockPixmap)default_toolbar[i].icon);
+ gchar *file = stock_pixmap_get_name((StockPixmap)toolbar_get_icon(default_toolbar[i].action));
toolbar_item->file = g_strdup(file);
toolbar_item->index = default_toolbar[i].action;
- toolbar_item->text = g_strdup(default_toolbar[i].text);
+ toolbar_item->text = g_strdup(toolbar_get_short_text(default_toolbar[i].action));
} else {
toolbar_item->file = g_strdup(TOOLBAR_TAG_SEPARATOR);
fileSpec = g_strconcat(get_rc_dir(), G_DIR_SEPARATOR_S, toolbar_config[source].conf_file, NULL );
pfile = prefs_write_open(fileSpec);
- g_free( fileSpec );
if( pfile ) {
fp = pfile->fp;
- fprintf(fp, "<?xml version=\"1.0\" encoding=\"%s\" ?>\n", CS_INTERNAL);
+ if (fprintf(fp, "<?xml version=\"1.0\" encoding=\"%s\" ?>\n", CS_INTERNAL) < 0)
+ goto fail;
- fprintf(fp, "<%s>\n", TOOLBAR_TAG_INDEX);
+ if (fprintf(fp, "<%s>\n", TOOLBAR_TAG_INDEX) < 0)
+ goto fail;
for (cur = toolbar_config[source].item_list; cur != NULL; cur = cur->next) {
ToolbarItem *toolbar_item = (ToolbarItem*) cur->data;
if (toolbar_item->index != A_SEPARATOR) {
- fprintf(fp, "\t<%s %s=\"%s\" %s=\"",
+ if (fprintf(fp, "\t<%s %s=\"%s\" %s=\"",
TOOLBAR_TAG_ITEM,
TOOLBAR_ICON_FILE, toolbar_item->file,
- TOOLBAR_ICON_TEXT);
- xml_file_put_escape_str(fp, toolbar_item->text);
- fprintf(fp, "\" %s=\"%s\"/>\n",
+ TOOLBAR_ICON_TEXT) < 0)
+ goto fail;
+ if (xml_file_put_escape_str(fp, toolbar_item->text) < 0)
+ goto fail;
+ if (fprintf(fp, "\" %s=\"%s\"/>\n",
TOOLBAR_ICON_ACTION,
- toolbar_ret_text_from_val(toolbar_item->index));
+ toolbar_ret_text_from_val(toolbar_item->index)) < 0)
+ goto fail;
} else {
- fprintf(fp, "\t<%s/>\n", TOOLBAR_TAG_SEPARATOR);
+ if (fprintf(fp, "\t<%s/>\n", TOOLBAR_TAG_SEPARATOR) < 0)
+ goto fail;
}
}
- fprintf(fp, "</%s>\n", TOOLBAR_TAG_INDEX);
+ if (fprintf(fp, "</%s>\n", TOOLBAR_TAG_INDEX) < 0)
+ goto fail;
+ g_free( fileSpec );
if (prefs_file_close (pfile) < 0 )
g_warning("failed to write toolbar configuration to file\n");
+ return;
+
+fail:
+ FILE_OP_ERROR(fileSpec, "fprintf");
+ g_free( fileSpec );
+ prefs_file_close_revert (pfile);
} else
g_warning("failed to open toolbar configuration file for writing\n");
}