ModestWindowClass parent_class;
void (*pack_toolbar_func) (ModestHildon2Window *self, GtkPackType pack_type, GtkWidget *toolbar);
+ void (*edit_mode_changed) (ModestHildon2Window *self, gint edit_mode, gboolean enabled);
};
-typedef void (*ModestHildon2AppMenuCallback) (GObject *control, gpointer userdata);
+typedef gboolean (*ModestHildon2EditModeCallback) (ModestHildon2Window *self);
-#define APP_MENU_CALLBACK(x) ((ModestHildon2AppMenuCallback) (x))
+#define EDIT_MODE_CALLBACK(x) ((ModestHildon2EditModeCallback) (x))
+
+/* edit mode id for no edit mode */
+#define MODEST_HILDON2_WINDOW_EDIT_MODE_NONE -1
/**
* modest_hildon2_window_get_type:
*/
GType modest_hildon2_window_get_type (void) G_GNUC_CONST;
-/**
- * modest_hildon2_window_add_to_menu:
- * @self: a #ModestHildon2Window
- * @label: the label of the button added to menu
- * @callback: a #ModestHildon2AppMenuCallback
- * @dimming_callback: a #ModestDimmingCallback or %NULL for no dimming rule
- *
- * creates a button in the window #HildonAppMenu, with label @label.
- * It will call @callback, and will configure @dimming_callback for
- * dimming.
- */
-void
-modest_hildon2_window_add_to_menu (ModestHildon2Window *self,
- gchar *label,
- ModestHildon2AppMenuCallback callback,
- ModestDimmingCallback dimming_callback);
/**
- * modest_hildon2_window_add_button_to_menu:
+ * modest_hildon2_window_pack_toolbar:
* @self: a #ModestHildon2Window
- * @button: a #GtkButton
- * @dimming_callback: a #ModestDimmingCallback or %NULL for no dimming rule
+ * @pack_type: a #GtkPackType
+ * @toolbar: a toolbar widget
*
- * adds a previously configured button @button to the window #HildonAppMenu.
- * It will configure @dimming_callback for dimming. User should previously
- * attach the proper signal handler for @button.
+ * packs a toolbar (widget @toolbar) in @self with @pack_type
*/
-void
-modest_hildon2_window_add_button_to_menu (ModestHildon2Window *self,
- GtkButton *button,
- ModestDimmingCallback dimming_callback);
-
-
+void modest_hildon2_window_pack_toolbar (ModestHildon2Window *self,
+ GtkPackType pack_type,
+ GtkWidget *toolbar);
+
+void modest_hildon2_window_register_edit_mode (ModestHildon2Window *self,
+ gint edit_mode_id,
+ const gchar *description,
+ const gchar *button,
+ GtkTreeView *tree_view,
+ GtkSelectionMode mode,
+ ModestHildon2EditModeCallback action);
+
+void modest_hildon2_window_set_edit_mode (ModestHildon2Window *self,
+ gint edit_mode_id);
+void modest_hildon2_window_unset_edit_mode (ModestHildon2Window *self);
G_END_DECLS