rockbox/apps/root_menu.h
Jonathan Gordon 6dbfd44b6e 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
2014-02-13 22:11:23 +11:00

81 lines
2.4 KiB
C

/***************************************************************************
* __________ __ ___.
* Open \______ \ ____ ____ | | _\_ |__ _______ ___
* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
* \/ \/ \/ \/ \/
* $Id$
*
* Copyright (C) 2007 Jonathan Gordon
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
* KIND, either express or implied.
*
****************************************************************************/
#ifndef __ROOT_MENU_H__
#define __ROOT_MENU_H__
#include "config.h"
#include "gcc_extensions.h"
void root_menu(void) NORETURN_ATTR;
struct menu_table {
char *string;
const struct menu_item_ex *item;
};
struct menu_table *root_menu_get_options(int *nb_options);
enum {
/* from old menu api, but still required*/
MENU_ATTACHED_USB = -10,
MENU_SELECTED_EXIT = -9,
GO_TO_ROOTITEM_CONTEXT = -5,
GO_TO_PREVIOUS_MUSIC = -4,
GO_TO_PREVIOUS_BROWSER = -3,
GO_TO_PREVIOUS = -2,
GO_TO_ROOT = -1,
GO_TO_FILEBROWSER = 0,
#ifdef HAVE_TAGCACHE
GO_TO_DBBROWSER,
#endif
GO_TO_WPS,
GO_TO_MAINMENU,
#ifdef HAVE_RECORDING
GO_TO_RECSCREEN,
#endif
#if CONFIG_TUNER
GO_TO_FM,
#endif
GO_TO_RECENTBMARKS,
GO_TO_PICTUREFLOW,
/* Do Not add any items above here unless you want it to be able to
be the "start screen" after a boot up. The setting in settings_list.c
will need editing if this is the case. */
GO_TO_BROWSEPLUGINS,
GO_TO_TIMESCREEN,
GO_TO_PLAYLISTS_SCREEN,
GO_TO_PLAYLIST_VIEWER,
GO_TO_SYSTEM_SCREEN,
GO_TO_SHORTCUTMENU
};
#ifndef PLUGIN
extern struct menu_item_ex root_menu_;
extern void previous_music_is_wps(void);
void root_menu_load_from_cfg(void* setting, char *value);
char* root_menu_write_to_cfg(void* setting, char*buf, int buf_len);
void root_menu_set_default(void* setting, void* defaultval);
bool root_menu_is_changed(void* setting, void* defaultval);
#endif
#endif /* __ROOT_MENU_H__ */