+static void
+set_toolbar_mode (ModestMsgViewWindow *self,
+ ModestToolBarModes mode)
+{
+ ModestWindowPrivate *parent_priv;
+ ModestMsgViewWindowPrivate *priv;
+ GtkAction *widget = NULL;
+
+ g_return_if_fail (MODEST_IS_MSG_VIEW_WINDOW (self));
+
+ parent_priv = MODEST_WINDOW_GET_PRIVATE(self);
+ priv = MODEST_MSG_VIEW_WINDOW_GET_PRIVATE(self);
+
+ switch (mode) {
+ case TOOLBAR_MODE_NORMAL:
+ widget = gtk_ui_manager_get_action (parent_priv->ui_manager, "/ToolBar/ToolbarMessageNew");
+ gtk_action_set_sensitive (widget, TRUE);
+ widget = gtk_ui_manager_get_action (parent_priv->ui_manager, "/ToolBar/ToolbarMessageReply");
+ gtk_action_set_sensitive (widget, TRUE);
+ widget = gtk_ui_manager_get_action (parent_priv->ui_manager, "/ToolBar/ToolbarDeleteMessage");
+ gtk_action_set_sensitive (widget, TRUE);
+ widget = gtk_ui_manager_get_action (parent_priv->ui_manager, "/ToolBar/ToolbarMessageMoveTo");
+ gtk_action_set_sensitive (widget, TRUE);
+ widget = gtk_ui_manager_get_action (parent_priv->ui_manager, "/ToolBar/FindInMessage");
+ gtk_action_set_sensitive (widget, TRUE);
+
+ if (priv->prev_toolitem)
+ gtk_widget_show (priv->prev_toolitem);
+
+ if (priv->next_toolitem)
+ gtk_widget_show (priv->next_toolitem);
+
+ if (priv->progress_toolitem)
+ gtk_tool_item_set_expand (GTK_TOOL_ITEM (priv->progress_toolitem), FALSE);
+ if (priv->progress_bar)
+ gtk_widget_hide (priv->progress_bar);
+
+ if (priv->cancel_toolitem)
+ gtk_widget_hide (priv->cancel_toolitem);
+ break;
+ case TOOLBAR_MODE_TRANSFER:
+ widget = gtk_ui_manager_get_action (parent_priv->ui_manager, "/ToolBar/ToolbarMessageNew");
+ gtk_action_set_sensitive (widget, FALSE);
+ widget = gtk_ui_manager_get_action (parent_priv->ui_manager, "/ToolBar/ToolbarMessageReply");
+ gtk_action_set_sensitive (widget, FALSE);
+ widget = gtk_ui_manager_get_action (parent_priv->ui_manager, "/ToolBar/ToolbarDeleteMessage");
+ gtk_action_set_sensitive (widget, FALSE);
+ widget = gtk_ui_manager_get_action (parent_priv->ui_manager, "/ToolBar/ToolbarMessageMoveTo");
+ gtk_action_set_sensitive (widget, FALSE);
+ widget = gtk_ui_manager_get_action (parent_priv->ui_manager, "/ToolBar/FindInMessage");
+ gtk_action_set_sensitive (widget, FALSE);
+
+ if (priv->prev_toolitem)
+ gtk_widget_hide (priv->prev_toolitem);
+
+ if (priv->next_toolitem)
+ gtk_widget_hide (priv->next_toolitem);
+
+ if (priv->progress_toolitem)
+ gtk_tool_item_set_expand (GTK_TOOL_ITEM (priv->progress_toolitem), TRUE);
+ if (priv->progress_bar)
+ gtk_widget_show (priv->progress_bar);
+
+ if (priv->cancel_toolitem)
+ gtk_widget_show (priv->cancel_toolitem);
+ break;
+ default:
+ widget = gtk_ui_manager_get_action (parent_priv->ui_manager, "/ToolBar/ToolbarMessageNew");
+ gtk_action_set_sensitive (widget, TRUE);
+ widget = gtk_ui_manager_get_action (parent_priv->ui_manager, "/ToolBar/ToolbarMessageReply");
+ gtk_action_set_sensitive (widget, TRUE);
+ widget = gtk_ui_manager_get_action (parent_priv->ui_manager, "/ToolBar/ToolbarDeleteMessage");
+ gtk_action_set_sensitive (widget, TRUE);
+ widget = gtk_ui_manager_get_action (parent_priv->ui_manager, "/ToolBar/ToolbarMessageMoveTo");
+ gtk_action_set_sensitive (widget, TRUE);
+ widget = gtk_ui_manager_get_action (parent_priv->ui_manager, "/ToolBar/FindInMessage");
+ gtk_action_set_sensitive (widget, TRUE);
+
+ if (priv->cancel_toolitem)
+ gtk_widget_show (priv->prev_toolitem);
+
+ if (priv->next_toolitem)
+ gtk_widget_show (priv->next_toolitem);
+
+ if (priv->progress_bar)
+ gtk_widget_hide (priv->progress_bar);
+ if (priv->progress_bar)
+ gtk_widget_hide (priv->progress_bar);
+
+ if (priv->cancel_toolitem)
+ gtk_widget_hide (priv->cancel_toolitem);
+ }
+
+}
+