static void modest_folder_window_pack_toolbar (ModestHildon2Window *self,
GtkPackType pack_type,
GtkWidget *toolbar);
+static void edit_mode_changed (ModestFolderWindow *folder_window,
+ gint edit_mode_id,
+ ModestFolderWindow *self);
typedef struct _ModestFolderWindowPrivate ModestFolderWindowPrivate;
struct _ModestFolderWindowPrivate {
priv->folder_view = modest_platform_create_folder_view (query);
modest_folder_view_set_cell_style (MODEST_FOLDER_VIEW (priv->folder_view),
MODEST_FOLDER_VIEW_CELL_STYLE_COMPACT);
+ g_signal_connect (G_OBJECT (self), "edit-mode-changed",
+ G_CALLBACK (edit_mode_changed), (gpointer) self);
setup_menu (self);
NULL);
/* new message */
- modest_hildon2_window_add_to_menu (MODEST_HILDON2_WINDOW (self), _("mcen_me_new_message"), "<Ctrl>n",
+ modest_hildon2_window_add_to_menu (MODEST_HILDON2_WINDOW (self),
+ _("mcen_me_new_message"),
+ "<Ctrl>n",
APP_MENU_CALLBACK (modest_ui_actions_on_new_msg),
NULL);
/* send receive actions should be only one visible always */
- modest_hildon2_window_add_to_menu (MODEST_HILDON2_WINDOW (self), _("mcen_me_inbox_sendandreceive"), NULL,
+ modest_hildon2_window_add_to_menu (MODEST_HILDON2_WINDOW (self),
+ _("mcen_me_inbox_sendandreceive"),
+ NULL,
APP_MENU_CALLBACK (modest_ui_actions_on_send_receive),
- MODEST_DIMMING_CALLBACK (modest_ui_dimming_rules_on_send_receive_all));
+ MODEST_DIMMING_CALLBACK (modest_ui_dimming_rules_on_send_receive));
modest_hildon2_window_add_to_menu (MODEST_HILDON2_WINDOW (self), _("mcen_me_outbox_cancelsend"), NULL,
APP_MENU_CALLBACK (modest_ui_actions_cancel_send),
MODEST_DIMMING_CALLBACK (modest_ui_dimming_rules_on_cancel_sending_all));
gtk_box_pack_end (GTK_BOX (priv->top_vbox), toolbar, FALSE, FALSE, 0);
}
}
+
+static void
+edit_mode_changed (ModestFolderWindow *folder_window,
+ gint edit_mode_id,
+ ModestFolderWindow *self)
+{
+ ModestFolderWindowPrivate *priv;
+ ModestFolderViewFilter filter = MODEST_FOLDER_VIEW_FILTER_NONE;
+
+ g_return_if_fail (MODEST_IS_FOLDER_WINDOW (self));
+ priv = MODEST_FOLDER_WINDOW_GET_PRIVATE (self);
+
+ switch (edit_mode_id) {
+ case EDIT_MODE_COMMAND_MOVE:
+ filter = MODEST_FOLDER_VIEW_FILTER_MOVEABLE;
+ break;
+ case EDIT_MODE_COMMAND_DELETE:
+ filter = MODEST_FOLDER_VIEW_FILTER_DELETABLE;
+ break;
+ case EDIT_MODE_COMMAND_RENAME:
+ filter = MODEST_FOLDER_VIEW_FILTER_RENAMEABLE;
+ break;
+ case MODEST_HILDON2_WINDOW_EDIT_MODE_NONE:
+ filter = MODEST_FOLDER_VIEW_FILTER_NONE;
+ break;
+ }
+
+ modest_folder_view_set_filter (MODEST_FOLDER_VIEW (priv->folder_view), filter);
+}