static void toolbar_ignore_thread_cb (GtkWidget *widget,
gpointer data);
+static void toolbar_watch_thread_cb (GtkWidget *widget,
+ gpointer data);
+
static void toolbar_print_cb (GtkWidget *widget,
gpointer data);
{ "A_GOTO_PREV", N_("Go to Previous Unread Message") },
{ "A_GOTO_NEXT", N_("Go to Next Unread Message") },
{ "A_IGNORE_THREAD", N_("Ignore thread") },
+ { "A_WATCH_THREAD", N_("Watch thread") },
{ "A_PRINT", N_("Print") },
{ "A_LEARN_SPAM", N_("Learn Spam or Ham") },
{ "A_GO_FOLDERS", N_("Open folder/Go to folder list") },
A_COMPOSE_EMAIL, A_REPLY_MESSAGE, A_REPLY_SENDER,
A_REPLY_ALL, A_REPLY_ML, A_OPEN_MAIL, A_FORWARD,
A_TRASH , A_DELETE_REAL, A_EXECUTE, A_GOTO_PREV,
- A_GOTO_NEXT, A_IGNORE_THREAD, A_PRINT,
+ 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 };
ToolbarStyle style,
ComposeButtonType type)
{
- if ((!toolbar->compose_mail_btn) || (!toolbar->compose_news_btn))
+ if ((!toolbar->compose_mail_btn))
return;
- gtk_widget_hide(type == COMPOSEBUTTON_NEWS ? toolbar->compose_mail_btn
- : toolbar->compose_news_btn);
- gtk_widget_show_now(type == COMPOSEBUTTON_NEWS ? toolbar->compose_news_btn
- : toolbar->compose_mail_btn);
+
+ if (type == COMPOSEBUTTON_NEWS) {
+ gtk_tool_button_set_icon_widget(
+ GTK_TOOL_BUTTON(toolbar->compose_mail_btn),
+ toolbar->compose_news_icon);
+ gtk_tool_item_set_tooltip(GTK_TOOL_ITEM(toolbar->compose_mail_btn), GTK_TOOLTIPS(toolbar->tooltips),
+ _("Compose News message"), NULL);
+ gtk_widget_show(toolbar->compose_news_icon);
+ } else {
+ gtk_tool_button_set_icon_widget(
+ GTK_TOOL_BUTTON(toolbar->compose_mail_btn),
+ toolbar->compose_mail_icon);
+ gtk_tool_item_set_tooltip(GTK_TOOL_ITEM(toolbar->compose_mail_btn), GTK_TOOLTIPS(toolbar->tooltips),
+ _("Compose Email"), NULL);
+ gtk_widget_show(toolbar->compose_mail_icon);
+ }
toolbar->compose_btn_type = type;
- gtk_widget_queue_resize(toolbar->toolbar);
- gtk_widget_show_now(toolbar->toolbar);
- GTK_EVENTS_FLUSH();
}
void toolbar_set_compose_button(Toolbar *toolbar,
ToolbarStyle style,
LearnButtonType type)
{
- if ((!toolbar->learn_spam_btn) || (!toolbar->learn_ham_btn))
+ if ((!toolbar->learn_spam_btn))
return;
- gtk_widget_hide(type == LEARN_SPAM ? toolbar->learn_ham_btn
- : toolbar->learn_spam_btn);
- gtk_widget_show_now(type == LEARN_SPAM ? toolbar->learn_spam_btn
- : toolbar->learn_ham_btn);
+ if (type == LEARN_SPAM) {
+ gtk_tool_button_set_icon_widget(
+ GTK_TOOL_BUTTON(toolbar->learn_spam_btn),
+ toolbar->learn_spam_icon);
+ gtk_tool_button_set_label(
+ GTK_TOOL_BUTTON(toolbar->learn_spam_btn),
+ _("Spam"));
+ gtk_tool_item_set_tooltip(GTK_TOOL_ITEM(toolbar->learn_spam_btn), GTK_TOOLTIPS(toolbar->tooltips),
+ _("Learn spam"), NULL);
+ gtk_widget_show(toolbar->learn_spam_icon);
+ } else {
+ gtk_tool_button_set_icon_widget(
+ GTK_TOOL_BUTTON(toolbar->learn_spam_btn),
+ toolbar->learn_ham_icon);
+ gtk_tool_button_set_label(
+ GTK_TOOL_BUTTON(toolbar->learn_spam_btn),
+ _("Ham"));
+ gtk_tool_item_set_tooltip(GTK_TOOL_ITEM(toolbar->learn_spam_btn), GTK_TOOLTIPS(toolbar->tooltips),
+ _("Learn ham"), NULL);
+ gtk_widget_show(toolbar->learn_ham_icon);
+ }
toolbar->learn_btn_type = type;
- gtk_widget_queue_resize(toolbar->toolbar);
- gtk_widget_show_now(toolbar->toolbar);
- GTK_EVENTS_FLUSH();
}
void toolbar_set_learn_button(Toolbar *toolbar,
/* Now we need to update the messageview window */
if (msgview->mainwin->summaryview->selected) {
+#ifndef MAEMO
MsgInfo * msginfo = summary_get_selected_msg(msgview->mainwin->summaryview);
if (msginfo)
messageview_show(msgview, msginfo,
msgview->all_headers);
+#endif
} else {
gtk_widget_destroy(msgview->window);
}
/* Now we need to update the messageview window */
if (msgview->mainwin->summaryview->selected) {
+#ifndef MAEMO
MsgInfo * msginfo = summary_get_selected_msg(msgview->mainwin->summaryview);
if (msginfo)
messageview_show(msgview, msginfo,
msgview->all_headers);
+#endif
} else {
gtk_widget_destroy(msgview->window);
}
}
}
+static void toolbar_watch_thread_cb(GtkWidget *widget, gpointer data)
+{
+ ToolbarItem *toolbar_item = (ToolbarItem*)data;
+ MainWindow *mainwin;
+
+ g_return_if_fail(toolbar_item != NULL);
+
+ switch (toolbar_item->type) {
+ case TOOLBAR_MAIN:
+ mainwin = (MainWindow *) toolbar_item->parent;
+ summary_toggle_watch_thread(mainwin->summaryview);
+ break;
+ case TOOLBAR_MSGVIEW:
+ /* TODO: see toolbar_next_unread_cb() if you need
+ * this in the message view */
+ break;
+ default:
+ debug_print("toolbar event not supported\n");
+ break;
+ }
+}
+
static void toolbar_cancel_inc_cb(GtkWidget *widget, gpointer data)
{
ToolbarItem *toolbar_item = (ToolbarItem*)data;
{ A_GOTO_PREV, toolbar_prev_unread_cb },
{ A_GOTO_NEXT, toolbar_next_unread_cb },
{ A_IGNORE_THREAD, toolbar_ignore_thread_cb },
+ { A_WATCH_THREAD, toolbar_watch_thread_cb },
{ A_PRINT, toolbar_print_cb },
{ A_LEARN_SPAM, toolbar_learn_cb },
{ A_GO_FOLDERS, toolbar_go_folders_cb },
_("Compose Email"),
_("Compose with selected Account"));
toolbar_data->compose_mail_btn = item;
+ toolbar_data->compose_mail_icon = icon_wid;
+ g_object_ref(toolbar_data->compose_mail_icon);
icon_news = stock_pixmap_widget(container, STOCK_PIXMAP_NEWS_COMPOSE);
- TOOLBAR_MENUITEM(item,icon_news,_("Compose"),
- _("Compose News"),
- _("Compose with selected Account"));
- toolbar_data->compose_news_btn = item;
+ toolbar_data->compose_news_icon = icon_news;
+ g_object_ref(toolbar_data->compose_news_icon);
#else
TOOLBAR_ITEM(item,icon_wid,toolbar_item->text,
_("Compose Email"));
toolbar_data->compose_mail_btn = item;
+ toolbar_data->compose_mail_icon = icon_wid;
icon_news = stock_pixmap_widget(container, STOCK_PIXMAP_NEWS_COMPOSE);
- TOOLBAR_ITEM(item,icon_news,_("Compose"),
- _("Compose News"));
- toolbar_data->compose_news_btn = item;
+ toolbar_data->compose_news_icon = icon_news;
#endif
break;
case A_LEARN_SPAM:
TOOLBAR_MENUITEM(item,icon_wid,toolbar_item->text,
- _("Learn Spam"),
+ _("Spam"),
_("Learn as..."));
toolbar_data->learn_spam_btn = item;
+ toolbar_data->learn_spam_icon = icon_wid;
+ g_object_ref(toolbar_data->learn_spam_icon);
icon_ham = stock_pixmap_widget(container, STOCK_PIXMAP_HAM_BTN);
- TOOLBAR_MENUITEM(item,icon_ham,_("Ham"),
- _("Learn Ham"),
- _("Learn as..."));
- toolbar_data->learn_ham_btn = item;
+ toolbar_data->learn_ham_icon = icon_ham;
+ g_object_ref(toolbar_data->learn_ham_icon);
MAKE_MENU(learn_entries,"<LearnSpam>",toolbar_data->learn_spam_btn);
- MAKE_MENU(learn_entries,"<LearnHam>",toolbar_data->learn_ham_btn);
break;
case A_REPLY_MESSAGE:
#ifndef MAEMO
}
toolbar_data->toolbar = toolbar;
+ toolbar_data->tooltips = toolbar_tips;
gtk_widget_show_all(toolbar);
- if (type == TOOLBAR_MAIN)
+ if (type == TOOLBAR_MAIN) {
+#ifdef MAEMO
+ MainWindow *mainwin = mainwindow_get_mainwindow();
+ GtkWidget *progressbar = gtk_progress_bar_new();
+ item = gtk_tool_item_new();
+ gtk_container_add (GTK_CONTAINER (item), progressbar);
+ gtk_widget_show(item);
+ gtk_widget_show(progressbar);
+ gtk_widget_set_size_request(progressbar, 70, -1);
+ gtk_toolbar_insert(GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(item), -1); \
+ mainwin->progressbar = progressbar;
+#endif
activate_compose_button(toolbar_data,
prefs_common.toolbar_style,
toolbar_data->compose_btn_type);
+ }
if (type != TOOLBAR_COMPOSE)
activate_learn_button(toolbar_data, prefs_common.toolbar_style,
LEARN_SPAM);
Compose *compose = (Compose*)data;
MessageView *msgview = (MessageView*)data;
+#ifndef MAEMO
switch(type) {
case TOOLBAR_MAIN:
toolbar_data = mainwin->toolbar;
toolbar_init(toolbar_data);
toolbar_data = toolbar_create(type, handlebox, data);
+#else
+ switch(type) {
+ case TOOLBAR_MAIN:
+ toolbar_data = mainwin->toolbar;
+ handlebox = mainwin->window;
+ break;
+ case TOOLBAR_COMPOSE:
+ toolbar_data = compose->toolbar;
+ handlebox = compose->window;
+ break;
+ case TOOLBAR_MSGVIEW:
+ toolbar_data = msgview->toolbar;
+ handlebox = msgview->window;
+ break;
+ default:
+ return;
+ }
+
+ hildon_window_remove_toolbar(HILDON_WINDOW(handlebox), GTK_WIDGET(toolbar_data->toolbar));
+
+ toolbar_init(toolbar_data);
+ toolbar_data = toolbar_create(type, handlebox, data);
+#endif
+
switch(type) {
case TOOLBAR_MAIN:
mainwin->toolbar = toolbar_data;
GtkWidget *child = gtk_bin_get_child( \
GTK_BIN(widget)); \
if (GTK_IS_BUTTON(child)) \
- GTK_BUTTON(child)->in_button = in_btn2; \
+ GTK_BUTTON(child)->in_button = in_btn1; \
} \
}
M_HAVE_QUEUED_MAILS);
}
if (toolbar->compose_mail_btn) {
- SET_WIDGET_COND(toolbar->compose_news_btn,
+ SET_WIDGET_COND(toolbar->compose_mail_btn,
M_HAVE_ACCOUNT);
}
if (toolbar->close_window_btn) {
- SET_WIDGET_COND(toolbar->compose_news_btn,
+ SET_WIDGET_COND(toolbar->close_window_btn,
M_UNLOCKED);
}
if (toolbar->open_mail_btn) {
SET_WIDGET_COND(toolbar->exec_btn,
M_DELAY_EXEC);
- if (toolbar->learn_ham_btn)
+/* if (toolbar->learn_ham_btn)
SET_WIDGET_COND(toolbar->learn_ham_btn,
M_TARGET_EXIST|M_CAN_LEARN_SPAM);
-
+*/
if (toolbar->learn_spam_btn)
SET_WIDGET_COND(toolbar->learn_spam_btn,
M_TARGET_EXIST|M_CAN_LEARN_SPAM);
toolbar->getall_btn = NULL;
toolbar->send_btn = NULL;
toolbar->compose_mail_btn = NULL;
- toolbar->compose_news_btn = NULL;
+ toolbar->compose_mail_icon = NULL;
+ toolbar->compose_news_icon = NULL;
toolbar->reply_btn = NULL;
toolbar->replysender_btn = NULL;
toolbar->replyall_btn = NULL;