summaryrefslogtreecommitdiffstats
path: root/apps/root_menu.c
diff options
context:
space:
mode:
authorJonathan Gordon <rockbox@jdgordon.info>2014-02-13 22:01:13 +1100
committerJonathan Gordon <rockbox@jdgordon.info>2014-02-13 22:11:23 +1100
commit6dbfd44b6e6a4e01066ff3a99748e586d7cd458a (patch)
tree0570c0dbe96277cb8e31a6797b3b8628aea1e5b0 /apps/root_menu.c
parent1210de217ebdbd35734f57d82a6e935ef60e6555 (diff)
downloadrockbox-6dbfd44b6e6a4e01066ff3a99748e586d7cd458a.tar.gz
rockbox-6dbfd44b6e6a4e01066ff3a99748e586d7cd458a.tar.bz2
rockbox-6dbfd44b6e6a4e01066ff3a99748e586d7cd458a.zip
main_menu_config: New plugin to configur the main menu order
Plugins/Applications/main_menu_config allows you to edit the main menu order without having to manually edit config.cfg. Press the standard OK button to access the internal menu which allows you to move items up/down in the order and toggle their visibility. Exit via this menu to have the order saved. (Suggestions welcome to improve this UI) Change-Id: I59715ef1ca265aeb6f9666ef27026bc1093f2579
Diffstat (limited to 'apps/root_menu.c')
-rw-r--r--apps/root_menu.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/apps/root_menu.c b/apps/root_menu.c
index 71844dd41a..f83a97b9ed 100644
--- a/apps/root_menu.c
+++ b/apps/root_menu.c
@@ -484,10 +484,7 @@ MENUITEM_FUNCTION(do_shutdown_item, 0, ID2P(LANG_SHUTDOWN),
struct menu_item_ex root_menu_;
static struct menu_callback_with_desc root_menu_desc = {
item_callback, ID2P(LANG_ROCKBOX_TITLE), Icon_Rockbox };
-struct menu_table {
- char *string;
- const struct menu_item_ex *item;
-};
+
static struct menu_table menu_table[] = {
/* Order here represents the default ordering */
{ "bookmarks", &bookmarks },
@@ -514,6 +511,13 @@ static struct menu_table menu_table[] = {
#define MAX_MENU_ITEMS (sizeof(menu_table) / sizeof(struct menu_table))
static struct menu_item_ex *root_menu__[MAX_MENU_ITEMS];
+struct menu_table *root_menu_get_options(int *nb_options)
+{
+ *nb_options = MAX_MENU_ITEMS;
+
+ return menu_table;
+}
+
void root_menu_load_from_cfg(void* setting, char *value)
{
char *next = value, *start, *end;