-void menu_clear_entries(gchar *name);
-void menu_add_normal(gchar *name, gchar *label, GSList *actions);
-void menu_add_submenu(gchar *name, gchar *submenu);
-void menu_add_separator(gchar *name);
+ObMenuEntry* menu_add_normal(ObMenu *menu, gint id, gchar *label,
+ GSList *actions);
+ObMenuEntry* menu_add_submenu(ObMenu *menu, gint id, gchar *submenu);
+ObMenuEntry* menu_add_separator(ObMenu *menu, gint id);
+
+void menu_clear_entries(ObMenu *menu);
+void menu_entry_remove(ObMenuEntry *self);
+
+ObMenuEntry* menu_find_entry_id(ObMenu *self, gint id);
+
+/* fills in the submenus, for use when a menu is being shown */
+void menu_find_submenus(ObMenu *self);